46 lines
1.2 KiB
Plaintext
46 lines
1.2 KiB
Plaintext
Shader "Hidden/Universal Render Pipeline/Stop NaN"
|
|
{
|
|
HLSLINCLUDE
|
|
#pragma exclude_renderers gles
|
|
#pragma multi_compile _ _USE_DRAW_PROCEDURAL
|
|
#pragma exclude_renderers gles
|
|
#pragma target 3.5
|
|
|
|
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
|
#include "Packages/com.unity.render-pipelines.universal/Shaders/PostProcessing/Common.hlsl"
|
|
|
|
#define NAN_COLOR half3(0.0, 0.0, 0.0)
|
|
|
|
TEXTURE2D_X(_SourceTex);
|
|
|
|
half4 Frag(Varyings input) : SV_Target
|
|
{
|
|
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input);
|
|
half3 color = SAMPLE_TEXTURE2D_X(_SourceTex, sampler_PointClamp, UnityStereoTransformScreenSpaceTex(input.uv)).xyz;
|
|
|
|
if (AnyIsNaN(color) || AnyIsInf(color))
|
|
color = NAN_COLOR;
|
|
|
|
return half4(color, 1.0);
|
|
}
|
|
|
|
ENDHLSL
|
|
|
|
SubShader
|
|
{
|
|
Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline"}
|
|
LOD 100
|
|
ZTest Always ZWrite Off Cull Off
|
|
|
|
Pass
|
|
{
|
|
Name "Stop NaN"
|
|
|
|
HLSLPROGRAM
|
|
#pragma vertex FullscreenVert
|
|
#pragma fragment Frag
|
|
ENDHLSL
|
|
}
|
|
}
|
|
}
|