UnityGame/Library/PackageCache/com.unity.shadergraph/Editor/Generation/TargetResources/BlockFields.cs

67 lines
5.4 KiB
C#
Raw Normal View History

2024-10-27 10:53:47 +03:00
using UnityEngine;
using UnityEditor.ShaderGraph.Internal;
namespace UnityEditor.ShaderGraph
{
internal static class BlockFields
{
[GenerateBlocks]
public struct VertexDescription
{
public static string name = "VertexDescription";
public static BlockFieldDescriptor Position = new BlockFieldDescriptor(VertexDescription.name, "Position", "VERTEXDESCRIPTION_POSITION",
new PositionControl(CoordinateSpace.Object), ShaderStage.Vertex);
public static BlockFieldDescriptor Normal = new BlockFieldDescriptor(VertexDescription.name, "Normal", "VERTEXDESCRIPTION_NORMAL",
new NormalControl(CoordinateSpace.Object), ShaderStage.Vertex);
public static BlockFieldDescriptor Tangent = new BlockFieldDescriptor(VertexDescription.name, "Tangent", "VERTEXDESCRIPTION_TANGENT",
new TangentControl(CoordinateSpace.Object), ShaderStage.Vertex);
}
[GenerateBlocks]
public struct SurfaceDescription
{
public static string name = "SurfaceDescription";
public static BlockFieldDescriptor BaseColor = new BlockFieldDescriptor(SurfaceDescription.name, "BaseColor", "Base Color", "SURFACEDESCRIPTION_BASECOLOR",
new ColorControl(UnityEngine.Color.grey, false), ShaderStage.Fragment);
public static BlockFieldDescriptor NormalTS = new BlockFieldDescriptor(SurfaceDescription.name, "NormalTS", "Normal (Tangent Space)", "SURFACEDESCRIPTION_NORMALTS",
new NormalControl(CoordinateSpace.Tangent), ShaderStage.Fragment);
public static BlockFieldDescriptor NormalOS = new BlockFieldDescriptor(SurfaceDescription.name, "NormalOS", "Normal (Object Space)", "SURFACEDESCRIPTION_NORMALOS",
new NormalControl(CoordinateSpace.Object), ShaderStage.Fragment);
public static BlockFieldDescriptor NormalWS = new BlockFieldDescriptor(SurfaceDescription.name, "NormalWS", "Normal (World Space)", "SURFACEDESCRIPTION_NORMALWS",
new NormalControl(CoordinateSpace.World), ShaderStage.Fragment);
public static BlockFieldDescriptor Metallic = new BlockFieldDescriptor(SurfaceDescription.name, "Metallic", "SURFACEDESCRIPTION_METALLIC",
new FloatControl(0.0f), ShaderStage.Fragment);
public static BlockFieldDescriptor Specular = new BlockFieldDescriptor(SurfaceDescription.name, "Specular", "Specular Color", "SURFACEDESCRIPTION_SPECULAR",
new ColorControl(UnityEngine.Color.grey, false), ShaderStage.Fragment);
public static BlockFieldDescriptor Smoothness = new BlockFieldDescriptor(SurfaceDescription.name, "Smoothness", "SURFACEDESCRIPTION_SMOOTHNESS",
new FloatControl(0.5f), ShaderStage.Fragment);
public static BlockFieldDescriptor Occlusion = new BlockFieldDescriptor(SurfaceDescription.name, "Occlusion", "Ambient Occlusion", "SURFACEDESCRIPTION_OCCLUSION",
new FloatControl(1.0f), ShaderStage.Fragment);
public static BlockFieldDescriptor Emission = new BlockFieldDescriptor(SurfaceDescription.name, "Emission", "SURFACEDESCRIPTION_EMISSION",
new ColorControl(UnityEngine.Color.black, true), ShaderStage.Fragment);
public static BlockFieldDescriptor Alpha = new BlockFieldDescriptor(SurfaceDescription.name, "Alpha", "SURFACEDESCRIPTION_ALPHA",
new FloatControl(1.0f), ShaderStage.Fragment);
public static BlockFieldDescriptor AlphaClipThreshold = new BlockFieldDescriptor(SurfaceDescription.name, "AlphaClipThreshold", "Alpha Clip Threshold", "SURFACEDESCRIPTION_ALPHACLIPTHRESHOLD",
new FloatControl(0.5f), ShaderStage.Fragment);
public static BlockFieldDescriptor CoatMask = new BlockFieldDescriptor(SurfaceDescription.name, "CoatMask", "Coat Mask", "SURFACEDESCRIPTION_COATMASK",
new FloatControl(0.0f), ShaderStage.Fragment);
public static BlockFieldDescriptor CoatSmoothness = new BlockFieldDescriptor(SurfaceDescription.name, "CoatSmoothness", "Coat Smoothness", "SURFACEDESCRIPTION_COATSMOOTHNESS",
new FloatControl(1.0f), ShaderStage.Fragment);
public static BlockFieldDescriptor MapRightTopBack = new BlockFieldDescriptor(SurfaceDescription.name, "RightTopBack", "Right Top Back", "SURFACEDESCRIPTION_MAP_RTBK",
new ColorControl(UnityEngine.Color.grey, false), ShaderStage.Fragment);
public static BlockFieldDescriptor MapLeftBottomFront = new BlockFieldDescriptor(SurfaceDescription.name, "LeftBottomFront", "Left Bottom Front", "SURFACEDESCRIPTION_MAP_LBTF",
new ColorControl(UnityEngine.Color.grey, false), ShaderStage.Fragment);
public static BlockFieldDescriptor AbsorptionStrength = new BlockFieldDescriptor(SurfaceDescription.name, "AbsorptionStrength", "Color Absorption Strength", "SURFACEDESCRIPTION_COLOR_ABSORPTION_STRENGTH",
new FloatControl(0.5f), ShaderStage.Fragment);
}
[GenerateBlocks]
public struct SurfaceDescriptionLegacy
{
public static string name = "SurfaceDescription";
public static BlockFieldDescriptor SpriteColor = new BlockFieldDescriptor(SurfaceDescription.name, "SpriteColor", "SURFACEDESCRIPTION_SPRITECOLOR",
new ColorRGBAControl(UnityEngine.Color.white), ShaderStage.Fragment, isHidden: true);
}
}
}