SubShader { Tags {*LIL_SUBSHADER_TAGS*} HLSLINCLUDE *LIL_SHADER_SETTING* #pragma require geometry #pragma fragmentoption ARB_precision_hint_fastest #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 { Ref [_StencilRef] ReadMask [_StencilReadMask] WriteMask [_StencilWriteMask] Comp [_StencilComp] Pass [_StencilPass] Fail [_StencilFail] ZFail [_StencilZFail] } 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_brp.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 } // Forward Fur Pre Pass { Name "FORWARD_FUR_PRE" Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_1*"} Stencil { Ref [_FurStencilRef] ReadMask [_FurStencilReadMask] WriteMask [_FurStencilWriteMask] Comp [_FurStencilComp] Pass [_FurStencilPass] Fail [_FurStencilFail] ZFail [_FurStencilZFail] } Cull [_FurCull] ZClip [_FurZClip] ZWrite On ZTest [_FurZTest] ColorMask [_FurColorMask] Offset [_FurOffsetFactor], [_FurOffsetUnits] BlendOp Add, Add Blend One Zero, One OneMinusSrcAlpha AlphaToMask On HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_forward //---------------------------------------------------------------------------------------------------------------------- // Pass #define LIL_FUR_PRE #include "Includes/lil_pipeline_brp.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 } // Forward Fur Pass { Name "FORWARD_FUR" Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_2*"} Stencil { Ref [_FurStencilRef] ReadMask [_FurStencilReadMask] WriteMask [_FurStencilWriteMask] Comp [_FurStencilComp] Pass [_FurStencilPass] Fail [_FurStencilFail] ZFail [_FurStencilZFail] } 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_brp.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 } //---------------------------------------------------------------------------------------------------------------------- // ForwardAdd Start // // ForwardAdd Pass { Name "FORWARD_ADD" Tags {"LightMode" = "ForwardAdd"} Stencil { Ref [_StencilRef] ReadMask [_StencilReadMask] WriteMask [_StencilWriteMask] Comp [_StencilComp] Pass [_StencilPass] Fail [_StencilFail] ZFail [_StencilZFail] } Cull [_Cull] ZClip [_ZClip] ZWrite Off ZTest LEqual ColorMask [_ColorMask] Offset [_OffsetFactor], [_OffsetUnits] Blend [_SrcBlendFA] [_DstBlendFA], Zero One BlendOp [_BlendOpFA], [_BlendOpAlphaFA] AlphaToMask [_AlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_forwardadd //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_brp.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 } // ForwardAdd Fur Pre Pass { Name "FORWARD_ADD_FUR_PRE" Tags {"LightMode" = "ForwardAdd"} Stencil { Ref [_FurStencilRef] ReadMask [_FurStencilReadMask] WriteMask [_FurStencilWriteMask] Comp [_FurStencilComp] Pass [_FurStencilPass] Fail [_FurStencilFail] ZFail [_FurStencilZFail] } Cull [_FurCull] ZClip [_FurZClip] ZWrite Off ZTest LEqual ColorMask [_FurColorMask] Offset [_FurOffsetFactor], [_FurOffsetUnits] Blend [_FurSrcBlendFA] [_FurDstBlendFA], Zero One BlendOp [_FurBlendOpFA], [_FurBlendOpAlphaFA] AlphaToMask On HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_forwardadd //---------------------------------------------------------------------------------------------------------------------- // Pass #define LIL_FUR_PRE #include "Includes/lil_pipeline_brp.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 } // ForwardAdd Fur Pass { Name "FORWARD_ADD_FUR" Tags {"LightMode" = "ForwardAdd"} Stencil { Ref [_FurStencilRef] ReadMask [_FurStencilReadMask] WriteMask [_FurStencilWriteMask] Comp [_FurStencilComp] Pass [_FurStencilPass] Fail [_FurStencilFail] ZFail [_FurStencilZFail] } Cull [_FurCull] ZClip [_FurZClip] ZWrite Off ZTest LEqual ColorMask [_FurColorMask] Offset [_FurOffsetFactor], [_FurOffsetUnits] Blend [_FurSrcBlendFA] [_FurDstBlendFA], Zero One BlendOp [_FurBlendOpFA], [_FurBlendOpAlphaFA] AlphaToMask [_FurAlphaToMask] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma geometry geom #pragma fragment frag #pragma lil_multi_compile_forwardadd //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_brp.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 } // // ForwardAdd End // ShadowCaster Pass { Name "SHADOW_CASTER" Tags {"LightMode" = "ShadowCaster"} Offset 1, 1 Cull [_Cull] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_shadowcaster //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_brp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_shadowcaster.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_brp.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 "Unlit/Texture"