You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
2.0 KiB
60 lines
2.0 KiB
Shader "Hidden/Universal Render Pipeline/Edge Adaptive Spatial Upsampling" |
|
{ |
|
HLSLINCLUDE |
|
#pragma multi_compile_vertex _ _USE_DRAW_PROCEDURAL |
|
|
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Common.hlsl" |
|
#include "Packages/com.unity.render-pipelines.core/ShaderLibrary/Filtering.hlsl" |
|
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl" |
|
#include "Packages/com.unity.render-pipelines.universal/Shaders/PostProcessing/Common.hlsl" |
|
|
|
TEXTURE2D_X(_SourceTex); |
|
float4 _SourceSize; |
|
|
|
#define FSR_INPUT_TEXTURE _SourceTex |
|
#define FSR_INPUT_SAMPLER sampler_LinearClamp |
|
|
|
#include "Packages/com.unity.render-pipelines.core/Runtime/PostProcessing/Shaders/FSRCommon.hlsl" |
|
|
|
half4 FragEASU(Varyings input) : SV_Target |
|
{ |
|
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input); |
|
|
|
float2 uv = UnityStereoTransformScreenSpaceTex(input.uv); |
|
uint2 integerUv = uv * _ScreenParams.xy; |
|
|
|
half3 color = ApplyEASU(integerUv); |
|
|
|
// Convert to linearly encoded color before we pass our output over to RCAS |
|
#if UNITY_COLORSPACE_GAMMA |
|
color = GetSRGBToLinear(color); |
|
#else |
|
color = Gamma20ToLinear(color); |
|
#endif |
|
|
|
return half4(color, 1.0); |
|
} |
|
|
|
ENDHLSL |
|
|
|
/// Shader that performs the EASU (upscaling) component of the two part FidelityFX Super Resolution technique |
|
/// The second part of the technique (RCAS) is handled in the FinalPost shader |
|
/// Note: This shader requires shader target 4.5 because it relies on texture gather instructions |
|
SubShader |
|
{ |
|
Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline"} |
|
LOD 100 |
|
ZTest Always ZWrite Off Cull Off |
|
|
|
Pass |
|
{ |
|
Name "EASU" |
|
|
|
HLSLPROGRAM |
|
#pragma vertex FullscreenVert |
|
#pragma fragment FragEASU |
|
#pragma target 4.5 |
|
ENDHLSL |
|
} |
|
} |
|
}
|
|
|