mathe/Library/PackageCache/com.unity.shadergraph@14.0.8/Editor/Generation/TargetResources/BlockFields.cs

61 lines
4.6 KiB
C#
Raw Normal View History

2024-09-20 20:30:10 +02: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);
}
[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);
}
}
}