425 lines
14 KiB
Plaintext
425 lines
14 KiB
Plaintext
SubShader
|
|
{
|
|
Tags {"RenderType" = "HDLitShader"}
|
|
HLSLINCLUDE
|
|
*LIL_SHADER_SETTING*
|
|
#pragma target 4.5
|
|
#pragma exclude_renderers gles gles3 glcore
|
|
#pragma fragmentoption ARB_precision_hint_fastest
|
|
|
|
#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
|
|
#pragma lil_skip_variants_base_shadows
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// 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 Outline
|
|
Pass
|
|
{
|
|
Name "FORWARD_OUTLINE"
|
|
Tags {"LightMode" = "*LIL_LIGHTMODE_FORWARD_1*"}
|
|
|
|
Stencil
|
|
{
|
|
WriteMask 6
|
|
Ref 0
|
|
Comp Always
|
|
Pass Replace
|
|
}
|
|
Cull [_OutlineCull]
|
|
ZClip [_OutlineZClip]
|
|
ZWrite [_OutlineZWrite]
|
|
ZTest [_OutlineZTest]
|
|
ColorMask [_OutlineColorMask]
|
|
Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
|
|
BlendOp [_OutlineBlendOp], [_OutlineBlendOpAlpha]
|
|
Blend [_OutlineSrcBlend] [_OutlineDstBlend], [_OutlineSrcBlendAlpha] [_OutlineDstBlendAlpha]
|
|
AlphaToMask [_OutlineAlphaToMask]
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_forward
|
|
#pragma lil_skip_variants_outline_shadows
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Pass
|
|
#define LIL_OUTLINE
|
|
#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
|
|
}
|
|
|
|
// ShadowCaster
|
|
Pass
|
|
{
|
|
Name "SHADOW_CASTER"
|
|
Tags {"LightMode" = "ShadowCaster"}
|
|
|
|
Cull[_Cull]
|
|
ZClip [_ZClip]
|
|
ZWrite On
|
|
ZTest LEqual
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_shadowcaster
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// 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_depthonly.hlsl"
|
|
|
|
*LIL_SUBSHADER_INSERT_POST*
|
|
ENDHLSL
|
|
}
|
|
|
|
// DepthOnly
|
|
Pass
|
|
{
|
|
Name "DEPTHONLY"
|
|
Tags {"LightMode" = "DepthForwardOnly"}
|
|
|
|
Stencil
|
|
{
|
|
WriteMask 8
|
|
Ref 0
|
|
Comp Always
|
|
Pass Replace
|
|
}
|
|
Cull [_Cull]
|
|
ZClip [_ZClip]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
Offset [_OffsetFactor], [_OffsetUnits]
|
|
AlphaToMask [_AlphaToMask]
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_depthonly
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// 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_depthonly.hlsl"
|
|
|
|
*LIL_SUBSHADER_INSERT_POST*
|
|
ENDHLSL
|
|
}
|
|
|
|
// DepthOnly Outline
|
|
Pass
|
|
{
|
|
Name "DEPTHONLY_OUTLINE"
|
|
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 require geometry
|
|
#pragma lil_multi_compile_depthonly
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Pass
|
|
#define LIL_ONEPASS_OUTLINE
|
|
#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 Outline Only
|
|
Pass
|
|
{
|
|
Name "DEPTHONLY_OUTLINEONLY"
|
|
Tags {"LightMode" = "DepthForwardOnly"}
|
|
|
|
Stencil
|
|
{
|
|
WriteMask 8
|
|
Ref 0
|
|
Comp Always
|
|
Pass Replace
|
|
}
|
|
Cull [_OutlineCull]
|
|
ZClip [_OutlineZClip]
|
|
ZWrite [_OutlineZWrite]
|
|
ZTest [_OutlineZTest]
|
|
Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
|
|
AlphaToMask [_OutlineAlphaToMask]
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_depthonly
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Pass
|
|
#define LIL_OUTLINE
|
|
#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 [_Cull]
|
|
ZClip [_ZClip]
|
|
ZWrite [_ZWrite]
|
|
ZTest [_ZTest]
|
|
Offset [_OffsetFactor], [_OffsetUnits]
|
|
AlphaToMask [_AlphaToMask]
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_motionvectors
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// 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_motionvectors.hlsl"
|
|
|
|
*LIL_SUBSHADER_INSERT_POST*
|
|
ENDHLSL
|
|
}
|
|
|
|
// MotionVectors Outline
|
|
Pass
|
|
{
|
|
Name "MOTIONVECTORS_OUTLINE"
|
|
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 require geometry
|
|
#pragma lil_multi_compile_motionvectors
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Pass
|
|
#define LIL_ONEPASS_OUTLINE
|
|
#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
|
|
}
|
|
|
|
// MotionVectors Outline Only
|
|
Pass
|
|
{
|
|
Name "MOTIONVECTORS_OUTLINEONLY"
|
|
Tags {"LightMode" = "MotionVectors"}
|
|
|
|
Stencil
|
|
{
|
|
WriteMask 40
|
|
Ref 32
|
|
Comp Always
|
|
Pass Replace
|
|
}
|
|
Cull [_OutlineCull]
|
|
ZClip [_OutlineZClip]
|
|
ZWrite [_OutlineZWrite]
|
|
ZTest [_OutlineZTest]
|
|
Offset [_OutlineOffsetFactor], [_OutlineOffsetUnits]
|
|
AlphaToMask [_OutlineAlphaToMask]
|
|
|
|
HLSLPROGRAM
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Build Option
|
|
#pragma vertex vert
|
|
#pragma fragment frag
|
|
#pragma lil_multi_compile_motionvectors
|
|
|
|
//----------------------------------------------------------------------------------------------------------------------
|
|
// Pass
|
|
#define LIL_OUTLINE
|
|
#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" |