SubShader { Tags {*LIL_SUBSHADER_TAGS*} HLSLINCLUDE *LIL_SHADER_SETTING* #pragma target 4.5 #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_lwrp.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 { 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_lwrp.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] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_shadowcaster //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_lwrp.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 } // DepthOnly Pass { Name "DEPTHONLY" Tags {"LightMode" = "DepthOnly"} Cull [_Cull] ZClip [_ZClip] ZWrite [_ZWrite] ZTest [_ZTest] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag #pragma lil_multi_compile_depthonly //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_lwrp.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 } // Lightweight2D Pass { Name "LIGHTWEIGHT2D" Tags {"LightMode" = "Lightweight2D"} 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] HLSLPROGRAM //---------------------------------------------------------------------------------------------------------------------- // Build Option #pragma vertex vert #pragma fragment frag //---------------------------------------------------------------------------------------------------------------------- // Pass #include "Includes/lil_pipeline_lwrp.hlsl" #include "Includes/lil_common.hlsl" // Insert functions and includes that depend on Unity here *LIL_SUBSHADER_INSERT* #include "Includes/lil_pass_universal2d.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_lwrp.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 "Lightweight Render Pipeline/Unlit"