Film.fx" float g_sldContrast; #line 35 "OldFilm.fx" float g_sldVign; #line 39 "OldFilm.fx" float g_sldFilterStrength; #line 43 "OldFilm.fx" float g_sldScratchesStrength; #line 52 "OldFilm.fx" float timer; }; #line 28 "NvCommon.fxh" Texture2D __V__NV__ColorInputTex : register(t0); Texture2D __srgbV__NV__ColorInputTex : register(t1); #line 29 Texture2D __V__NV__DepthInputTex : register(t2); Texture2D __srgbV__NV__DepthInputTex : register(t3); SamplerState __s0 : register(s0); #line 30 static const __sampler2D V__NV__ColorInput = { __V__NV__ColorInputTex, __s0 }; #line 31 static const __sampler2D V__NV__DepthInput = { __V__NV__DepthInputTex, __s0 }; #line 71 float F__NV__GetLuma( #line 71 in float3 color) { #line 74 float _16 = dot(float3(2.98999995e-01, 5.87000012e-01, 1.14000000e-01), color); return _16; } #line 78 struct S__VSOut { float4 pos : SV_POSITION; float2 uv : TEXCOORD0; }; #line 84 S__VSOut F__VSMain( #line 84 in uint vid : SV_VERTEXID) { #line 86 S__VSOut o = (S__VSOut)0; #line 87 bool _24 = vid == 2; #line 87 float _27 = _24 ? 2.00000000e+00 : 0.00000000e+00; #line 87 o.uv[0] = _27; #line 88 bool _29 = vid == 1; #line 88 float _32 = _29 ? 2.00000000e+00 : 0.00000000e+00; #line 88 o.uv[1] = _32; #line 89 float2 _35 = o.uv * float2(2.00000000e+00, -2.00000000e+00); #line 89 float2 _37 = _35 + float2(-1.00000000e+00, 1.00000000e+00); #line 89 float4 _42 = float4(_37.x, _37.y, 0.00000000e+00, 1.00000000e+00); #line 89 o.pos = _42; return o; } #line 93 void F__VSMainOut( #line 93 in uint vid : SV_VERTEXID, #line 93 out float4 position : SV_POSITION, #line 93 out float2 texcoord : TEXCOORD0) { #line 95 uint _48; #line 95 _48 = vid; #line 95 S__VSOut _49 = F__VSMain(_48); #line 95 S__VSOut o_50 = _49; #line 96 position = o_50.pos; #line 97 texcoord = o_50.uv; return; } #line 49 "OldFilm.fx" Texture2D __V__ScratchesTex : register(t4); Texture2D __srgbV__ScratchesTex : register(t5); SamplerState __s1 : register(s1); #line 50 static const __sampler2D V__sScratchesTex = { __V__ScratchesTex, __s1 }; #line 56 void F__PSMain( #line 56 in S__VSOut i, #line 56 out float4 color : SV_TARGET) { #line 59 float GlobalExposure = g_sldExposure; #line 60 float _63 = lerp(4.00000006e-01, 9.99999978e-03, g_sldGamma); #line 60 float GlobalGamma = _63; #line 61 float _66 = g_sldContrast * 4.00000000e+00; #line 61 float GlobalContrast = _66; #line 62 float _69 = -2.00000000e+00 * g_sldFilterStrength; #line 62 float TintIntensity = _69; #line 63 float BlackLevel = 1.59999996e-01; #line 64 float _74 = g_sldVign * 8.00000000e+00; #line 64 float VignetteStrength = _74; #line 65 float _77 = timer % 1.00000000e+04; #line 65 float elapsedTime = _77; #line 67 float4 _80 = V__NV__ColorInput.t.Sample(V__NV__ColorInput.s, i.uv); #line 67 color = _80; #line 70 float3 _83 = color.xyz * float3(3.30000013e-01, 3.30000013e-01, 3.30000013e-01); #line 70 color.xyz = _83; #line 71 float3 _84; #line 71 _84 = color.xyz; #line 71 float _86 = F__NV__GetLuma(_84); #line 71 float3 _90 = lerp(color.xyz, _86.xxx, g_sldFilterStrength.xxx); #line 71 color.xyz = _90; #line 72 float3 _92 = abs(color.xyz); #line 72 float3 _96 = lerp(float3(3.00000000e+00, 3.00000000e+00, 3.00000000e+00), float3(1.00000000e+00, 1.00000000e+00, 1.00000000e+00), color.xyz); #line 72 float3 _97 = pow(_92, _96); #line 72 float3 _99 = _97 * float3(4.50000000e+00, 4.50000000e+00, 4.50000000e+00); #line 72 color.xyz = _99; #line 73 float _101 = GlobalExposure * 1.10000002e+00; #line 73 float3 _104 = color.xyz * _101.xxx; #line 73 color.xyz = _104; #line 74 float3 _106 = abs(color.xyz); #line 74 float _108 = GlobalGamma * 8.99999976e-01; #line 74 float3 _110 = pow(_106, _108.xxx); #line 74 color.xyz = _110; #line 75 float3 _113 = color.xyz * color.xyz; #line 75 float3 _116 = float3(2.00000000e+00, 2.00000000e+00, 2.00000000e+00) * color.xyz; #line 75 float3 _118 = float3(3.00000000e+00, 3.00000000e+00, 3.00000000e+00) - _116; #line 75 float3 _119 = _113 * _118; #line 75 float3 _122 = lerp(color.xyz, _119, GlobalContrast.xxx); #line 75 color.xyz = _122; #line 76 float _124 = 1.00000001e-01 * TintIntensity; #line 76 float3 _125; #line 76 _125 = color.xyz; #line 76 float _127 = F__NV__GetLuma(_125); #line 76 float _129 = 1.00000000e+00 - _127; #line 76 float _130 = saturate(_129); #line 76 float _131 = _124 * _130; #line 76 float3 _135 = lerp(float3(1.00000000e+00, 1.00000000e+00, 1.00000000e+00), float3(0.00000000e+00, 4.19999987e-01, 1.27999997e+00), _131.xxx); #line 76 float3 _137 = color.xyz * _135; #line 76 color.xyz = _137; #line 78 float2 _140 = i.uv - float2(5.00000000e-01, 5.00000000e-01); #line 78 float2 vigncoord = _140; #line 79 float _142 = dot(vigncoord, vigncoord); #line 79 float vignamount = _142; #line 80 float3 _144; #line 80 _144 = color.xyz; #line 80 float _146 = F__NV__GetLuma(_144); #line 80 float _148 = 1.00000000e+00 - _146; #line 80 float _149 = _148 * vignamount; #line 80 float _150 = _149 * VignetteStrength; #line 80 float _151 = saturate(_150); #line 80 float _154 = lerp(1.00000000e+00, 0.00000000e+00, _151); #line 80 float3 _157 = color.xyz * _154.xxx; #line 80 color.xyz = _157; #line 82 float _159 = elapsedTime / 8.33000031e+01; #line 82 float _160 = floor(_159); #line 82 float frames24 = _160; #line 84 float2 flipRand = float2(0.00000000e+00, 0.00000000e+00); #line 84 float2 shiftRand = float2(0.00000000e+00, 0.00000000e+00); #line 85 float channelRand = 0.00000000e+00; #line 89 float _169 = frames24 * 2.33220001e+02; #line 89 float _170 = sin(_169); #line 89 bool _172 = _170 > 0.00000000e+00; #line 89 flipRand[0] = ((float)_172); #line 90 float _175 = frames24 * 1.22099998e+02; #line 90 float _177 = _175 + 2.19999999e-01; #line 90 float _178 = sin(_177); #line 90 bool _180 = _178 < 0.00000000e+00; #line 90 flipRand[1] = ((float)_180); #line 91 float _183 = frames24 * 1.71000004e+01; #line 91 float _185 = _183 - 2.50000000e-01; #line 91 float _186 = sin(_185); #line 91 shiftRand[0] = _186; #line 92 float _188 = frames24 * 2.31000004e+01; #line 92 float _190 = _188 + 4.25000000e+00; #line 92 float _191 = sin(_190); #line 92 shiftRand[1] = _191; #line 93 float _193 = frames24 * 1.61800003e+00; #line 93 float _194 = frac(_193); #line 93 float _196 = _194 * 1.90000000e+01; #line 93 float _197 = floor(_196); #line 93 float _199 = _197 % 3.00000000e+00; #line 93 channelRand = _199; #line 95 float2 lookupCoord = float2(0.00000000e+00, 0.00000000e+00); #line 96 float2 _203 = -i.uv; #line 96 float2 _206 = lerp(i.uv, _203, flipRand.xy); #line 96 lookupCoord = _206; #line 97 float2 _208 = lookupCoord + shiftRand.xy; #line 97 lookupCoord = _208; #line 99 float4 _210 = V__sScratchesTex.t.Sample(V__sScratchesTex.s, lookupCoord.xy); #line 99 float3 scratchesSource = _210.xyz; #line 101 float3 _215 = float3(0.00000000e+00, 1.00000000e+00, 2.00000000e+00) - channelRand.xxx; #line 101 float3 _216 = abs(_215); #line 101 bool3 _218 = _216 < float3(1.00000001e-01, 1.00000001e-01, 1.00000001e-01); #line 101 float _221 = dot(((float3)_218), scratchesSource.xyz); #line 101 float scratches = _221; #line 103 float _224 = vignamount * 8.00000012e-01; #line 103 float _226 = 1.00000000e+00 - _224; #line 103 float _227 = saturate(_226); #line 103 float _229 = lerp(scratches, 1.00000000e+00, _227); #line 103 scratches = _229; #line 104 float _231 = g_sldScratchesStrength * 3.00000000e+00; #line 104 float _233 = lerp(1.00000000e+00, scratches, _231); #line 104 scratches = _233; #line 106 float _234 = saturate(scratches); #line 106 float3 _237 = color.xyz * _234.xxx; #line 106 color.xyz = _237; #line 107 float3 _239 = saturate(color.xyz); #line 107 float3 _242 = lerp(_239, float3(1.00000000e+00, 1.00000000e+00, 1.00000000e+00), BlackLevel.xxx); #line 107 color.xyz = _242; return; }