SubShader { Tags {*LIL_SUBSHADER_TAGS*} HLSLINCLUDE *LIL_SHADER_SETTING* #pragma target 4.5 #pragma exclude_renderers gles gles3 glcore #pragma fragmentoption ARB_precision_hint_fastest #pragma require geometry #define LIL_FUR #pragma lil_skip_variants_shadows #pragma lil_skip_variants_decals #pragma lil_skip_variants_addlightshadows #pragma lil_skip_variants_probevolumes #pragma lil_skip_variants_ao ENDHLSL *LIL_INSERT_PASS_PRE* // Forward Pass { Name "FORWARD" Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_0*"} Stencil { WriteMask 6 Ref 0 Comp Always Pass Replace } Cull [_Cull] ZClip [_ZClip] ZWrite [_ZWrite] ZTest [_ZTest] ColorMask [_ColorMask] Offset [_OffsetFactor], [_OffsetUnits] BlendOp [_BlendOp], [_BlendOpAlpha] Blend [_SrcBlend] [_DstBlend], [_SrcBlendAlpha] [_DstBlendAlpha] AlphaToMask [_AlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_forward //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_forward.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } // Fur Pass { Name "FORWARD_FUR" Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_1*"} Stencil { WriteMask 6 Ref 0 Comp Always Pass Replace } Cull [_FurCull] ZClip [_FurZClip] ZWrite [_FurZWrite] ZTest [_FurZTest] ColorMask [_FurColorMask] Offset [_FurOffsetFactor], [_FurOffsetUnits] BlendOp [_FurBlendOp], [_FurBlendOpAlpha] Blend [_FurSrcBlend] [_FurDstBlend], [_FurSrcBlendAlpha] [_FurDstBlendAlpha] AlphaToMask [_FurAlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_forward //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_forward_fur.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } // ShadowCaster Pass { Name "SHADOW_CASTER" Tags {"LightMode" = "ShadowCaster"} Cull[_Cull] ZClip [_ZClip] ZWrite On ZTest LEqual HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_shadowcaster //---------------------------------------------------------------------------------------------------------------------- // Pass #define LIL_ONEPASS_FUR #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_depthonly.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } // DepthOnly Pass { Name "DEPTHONLY" Tags {"LightMode" = "DepthForwardOnly"} Stencil { WriteMask 8 Ref 0 Comp Always Pass Replace } Cull Back ZClip [_ZClip] ZWrite [_ZWrite] ZTest [_ZTest] Offset [_OffsetFactor], [_OffsetUnits] AlphaToMask [_AlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_depthonly //---------------------------------------------------------------------------------------------------------------------- // Pass #define LIL_ONEPASS_FUR #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_depthonly.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } // MotionVectors Pass { Name "MOTIONVECTORS" Tags {"LightMode" = "MotionVectors"} Stencil { WriteMask 40 Ref 32 Comp Always Pass Replace } Cull Back ZClip [_ZClip] ZWrite [_ZWrite] ZTest [_ZTest] Offset [_OffsetFactor], [_OffsetUnits] AlphaToMask [_AlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_motionvectors //---------------------------------------------------------------------------------------------------------------------- // Pass #define LIL_ONEPASS_FUR #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_motionvectors.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } // Meta Pass { Name "META" Tags {"LightMode" = "META"} Cull Off HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_meta //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_hdrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_meta.hlsl" *LIL_SUBSHADER_INSERT_POST* ENDHLSL } *LIL_INSERT_PASS_POST* } Fallback "HDRP/Unlit"