61 lines
1.2 KiB
C#
61 lines
1.2 KiB
C#
using UnityEngine.Rendering;
|
|
|
|
namespace AllIn13DShader
|
|
{
|
|
[System.Serializable]
|
|
public class ZTestCommand : ShaderCommand
|
|
{
|
|
private const string SHADER_ENTRY_FORMAT = @"ZTest {0}";
|
|
private const string STR_DEFINED_IN_PROPERTIES = @"[_ZTestMode]";
|
|
|
|
public CompareFunction zTestMode;
|
|
|
|
protected override string GetShaderEntryFormat()
|
|
{
|
|
return SHADER_ENTRY_FORMAT;
|
|
}
|
|
|
|
protected override string GetShaderEntryValueDefinedInCode()
|
|
{
|
|
string res = string.Empty;
|
|
|
|
switch (zTestMode)
|
|
{
|
|
case CompareFunction.Disabled:
|
|
res = "Disabled";
|
|
break;
|
|
case CompareFunction.Never:
|
|
res = "Never";
|
|
break;
|
|
case CompareFunction.Less:
|
|
res = "Less";
|
|
break;
|
|
case CompareFunction.Equal:
|
|
res = "Equal";
|
|
break;
|
|
case CompareFunction.LessEqual:
|
|
res = "LEqual";
|
|
break;
|
|
case CompareFunction.Greater:
|
|
res = "Greater";
|
|
break;
|
|
case CompareFunction.NotEqual:
|
|
res = "NotEqual";
|
|
break;
|
|
case CompareFunction.GreaterEqual:
|
|
res = "GEqual";
|
|
break;
|
|
case CompareFunction.Always:
|
|
res = "Always";
|
|
break;
|
|
}
|
|
|
|
return res;
|
|
}
|
|
|
|
protected override string GetShaderEntryValueDefinedInProperties()
|
|
{
|
|
return STR_DEFINED_IN_PROPERTIES;
|
|
}
|
|
}
|
|
} |