Shadow caster shader

Hi, I am working on a vert/frag shader, and I displace the vertexes. The problem is that the shadow that is being cast by the object stays the same. Does anyone know how to edit the shadows that an object casts, I can’t find ANY documentation on it exept this piece, but I dont know how to get it to work for my shader, if anyone knows where I can find documentation on it or how to adjust this pieces youll have my thanks for ever :)!

Pass
	    { 
	        Name "ShadowCaster"
	        Tags { "LightMode" = "ShadowCaster" }

	        Fog {Mode Off}
	        ZWrite On ZTest Less Cull Off
	        Offset 1, 1

	        CGPROGRAM

	        #pragma vertex vert
	        #pragma fragment frag
	        #pragma fragmentoption ARB_precision_hint_fastest
	        #pragma multi_compile_shadowcaster
	        #include "UnityCG.cginc"
	        
	        struct v2f
	        {
	        	V2F_SHADOW_CASTER; 
				float2 uv : TEXCOORD1;
	        };


	        v2f vert(appdata_full v )
	        {
	           v2f o;
				TRANSFER_SHADOW_CASTER(o)
 				
			  return o;
	        }

	        float4 frag( v2f i ) : COLOR
	        {
	            fixed4 texcol = tex2D( _MainTex, i.uv );
	            clip( texcol.a - _Cutoff );
	            SHADOW_CASTER_FRAGMENT(i)
	        }
	        ENDCG
	    }

A bit of a late response, but I am pretty sure you can just use the directive addshadow to tell Unity to make a matching shadow caster pass. (instead of writing a shadow caster pass yourself)

just add #pragma addshadow, I think

Mistake in vertex shader.

            v2f vert(appdata_full v )
            {
                v2f o;
                o.uv = v.texcoord;
                TRANSFER_SHADOW_CASTER(o)
                return o;
            }