From 5bfbb660c7213cdd14c9bde2349b3a09ccdaff4e Mon Sep 17 00:00:00 2001 From: yum Date: Sun, 12 Oct 2025 22:13:26 -0700 Subject: add shadowcaster --- 3ner.cginc | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to '3ner.cginc') diff --git a/3ner.cginc b/3ner.cginc index 26b2a3d..4aa4184 100644 --- a/3ner.cginc +++ b/3ner.cginc @@ -17,6 +17,10 @@ #include "vertex.cginc" v2f vert(appdata v) { +#if defined(SHADOW_CASTER_PASS) && !defined(_SHADOW_CASTER) + return (v2f) asfloat(-1); +#endif + v2f o; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_OUTPUT(v2f, o); @@ -43,9 +47,10 @@ v2f vert(appdata v) { UNITY_TRANSFER_LIGHTING(o, v.uv1); UNITY_TRANSFER_FOG_COMBINED_WITH_EYE_VEC(o, o.pos); - TRANSFER_SHADOW(o); #if defined(SHADOW_CASTER_PASS) TRANSFER_SHADOW_CASTER_NORMALOFFSET(o); +#else + TRANSFER_SHADOW(o); #endif return o; @@ -170,6 +175,11 @@ v2f domain( UNITY_TRANSFER_INSTANCE_ID(patch[0], o); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o); +#if defined(SHADOW_CASTER_PASS) + //TRANSFER_SHADOW_CASTER_NORMALOFFSET(o); +#else + TRANSFER_SHADOW(o); +#endif return o; } //endex @@ -217,11 +227,11 @@ void geom(triangle v2f tri_in[3], } //endex -float4 frag(v2f i, uint facing : SV_IsFrontFace -#if defined(_VERTEX_DEFORMATION_TUBES) -, out float depth : SV_DepthLessEqual +float4 frag(v2f i, uint facing : SV_IsFrontFace) : SV_Target { +#if defined(SHADOW_CASTER_PASS) + return 0; #endif -) : SV_Target { + #if defined(_VERTEX_DEFORMATION_FRAGMENT_NORMALS) deform_normal(i.objPos_orig, i.normal, i.tangent.xyz); #endif -- cgit v1.2.3