#line 1 "unknown"

#line 1 "D:\The.Elder.Scrolls.V.Skyrim.VR.v1.4.0.15.8\The Elder Scrolls V Skyrim VR\reshade-shaders\Shaders\StageDepth.fx"
#line 1 "D:\The.Elder.Scrolls.V.Skyrim.VR.v1.4.0.15.8\The Elder Scrolls V Skyrim VR\reshade-shaders\Shaders\ReShade.fxh"
#line 50
namespace ReShade
{
#line 61
static const float AspectRatio = 3360 * (1.0 / 2002);
static const float2 PixelSize = float2((1.0 / 3360), (1.0 / 2002));
static const float2 ScreenSize = float2(3360, 2002);
#line 67
texture BackBufferTex : COLOR;
texture DepthBufferTex : DEPTH;
#line 70
sampler BackBuffer { Texture = BackBufferTex; };
sampler DepthBuffer { Texture = DepthBufferTex; };
#line 74
float GetLinearizedDepth(float2 texcoord)
{
#line 79
texcoord.x /=  1;
texcoord.y /=  1;
#line 84
texcoord.x -=  0 / 2.000000001;
#line 89
texcoord.y +=  0 / 2.000000001;
#line 91
float depth = tex2Dlod(DepthBuffer, float4(texcoord, 0, 0)).x *  1;
#line 100
const float N = 1.0;
depth /= 1000.0 - depth * (1000.0 - N);
#line 103
return depth;
}
}
#line 108
void PostProcessVS(in uint id : SV_VertexID, out float4 position : SV_Position, out float2 texcoord : TEXCOORD)
{
texcoord.x = (id == 2) ? 2.0 : 0.0;
texcoord.y = (id == 1) ? 2.0 : 0.0;
position = float4(texcoord * float2(2.0, -2.0) + float2(-1.0, 1.0), 0.0, 1.0);
}
#line 37 "D:\The.Elder.Scrolls.V.Skyrim.VR.v1.4.0.15.8\The Elder Scrolls V Skyrim VR\reshade-shaders\Shaders\StageDepth.fx"
#line 1 "D:\The.Elder.Scrolls.V.Skyrim.VR.v1.4.0.15.8\The Elder Scrolls V Skyrim VR\reshade-shaders\Shaders\ReShadeUI.fxh"
#line 41 "D:\The.Elder.Scrolls.V.Skyrim.VR.v1.4.0.15.8\The Elder Scrolls V Skyrim VR\reshade-shaders\Shaders\StageDepth.fx"
#line 43
uniform float Stage_Opacity <      ui_type = "slider"; 
ui_label = "Opacity";
ui_tooltip = "Set the transparency of the image.";
ui_min = 0.0;
ui_max = 1.0;
ui_step = 0.002;
> = 1.0;
#line 51
uniform float Stage_depth <      ui_type = "slider"; 
ui_min = 0.0;
ui_max = .987;
ui_label = "Depth Slider";
> = 0.97;
#line 57
texture Stage_texture <source="Stage.png";> { Width = 3360; Height = 2002; Format= RGBA8; };
#line 59
sampler Stage_sampler { Texture = Stage_texture; };
#line 61
void PS_StageDepth(in float4 position : SV_Position, in float2 texcoord : TEXCOORD, out float3 color : SV_Target)
{
float4 stage = tex2D(Stage_sampler, texcoord).rgba;
color = tex2D(ReShade::BackBuffer, texcoord).rgb;
#line 66
float depth = 1 - ReShade::GetLinearizedDepth(texcoord).r;
#line 68
if( depth < Stage_depth )
{
color = lerp(color, stage.rgb, stage.a * Stage_Opacity);
}
}
#line 74
technique StageDepth
{
pass
{
VertexShader = PostProcessVS;
PixelShader = PS_StageDepth;
}
}

