Reorganize project folders and clean up editor tooling
Move editor scripts to Assets/Scripts/Editor (PlaySceneWindow, SceneCollection), move DefaultNetworkPrefabs and the Main Camera custom blends asset into Assets/Settings, and shelve the unused HeroCutout shader/include under Assets/Unused. Rename the Chameleon background texture, delete the obsolete DefaultParentForEditor script and New Lighting Settings asset, add a The Room SceneCollection asset, and drop the redundant Assets menu entry from the StraightenKnees tool.
This commit is contained in:
1 parent
42c5fcc323
commit
e351336b39
21 files changed
+25
-268
No files matched your search
@@ -1,46 +0,0 @@
|
||||
#ifndef HERO_CUTOUT_INCLUDED
|
||||
#define HERO_CUTOUT_INCLUDED
|
||||
|
||||
// Screen-space radial "hero cutout": clips occluder fragments that sit inside a circle around the
|
||||
// on-screen player AND in front of it, punching a clean see-through hole toward the character.
|
||||
//
|
||||
// These two globals are driven every frame by HeroCutout.cs (Shader.SetGlobalVector). They live
|
||||
// OUTSIDE UnityPerMaterial, so the SRP Batcher is unaffected. When the effect is disabled
|
||||
// (_HeroCutoutDepthOn.y < 0.5, also the zero-initialised default) ApplyHeroCutout early-outs and the
|
||||
// shader renders exactly like URP/Lit.
|
||||
// _HeroCutoutPosRadius : xy = hero viewport pos (0..1, bottom-left), z = radius, w = feather
|
||||
// radius/feather are in normalized viewport-HEIGHT units
|
||||
// _HeroCutoutDepthOn : x = hero eye-space depth (incl. bias), y = enabled (0/1)
|
||||
float4 _HeroCutoutPosRadius;
|
||||
float4 _HeroCutoutDepthOn;
|
||||
|
||||
// Interleaved-gradient noise -> screen-door dither, gives the circle a soft edge with no extra
|
||||
// textures or includes.
|
||||
float HeroCutoutDither(float2 positionSS)
|
||||
{
|
||||
return frac(52.9829189 * frac(dot(positionSS, float2(0.06711056, 0.00583715))));
|
||||
}
|
||||
|
||||
void ApplyHeroCutout(float4 positionCS)
|
||||
{
|
||||
if (_HeroCutoutDepthOn.y < 0.5)
|
||||
return;
|
||||
|
||||
// Flip-correct screen UV (matches Camera.WorldToViewportPoint's bottom-left convention).
|
||||
float2 uv = GetNormalizedScreenSpaceUV(positionCS);
|
||||
float2 delta = uv - _HeroCutoutPosRadius.xy;
|
||||
delta.x *= _ScreenParams.x / max(_ScreenParams.y, 1.0); // aspect-correct -> a round circle
|
||||
float dist = length(delta);
|
||||
|
||||
float radius = _HeroCutoutPosRadius.z;
|
||||
float feather = max(_HeroCutoutPosRadius.w, 1e-4);
|
||||
float inside = 1.0 - smoothstep(radius - feather, radius, dist); // 1 inside, 0 outside
|
||||
|
||||
// Only hole geometry between the camera and the hero; anything at/behind the player stays solid.
|
||||
float eyeDepth = LinearEyeDepth(positionCS.z, _ZBufferParams);
|
||||
float inFront = step(eyeDepth, _HeroCutoutDepthOn.x);
|
||||
|
||||
float cut = inside * inFront;
|
||||
clip(HeroCutoutDither(positionCS.xy) - cut);
|
||||
}
|
||||
#endif
|
||||
@@ -1,7 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8fbf575abd6dde145ac13a28b92a87a0
|
||||
ShaderIncludeImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,581 +0,0 @@
|
||||
// Drop-in clone of "Universal Render Pipeline/Lit" (URP 17) that adds a screen-space radial
|
||||
// "hero cutout": occluder geometry between the third-person camera and the player is clipped away
|
||||
// in a soft circle (see HeroCutout.hlsl + HeroCutout.cs).
|
||||
//
|
||||
// It is a faithful copy of URP's Lit.shader - same properties, keywords and includes, so material
|
||||
// values transfer 1:1 and the inspector GUI keeps working. The ONLY change is in four passes
|
||||
// (ForwardLit, ShadowCaster, DepthOnly, DepthNormals): the stock fragment entry point is replaced by
|
||||
// a thin wrapper that runs ApplyHeroCutout() and then delegates to URP's original fragment. All
|
||||
// shading is therefore URP's own - zero reimplementation, so it stays correct across URP updates.
|
||||
Shader "Custom/HeroCutoutLit"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
// Specular vs Metallic workflow
|
||||
_WorkflowMode("WorkflowMode", Float) = 1.0
|
||||
|
||||
[MainTexture] _BaseMap("Albedo", 2D) = "white" {}
|
||||
[MainColor] _BaseColor("Color", Color) = (1,1,1,1)
|
||||
|
||||
_Cutoff("Alpha Cutoff", Range(0.0, 1.0)) = 0.5
|
||||
|
||||
_Smoothness("Smoothness", Range(0.0, 1.0)) = 0.5
|
||||
_SmoothnessTextureChannel("Smoothness texture channel", Float) = 0
|
||||
|
||||
_Metallic("Metallic", Range(0.0, 1.0)) = 0.0
|
||||
_MetallicGlossMap("Metallic", 2D) = "white" {}
|
||||
|
||||
_SpecColor("Specular", Color) = (0.2, 0.2, 0.2)
|
||||
_SpecGlossMap("Specular", 2D) = "white" {}
|
||||
|
||||
[ToggleOff] _SpecularHighlights("Specular Highlights", Float) = 1.0
|
||||
[ToggleOff] _EnvironmentReflections("Environment Reflections", Float) = 1.0
|
||||
|
||||
_BumpScale("Scale", Float) = 1.0
|
||||
_BumpMap("Normal Map", 2D) = "bump" {}
|
||||
|
||||
_Parallax("Scale", Range(0.005, 0.08)) = 0.005
|
||||
_ParallaxMap("Height Map", 2D) = "black" {}
|
||||
|
||||
_OcclusionStrength("Strength", Range(0.0, 1.0)) = 1.0
|
||||
_OcclusionMap("Occlusion", 2D) = "white" {}
|
||||
|
||||
[HDR] _EmissionColor("Color", Color) = (0,0,0)
|
||||
_EmissionMap("Emission", 2D) = "white" {}
|
||||
|
||||
_DetailMask("Detail Mask", 2D) = "white" {}
|
||||
_DetailAlbedoMapScale("Scale", Range(0.0, 2.0)) = 1.0
|
||||
_DetailAlbedoMap("Detail Albedo x2", 2D) = "linearGrey" {}
|
||||
_DetailNormalMapScale("Scale", Range(0.0, 2.0)) = 1.0
|
||||
[Normal] _DetailNormalMap("Normal Map", 2D) = "bump" {}
|
||||
|
||||
// SRP batching compatibility for Clear Coat (Not used in Lit)
|
||||
[HideInInspector] _ClearCoatMask("_ClearCoatMask", Float) = 0.0
|
||||
[HideInInspector] _ClearCoatSmoothness("_ClearCoatSmoothness", Float) = 0.0
|
||||
|
||||
// Blending state
|
||||
_Surface("__surface", Float) = 0.0
|
||||
_Blend("__blend", Float) = 0.0
|
||||
_Cull("__cull", Float) = 2.0
|
||||
[ToggleUI] _AlphaClip("__clip", Float) = 0.0
|
||||
[HideInInspector] _SrcBlend("__src", Float) = 1.0
|
||||
[HideInInspector] _DstBlend("__dst", Float) = 0.0
|
||||
[HideInInspector] _SrcBlendAlpha("__srcA", Float) = 1.0
|
||||
[HideInInspector] _DstBlendAlpha("__dstA", Float) = 0.0
|
||||
[HideInInspector] _ZWrite("__zw", Float) = 1.0
|
||||
[HideInInspector] _BlendModePreserveSpecular("_BlendModePreserveSpecular", Float) = 1.0
|
||||
[HideInInspector] _AlphaToMask("__alphaToMask", Float) = 0.0
|
||||
[HideInInspector] _AddPrecomputedVelocity("_AddPrecomputedVelocity", Float) = 0.0
|
||||
[HideInInspector] _XRMotionVectorsPass("_XRMotionVectorsPass", Float) = 1.0
|
||||
|
||||
[ToggleUI] _ReceiveShadows("Receive Shadows", Float) = 1.0
|
||||
// Editmode props
|
||||
_QueueOffset("Queue offset", Float) = 0.0
|
||||
|
||||
// ObsoleteProperties
|
||||
[HideInInspector] _MainTex("BaseMap", 2D) = "white" {}
|
||||
[HideInInspector] _Color("Base Color", Color) = (1, 1, 1, 1)
|
||||
[HideInInspector] _GlossMapScale("Smoothness", Float) = 0.0
|
||||
[HideInInspector] _Glossiness("Smoothness", Float) = 0.0
|
||||
[HideInInspector] _GlossyReflections("EnvironmentReflections", Float) = 0.0
|
||||
|
||||
[HideInInspector][NoScaleOffset]unity_Lightmaps("unity_Lightmaps", 2DArray) = "" {}
|
||||
[HideInInspector][NoScaleOffset]unity_LightmapsInd("unity_LightmapsInd", 2DArray) = "" {}
|
||||
[HideInInspector][NoScaleOffset]unity_ShadowMasks("unity_ShadowMasks", 2DArray) = "" {}
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"RenderType" = "Opaque"
|
||||
"RenderPipeline" = "UniversalPipeline"
|
||||
"UniversalMaterialType" = "Lit"
|
||||
"IgnoreProjector" = "True"
|
||||
}
|
||||
LOD 300
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// Forward pass. Shades all light in a single pass. GI + emission + Fog
|
||||
Pass
|
||||
{
|
||||
Name "ForwardLit"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "UniversalForward"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
Blend[_SrcBlend][_DstBlend], [_SrcBlendAlpha][_DstBlendAlpha]
|
||||
ZWrite[_ZWrite]
|
||||
Cull[_Cull]
|
||||
AlphaToMask[_AlphaToMask]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex LitPassVertex
|
||||
#pragma fragment HeroForwardFragment
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _PARALLAXMAP
|
||||
#pragma shader_feature_local _RECEIVE_SHADOWS_OFF
|
||||
#pragma shader_feature_local _ _DETAIL_MULX2 _DETAIL_SCALED
|
||||
#pragma shader_feature_local_fragment _SURFACE_TYPE_TRANSPARENT
|
||||
#pragma shader_feature_local_fragment _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _ _ALPHAPREMULTIPLY_ON _ALPHAMODULATE_ON
|
||||
#pragma shader_feature_local_fragment _EMISSION
|
||||
#pragma shader_feature_local_fragment _METALLICSPECGLOSSMAP
|
||||
#pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
#pragma shader_feature_local_fragment _OCCLUSIONMAP
|
||||
#pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
|
||||
#pragma shader_feature_local_fragment _ENVIRONMENTREFLECTIONS_OFF
|
||||
#pragma shader_feature_local_fragment _SPECULAR_SETUP
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
#pragma multi_compile _ EVALUATE_SH_MIXED EVALUATE_SH_VERTEX
|
||||
#pragma multi_compile_fragment _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BOX_PROJECTION
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_ATLAS
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT _SHADOWS_SOFT_LOW _SHADOWS_SOFT_MEDIUM _SHADOWS_SOFT_HIGH
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_OCCLUSION
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_IRRADIANCE
|
||||
#pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3
|
||||
#pragma multi_compile_fragment _ _LIGHT_COOKIES
|
||||
#pragma multi_compile _ _LIGHT_LAYERS
|
||||
#pragma multi_compile _ _CLUSTER_LIGHT_LOOP
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl"
|
||||
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ LIGHTMAP_SHADOW_MIXING
|
||||
#pragma multi_compile _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ LIGHTMAP_BICUBIC_SAMPLING
|
||||
#pragma multi_compile_fragment _ REFLECTION_PROBE_ROTATION
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile _ USE_LEGACY_LIGHTMAPS
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
#pragma multi_compile_fragment _ DEBUG_DISPLAY
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Fog.hlsl"
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ProbeVolumeVariants.hlsl"
|
||||
|
||||
//--------------------------------------
|
||||
// GPU Instancing
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options renderinglayer
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitForwardPass.hlsl"
|
||||
#include "HeroCutout.hlsl"
|
||||
|
||||
// Radial cutout, then delegate to URP's stock LitPassFragment for all shading.
|
||||
void HeroForwardFragment(
|
||||
Varyings input
|
||||
, out half4 outColor : SV_Target0
|
||||
#ifdef _WRITE_RENDERING_LAYERS
|
||||
, out uint outRenderingLayers : SV_Target1
|
||||
#endif
|
||||
)
|
||||
{
|
||||
ApplyHeroCutout(input.positionCS);
|
||||
LitPassFragment(input, outColor
|
||||
#ifdef _WRITE_RENDERING_LAYERS
|
||||
, outRenderingLayers
|
||||
#endif
|
||||
);
|
||||
}
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "ShadowCaster"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "ShadowCaster"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
ZWrite On
|
||||
ZTest LEqual
|
||||
ColorMask 0
|
||||
Cull[_Cull]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
// NOTE: shadows are intentionally NOT cut out. ShadowCaster runs in light clip space,
|
||||
// so the camera-space radial mask in ApplyHeroCutout would be meaningless there (and the
|
||||
// occluder is conceptually "still there", just visually see-through). Stock fragment.
|
||||
#pragma vertex ShadowPassVertex
|
||||
#pragma fragment ShadowPassFragment
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
|
||||
//--------------------------------------
|
||||
// GPU Instancing
|
||||
#pragma multi_compile_instancing
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
|
||||
// This is used during shadow map generation to differentiate between directional and punctual light shadows, as they use different formulas to apply Normal Bias
|
||||
#pragma multi_compile_vertex _ _CASTING_PUNCTUAL_LIGHT_SHADOW
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/ShadowCasterPass.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "GBuffer"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "UniversalGBuffer"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
ZWrite[_ZWrite]
|
||||
ZTest LEqual
|
||||
Cull[_Cull]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 4.5
|
||||
|
||||
// Deferred Rendering Path does not support the OpenGL-based graphics API:
|
||||
// Desktop OpenGL, OpenGL ES 3.0, WebGL 2.0.
|
||||
#pragma exclude_renderers gles3 glcore
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex LitGBufferPassVertex
|
||||
#pragma fragment LitGBufferPassFragment
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local_fragment _ALPHATEST_ON
|
||||
//#pragma shader_feature_local_fragment _ALPHAPREMULTIPLY_ON
|
||||
#pragma shader_feature_local_fragment _EMISSION
|
||||
#pragma shader_feature_local_fragment _METALLICSPECGLOSSMAP
|
||||
#pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
#pragma shader_feature_local_fragment _OCCLUSIONMAP
|
||||
#pragma shader_feature_local _PARALLAXMAP
|
||||
#pragma shader_feature_local _ _DETAIL_MULX2 _DETAIL_SCALED
|
||||
|
||||
#pragma shader_feature_local_fragment _SPECULARHIGHLIGHTS_OFF
|
||||
#pragma shader_feature_local_fragment _ENVIRONMENTREFLECTIONS_OFF
|
||||
#pragma shader_feature_local_fragment _SPECULAR_SETUP
|
||||
#pragma shader_feature_local _RECEIVE_SHADOWS_OFF
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS _MAIN_LIGHT_SHADOWS_CASCADE _MAIN_LIGHT_SHADOWS_SCREEN
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS
|
||||
//#pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BLENDING
|
||||
#pragma multi_compile_fragment _ _REFLECTION_PROBE_BOX_PROJECTION
|
||||
#pragma multi_compile_fragment _ _SHADOWS_SOFT _SHADOWS_SOFT_LOW _SHADOWS_SOFT_MEDIUM _SHADOWS_SOFT_HIGH
|
||||
#pragma multi_compile_fragment _ _DBUFFER_MRT1 _DBUFFER_MRT2 _DBUFFER_MRT3
|
||||
#pragma multi_compile_fragment _ _RENDER_PASS_ENABLED
|
||||
#pragma multi_compile _ _CLUSTER_LIGHT_LOOP
|
||||
#pragma multi_compile _ EVALUATE_SH_MIXED EVALUATE_SH_VERTEX
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.core/ShaderLibrary/FoveatedRenderingKeywords.hlsl"
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ LIGHTMAP_SHADOW_MIXING
|
||||
#pragma multi_compile _ SHADOWS_SHADOWMASK
|
||||
#pragma multi_compile _ DIRLIGHTMAP_COMBINED
|
||||
#pragma multi_compile _ LIGHTMAP_ON
|
||||
#pragma multi_compile_fragment _ LIGHTMAP_BICUBIC_SAMPLING
|
||||
#pragma multi_compile_fragment _ REFLECTION_PROBE_ROTATION
|
||||
#pragma multi_compile _ DYNAMICLIGHTMAP_ON
|
||||
#pragma multi_compile _ USE_LEGACY_LIGHTMAPS
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
#pragma multi_compile_fragment _ _GBUFFER_NORMALS_OCT
|
||||
#pragma multi_compile_fragment _ _SCREEN_SPACE_IRRADIANCE
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ProbeVolumeVariants.hlsl"
|
||||
|
||||
//--------------------------------------
|
||||
// GPU Instancing
|
||||
#pragma multi_compile_instancing
|
||||
#pragma instancing_options renderinglayer
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitGBufferPass.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "DepthOnly"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "DepthOnly"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
ZWrite On
|
||||
ColorMask R
|
||||
Cull[_Cull]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex DepthOnlyVertex
|
||||
#pragma fragment HeroDepthOnlyFragment
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
|
||||
//--------------------------------------
|
||||
// GPU Instancing
|
||||
#pragma multi_compile_instancing
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/DepthOnlyPass.hlsl"
|
||||
#include "HeroCutout.hlsl"
|
||||
|
||||
half HeroDepthOnlyFragment(Varyings input) : SV_TARGET
|
||||
{
|
||||
ApplyHeroCutout(input.positionCS);
|
||||
return DepthOnlyFragment(input);
|
||||
}
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// This pass is used when drawing to a _CameraNormalsTexture texture
|
||||
Pass
|
||||
{
|
||||
Name "DepthNormals"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "DepthNormals"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
ZWrite On
|
||||
Cull[_Cull]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex DepthNormalsVertex
|
||||
#pragma fragment HeroDepthNormalsFragment
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local _NORMALMAP
|
||||
#pragma shader_feature_local _PARALLAXMAP
|
||||
#pragma shader_feature_local _ _DETAIL_MULX2 _DETAIL_SCALED
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
|
||||
// -------------------------------------
|
||||
// Unity defined keywords
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
|
||||
// -------------------------------------
|
||||
// Universal Pipeline keywords
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/RenderingLayers.hlsl"
|
||||
|
||||
//--------------------------------------
|
||||
// GPU Instancing
|
||||
#pragma multi_compile_instancing
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitDepthNormalsPass.hlsl"
|
||||
#include "HeroCutout.hlsl"
|
||||
|
||||
void HeroDepthNormalsFragment(
|
||||
Varyings input
|
||||
, out half4 outNormalWS : SV_Target0
|
||||
#ifdef _WRITE_RENDERING_LAYERS
|
||||
, out uint outRenderingLayers : SV_Target1
|
||||
#endif
|
||||
)
|
||||
{
|
||||
ApplyHeroCutout(input.positionCS);
|
||||
DepthNormalsFragment(input, outNormalWS
|
||||
#ifdef _WRITE_RENDERING_LAYERS
|
||||
, outRenderingLayers
|
||||
#endif
|
||||
);
|
||||
}
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
// This pass it not used during regular rendering, only for lightmap baking.
|
||||
Pass
|
||||
{
|
||||
Name "Meta"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "Meta"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
Cull Off
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex UniversalVertexMeta
|
||||
#pragma fragment UniversalFragmentMetaLit
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local_fragment _SPECULAR_SETUP
|
||||
#pragma shader_feature_local_fragment _EMISSION
|
||||
#pragma shader_feature_local_fragment _METALLICSPECGLOSSMAP
|
||||
#pragma shader_feature_local_fragment _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _ _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A
|
||||
#pragma shader_feature_local _ _DETAIL_MULX2 _DETAIL_SCALED
|
||||
#pragma shader_feature_local_fragment _SPECGLOSSMAP
|
||||
#pragma shader_feature EDITOR_VISUALIZATION
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitMetaPass.hlsl"
|
||||
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "Universal2D"
|
||||
Tags
|
||||
{
|
||||
"LightMode" = "Universal2D"
|
||||
}
|
||||
|
||||
// -------------------------------------
|
||||
// Render State Commands
|
||||
Blend[_SrcBlend][_DstBlend]
|
||||
ZWrite[_ZWrite]
|
||||
Cull[_Cull]
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma target 2.0
|
||||
|
||||
// -------------------------------------
|
||||
// Shader Stages
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
// -------------------------------------
|
||||
// Material Keywords
|
||||
#pragma shader_feature_local_fragment _ALPHATEST_ON
|
||||
#pragma shader_feature_local_fragment _ALPHAPREMULTIPLY_ON
|
||||
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/DOTS.hlsl"
|
||||
|
||||
// -------------------------------------
|
||||
// Includes
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/Utils/Universal2D.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "MotionVectors"
|
||||
Tags { "LightMode" = "MotionVectors" }
|
||||
ColorMask RG
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
#pragma shader_feature_local_vertex _ADD_PRECOMPUTED_VELOCITY
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ObjectMotionVectors.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "XRMotionVectors"
|
||||
Tags { "LightMode" = "XRMotionVectors" }
|
||||
ColorMask RGBA
|
||||
|
||||
// Stencil write for obj motion pixels
|
||||
Stencil
|
||||
{
|
||||
WriteMask 1
|
||||
Ref 1
|
||||
Comp Always
|
||||
Pass Replace
|
||||
}
|
||||
|
||||
HLSLPROGRAM
|
||||
#pragma shader_feature_local _ALPHATEST_ON
|
||||
#pragma multi_compile _ LOD_FADE_CROSSFADE
|
||||
#pragma shader_feature_local_vertex _ADD_PRECOMPUTED_VELOCITY
|
||||
#define APPLICATION_SPACE_WARP_MOTION 1
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/LitInput.hlsl"
|
||||
#include_with_pragmas "Packages/com.unity.render-pipelines.universal/ShaderLibrary/ObjectMotionVectors.hlsl"
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
|
||||
FallBack "Hidden/Universal Render Pipeline/FallbackError"
|
||||
CustomEditor "UnityEditor.Rendering.Universal.ShaderGUI.LitShader"
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 023c98a32f6cc00478e50479839530c5
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in new issue
Block a user