常用模板

ShadowCaster 添加阴影与深度图

pass { Tags {"LightMode" = "ShadowCaster"} CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma multi_compile _ _DISSOLVEENABLED_ON #pragma multi_compile_shadowcaster #include "UnityCG.cginc" struct appdata { float4 vertex:POSITION; half3 normal:NORMAL; float4 uv:TEXCOORD; };
struct v2f { float4 uv:TEXCOORD; V2F_SHADOW_CASTER; };
sampler2D _DissolveTex;float4 _DissolveTex_ST; fixed _Clip;
v2f vert(appdata v) { v2f o; o.uv.zw = TRANSFORM_TEX(v.uv,_DissolveTex); TRANSFER_SHADOW_CASTER_NORMALOFFSET(o) return o; }
fixed4 frag(v2f i):SV_TARGET { #if _DISSOLVEENABLED_ON fixed4 dissolveTex=tex2D(_DissolveTex,i.uv.zw); clip(dissolveTex.r-_Clip); #endif SHADOW_CASTER_FRAGMENT(i) } ENDCG }