Added transparent depth pre pass;
Added transparent depth post pass; Added transparent depth write; Added transparent back then front render; Added transparent motion vector write;
This commit is contained in:
@@ -7,9 +7,6 @@ Shader "HDRP/Toon"
|
||||
_AlphaCutoffShadow("_AlphaCutoffShadow", Range(0.0, 1.0)) = 0.5
|
||||
_AlphaCutoffPrepass("_AlphaCutoffPrepass", Range(0.0, 1.0)) = 0.5
|
||||
_AlphaCutoffPostpass("_AlphaCutoffPostpass", Range(0.0, 1.0)) = 0.5
|
||||
[ToggleUI] _TransparentDepthPrepassEnable("_TransparentDepthPrepassEnable", Integer) = 0
|
||||
[ToggleUI] _TransparentBackfaceEnable("_TransparentBackfaceEnable", Integer) = 0
|
||||
[ToggleUI] _TransparentDepthPostpassEnable("_TransparentDepthPostpassEnable", Integer) = 0
|
||||
_TransparentSortPriority("_TransparentSortPriority", Integer) = 0
|
||||
|
||||
// Transparency
|
||||
@@ -20,7 +17,6 @@ Shader "HDRP/Toon"
|
||||
_TransmittanceColor("Transmittance Color", Color) = (1.0, 1.0, 1.0)
|
||||
_TransmittanceColorMap("TransmittanceColorMap", 2D) = "white" {}
|
||||
_ATDistance("Transmittance Absorption Distance", Float) = 1.0
|
||||
[ToggleUI] _TransparentWritingMotionVec("_TransparentWritingMotionVec", Integer) = 0
|
||||
|
||||
// Forward
|
||||
[HideInInspector] _StencilRef("_StencilRef", Integer) = 0 // StencilUsage.Clear
|
||||
@@ -45,7 +41,6 @@ Shader "HDRP/Toon"
|
||||
[HideInInspector] _AlphaSrcBlend("__alphaSrc", Integer) = 1
|
||||
[HideInInspector] _AlphaDstBlend("__alphaDst", Integer) = 0
|
||||
[HideInInspector][ToggleUI] _ZWrite("__zw", Integer) = 1
|
||||
[HideInInspector][ToggleUI] _TransparentZWrite("_TransparentZWrite", Integer) = 0
|
||||
[HideInInspector] _CullModeForward("__cullmodeForward", Integer) = 2.0 // This mode is dedicated to Forward to correctly handle backface then front face rendering thin transparent
|
||||
[HideInInspector] _ZTestDepthEqualForOpaque("_ZTestDepthEqualForOpaque", Integer) = 4 // Less equal
|
||||
[HideInInspector] _ZTestModeDistortion("_ZTestModeDistortion", Integer) = 8
|
||||
@@ -75,7 +70,15 @@ Shader "HDRP/Toon"
|
||||
|
||||
// Surface Options
|
||||
[Enum(Misaki.HdrpToon.SurfaceType)]_SurfaceType("__surfacetype", Integer) = 0
|
||||
|
||||
[Popup(_ENABLE_FOG_ON_TRANSPARENT)] _FogOnTransparent("Fog On Transparent", Integer) = 0
|
||||
[ToggleUI] _TransparentDepthPrepassEnable("Transparent Depth Prepass Enable", Integer) = 0
|
||||
[ToggleUI] _TransparentDepthPostpassEnable("Transparent Depth Postpass Enable", Integer) = 0
|
||||
[ToggleUI] _TransparentBackfaceEnable("Transparent Backface Enable", Integer) = 0
|
||||
[ToggleUI] _TransparentZWrite("_TransparentZWrite", Integer) = 0
|
||||
[PopupUI] _ReceivesSSRTransparent("Receives SSR Transparent", Integer) = 0
|
||||
[Popup(_TRANSPARENT_WRITES_MOTION_VEC)] _TransparentWritingMotionVec ("Transparent Writing Motion Vector", Integer) = 0
|
||||
|
||||
[Popup(_ALPHATEST_ON)] _AlphaCutoffEnable("Alpha Cutoff Enable", Integer) = 0
|
||||
_AlphaCutoff("Alpha Cutoff", Range(0.0, 1.0)) = 0.5
|
||||
[Enum(Off, 0, Front, 1, Back, 2)] _CullMode("Cull Mode", Integer) = 2
|
||||
@@ -252,6 +255,14 @@ Shader "HDRP/Toon"
|
||||
_TexWorldScaleEmissive("Scale to apply on world coordinate", Float) = 1.0
|
||||
[HideInInspector] _UVMappingMaskEmissive("_UVMappingMaskEmissive", Color) = (1, 0, 0, 0)
|
||||
|
||||
_SubsurfaceMask("Subsurface Radius", Range(0.0, 1.0)) = 1.0
|
||||
_SubsurfaceMaskMap("Subsurface Radius Map", 2D) = "white" {}
|
||||
_TransmissionMask("Transmission Mask", Range(0.0, 1.0)) = 1.0
|
||||
_TransmissionMaskMap("Transmission Mask Map", 2D) = "white" {}
|
||||
_Thickness("Thickness", Float) = 1.0
|
||||
_ThicknessMap("Thickness Map", 2D) = "white" {}
|
||||
_ThicknessRemap("Thickness Remap", Vector) = (0, 1, 0, 0)
|
||||
|
||||
[HideInInspector] _DiffusionProfile("Obsolete, kept for migration purpose", Integer) = 0
|
||||
[HideInInspector] _DiffusionProfileAsset("Diffusion Profile Asset", Vector) = (0, 0, 0, 0)
|
||||
[HideInInspector] _DiffusionProfileHash("Diffusion Profile Hash", Float) = 0
|
||||
@@ -645,9 +656,15 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature _SURFACE_TYPE_TRANSPARENT
|
||||
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_TRANSPARENT_DEPTH_PREPASS
|
||||
|
||||
// If the transparent surface should have reflections, then we should output normal
|
||||
#if !defined(_DISABLE_SSR_TRANSPARENT)
|
||||
#define WRITE_NORMAL_BUFFER
|
||||
#endif
|
||||
|
||||
#define SHADERPASS SHADERPASS_DEPTH_ONLY
|
||||
#define CUTOFF_TRANSPARENT_DEPTH_PREPASS
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Material.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.high-definition/Runtime/Material/Lit/ShaderPass/LitDepthPass.hlsl"
|
||||
@@ -684,6 +701,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local_fragment _ENABLE_FOG_ON_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#pragma multi_compile _ DEBUG_DISPLAY
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
@@ -808,6 +826,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local_fragment _ENABLE_FOG_ON_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
|
||||
#define PUNCTUAL_SHADOW_LOW
|
||||
@@ -1064,6 +1083,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local_raytracing _NORMALMAP
|
||||
#pragma shader_feature_local_raytracing _ALPHATEST_ON
|
||||
#pragma shader_feature_raytracing _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_INDIRECT
|
||||
|
||||
@@ -1117,6 +1137,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local_raytracing _NORMALMAP
|
||||
#pragma shader_feature_local_raytracing _ALPHATEST_ON
|
||||
#pragma shader_feature_raytracing _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_FORWARD
|
||||
|
||||
@@ -1171,6 +1192,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local_raytracing _NORMALMAP
|
||||
#pragma shader_feature_local_raytracing _ALPHATEST_ON
|
||||
#pragma shader_feature_raytracing _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_GBUFFER
|
||||
|
||||
@@ -1206,6 +1228,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local_raytracing _NORMALMAP
|
||||
#pragma shader_feature_local_raytracing _ALPHATEST_ON
|
||||
#pragma shader_feature_raytracing _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_RAYTRACING_VISIBILITY
|
||||
#pragma multi_compile _ TRANSPARENT_COLOR_SHADOW
|
||||
@@ -1241,6 +1264,7 @@ Shader "HDRP/Toon"
|
||||
#pragma shader_feature_local_raytracing _NORMALMAP
|
||||
#pragma shader_feature_local_raytracing _ALPHATEST_ON
|
||||
#pragma shader_feature_raytracing _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local _DISABLE_SSR_TRANSPARENT
|
||||
|
||||
#define SHADERPASS SHADERPASS_PATH_TRACING
|
||||
|
||||
|
||||
Reference in New Issue
Block a user