306 lines
9.8 KiB
Plaintext
306 lines
9.8 KiB
Plaintext
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
|
|
}
|
|
|
|
// Forward Fur Pre
|
|
Pass
|
|
{
|
|
Name "FORWARD_FUR_PRE"
|
|
Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_1*"}
|
|
|
|
Stencil
|
|
{
|
|
WriteMask 6
|
|
Ref 0
|
|
Comp Always
|
|
Pass Replace
|
|
}
|
|
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_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
|
|
}
|
|
|
|
// Fur
|
|
Pass
|
|
{
|
|
Name "FORWARD_FUR"
|
|
Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_2*"}
|
|
|
|
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" |