diff --git a/src/games/wutheringwaves/3_2/effect/letterbox_0xE684565E.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/effect/letterbox_0xE684565E.ps_6_0.hlsl new file mode 100644 index 000000000..879030bc0 --- /dev/null +++ b/src/games/wutheringwaves/3_2/effect/letterbox_0xE684565E.ps_6_0.hlsl @@ -0,0 +1,129 @@ +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float2 $Globals_000 : packoffset(c000.x); + float2 $Globals_008 : packoffset(c000.z); + float2 $Globals_016 : packoffset(c001.x); + float2 $Globals_024 : packoffset(c001.z); + int2 $Globals_032 : packoffset(c002.x); + int2 $Globals_040 : packoffset(c002.z); + float2 $Globals_048 : packoffset(c003.x); + float2 $Globals_056 : packoffset(c003.z); + float2 $Globals_064 : packoffset(c004.x); + float2 $Globals_072 : packoffset(c004.z); + float2 $Globals_080 : packoffset(c005.x); + float2 $Globals_088 : packoffset(c005.z); + float2 $Globals_096 : packoffset(c006.x); + float2 $Globals_104 : packoffset(c006.z); + float2 $Globals_112 : packoffset(c007.x); + float2 $Globals_120 : packoffset(c007.z); + float2 $Globals_128 : packoffset(c008.x); + float2 $Globals_136 : packoffset(c008.z); + int2 $Globals_144 : packoffset(c009.x); + int2 $Globals_152 : packoffset(c009.z); + float2 $Globals_160 : packoffset(c010.x); + float2 $Globals_168 : packoffset(c010.z); + float2 $Globals_176 : packoffset(c011.x); + float2 $Globals_184 : packoffset(c011.z); + float2 $Globals_192 : packoffset(c012.x); + float2 $Globals_200 : packoffset(c012.z); + float2 $Globals_208 : packoffset(c013.x); + float2 $Globals_216 : packoffset(c013.z); + float2 $Globals_224 : packoffset(c014.x); + float2 $Globals_232 : packoffset(c014.z); + float2 $Globals_240 : packoffset(c015.x); + float2 $Globals_248 : packoffset(c015.z); + int2 $Globals_256 : packoffset(c016.x); + int2 $Globals_264 : packoffset(c016.z); + float2 $Globals_272 : packoffset(c017.x); + float2 $Globals_280 : packoffset(c017.z); + float2 $Globals_288 : packoffset(c018.x); + float2 $Globals_296 : packoffset(c018.z); + float2 $Globals_304 : packoffset(c019.x); + float2 $Globals_312 : packoffset(c019.z); + float2 $Globals_320 : packoffset(c020.x); + float2 $Globals_328 : packoffset(c020.z); + float2 $Globals_336 : packoffset(c021.x); + float2 $Globals_344 : packoffset(c021.z); + float2 $Globals_352 : packoffset(c022.x); + float2 $Globals_360 : packoffset(c022.z); + int2 $Globals_368 : packoffset(c023.x); + int2 $Globals_376 : packoffset(c023.z); + float2 $Globals_384 : packoffset(c024.x); + float2 $Globals_392 : packoffset(c024.z); + float2 $Globals_400 : packoffset(c025.x); + float2 $Globals_408 : packoffset(c025.z); + float2 $Globals_416 : packoffset(c026.x); + float2 $Globals_424 : packoffset(c026.z); + float2 $Globals_432 : packoffset(c027.x); + float2 $Globals_440 : packoffset(c027.z); + float2 $Globals_448 : packoffset(c028.x); + float2 $Globals_456 : packoffset(c028.z); + float2 $Globals_464 : packoffset(c029.x); + float2 $Globals_472 : packoffset(c029.z); + int2 $Globals_480 : packoffset(c030.x); + int2 $Globals_488 : packoffset(c030.z); + float2 $Globals_496 : packoffset(c031.x); + float2 $Globals_504 : packoffset(c031.z); + float2 $Globals_512 : packoffset(c032.x); + float2 $Globals_520 : packoffset(c032.z); + float2 $Globals_528 : packoffset(c033.x); + float2 $Globals_536 : packoffset(c033.z); + float2 $Globals_544 : packoffset(c034.x); + float2 $Globals_552 : packoffset(c034.z); + float2 $Globals_560 : packoffset(c035.x); + float2 $Globals_568 : packoffset(c035.z); + float2 $Globals_576 : packoffset(c036.x); + float2 $Globals_584 : packoffset(c036.z); + int2 $Globals_592 : packoffset(c037.x); + int2 $Globals_600 : packoffset(c037.z); + float2 $Globals_608 : packoffset(c038.x); + float2 $Globals_616 : packoffset(c038.z); + float2 $Globals_624 : packoffset(c039.x); + float2 $Globals_632 : packoffset(c039.z); + float2 $Globals_640 : packoffset(c040.x); + float2 $Globals_648 : packoffset(c040.z); + float2 $Globals_656 : packoffset(c041.x); + float2 $Globals_664 : packoffset(c041.z); + float4 $Globals_672 : packoffset(c042.x); +}; + +cbuffer cb1 : register(b1) { + float4 Material_000[2] : packoffset(c000.x); + float4 Material_032[1] : packoffset(c002.x); +}; + +SamplerState s0 : register(s0); + +float4 main( + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float4 _29 = t0.Sample(s0, float2(((((SV_Position.x - float((uint)((int)($Globals_592.x)))) * ($Globals_616.x)) * ($Globals_080.x)) + ($Globals_064.x)), ((((SV_Position.y - float((uint)((int)($Globals_592.y)))) * ($Globals_616.y)) * ($Globals_080.y)) + ($Globals_064.y)))); + float _34 = select((_29.y < _29.z), 0.0f, 1.0f); + float _39 = (_34 * (_29.y - _29.z)) + _29.z; + float _40 = (_34 * (_29.z - _29.y)) + _29.y; + float _42 = 0.6666666865348816f - _34; + float _44 = select((_29.x < _39), 0.0f, 1.0f); + float _51 = (_44 * (_29.x - _39)) + _39; + float _52 = (_44 * (_39 - _29.x)) + _29.x; + float _54 = _51 - min(_52, _40); + float _66 = (Material_032[0].x) + abs((_42 + ((_52 - _40) / ((_54 * 6.0f) + 0.0010000000474974513f))) + (_44 * ((_34 + -1.0f) - _42))); + // Original Code + // float _69 = min(max((_54 / (_51 + 0.0010000000474974513f)), 0.0f), 1.0f); + // float _70 = min(max(_51, 0.0f), 1.0f); + float _69 = min(max((_54 / (_51 + 0.0010000000474974513f)), 0.0f), 1.0f); + float _70 = max(_51, 0.0f); + float _104 = (((min(max((abs((frac(_66 + 1.0f) * 6.0f) + -3.0f) + -1.0f), 0.0f), 1.0f) + -1.0f) * _69) + 1.0f) * _70; + float _105 = (((min(max((abs((frac(_66 + 0.6666666865348816f) * 6.0f) + -3.0f) + -1.0f), 0.0f), 1.0f) + -1.0f) * _69) + 1.0f) * _70; + float _106 = (((min(max((abs((frac(_66 + 0.3333333432674408f) * 6.0f) + -3.0f) + -1.0f), 0.0f), 1.0f) + -1.0f) * _69) + 1.0f) * _70; + // Original Code + // SV_Target.x = max(((((Material_000[1].x) - _104) * (Material_032[0].y)) + _104), 0.0f); + // SV_Target.y = max(((((Material_000[1].y) - _105) * (Material_032[0].y)) + _105), 0.0f); + // SV_Target.z = max(((((Material_000[1].z) - _106) * (Material_032[0].y)) + _106), 0.0f); + SV_Target.x = ((((Material_000[1].x) - _104) * (Material_032[0].y)) + _104); + SV_Target.y = ((((Material_000[1].y) - _105) * (Material_032[0].y)) + _105); + SV_Target.z = ((((Material_000[1].z) - _106) * (Material_032[0].y)) + _106); + SV_Target.w = 1.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x3338FA89.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x3338FA89.ps_6_0.hlsl new file mode 100644 index 000000000..9b06d5941 --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x3338FA89.ps_6_0.hlsl @@ -0,0 +1,1281 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_040x : packoffset(c040.x); + float cb0_041x : packoffset(c041.x); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +SamplerState s0 : register(s0); + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _7 = TEXCOORD.x + -0.015625f; + float _8 = TEXCOORD.y + -0.015625f; + float _11 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _32; + float _33; + float _34; + float _35; + float _36; + float _37; + float _38; + float _39; + float _40; + float _97; + float _98; + float _99; + float _338; + float _339; + float _340; + float _887; + float _920; + float _934; + float _998; + float _1135; + float _1136; + float _1137; + float _1280; + float _1281; + float _1282; + float _1296; + float _1307; + float _1318; + float _1463; + float _1474; + float _1596; + float _1629; + float _1643; + float _1682; + float _1775; + float _1834; + float _1893; + float _1976; + float _2041; + float _2106; + float _2123; + float _2124; + float _2125; + float _2229; + float _2262; + float _2276; + float _2315; + float _2408; + float _2467; + float _2526; + float _2606; + float _2668; + float _2730; + float _2744; + float _2745; + float _2746; + float _2904; + float _2905; + float _2906; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _21 = (cb0_074w == 4); + _32 = select(_21, 1.0f, 1.7050515413284302f); + _33 = select(_21, 0.0f, -0.6217905879020691f); + _34 = select(_21, 0.0f, -0.0832584798336029f); + _35 = select(_21, 0.0f, -0.13025718927383423f); + _36 = select(_21, 1.0f, 1.1408027410507202f); + _37 = select(_21, 0.0f, -0.010548528283834457f); + _38 = select(_21, 0.0f, -0.024003278464078903f); + _39 = select(_21, 0.0f, -0.1289687603712082f); + _40 = select(_21, 1.0f, 1.152971863746643f); + } else { + _32 = 0.6954522132873535f; + _33 = 0.14067870378494263f; + _34 = 0.16386906802654266f; + _35 = 0.044794563204050064f; + _36 = 0.8596711158752441f; + _37 = 0.0955343171954155f; + _38 = -0.005525882821530104f; + _39 = 0.004025210160762072f; + _40 = 1.0015007257461548f; + } + } else { + _32 = 1.02579927444458f; + _33 = -0.020052503794431686f; + _34 = -0.0057713985443115234f; + _35 = -0.0022350111976265907f; + _36 = 1.0045825242996216f; + _37 = -0.002352306619286537f; + _38 = -0.005014004185795784f; + _39 = -0.025293385609984398f; + _40 = 1.0304402112960815f; + } + } else { + _32 = 1.379158854484558f; + _33 = -0.3088507056236267f; + _34 = -0.07034677267074585f; + _35 = -0.06933528929948807f; + _36 = 1.0822921991348267f; + _37 = -0.012962047010660172f; + _38 = -0.002159259282052517f; + _39 = -0.045465391129255295f; + _40 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); + float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); + float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); + _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _102 = cb0_047x * 1.0005563497543335f; + float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); + float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); + float _146 = (_130 * 3.0f) / _145; + float _148 = (_140 * 2.0f) / _145; + bool _149 = (cb0_047x < 4000.0f); + float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); + float _155 = cb0_047y * 0.05000000074505806f; + float _158 = _130 - ((_155 * _140) * _154); + float _161 = ((_155 * _130) * _154) + _140; + float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); + float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); + float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); + float _174 = max(_173, 1.000000013351432e-10f); + float _175 = _172 / _174; + float _178 = ((1.0f - _172) - _173) / _174; + float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); + float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); + float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); + float _191 = mad(_189, -0.7501999735832214f, 0.0f); + float _192 = mad(_189, 1.7135000228881836f, 0.0f); + float _193 = mad(_189, 0.03669999912381172f, -0.0f); + float _194 = mad(_190, 0.03889999911189079f, 0.0f); + float _195 = mad(_190, -0.06849999725818634f, 0.0f); + float _196 = mad(_190, 1.0296000242233276f, 0.0f); + float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); + float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); + float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); + float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); + float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); + float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); + float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); + float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); + float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); + float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); + float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); + float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); + float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); + float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); + float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); + float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); + float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); + float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); + float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); + float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); + float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); + float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); + float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); + float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_289, _292, _295); + // bool _298 = (cb0_046x == 0); + bool _298 = ((uint)(tm_flags.x) == 0); + if (_298) { + float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _304 = (_289 / _300) + -1.0f; + float _305 = (_292 / _300) + -1.0f; + float _306 = (_295 / _300) + -1.0f; + float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); + _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); + _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); + _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); + } else { + _338 = _289; + _339 = _292; + _340 = _295; + } + float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _355 = cb0_052w + cb0_057w; + float _369 = cb0_051w * cb0_056w; + float _383 = cb0_050w * cb0_055w; + float _397 = cb0_049w * cb0_054w; + float _411 = cb0_048w * cb0_053w; + float _415 = _338 - _341; + float _416 = _339 - _341; + float _417 = _340 - _341; + float _475 = saturate(_341 / cb0_073x); + float _479 = (_475 * _475) * (3.0f - (_475 * 2.0f)); + float _480 = 1.0f - _479; + float _489 = cb0_052w + cb0_067w; + float _498 = cb0_051w * cb0_066w; + float _507 = cb0_050w * cb0_065w; + float _516 = cb0_049w * cb0_064w; + float _525 = cb0_048w * cb0_063w; + float _587 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); + float _591 = (_587 * _587) * (3.0f - (_587 * 2.0f)); + float _600 = cb0_052w + cb0_062w; + float _609 = cb0_051w * cb0_061w; + float _618 = cb0_050w * cb0_060w; + float _627 = cb0_049w * cb0_059w; + float _636 = cb0_048w * cb0_058w; + float _694 = _479 - _591; + float _705 = ((_591 * (((cb0_052x + cb0_067x) + _489) + (((cb0_051x * cb0_066x) * _498) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _516) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _525) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _507)))))) + (_480 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383))))))) + ((((cb0_052x + cb0_062x) + _600) + (((cb0_051x * cb0_061x) * _609) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _627) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _636) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _618))))) * _694); + float _707 = ((_591 * (((cb0_052y + cb0_067y) + _489) + (((cb0_051y * cb0_066y) * _498) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _516) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _525) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _507)))))) + (_480 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383))))))) + ((((cb0_052y + cb0_062y) + _600) + (((cb0_051y * cb0_061y) * _609) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _627) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _636) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _618))))) * _694); + float _709 = ((_591 * (((cb0_052z + cb0_067z) + _489) + (((cb0_051z * cb0_066z) * _498) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _516) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _525) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _507)))))) + (_480 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383))))))) + ((((cb0_052z + cb0_062z) + _600) + (((cb0_051z * cb0_061z) * _609) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _627) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _636) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _618))))) * _694); + float _735 = dot(float3(_705, _707, _709), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _793 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_705 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); + float _794 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_707 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); + float _795 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_709 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); + float _798 = mad(-0.0832584798336029f, _795, mad(-0.6217905879020691f, _794, (_793 * 1.7050515413284302f))); + float _801 = mad(-0.010548528283834457f, _795, mad(1.1408027410507202f, _794, (_793 * -0.13025718927383423f))); + float _804 = mad(1.152971863746643f, _795, mad(-0.1289687603712082f, _794, (_793 * -0.024003278464078903f))); + float _820 = ((mad(0.061360642313957214f, _795, mad(-4.540197551250458e-09f, _794, (_793 * 0.9386394023895264f))) - _793) * cb0_075x) + _793; + float _821 = ((mad(0.169205904006958f, _795, mad(0.8307942152023315f, _794, (_793 * 6.775371730327606e-08f))) - _794) * cb0_075x) + _794; + float _822 = (mad(-2.3283064365386963e-10f, _794, (_793 * -9.313225746154785e-10f)) * cb0_075x) + _795; + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _832 = mad(0.16386905312538147f, _822, mad(0.14067868888378143f, _821, (_820 * 0.6954522132873535f))); + float _835 = mad(0.0955343246459961f, _822, mad(0.8596711158752441f, _821, (_820 * 0.044794581830501556f))); + float _838 = mad(1.0015007257461548f, _822, mad(0.004025210160762072f, _821, (_820 * -0.005525882821530104f))); + float _842 = max(max(_832, _835), _838); + float _847 = (max(_842, 1.000000013351432e-10f) - max(min(min(_832, _835), _838), 1.000000013351432e-10f)) / max(_842, 0.009999999776482582f); + float _860 = ((_835 + _832) + _838) + (sqrt((((_838 - _835) * _838) + ((_835 - _832) * _835)) + ((_832 - _838) * _832)) * 1.75f); + float _861 = _860 * 0.3333333432674408f; + float _862 = _847 + -0.4000000059604645f; + float _863 = _862 * 5.0f; + float _867 = max((1.0f - abs(_862 * 2.5f)), 0.0f); + float _878 = ((float((int)(((int)(uint)((bool)(_863 > 0.0f))) - ((int)(uint)((bool)(_863 < 0.0f))))) * (1.0f - (_867 * _867))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_861 <= 0.0533333346247673f)) { + if (!(_861 >= 0.1599999964237213f)) { + _887 = (((0.23999999463558197f / _860) + -0.5f) * _878); + } else { + _887 = 0.0f; + } + } else { + _887 = _878; + } + float _888 = _887 + 1.0f; + float _889 = _888 * _832; + float _890 = _888 * _835; + float _891 = _888 * _838; + do { + if (!((bool)(_889 == _890) && (bool)(_890 == _891))) { + float _898 = ((_889 * 2.0f) - _890) - _891; + float _901 = ((_835 - _838) * 1.7320507764816284f) * _888; + float _903 = atan(_901 / _898); + bool _906 = (_898 < 0.0f); + bool _907 = (_898 == 0.0f); + bool _908 = (_901 >= 0.0f); + bool _909 = (_901 < 0.0f); + _920 = select((_908 && _907), 90.0f, select((_909 && _907), -90.0f, (select((_909 && _906), (_903 + -3.1415927410125732f), select((_908 && _906), (_903 + 3.1415927410125732f), _903)) * 57.2957763671875f))); + } else { + _920 = 0.0f; + } + float _925 = min(max(select((_920 < 0.0f), (_920 + 360.0f), _920), 0.0f), 360.0f); + do { + if (_925 < -180.0f) { + _934 = (_925 + 360.0f); + } else { + if (_925 > 180.0f) { + _934 = (_925 + -360.0f); + } else { + _934 = _925; + } + } + float _938 = saturate(1.0f - abs(_934 * 0.014814814552664757f)); + float _942 = (_938 * _938) * (3.0f - (_938 * 2.0f)); + float _948 = ((_942 * _942) * ((_847 * 0.18000000715255737f) * (0.029999999329447746f - _889))) + _889; + float _958 = max(0.0f, mad(-0.21492856740951538f, _891, mad(-0.2365107536315918f, _890, (_948 * 1.4514392614364624f)))); + float _959 = max(0.0f, mad(-0.09967592358589172f, _891, mad(1.17622971534729f, _890, (_948 * -0.07655377686023712f)))); + float _960 = max(0.0f, mad(0.9977163076400757f, _891, mad(-0.006032449658960104f, _890, (_948 * 0.008316148072481155f)))); + float _961 = dot(float3(_958, _959, _960), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _975 = (cb0_036w + 1.0f) - cb0_036y; + float _978 = cb0_037x + 1.0f; + float _980 = _978 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _998 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _989 = (cb0_036w + 0.18000000715255737f) / _975; + _998 = (-0.7447274923324585f - ((log2(_989 / (2.0f - _989)) * 0.3465735912322998f) * (_975 / cb0_036x))); + } + float _1001 = ((1.0f - cb0_036y) / cb0_036x) - _998; + float _1003 = (cb0_036z / cb0_036x) - _1001; + float _1007 = log2(lerp(_961, _958, 0.9599999785423279f)) * 0.3010300099849701f; + float _1008 = log2(lerp(_961, _959, 0.9599999785423279f)) * 0.3010300099849701f; + float _1009 = log2(lerp(_961, _960, 0.9599999785423279f)) * 0.3010300099849701f; + float _1013 = cb0_036x * (_1007 + _1001); + float _1014 = cb0_036x * (_1008 + _1001); + float _1015 = cb0_036x * (_1009 + _1001); + float _1016 = _975 * 2.0f; + float _1018 = (cb0_036x * -2.0f) / _975; + float _1019 = _1007 - _998; + float _1020 = _1008 - _998; + float _1021 = _1009 - _998; + float _1040 = _980 * 2.0f; + float _1042 = (cb0_036x * 2.0f) / _980; + float _1067 = select((_1007 < _998), ((_1016 / (exp2((_1019 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1013); + float _1068 = select((_1008 < _998), ((_1016 / (exp2((_1020 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1014); + float _1069 = select((_1009 < _998), ((_1016 / (exp2((_1021 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1015); + float _1076 = _1003 - _998; + float _1080 = saturate(_1019 / _1076); + float _1081 = saturate(_1020 / _1076); + float _1082 = saturate(_1021 / _1076); + bool _1083 = (_1003 < _998); + float _1087 = select(_1083, (1.0f - _1080), _1080); + float _1088 = select(_1083, (1.0f - _1081), _1081); + float _1089 = select(_1083, (1.0f - _1082), _1082); + float _1108 = (((_1087 * _1087) * (select((_1007 > _1003), (_978 - (_1040 / (exp2(((_1007 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; + float _1109 = (((_1088 * _1088) * (select((_1008 > _1003), (_978 - (_1040 / (exp2(((_1008 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1014) - _1068)) * (3.0f - (_1088 * 2.0f))) + _1068; + float _1110 = (((_1089 * _1089) * (select((_1009 > _1003), (_978 - (_1040 / (exp2(((_1009 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; + float _1111 = dot(float3(_1108, _1109, _1110), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1135 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1108, 0.9300000071525574f))) - _820)) + _820); + _1136 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1109, 0.9300000071525574f))) - _821)) + _821); + _1137 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1110, 0.9300000071525574f))) - _822)) + _822); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1135 = _820; + _1136 = _821; + _1137 = _822; + } + float _1153 = ((mad(-0.06537103652954102f, _1137, mad(1.451815478503704e-06f, _1136, (_1135 * 1.065374732017517f))) - _1135) * cb0_075x) + _1135; + float _1154 = ((mad(-0.20366770029067993f, _1137, mad(1.2036634683609009f, _1136, (_1135 * -2.57161445915699e-07f))) - _1136) * cb0_075x) + _1136; + float _1155 = ((mad(0.9999996423721313f, _1137, mad(2.0954757928848267e-08f, _1136, (_1135 * 1.862645149230957e-08f))) - _1137) * cb0_075x) + _1137; + [branch] + if (!_298) { + float _1198 = 1.0f / (dot(float3(_798, _801, _804), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1208 = max(0.0f, (((_1198 * cb0_035x) + cb0_034x) * dot(float3(_798, _801, _804), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1209 = max(0.0f, (((_1198 * cb0_035y) + cb0_034y) * dot(float3(_798, _801, _804), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1210 = max(0.0f, (((_1198 * cb0_035z) + cb0_034z) * dot(float3(_798, _801, _804), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1216 = max(0.0f, (cb0_031x - _1208)); + float _1217 = max(0.0f, (cb0_031x - _1209)); + float _1218 = max(0.0f, (cb0_031x - _1210)); + float _1220 = max(_1208, cb0_031z); + float _1221 = max(_1209, cb0_031z); + float _1222 = max(_1210, cb0_031z); + _1280 = (((((((cb0_032x * _1220) + cb0_032y) * (1.0f / (cb0_031w + _1220))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1208, cb0_031x), cb0_031z))) + ((cb0_028w * _1216) * (1.0f / (cb0_031y + _1216)))) + cb0_029w); + _1281 = ((((((1.0f / (cb0_031w + _1221)) * ((cb0_032x * _1221) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1209, cb0_031x), cb0_031z))) + ((cb0_028w * _1217) * (1.0f / (cb0_031y + _1217)))) + cb0_029w); + _1282 = ((((((1.0f / (cb0_031w + _1222)) * ((cb0_032x * _1222) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1210, cb0_031x), cb0_031z))) + ((cb0_028w * _1218) * (1.0f / (cb0_031y + _1218)))) + cb0_029w); + } else { + _1280 = max(0.0f, mad(-0.0832584798336029f, _1155, mad(-0.6217905879020691f, _1154, (_1153 * 1.7050515413284302f)))); + _1281 = max(0.0f, mad(-0.010548528283834457f, _1155, mad(1.1408027410507202f, _1154, (_1153 * -0.13025718927383423f)))); + _1282 = max(0.0f, mad(1.152971863746643f, _1155, mad(-0.1289687603712082f, _1154, (_1153 * -0.024003278464078903f)))); + } + float _1283 = (_1280); + float _1284 = (_1281); + float _1285 = (_1282); + + float lut_sampling_scale = wuwa::lut::PrepareLinearInput(_1283, _1284, _1285); + + if (_1283 < 0.0031306699384003878f) { + _1296 = (_1283 * 12.920000076293945f); + } else { + _1296 = (((pow(_1283, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1284 < 0.0031306699384003878f) { + _1307 = (_1284 * 12.920000076293945f); + } else { + _1307 = (((pow(_1284, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1285 < 0.0031306699384003878f) { + _1318 = (_1285 * 12.920000076293945f); + } else { + _1318 = (((pow(_1285, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + + float lut_sample_max_channel = wuwa::lut::NormalizeEncodedInput(_1296, _1307, _1318); + + float _1322 = (_1307 * 0.9375f) + 0.03125f; + float _1330 = _1318 * 15.0f; + float _1331 = floor(_1330); + float _1332 = _1330 - _1331; + float _1334 = (((_1296 * 0.9375f) + 0.03125f) + _1331) * 0.0625f; + float4 _1335 = t0.Sample(s0, float2(_1334, _1322)); + float4 _1340 = t0.Sample(s0, float2((_1334 + 0.0625f), _1322)); + float _1359 = max(6.103519990574569e-05f, (((lerp(_1335.x, _1340.x, _1332)) * cb0_041x) + (cb0_040x * _1296))); + float _1360 = max(6.103519990574569e-05f, (((lerp(_1335.y, _1340.y, _1332)) * cb0_041x) + (cb0_040x * _1307))); + float _1361 = max(6.103519990574569e-05f, (((lerp(_1335.z, _1340.z, _1332)) * cb0_041x) + (cb0_040x * _1318))); + + wuwa::lut::ApplySampleMaxChannel(_1359, _1360, _1361, lut_sample_max_channel); + + float _1383 = select((_1359 > 0.040449999272823334f), exp2(log2((_1359 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1359 * 0.07739938050508499f)); + float _1384 = select((_1360 > 0.040449999272823334f), exp2(log2((_1360 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1360 * 0.07739938050508499f)); + float _1385 = select((_1361 > 0.040449999272823334f), exp2(log2((_1361 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1361 * 0.07739938050508499f)); + + wuwa::lut::ApplyInverseSamplingScale(_1383, _1384, _1385, lut_sampling_scale); + + float _1411 = cb0_044y * (((cb0_026y + (cb0_026x * _1383)) * _1383) + cb0_026z); + float _1412 = cb0_044z * (((cb0_026y + (cb0_026x * _1384)) * _1384) + cb0_026z); + float _1413 = cb0_044w * (((cb0_026y + (cb0_026x * _1385)) * _1385) + cb0_026z); + float _1420 = ((cb0_045x - _1411) * cb0_045w) + _1411; + float _1421 = ((cb0_045y - _1412) * cb0_045w) + _1412; + float _1422 = ((cb0_045z - _1413) * cb0_045w) + _1413; + wuwa::lut::ApplyLutStrength(_1420, _1421, _1422, ungraded); + float _1423 = cb0_044y * _798; + float _1424 = cb0_044z * _801; + float _1425 = cb0_044w * _804; + float _1432 = ((cb0_045x - _1423) * cb0_045w) + _1423; + float _1433 = ((cb0_045y - _1424) * cb0_045w) + _1424; + float _1434 = ((cb0_045z - _1425) * cb0_045w) + _1425; + float _1446 = exp2(log2(max(0.0f, _1420)) * cb0_027y); + float _1447 = exp2(log2(max(0.0f, _1421)) * cb0_027y); + float _1448 = exp2(log2(max(0.0f, _1422)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1446, _1447, _1448)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1446 < 0.0031306699384003878f) { + _1463 = (_1446 * 12.920000076293945f); + } else { + _1463 = (((pow(_1446, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1447 < 0.0031306699384003878f) { + _1474 = (_1447 * 12.920000076293945f); + } else { + _1474 = (((pow(_1447, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1448 < 0.0031306699384003878f) { + _2904 = _1463; + _2905 = _1474; + _2906 = (_1448 * 12.920000076293945f); + } else { + _2904 = _1463; + _2905 = _1474; + _2906 = (((pow(_1448, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1489 = mad(0.04736635088920593f, _1448, mad(0.3395121395587921f, _1447, (_1446 * 0.613191545009613f))); + float _1492 = mad(0.01345000695437193f, _1448, mad(0.9163357615470886f, _1447, (_1446 * 0.07020691782236099f))); + float _1495 = mad(0.8696067929267883f, _1448, mad(0.1095672994852066f, _1447, (_1446 * 0.020618872717022896f))); + float _1505 = max(6.103519990574569e-05f, mad(_34, _1495, mad(_33, _1492, (_1489 * _32)))); + float _1506 = max(6.103519990574569e-05f, mad(_37, _1495, mad(_36, _1492, (_1489 * _35)))); + float _1507 = max(6.103519990574569e-05f, mad(_40, _1495, mad(_39, _1492, (_1489 * _38)))); + _2904 = min((_1505 * 4.5f), ((exp2(log2(max(_1505, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2905 = min((_1506 * 4.5f), ((exp2(log2(max(_1506, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2906 = min((_1507 * 4.5f), ((exp2(log2(max(_1507, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1534 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1534) { + float _1537 = _1433 * 3.0f; + float _1538 = _1434 * 3.0f; + float _1541 = mad(0.17733481526374817f, _1538, mad(0.38297808170318604f, _1537, (_1432 * 1.31910240650177f))); + float _1544 = mad(0.09676162153482437f, _1538, mad(0.8134231567382812f, _1537, (_1432 * 0.2693769633769989f))); + float _1547 = mad(0.870704174041748f, _1538, mad(0.11154405772686005f, _1537, (_1432 * 0.05263196676969528f))); + float _1551 = max(max(_1541, _1544), _1547); + float _1556 = (max(_1551, 1.000000013351432e-10f) - max(min(min(_1541, _1544), _1547), 1.000000013351432e-10f)) / max(_1551, 0.009999999776482582f); + float _1569 = ((_1544 + _1541) + _1547) + (sqrt((((_1547 - _1544) * _1547) + ((_1544 - _1541) * _1544)) + ((_1541 - _1547) * _1541)) * 1.75f); + float _1570 = _1569 * 0.3333333432674408f; + float _1571 = _1556 + -0.4000000059604645f; + float _1572 = _1571 * 5.0f; + float _1576 = max((1.0f - abs(_1571 * 2.5f)), 0.0f); + float _1587 = ((float((int)(((int)(uint)((bool)(_1572 > 0.0f))) - ((int)(uint)((bool)(_1572 < 0.0f))))) * (1.0f - (_1576 * _1576))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1570 <= 0.0533333346247673f)) { + if (!(_1570 >= 0.1599999964237213f)) { + _1596 = (((0.23999999463558197f / _1569) + -0.5f) * _1587); + } else { + _1596 = 0.0f; + } + } else { + _1596 = _1587; + } + float _1597 = _1596 + 1.0f; + float _1598 = _1597 * _1541; + float _1599 = _1597 * _1544; + float _1600 = _1597 * _1547; + do { + if (!((bool)(_1598 == _1599) && (bool)(_1599 == _1600))) { + float _1607 = ((_1598 * 2.0f) - _1599) - _1600; + float _1610 = ((_1544 - _1547) * 1.7320507764816284f) * _1597; + float _1612 = atan(_1610 / _1607); + bool _1615 = (_1607 < 0.0f); + bool _1616 = (_1607 == 0.0f); + bool _1617 = (_1610 >= 0.0f); + bool _1618 = (_1610 < 0.0f); + _1629 = select((_1617 && _1616), 90.0f, select((_1618 && _1616), -90.0f, (select((_1618 && _1615), (_1612 + -3.1415927410125732f), select((_1617 && _1615), (_1612 + 3.1415927410125732f), _1612)) * 57.2957763671875f))); + } else { + _1629 = 0.0f; + } + float _1634 = min(max(select((_1629 < 0.0f), (_1629 + 360.0f), _1629), 0.0f), 360.0f); + do { + if (_1634 < -180.0f) { + _1643 = (_1634 + 360.0f); + } else { + if (_1634 > 180.0f) { + _1643 = (_1634 + -360.0f); + } else { + _1643 = _1634; + } + } + do { + if ((bool)(_1643 > -67.5f) && (bool)(_1643 < 67.5f)) { + float _1649 = (_1643 + 67.5f) * 0.029629629105329514f; + int _1650 = int(_1649); + float _1652 = _1649 - float((int)(_1650)); + float _1653 = _1652 * _1652; + float _1654 = _1653 * _1652; + if (_1650 == 3) { + _1682 = (((0.1666666716337204f - (_1652 * 0.5f)) + (_1653 * 0.5f)) - (_1654 * 0.1666666716337204f)); + } else { + if (_1650 == 2) { + _1682 = ((0.6666666865348816f - _1653) + (_1654 * 0.5f)); + } else { + if (_1650 == 1) { + _1682 = (((_1654 * -0.5f) + 0.1666666716337204f) + ((_1653 + _1652) * 0.5f)); + } else { + _1682 = select((_1650 == 0), (_1654 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1682 = 0.0f; + } + float _1691 = min(max(((((_1556 * 0.27000001072883606f) * (0.029999999329447746f - _1598)) * _1682) + _1598), 0.0f), 65535.0f); + float _1692 = min(max(_1599, 0.0f), 65535.0f); + float _1693 = min(max(_1600, 0.0f), 65535.0f); + float _1706 = min(max(mad(-0.21492856740951538f, _1693, mad(-0.2365107536315918f, _1692, (_1691 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _1707 = min(max(mad(-0.09967592358589172f, _1693, mad(1.17622971534729f, _1692, (_1691 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _1708 = min(max(mad(0.9977163076400757f, _1693, mad(-0.006032449658960104f, _1692, (_1691 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _1709 = dot(float3(_1706, _1707, _1708), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1716 = ((_1706 - _1709) * 0.9599999785423279f) + _1709; + float _1717 = ((_1707 - _1709) * 0.9599999785423279f) + _1709; + float _1718 = ((_1708 - _1709) * 0.9599999785423279f) + _1709; + float _1721 = log2(select((_1716 <= 0.0f), 6.103515625e-05f, _1716)); + float _1722 = _1721 * 0.3010300099849701f; + do { + if (!(_1722 <= -5.2601776123046875f)) { + if ((bool)(_1722 > -5.2601776123046875f) && (bool)(_1722 < -0.7447274923324585f)) { + float _1730 = (_1721 * 0.19999998807907104f) + 3.494786262512207f; + int _1731 = int(_1730); + float _1733 = _1730 - float((int)(_1731)); + float _1735 = _global_0[_1731]; + float _1738 = _global_0[(_1731 + 1)]; + float _1743 = _1735 * 0.5f; + _1775 = dot(float3((_1733 * _1733), _1733, 1.0f), float3(mad((_global_0[(_1731 + 2)]), 0.5f, mad(_1738, -1.0f, _1743)), (_1738 - _1735), mad(_1738, 0.5f, _1743))); + } else { + if ((bool)(_1722 >= -0.7447274923324585f) && (bool)(_1722 < 4.673812389373779f)) { + float _1755 = (_1721 * 0.1666666567325592f) + 0.4123218357563019f; + int _1756 = int(_1755); + float _1758 = _1755 - float((int)(_1756)); + float _1760 = _global_1[_1756]; + float _1763 = _global_1[(_1756 + 1)]; + float _1768 = _1760 * 0.5f; + _1775 = dot(float3((_1758 * _1758), _1758, 1.0f), float3(mad((_global_1[(_1756 + 2)]), 0.5f, mad(_1763, -1.0f, _1768)), (_1763 - _1760), mad(_1763, 0.5f, _1768))); + } else { + _1775 = 4.0f; + } + } + } else { + _1775 = -4.0f; + } + float _1777 = exp2(_1775 * 3.321928024291992f); + float _1780 = log2(select((_1717 <= 0.0f), 6.103515625e-05f, _1717)); + float _1781 = _1780 * 0.3010300099849701f; + do { + if (!(_1781 <= -5.2601776123046875f)) { + if ((bool)(_1781 > -5.2601776123046875f) && (bool)(_1781 < -0.7447274923324585f)) { + float _1789 = (_1780 * 0.19999998807907104f) + 3.494786262512207f; + int _1790 = int(_1789); + float _1792 = _1789 - float((int)(_1790)); + float _1794 = _global_0[_1790]; + float _1797 = _global_0[(_1790 + 1)]; + float _1802 = _1794 * 0.5f; + _1834 = dot(float3((_1792 * _1792), _1792, 1.0f), float3(mad((_global_0[(_1790 + 2)]), 0.5f, mad(_1797, -1.0f, _1802)), (_1797 - _1794), mad(_1797, 0.5f, _1802))); + } else { + if ((bool)(_1781 >= -0.7447274923324585f) && (bool)(_1781 < 4.673812389373779f)) { + float _1814 = (_1780 * 0.1666666567325592f) + 0.4123218357563019f; + int _1815 = int(_1814); + float _1817 = _1814 - float((int)(_1815)); + float _1819 = _global_1[_1815]; + float _1822 = _global_1[(_1815 + 1)]; + float _1827 = _1819 * 0.5f; + _1834 = dot(float3((_1817 * _1817), _1817, 1.0f), float3(mad((_global_1[(_1815 + 2)]), 0.5f, mad(_1822, -1.0f, _1827)), (_1822 - _1819), mad(_1822, 0.5f, _1827))); + } else { + _1834 = 4.0f; + } + } + } else { + _1834 = -4.0f; + } + float _1836 = exp2(_1834 * 3.321928024291992f); + float _1839 = log2(select((_1718 <= 0.0f), 6.103515625e-05f, _1718)); + float _1840 = _1839 * 0.3010300099849701f; + do { + if (!(_1840 <= -5.2601776123046875f)) { + if ((bool)(_1840 > -5.2601776123046875f) && (bool)(_1840 < -0.7447274923324585f)) { + float _1848 = (_1839 * 0.19999998807907104f) + 3.494786262512207f; + int _1849 = int(_1848); + float _1851 = _1848 - float((int)(_1849)); + float _1853 = _global_0[_1849]; + float _1856 = _global_0[(_1849 + 1)]; + float _1861 = _1853 * 0.5f; + _1893 = dot(float3((_1851 * _1851), _1851, 1.0f), float3(mad((_global_0[(_1849 + 2)]), 0.5f, mad(_1856, -1.0f, _1861)), (_1856 - _1853), mad(_1856, 0.5f, _1861))); + } else { + if ((bool)(_1840 >= -0.7447274923324585f) && (bool)(_1840 < 4.673812389373779f)) { + float _1873 = (_1839 * 0.1666666567325592f) + 0.4123218357563019f; + int _1874 = int(_1873); + float _1876 = _1873 - float((int)(_1874)); + float _1878 = _global_1[_1874]; + float _1881 = _global_1[(_1874 + 1)]; + float _1886 = _1878 * 0.5f; + _1893 = dot(float3((_1876 * _1876), _1876, 1.0f), float3(mad((_global_1[(_1874 + 2)]), 0.5f, mad(_1881, -1.0f, _1886)), (_1881 - _1878), mad(_1881, 0.5f, _1886))); + } else { + _1893 = 4.0f; + } + } + } else { + _1893 = -4.0f; + } + float _1895 = exp2(_1893 * 3.321928024291992f); + float _1898 = mad(0.16386906802654266f, _1895, mad(0.14067870378494263f, _1836, (_1777 * 0.6954522132873535f))); + float _1901 = mad(0.0955343171954155f, _1895, mad(0.8596711158752441f, _1836, (_1777 * 0.044794563204050064f))); + float _1904 = mad(1.0015007257461548f, _1895, mad(0.004025210160762072f, _1836, (_1777 * -0.005525882821530104f))); + float _1907 = mad(-0.21492856740951538f, _1904, mad(-0.2365107536315918f, _1901, (_1898 * 1.4514392614364624f))); + float _1910 = mad(-0.09967592358589172f, _1904, mad(1.17622971534729f, _1901, (_1898 * -0.07655377686023712f))); + float _1913 = mad(0.9977163076400757f, _1904, mad(-0.006032449658960104f, _1901, (_1898 * 0.008316148072481155f))); + float _1916 = log2(select((_1907 <= 0.0f), 9.999999747378752e-05f, _1907)); + float _1917 = _1916 * 0.3010300099849701f; + do { + if (!(!(_1917 <= -3.848327875137329f))) { + _1976 = ((_1916 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1917 > -3.848327875137329f) && (bool)(_1917 < 0.6812411546707153f)) { + float _1928 = (_1916 + 12.783867835998535f) * 0.46521204710006714f; + int _1929 = int(_1928); + float _1931 = _1928 - float((int)(_1929)); + float _1933 = _global_2[_1929]; + float _1936 = _global_2[(_1929 + 1)]; + float _1941 = _1933 * 0.5f; + _1976 = dot(float3((_1931 * _1931), _1931, 1.0f), float3(mad((_global_2[(_1929 + 2)]), 0.5f, mad(_1936, -1.0f, _1941)), (_1936 - _1933), mad(_1936, 0.5f, _1941))); + } else { + if ((bool)(_1917 >= 0.6812411546707153f) && (bool)(_1917 < 3.653702974319458f)) { + float _1953 = (_1916 + -2.2630341053009033f) * 0.7089107632637024f; + int _1954 = int(_1953); + float _1956 = _1953 - float((int)(_1954)); + float _1958 = _global_3[_1954]; + float _1961 = _global_3[(_1954 + 1)]; + float _1966 = _1958 * 0.5f; + _1976 = dot(float3((_1956 * _1956), _1956, 1.0f), float3(mad((_global_3[(_1954 + 2)]), 0.5f, mad(_1961, -1.0f, _1966)), (_1961 - _1958), mad(_1961, 0.5f, _1966))); + } else { + _1976 = ((_1916 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _1981 = log2(select((_1910 <= 0.0f), 9.999999747378752e-05f, _1910)); + float _1982 = _1981 * 0.3010300099849701f; + do { + if (!(!(_1982 <= -3.848327875137329f))) { + _2041 = ((_1981 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1982 > -3.848327875137329f) && (bool)(_1982 < 0.6812411546707153f)) { + float _1993 = (_1981 + 12.783867835998535f) * 0.46521204710006714f; + int _1994 = int(_1993); + float _1996 = _1993 - float((int)(_1994)); + float _1998 = _global_2[_1994]; + float _2001 = _global_2[(_1994 + 1)]; + float _2006 = _1998 * 0.5f; + _2041 = dot(float3((_1996 * _1996), _1996, 1.0f), float3(mad((_global_2[(_1994 + 2)]), 0.5f, mad(_2001, -1.0f, _2006)), (_2001 - _1998), mad(_2001, 0.5f, _2006))); + } else { + if ((bool)(_1982 >= 0.6812411546707153f) && (bool)(_1982 < 3.653702974319458f)) { + float _2018 = (_1981 + -2.2630341053009033f) * 0.7089107632637024f; + int _2019 = int(_2018); + float _2021 = _2018 - float((int)(_2019)); + float _2023 = _global_3[_2019]; + float _2026 = _global_3[(_2019 + 1)]; + float _2031 = _2023 * 0.5f; + _2041 = dot(float3((_2021 * _2021), _2021, 1.0f), float3(mad((_global_3[(_2019 + 2)]), 0.5f, mad(_2026, -1.0f, _2031)), (_2026 - _2023), mad(_2026, 0.5f, _2031))); + } else { + _2041 = ((_1981 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2046 = log2(select((_1913 <= 0.0f), 9.999999747378752e-05f, _1913)); + float _2047 = _2046 * 0.3010300099849701f; + do { + if (!(!(_2047 <= -3.848327875137329f))) { + _2106 = ((_2046 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2047 > -3.848327875137329f) && (bool)(_2047 < 0.6812411546707153f)) { + float _2058 = (_2046 + 12.783867835998535f) * 0.46521204710006714f; + int _2059 = int(_2058); + float _2061 = _2058 - float((int)(_2059)); + float _2063 = _global_2[_2059]; + float _2066 = _global_2[(_2059 + 1)]; + float _2071 = _2063 * 0.5f; + _2106 = dot(float3((_2061 * _2061), _2061, 1.0f), float3(mad((_global_2[(_2059 + 2)]), 0.5f, mad(_2066, -1.0f, _2071)), (_2066 - _2063), mad(_2066, 0.5f, _2071))); + } else { + if ((bool)(_2047 >= 0.6812411546707153f) && (bool)(_2047 < 3.653702974319458f)) { + float _2083 = (_2046 + -2.2630341053009033f) * 0.7089107632637024f; + int _2084 = int(_2083); + float _2086 = _2083 - float((int)(_2084)); + float _2088 = _global_3[_2084]; + float _2091 = _global_3[(_2084 + 1)]; + float _2096 = _2088 * 0.5f; + _2106 = dot(float3((_2086 * _2086), _2086, 1.0f), float3(mad((_global_3[(_2084 + 2)]), 0.5f, mad(_2091, -1.0f, _2096)), (_2091 - _2088), mad(_2091, 0.5f, _2096))); + } else { + _2106 = ((_2046 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2109 = exp2(_1976 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2110 = exp2(_2041 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2111 = exp2(_2106 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1534) { + _2123 = mad(_34, _2111, mad(_33, _2110, (_2109 * _32))); + _2124 = mad(_37, _2111, mad(_36, _2110, (_2109 * _35))); + _2125 = mad(_40, _2111, mad(_39, _2110, (_2109 * _38))); + } else { + _2123 = _2109; + _2124 = _2110; + _2125 = _2111; + } + float _2135 = exp2(log2(_2123 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2136 = exp2(log2(_2124 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2137 = exp2(log2(_2125 * 9.999999747378752e-05f) * 0.1593017578125f); + _2904 = exp2(log2((1.0f / ((_2135 * 18.6875f) + 1.0f)) * ((_2135 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2905 = exp2(log2((1.0f / ((_2136 * 18.6875f) + 1.0f)) * ((_2136 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2906 = exp2(log2((1.0f / ((_2137 * 18.6875f) + 1.0f)) * ((_2137 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2170 = _1433 * 3.0f; + float _2171 = _1434 * 3.0f; + float _2174 = mad(0.17733481526374817f, _2171, mad(0.38297808170318604f, _2170, (_1432 * 1.31910240650177f))); + float _2177 = mad(0.09676162153482437f, _2171, mad(0.8134231567382812f, _2170, (_1432 * 0.2693769633769989f))); + float _2180 = mad(0.870704174041748f, _2171, mad(0.11154405772686005f, _2170, (_1432 * 0.05263196676969528f))); + float _2184 = max(max(_2174, _2177), _2180); + float _2189 = (max(_2184, 1.000000013351432e-10f) - max(min(min(_2174, _2177), _2180), 1.000000013351432e-10f)) / max(_2184, 0.009999999776482582f); + float _2202 = ((_2177 + _2174) + _2180) + (sqrt((((_2180 - _2177) * _2180) + ((_2177 - _2174) * _2177)) + ((_2174 - _2180) * _2174)) * 1.75f); + float _2203 = _2202 * 0.3333333432674408f; + float _2204 = _2189 + -0.4000000059604645f; + float _2205 = _2204 * 5.0f; + float _2209 = max((1.0f - abs(_2204 * 2.5f)), 0.0f); + float _2220 = ((float((int)(((int)(uint)((bool)(_2205 > 0.0f))) - ((int)(uint)((bool)(_2205 < 0.0f))))) * (1.0f - (_2209 * _2209))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2203 <= 0.0533333346247673f)) { + if (!(_2203 >= 0.1599999964237213f)) { + _2229 = (((0.23999999463558197f / _2202) + -0.5f) * _2220); + } else { + _2229 = 0.0f; + } + } else { + _2229 = _2220; + } + float _2230 = _2229 + 1.0f; + float _2231 = _2230 * _2174; + float _2232 = _2230 * _2177; + float _2233 = _2230 * _2180; + do { + if (!((bool)(_2231 == _2232) && (bool)(_2232 == _2233))) { + float _2240 = ((_2231 * 2.0f) - _2232) - _2233; + float _2243 = ((_2177 - _2180) * 1.7320507764816284f) * _2230; + float _2245 = atan(_2243 / _2240); + bool _2248 = (_2240 < 0.0f); + bool _2249 = (_2240 == 0.0f); + bool _2250 = (_2243 >= 0.0f); + bool _2251 = (_2243 < 0.0f); + _2262 = select((_2250 && _2249), 90.0f, select((_2251 && _2249), -90.0f, (select((_2251 && _2248), (_2245 + -3.1415927410125732f), select((_2250 && _2248), (_2245 + 3.1415927410125732f), _2245)) * 57.2957763671875f))); + } else { + _2262 = 0.0f; + } + float _2267 = min(max(select((_2262 < 0.0f), (_2262 + 360.0f), _2262), 0.0f), 360.0f); + do { + if (_2267 < -180.0f) { + _2276 = (_2267 + 360.0f); + } else { + if (_2267 > 180.0f) { + _2276 = (_2267 + -360.0f); + } else { + _2276 = _2267; + } + } + do { + if ((bool)(_2276 > -67.5f) && (bool)(_2276 < 67.5f)) { + float _2282 = (_2276 + 67.5f) * 0.029629629105329514f; + int _2283 = int(_2282); + float _2285 = _2282 - float((int)(_2283)); + float _2286 = _2285 * _2285; + float _2287 = _2286 * _2285; + if (_2283 == 3) { + _2315 = (((0.1666666716337204f - (_2285 * 0.5f)) + (_2286 * 0.5f)) - (_2287 * 0.1666666716337204f)); + } else { + if (_2283 == 2) { + _2315 = ((0.6666666865348816f - _2286) + (_2287 * 0.5f)); + } else { + if (_2283 == 1) { + _2315 = (((_2287 * -0.5f) + 0.1666666716337204f) + ((_2286 + _2285) * 0.5f)); + } else { + _2315 = select((_2283 == 0), (_2287 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2315 = 0.0f; + } + float _2324 = min(max(((((_2189 * 0.27000001072883606f) * (0.029999999329447746f - _2231)) * _2315) + _2231), 0.0f), 65535.0f); + float _2325 = min(max(_2232, 0.0f), 65535.0f); + float _2326 = min(max(_2233, 0.0f), 65535.0f); + float _2339 = min(max(mad(-0.21492856740951538f, _2326, mad(-0.2365107536315918f, _2325, (_2324 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2340 = min(max(mad(-0.09967592358589172f, _2326, mad(1.17622971534729f, _2325, (_2324 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2341 = min(max(mad(0.9977163076400757f, _2326, mad(-0.006032449658960104f, _2325, (_2324 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2342 = dot(float3(_2339, _2340, _2341), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2349 = ((_2339 - _2342) * 0.9599999785423279f) + _2342; + float _2350 = ((_2340 - _2342) * 0.9599999785423279f) + _2342; + float _2351 = ((_2341 - _2342) * 0.9599999785423279f) + _2342; + float _2354 = log2(select((_2349 <= 0.0f), 6.103515625e-05f, _2349)); + float _2355 = _2354 * 0.3010300099849701f; + do { + if (!(_2355 <= -5.2601776123046875f)) { + if ((bool)(_2355 > -5.2601776123046875f) && (bool)(_2355 < -0.7447274923324585f)) { + float _2363 = (_2354 * 0.19999998807907104f) + 3.494786262512207f; + int _2364 = int(_2363); + float _2366 = _2363 - float((int)(_2364)); + float _2368 = _global_0[_2364]; + float _2371 = _global_0[(_2364 + 1)]; + float _2376 = _2368 * 0.5f; + _2408 = dot(float3((_2366 * _2366), _2366, 1.0f), float3(mad((_global_0[(_2364 + 2)]), 0.5f, mad(_2371, -1.0f, _2376)), (_2371 - _2368), mad(_2371, 0.5f, _2376))); + } else { + if ((bool)(_2355 >= -0.7447274923324585f) && (bool)(_2355 < 4.673812389373779f)) { + float _2388 = (_2354 * 0.1666666567325592f) + 0.4123218357563019f; + int _2389 = int(_2388); + float _2391 = _2388 - float((int)(_2389)); + float _2393 = _global_1[_2389]; + float _2396 = _global_1[(_2389 + 1)]; + float _2401 = _2393 * 0.5f; + _2408 = dot(float3((_2391 * _2391), _2391, 1.0f), float3(mad((_global_1[(_2389 + 2)]), 0.5f, mad(_2396, -1.0f, _2401)), (_2396 - _2393), mad(_2396, 0.5f, _2401))); + } else { + _2408 = 4.0f; + } + } + } else { + _2408 = -4.0f; + } + float _2410 = exp2(_2408 * 3.321928024291992f); + float _2413 = log2(select((_2350 <= 0.0f), 6.103515625e-05f, _2350)); + float _2414 = _2413 * 0.3010300099849701f; + do { + if (!(_2414 <= -5.2601776123046875f)) { + if ((bool)(_2414 > -5.2601776123046875f) && (bool)(_2414 < -0.7447274923324585f)) { + float _2422 = (_2413 * 0.19999998807907104f) + 3.494786262512207f; + int _2423 = int(_2422); + float _2425 = _2422 - float((int)(_2423)); + float _2427 = _global_0[_2423]; + float _2430 = _global_0[(_2423 + 1)]; + float _2435 = _2427 * 0.5f; + _2467 = dot(float3((_2425 * _2425), _2425, 1.0f), float3(mad((_global_0[(_2423 + 2)]), 0.5f, mad(_2430, -1.0f, _2435)), (_2430 - _2427), mad(_2430, 0.5f, _2435))); + } else { + if ((bool)(_2414 >= -0.7447274923324585f) && (bool)(_2414 < 4.673812389373779f)) { + float _2447 = (_2413 * 0.1666666567325592f) + 0.4123218357563019f; + int _2448 = int(_2447); + float _2450 = _2447 - float((int)(_2448)); + float _2452 = _global_1[_2448]; + float _2455 = _global_1[(_2448 + 1)]; + float _2460 = _2452 * 0.5f; + _2467 = dot(float3((_2450 * _2450), _2450, 1.0f), float3(mad((_global_1[(_2448 + 2)]), 0.5f, mad(_2455, -1.0f, _2460)), (_2455 - _2452), mad(_2455, 0.5f, _2460))); + } else { + _2467 = 4.0f; + } + } + } else { + _2467 = -4.0f; + } + float _2469 = exp2(_2467 * 3.321928024291992f); + float _2472 = log2(select((_2351 <= 0.0f), 6.103515625e-05f, _2351)); + float _2473 = _2472 * 0.3010300099849701f; + do { + if (!(_2473 <= -5.2601776123046875f)) { + if ((bool)(_2473 > -5.2601776123046875f) && (bool)(_2473 < -0.7447274923324585f)) { + float _2481 = (_2472 * 0.19999998807907104f) + 3.494786262512207f; + int _2482 = int(_2481); + float _2484 = _2481 - float((int)(_2482)); + float _2486 = _global_0[_2482]; + float _2489 = _global_0[(_2482 + 1)]; + float _2494 = _2486 * 0.5f; + _2526 = dot(float3((_2484 * _2484), _2484, 1.0f), float3(mad((_global_0[(_2482 + 2)]), 0.5f, mad(_2489, -1.0f, _2494)), (_2489 - _2486), mad(_2489, 0.5f, _2494))); + } else { + if ((bool)(_2473 >= -0.7447274923324585f) && (bool)(_2473 < 4.673812389373779f)) { + float _2506 = (_2472 * 0.1666666567325592f) + 0.4123218357563019f; + int _2507 = int(_2506); + float _2509 = _2506 - float((int)(_2507)); + float _2511 = _global_1[_2507]; + float _2514 = _global_1[(_2507 + 1)]; + float _2519 = _2511 * 0.5f; + _2526 = dot(float3((_2509 * _2509), _2509, 1.0f), float3(mad((_global_1[(_2507 + 2)]), 0.5f, mad(_2514, -1.0f, _2519)), (_2514 - _2511), mad(_2514, 0.5f, _2519))); + } else { + _2526 = 4.0f; + } + } + } else { + _2526 = -4.0f; + } + float _2528 = exp2(_2526 * 3.321928024291992f); + float _2531 = mad(0.16386906802654266f, _2528, mad(0.14067870378494263f, _2469, (_2410 * 0.6954522132873535f))); + float _2534 = mad(0.0955343171954155f, _2528, mad(0.8596711158752441f, _2469, (_2410 * 0.044794563204050064f))); + float _2537 = mad(1.0015007257461548f, _2528, mad(0.004025210160762072f, _2469, (_2410 * -0.005525882821530104f))); + float _2540 = mad(-0.21492856740951538f, _2537, mad(-0.2365107536315918f, _2534, (_2531 * 1.4514392614364624f))); + float _2543 = mad(-0.09967592358589172f, _2537, mad(1.17622971534729f, _2534, (_2531 * -0.07655377686023712f))); + float _2546 = mad(0.9977163076400757f, _2537, mad(-0.006032449658960104f, _2534, (_2531 * 0.008316148072481155f))); + float _2549 = log2(select((_2540 <= 0.0f), 9.999999747378752e-05f, _2540)); + float _2550 = _2549 * 0.3010300099849701f; + do { + if (!(_2550 <= -3.848327875137329f)) { + if ((bool)(_2550 > -3.848327875137329f) && (bool)(_2550 < 0.6812411546707153f)) { + float _2558 = (_2549 + 12.783867835998535f) * 0.46521204710006714f; + int _2559 = int(_2558); + float _2561 = _2558 - float((int)(_2559)); + float _2563 = _global_4[_2559]; + float _2566 = _global_4[(_2559 + 1)]; + float _2571 = _2563 * 0.5f; + _2606 = dot(float3((_2561 * _2561), _2561, 1.0f), float3(mad((_global_4[(_2559 + 2)]), 0.5f, mad(_2566, -1.0f, _2571)), (_2566 - _2563), mad(_2566, 0.5f, _2571))); + } else { + if ((bool)(_2550 >= 0.6812411546707153f) && (bool)(_2550 < 3.7613162994384766f)) { + float _2583 = (_2549 + -2.2630341053009033f) * 0.6841424107551575f; + int _2584 = int(_2583); + float _2586 = _2583 - float((int)(_2584)); + float _2588 = _global_5[_2584]; + float _2591 = _global_5[(_2584 + 1)]; + float _2596 = _2588 * 0.5f; + _2606 = dot(float3((_2586 * _2586), _2586, 1.0f), float3(mad((_global_5[(_2584 + 2)]), 0.5f, mad(_2591, -1.0f, _2596)), (_2591 - _2588), mad(_2591, 0.5f, _2596))); + } else { + _2606 = ((_2549 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2606 = -2.301030158996582f; + } + float _2608 = exp2(_2606 * 3.321928024291992f); + float _2611 = log2(select((_2543 <= 0.0f), 9.999999747378752e-05f, _2543)); + float _2612 = _2611 * 0.3010300099849701f; + do { + if (!(_2612 <= -3.848327875137329f)) { + if ((bool)(_2612 > -3.848327875137329f) && (bool)(_2612 < 0.6812411546707153f)) { + float _2620 = (_2611 + 12.783867835998535f) * 0.46521204710006714f; + int _2621 = int(_2620); + float _2623 = _2620 - float((int)(_2621)); + float _2625 = _global_4[_2621]; + float _2628 = _global_4[(_2621 + 1)]; + float _2633 = _2625 * 0.5f; + _2668 = dot(float3((_2623 * _2623), _2623, 1.0f), float3(mad((_global_4[(_2621 + 2)]), 0.5f, mad(_2628, -1.0f, _2633)), (_2628 - _2625), mad(_2628, 0.5f, _2633))); + } else { + if ((bool)(_2612 >= 0.6812411546707153f) && (bool)(_2612 < 3.7613162994384766f)) { + float _2645 = (_2611 + -2.2630341053009033f) * 0.6841424107551575f; + int _2646 = int(_2645); + float _2648 = _2645 - float((int)(_2646)); + float _2650 = _global_5[_2646]; + float _2653 = _global_5[(_2646 + 1)]; + float _2658 = _2650 * 0.5f; + _2668 = dot(float3((_2648 * _2648), _2648, 1.0f), float3(mad((_global_5[(_2646 + 2)]), 0.5f, mad(_2653, -1.0f, _2658)), (_2653 - _2650), mad(_2653, 0.5f, _2658))); + } else { + _2668 = ((_2611 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2668 = -2.301030158996582f; + } + float _2670 = exp2(_2668 * 3.321928024291992f); + float _2673 = log2(select((_2546 <= 0.0f), 9.999999747378752e-05f, _2546)); + float _2674 = _2673 * 0.3010300099849701f; + do { + if (!(_2674 <= -3.848327875137329f)) { + if ((bool)(_2674 > -3.848327875137329f) && (bool)(_2674 < 0.6812411546707153f)) { + float _2682 = (_2673 + 12.783867835998535f) * 0.46521204710006714f; + int _2683 = int(_2682); + float _2685 = _2682 - float((int)(_2683)); + float _2687 = _global_4[_2683]; + float _2690 = _global_4[(_2683 + 1)]; + float _2695 = _2687 * 0.5f; + _2730 = dot(float3((_2685 * _2685), _2685, 1.0f), float3(mad((_global_4[(_2683 + 2)]), 0.5f, mad(_2690, -1.0f, _2695)), (_2690 - _2687), mad(_2690, 0.5f, _2695))); + } else { + if ((bool)(_2674 >= 0.6812411546707153f) && (bool)(_2674 < 3.7613162994384766f)) { + float _2707 = (_2673 + -2.2630341053009033f) * 0.6841424107551575f; + int _2708 = int(_2707); + float _2710 = _2707 - float((int)(_2708)); + float _2712 = _global_5[_2708]; + float _2715 = _global_5[(_2708 + 1)]; + float _2720 = _2712 * 0.5f; + _2730 = dot(float3((_2710 * _2710), _2710, 1.0f), float3(mad((_global_5[(_2708 + 2)]), 0.5f, mad(_2715, -1.0f, _2720)), (_2715 - _2712), mad(_2715, 0.5f, _2720))); + } else { + _2730 = ((_2673 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2730 = -2.301030158996582f; + } + float _2732 = exp2(_2730 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _2744 = mad(_34, _2732, mad(_33, _2670, (_2608 * _32))); + _2745 = mad(_37, _2732, mad(_36, _2670, (_2608 * _35))); + _2746 = mad(_40, _2732, mad(_39, _2670, (_2608 * _38))); + } else { + _2744 = _2608; + _2745 = _2670; + _2746 = _2732; + } + float _2756 = exp2(log2(_2744 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2757 = exp2(log2(_2745 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2758 = exp2(log2(_2746 * 9.999999747378752e-05f) * 0.1593017578125f); + _2904 = exp2(log2((1.0f / ((_2756 * 18.6875f) + 1.0f)) * ((_2756 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2905 = exp2(log2((1.0f / ((_2757 * 18.6875f) + 1.0f)) * ((_2757 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2906 = exp2(log2((1.0f / ((_2758 * 18.6875f) + 1.0f)) * ((_2758 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _2791 = mad(0.04736635088920593f, _1434, mad(0.3395121395587921f, _1433, (_1432 * 0.613191545009613f))); + float _2794 = mad(0.01345000695437193f, _1434, mad(0.9163357615470886f, _1433, (_1432 * 0.07020691782236099f))); + float _2797 = mad(0.8696067929267883f, _1434, mad(0.1095672994852066f, _1433, (_1432 * 0.020618872717022896f))); + float _2816 = exp2(log2(mad(_34, _2797, mad(_33, _2794, (_2791 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2817 = exp2(log2(mad(_37, _2797, mad(_36, _2794, (_2791 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2818 = exp2(log2(mad(_40, _2797, mad(_39, _2794, (_2791 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); + _2904 = exp2(log2((1.0f / ((_2816 * 18.6875f) + 1.0f)) * ((_2816 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2905 = exp2(log2((1.0f / ((_2817 * 18.6875f) + 1.0f)) * ((_2817 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2906 = exp2(log2((1.0f / ((_2818 * 18.6875f) + 1.0f)) * ((_2818 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _2853 = mad(0.04736635088920593f, _1422, mad(0.3395121395587921f, _1421, (_1420 * 0.613191545009613f))); + float _2856 = mad(0.01345000695437193f, _1422, mad(0.9163357615470886f, _1421, (_1420 * 0.07020691782236099f))); + float _2859 = mad(0.8696067929267883f, _1422, mad(0.1095672994852066f, _1421, (_1420 * 0.020618872717022896f))); + _2904 = mad(_34, _2859, mad(_33, _2856, (_2853 * _32))); + _2905 = mad(_37, _2859, mad(_36, _2856, (_2853 * _35))); + _2906 = mad(_40, _2859, mad(_39, _2856, (_2853 * _38))); + } else { + float _2872 = mad(0.04736635088920593f, _1448, mad(0.3395121395587921f, _1447, (_1446 * 0.613191545009613f))); + float _2875 = mad(0.01345000695437193f, _1448, mad(0.9163357615470886f, _1447, (_1446 * 0.07020691782236099f))); + float _2878 = mad(0.8696067929267883f, _1448, mad(0.1095672994852066f, _1447, (_1446 * 0.020618872717022896f))); + float _2893 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _2904 = exp2(_2893 * log2(mad(_34, _2878, mad(_33, _2875, (_2872 * _32))))); + _2905 = exp2(_2893 * log2(mad(_37, _2878, mad(_36, _2875, (_2872 * _35))))); + _2906 = exp2(_2893 * log2(mad(_40, _2878, mad(_39, _2875, (_2872 * _38))))); + } + } else { + _2904 = _1432; + _2905 = _1433; + _2906 = _1434; + } + } + } + } + } + } + SV_Target.x = (_2904 * 0.9523810148239136f); + SV_Target.y = (_2905 * 0.9523810148239136f); + SV_Target.z = (_2906 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x436CE001.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x436CE001.ps_6_0.hlsl new file mode 100644 index 000000000..8355f1dc3 --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x436CE001.ps_6_0.hlsl @@ -0,0 +1,1229 @@ +#include "../../common.hlsl" + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _5 = TEXCOORD.x + -0.015625f; + float _6 = TEXCOORD.y + -0.015625f; + float _9 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _30; + float _31; + float _32; + float _33; + float _34; + float _35; + float _36; + float _37; + float _38; + float _95; + float _96; + float _97; + float _336; + float _337; + float _338; + float _885; + float _918; + float _932; + float _996; + float _1133; + float _1134; + float _1135; + float _1278; + float _1279; + float _1280; + float _1356; + float _1367; + float _1489; + float _1522; + float _1536; + float _1575; + float _1668; + float _1727; + float _1786; + float _1869; + float _1934; + float _1999; + float _2016; + float _2017; + float _2018; + float _2122; + float _2155; + float _2169; + float _2208; + float _2301; + float _2360; + float _2419; + float _2499; + float _2561; + float _2623; + float _2637; + float _2638; + float _2639; + float _2797; + float _2798; + float _2799; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _19 = (cb0_074w == 4); + _30 = select(_19, 1.0f, 1.7050515413284302f); + _31 = select(_19, 0.0f, -0.6217905879020691f); + _32 = select(_19, 0.0f, -0.0832584798336029f); + _33 = select(_19, 0.0f, -0.13025718927383423f); + _34 = select(_19, 1.0f, 1.1408027410507202f); + _35 = select(_19, 0.0f, -0.010548528283834457f); + _36 = select(_19, 0.0f, -0.024003278464078903f); + _37 = select(_19, 0.0f, -0.1289687603712082f); + _38 = select(_19, 1.0f, 1.152971863746643f); + } else { + _30 = 0.6954522132873535f; + _31 = 0.14067870378494263f; + _32 = 0.16386906802654266f; + _33 = 0.044794563204050064f; + _34 = 0.8596711158752441f; + _35 = 0.0955343171954155f; + _36 = -0.005525882821530104f; + _37 = 0.004025210160762072f; + _38 = 1.0015007257461548f; + } + } else { + _30 = 1.02579927444458f; + _31 = -0.020052503794431686f; + _32 = -0.0057713985443115234f; + _33 = -0.0022350111976265907f; + _34 = 1.0045825242996216f; + _35 = -0.002352306619286537f; + _36 = -0.005014004185795784f; + _37 = -0.025293385609984398f; + _38 = 1.0304402112960815f; + } + } else { + _30 = 1.379158854484558f; + _31 = -0.3088507056236267f; + _32 = -0.07034677267074585f; + _33 = -0.06933528929948807f; + _34 = 1.0822921991348267f; + _35 = -0.012962047010660172f; + _36 = -0.002159259282052517f; + _37 = -0.045465391129255295f; + _38 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _48 = exp2(log2(_5 * 1.0322580337524414f) * 0.012683313339948654f); + float _49 = exp2(log2(_6 * 1.0322580337524414f) * 0.012683313339948654f); + float _50 = exp2(log2(_9 * 0.032258063554763794f) * 0.012683313339948654f); + _95 = (exp2(log2(max(0.0f, (_48 + -0.8359375f)) / (18.8515625f - (_48 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _96 = (exp2(log2(max(0.0f, (_49 + -0.8359375f)) / (18.8515625f - (_49 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _95 = ((exp2((_5 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _96 = ((exp2((_6 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _97 = ((exp2((_9 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _100 = cb0_047x * 1.0005563497543335f; + float _114 = select((_100 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _100) + 99.11000061035156f) / _100) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _100) + 247.47999572753906f) / _100) + 0.23703999817371368f)); + float _128 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _138 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _143 = ((_128 * 2.0f) + 4.0f) - (_138 * 8.0f); + float _144 = (_128 * 3.0f) / _143; + float _146 = (_138 * 2.0f) / _143; + bool _147 = (cb0_047x < 4000.0f); + float _152 = rsqrt(dot(float2(_128, _138), float2(_128, _138))); + float _153 = cb0_047y * 0.05000000074505806f; + float _156 = _128 - ((_153 * _138) * _152); + float _159 = ((_153 * _128) * _152) + _138; + float _164 = (4.0f - (_159 * 8.0f)) + (_156 * 2.0f); + float _170 = (((_156 * 3.0f) / _164) - _144) + select(_147, _144, _114); + float _171 = (((_159 * 2.0f) / _164) - _146) + select(_147, _146, (((_114 * 2.869999885559082f) + -0.2750000059604645f) - ((_114 * _114) * 3.0f))); + float _172 = max(_171, 1.000000013351432e-10f); + float _173 = _170 / _172; + float _176 = ((1.0f - _170) - _171) / _172; + float _186 = 0.9413792490959167f / mad(-0.16140000522136688f, _176, ((_173 * 0.8950999975204468f) + 0.266400009393692f)); + float _187 = 1.0404363870620728f / mad(0.03669999912381172f, _176, (1.7135000228881836f - (_173 * 0.7501999735832214f))); + float _188 = 1.089766502380371f / mad(1.0296000242233276f, _176, ((_173 * 0.03889999911189079f) + -0.06849999725818634f)); + float _189 = mad(_187, -0.7501999735832214f, 0.0f); + float _190 = mad(_187, 1.7135000228881836f, 0.0f); + float _191 = mad(_187, 0.03669999912381172f, -0.0f); + float _192 = mad(_188, 0.03889999911189079f, 0.0f); + float _193 = mad(_188, -0.06849999725818634f, 0.0f); + float _194 = mad(_188, 1.0296000242233276f, 0.0f); + float _197 = mad(0.1599626988172531f, _192, mad(-0.1470542997121811f, _189, (_186 * 0.883457362651825f))); + float _200 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_186 * 0.26293492317199707f))); + float _203 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_186 * -0.15930065512657166f))); + float _206 = mad(0.04929120093584061f, _192, mad(0.5183603167533875f, _189, (_186 * 0.38695648312568665f))); + float _209 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_186 * 0.11516613513231277f))); + float _212 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_186 * -0.0697740763425827f))); + float _215 = mad(0.9684867262840271f, _192, mad(0.04004279896616936f, _189, (_186 * -0.007634039502590895f))); + float _218 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_186 * -0.0022720457054674625f))); + float _221 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_186 * 0.0013765322510153055f))); + float _224 = mad(_203, 0.01933390088379383f, mad(_200, 0.2126729041337967f, (_197 * 0.4124563932418823f))); + float _227 = mad(_203, 0.11919199675321579f, mad(_200, 0.7151522040367126f, (_197 * 0.3575761020183563f))); + float _230 = mad(_203, 0.9503040909767151f, mad(_200, 0.07217500358819962f, (_197 * 0.18043750524520874f))); + float _233 = mad(_212, 0.01933390088379383f, mad(_209, 0.2126729041337967f, (_206 * 0.4124563932418823f))); + float _236 = mad(_212, 0.11919199675321579f, mad(_209, 0.7151522040367126f, (_206 * 0.3575761020183563f))); + float _239 = mad(_212, 0.9503040909767151f, mad(_209, 0.07217500358819962f, (_206 * 0.18043750524520874f))); + float _242 = mad(_221, 0.01933390088379383f, mad(_218, 0.2126729041337967f, (_215 * 0.4124563932418823f))); + float _245 = mad(_221, 0.11919199675321579f, mad(_218, 0.7151522040367126f, (_215 * 0.3575761020183563f))); + float _248 = mad(_221, 0.9503040909767151f, mad(_218, 0.07217500358819962f, (_215 * 0.18043750524520874f))); + float _278 = mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _97, mad(mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))), _96, (mad(-0.4986107647418976f, _242, mad(-1.5373831987380981f, _233, (_224 * 3.2409698963165283f))) * _95))); + float _281 = mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _97, mad(mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))), _96, (mad(0.04155505821108818f, _242, mad(1.8759675025939941f, _233, (_224 * -0.9692436456680298f))) * _95))); + float _284 = mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _97, mad(mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))), _96, (mad(1.056971549987793f, _242, mad(-0.20397695899009705f, _233, (_224 * 0.05563008040189743f))) * _95))); + float _287 = mad(0.04736635088920593f, _284, mad(0.3395121395587921f, _281, (_278 * 0.613191545009613f))); + float _290 = mad(0.01345000695437193f, _284, mad(0.9163357615470886f, _281, (_278 * 0.07020691782236099f))); + float _293 = mad(0.8696067929267883f, _284, mad(0.1095672994852066f, _281, (_278 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_287, _290, _293); + // bool _296 = (cb0_046x == 0); + bool _296 = ((uint)(tm_flags.x) == 0); + if (_296) { + float _298 = dot(float3(_287, _290, _293), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _302 = (_287 / _298) + -1.0f; + float _303 = (_290 / _298) + -1.0f; + float _304 = (_293 / _298) + -1.0f; + float _316 = (1.0f - exp2(((_298 * _298) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_302, _303, _304), float3(_302, _303, _304)) * -4.0f)); + _336 = (((mad(-0.06368283927440643f, _293, mad(-0.32929131388664246f, _290, (_287 * 1.370412826538086f))) - _287) * _316) + _287); + _337 = (((mad(-0.010861567221581936f, _293, mad(1.0970908403396606f, _290, (_287 * -0.08343426138162613f))) - _290) * _316) + _290); + _338 = (((mad(1.203694462776184f, _293, mad(-0.09862564504146576f, _290, (_287 * -0.02579325996339321f))) - _293) * _316) + _293); + } else { + _336 = _287; + _337 = _290; + _338 = _293; + } + float _339 = dot(float3(_336, _337, _338), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _353 = cb0_052w + cb0_057w; + float _367 = cb0_051w * cb0_056w; + float _381 = cb0_050w * cb0_055w; + float _395 = cb0_049w * cb0_054w; + float _409 = cb0_048w * cb0_053w; + float _413 = _336 - _339; + float _414 = _337 - _339; + float _415 = _338 - _339; + float _473 = saturate(_339 / cb0_073x); + float _477 = (_473 * _473) * (3.0f - (_473 * 2.0f)); + float _478 = 1.0f - _477; + float _487 = cb0_052w + cb0_067w; + float _496 = cb0_051w * cb0_066w; + float _505 = cb0_050w * cb0_065w; + float _514 = cb0_049w * cb0_064w; + float _523 = cb0_048w * cb0_063w; + float _585 = saturate((_339 - cb0_073y) / (1.0f - cb0_073y)); + float _589 = (_585 * _585) * (3.0f - (_585 * 2.0f)); + float _598 = cb0_052w + cb0_062w; + float _607 = cb0_051w * cb0_061w; + float _616 = cb0_050w * cb0_060w; + float _625 = cb0_049w * cb0_059w; + float _634 = cb0_048w * cb0_058w; + float _692 = _477 - _589; + float _703 = ((_589 * (((cb0_052x + cb0_067x) + _487) + (((cb0_051x * cb0_066x) * _496) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _514) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _523) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _505)))))) + (_478 * (((cb0_052x + cb0_057x) + _353) + (((cb0_051x * cb0_056x) * _367) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _395) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _409) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _381))))))) + ((((cb0_052x + cb0_062x) + _598) + (((cb0_051x * cb0_061x) * _607) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _625) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _634) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _616))))) * _692); + float _705 = ((_589 * (((cb0_052y + cb0_067y) + _487) + (((cb0_051y * cb0_066y) * _496) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _514) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _523) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _505)))))) + (_478 * (((cb0_052y + cb0_057y) + _353) + (((cb0_051y * cb0_056y) * _367) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _395) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _409) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _381))))))) + ((((cb0_052y + cb0_062y) + _598) + (((cb0_051y * cb0_061y) * _607) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _625) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _634) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _616))))) * _692); + float _707 = ((_589 * (((cb0_052z + cb0_067z) + _487) + (((cb0_051z * cb0_066z) * _496) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _514) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _523) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _505)))))) + (_478 * (((cb0_052z + cb0_057z) + _353) + (((cb0_051z * cb0_056z) * _367) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _395) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _409) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _381))))))) + ((((cb0_052z + cb0_062z) + _598) + (((cb0_051z * cb0_061z) * _607) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _625) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _634) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _616))))) * _692); + float _733 = dot(float3(_703, _705, _707), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _791 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_703 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); + float _792 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_705 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); + float _793 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_707 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); + float _796 = mad(-0.0832584798336029f, _793, mad(-0.6217905879020691f, _792, (_791 * 1.7050515413284302f))); + float _799 = mad(-0.010548528283834457f, _793, mad(1.1408027410507202f, _792, (_791 * -0.13025718927383423f))); + float _802 = mad(1.152971863746643f, _793, mad(-0.1289687603712082f, _792, (_791 * -0.024003278464078903f))); + float _818 = ((mad(0.061360642313957214f, _793, mad(-4.540197551250458e-09f, _792, (_791 * 0.9386394023895264f))) - _791) * cb0_075x) + _791; + float _819 = ((mad(0.169205904006958f, _793, mad(0.8307942152023315f, _792, (_791 * 6.775371730327606e-08f))) - _792) * cb0_075x) + _792; + float _820 = (mad(-2.3283064365386963e-10f, _792, (_791 * -9.313225746154785e-10f)) * cb0_075x) + _793; + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _830 = mad(0.16386905312538147f, _820, mad(0.14067868888378143f, _819, (_818 * 0.6954522132873535f))); + float _833 = mad(0.0955343246459961f, _820, mad(0.8596711158752441f, _819, (_818 * 0.044794581830501556f))); + float _836 = mad(1.0015007257461548f, _820, mad(0.004025210160762072f, _819, (_818 * -0.005525882821530104f))); + float _840 = max(max(_830, _833), _836); + float _845 = (max(_840, 1.000000013351432e-10f) - max(min(min(_830, _833), _836), 1.000000013351432e-10f)) / max(_840, 0.009999999776482582f); + float _858 = ((_833 + _830) + _836) + (sqrt((((_836 - _833) * _836) + ((_833 - _830) * _833)) + ((_830 - _836) * _830)) * 1.75f); + float _859 = _858 * 0.3333333432674408f; + float _860 = _845 + -0.4000000059604645f; + float _861 = _860 * 5.0f; + float _865 = max((1.0f - abs(_860 * 2.5f)), 0.0f); + float _876 = ((float((int)(((int)(uint)((bool)(_861 > 0.0f))) - ((int)(uint)((bool)(_861 < 0.0f))))) * (1.0f - (_865 * _865))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_859 <= 0.0533333346247673f)) { + if (!(_859 >= 0.1599999964237213f)) { + _885 = (((0.23999999463558197f / _858) + -0.5f) * _876); + } else { + _885 = 0.0f; + } + } else { + _885 = _876; + } + float _886 = _885 + 1.0f; + float _887 = _886 * _830; + float _888 = _886 * _833; + float _889 = _886 * _836; + do { + if (!((bool)(_887 == _888) && (bool)(_888 == _889))) { + float _896 = ((_887 * 2.0f) - _888) - _889; + float _899 = ((_833 - _836) * 1.7320507764816284f) * _886; + float _901 = atan(_899 / _896); + bool _904 = (_896 < 0.0f); + bool _905 = (_896 == 0.0f); + bool _906 = (_899 >= 0.0f); + bool _907 = (_899 < 0.0f); + _918 = select((_906 && _905), 90.0f, select((_907 && _905), -90.0f, (select((_907 && _904), (_901 + -3.1415927410125732f), select((_906 && _904), (_901 + 3.1415927410125732f), _901)) * 57.2957763671875f))); + } else { + _918 = 0.0f; + } + float _923 = min(max(select((_918 < 0.0f), (_918 + 360.0f), _918), 0.0f), 360.0f); + do { + if (_923 < -180.0f) { + _932 = (_923 + 360.0f); + } else { + if (_923 > 180.0f) { + _932 = (_923 + -360.0f); + } else { + _932 = _923; + } + } + float _936 = saturate(1.0f - abs(_932 * 0.014814814552664757f)); + float _940 = (_936 * _936) * (3.0f - (_936 * 2.0f)); + float _946 = ((_940 * _940) * ((_845 * 0.18000000715255737f) * (0.029999999329447746f - _887))) + _887; + float _956 = max(0.0f, mad(-0.21492856740951538f, _889, mad(-0.2365107536315918f, _888, (_946 * 1.4514392614364624f)))); + float _957 = max(0.0f, mad(-0.09967592358589172f, _889, mad(1.17622971534729f, _888, (_946 * -0.07655377686023712f)))); + float _958 = max(0.0f, mad(0.9977163076400757f, _889, mad(-0.006032449658960104f, _888, (_946 * 0.008316148072481155f)))); + float _959 = dot(float3(_956, _957, _958), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _973 = (cb0_036w + 1.0f) - cb0_036y; + float _976 = cb0_037x + 1.0f; + float _978 = _976 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _996 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _987 = (cb0_036w + 0.18000000715255737f) / _973; + _996 = (-0.7447274923324585f - ((log2(_987 / (2.0f - _987)) * 0.3465735912322998f) * (_973 / cb0_036x))); + } + float _999 = ((1.0f - cb0_036y) / cb0_036x) - _996; + float _1001 = (cb0_036z / cb0_036x) - _999; + float _1005 = log2(lerp(_959, _956, 0.9599999785423279f)) * 0.3010300099849701f; + float _1006 = log2(lerp(_959, _957, 0.9599999785423279f)) * 0.3010300099849701f; + float _1007 = log2(lerp(_959, _958, 0.9599999785423279f)) * 0.3010300099849701f; + float _1011 = cb0_036x * (_1005 + _999); + float _1012 = cb0_036x * (_1006 + _999); + float _1013 = cb0_036x * (_1007 + _999); + float _1014 = _973 * 2.0f; + float _1016 = (cb0_036x * -2.0f) / _973; + float _1017 = _1005 - _996; + float _1018 = _1006 - _996; + float _1019 = _1007 - _996; + float _1038 = _978 * 2.0f; + float _1040 = (cb0_036x * 2.0f) / _978; + float _1065 = select((_1005 < _996), ((_1014 / (exp2((_1017 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1011); + float _1066 = select((_1006 < _996), ((_1014 / (exp2((_1018 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1012); + float _1067 = select((_1007 < _996), ((_1014 / (exp2((_1019 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1013); + float _1074 = _1001 - _996; + float _1078 = saturate(_1017 / _1074); + float _1079 = saturate(_1018 / _1074); + float _1080 = saturate(_1019 / _1074); + bool _1081 = (_1001 < _996); + float _1085 = select(_1081, (1.0f - _1078), _1078); + float _1086 = select(_1081, (1.0f - _1079), _1079); + float _1087 = select(_1081, (1.0f - _1080), _1080); + float _1106 = (((_1085 * _1085) * (select((_1005 > _1001), (_976 - (_1038 / (exp2(((_1005 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1011) - _1065)) * (3.0f - (_1085 * 2.0f))) + _1065; + float _1107 = (((_1086 * _1086) * (select((_1006 > _1001), (_976 - (_1038 / (exp2(((_1006 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1012) - _1066)) * (3.0f - (_1086 * 2.0f))) + _1066; + float _1108 = (((_1087 * _1087) * (select((_1007 > _1001), (_976 - (_1038 / (exp2(((_1007 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; + float _1109 = dot(float3(_1106, _1107, _1108), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1133 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1106, 0.9300000071525574f))) - _818)) + _818); + _1134 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1107, 0.9300000071525574f))) - _819)) + _819); + _1135 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1108, 0.9300000071525574f))) - _820)) + _820); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1133 = _818; + _1134 = _819; + _1135 = _820; + } + float _1151 = ((mad(-0.06537103652954102f, _1135, mad(1.451815478503704e-06f, _1134, (_1133 * 1.065374732017517f))) - _1133) * cb0_075x) + _1133; + float _1152 = ((mad(-0.20366770029067993f, _1135, mad(1.2036634683609009f, _1134, (_1133 * -2.57161445915699e-07f))) - _1134) * cb0_075x) + _1134; + float _1153 = ((mad(0.9999996423721313f, _1135, mad(2.0954757928848267e-08f, _1134, (_1133 * 1.862645149230957e-08f))) - _1135) * cb0_075x) + _1135; + [branch] + if (!_296) { + float _1196 = 1.0f / (dot(float3(_796, _799, _802), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1206 = max(0.0f, (((_1196 * cb0_035x) + cb0_034x) * dot(float3(_796, _799, _802), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1207 = max(0.0f, (((_1196 * cb0_035y) + cb0_034y) * dot(float3(_796, _799, _802), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1208 = max(0.0f, (((_1196 * cb0_035z) + cb0_034z) * dot(float3(_796, _799, _802), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1214 = max(0.0f, (cb0_031x - _1206)); + float _1215 = max(0.0f, (cb0_031x - _1207)); + float _1216 = max(0.0f, (cb0_031x - _1208)); + float _1218 = max(_1206, cb0_031z); + float _1219 = max(_1207, cb0_031z); + float _1220 = max(_1208, cb0_031z); + _1278 = (((((((cb0_032x * _1218) + cb0_032y) * (1.0f / (cb0_031w + _1218))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1206, cb0_031x), cb0_031z))) + ((cb0_028w * _1214) * (1.0f / (cb0_031y + _1214)))) + cb0_029w); + _1279 = ((((((1.0f / (cb0_031w + _1219)) * ((cb0_032x * _1219) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1207, cb0_031x), cb0_031z))) + ((cb0_028w * _1215) * (1.0f / (cb0_031y + _1215)))) + cb0_029w); + _1280 = ((((((1.0f / (cb0_031w + _1220)) * ((cb0_032x * _1220) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1208, cb0_031x), cb0_031z))) + ((cb0_028w * _1216) * (1.0f / (cb0_031y + _1216)))) + cb0_029w); + } else { + _1278 = max(0.0f, mad(-0.0832584798336029f, _1153, mad(-0.6217905879020691f, _1152, (_1151 * 1.7050515413284302f)))); + _1279 = max(0.0f, mad(-0.010548528283834457f, _1153, mad(1.1408027410507202f, _1152, (_1151 * -0.13025718927383423f)))); + _1280 = max(0.0f, mad(1.152971863746643f, _1153, mad(-0.1289687603712082f, _1152, (_1151 * -0.024003278464078903f)))); + } + float _1306 = cb0_044y * (((cb0_026y + (cb0_026x * _1278)) * _1278) + cb0_026z); + float _1307 = cb0_044z * (((cb0_026y + (cb0_026x * _1279)) * _1279) + cb0_026z); + float _1308 = cb0_044w * (((cb0_026y + (cb0_026x * _1280)) * _1280) + cb0_026z); + float _1315 = ((cb0_045x - _1306) * cb0_045w) + _1306; + float _1316 = ((cb0_045y - _1307) * cb0_045w) + _1307; + float _1317 = ((cb0_045z - _1308) * cb0_045w) + _1308; + wuwa::lut::ApplyLutStrength(_1315, _1316, _1317, ungraded); + float _1318 = cb0_044y * _796; + float _1319 = cb0_044z * _799; + float _1320 = cb0_044w * _802; + float _1327 = ((cb0_045x - _1318) * cb0_045w) + _1318; + float _1328 = ((cb0_045y - _1319) * cb0_045w) + _1319; + float _1329 = ((cb0_045z - _1320) * cb0_045w) + _1320; + float _1341 = exp2(log2(max(0.0f, _1315)) * cb0_027y); + float _1342 = exp2(log2(max(0.0f, _1316)) * cb0_027y); + float _1343 = exp2(log2(max(0.0f, _1317)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1341, _1342, _1343)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1341 < 0.0031306699384003878f) { + _1356 = (_1341 * 12.920000076293945f); + } else { + _1356 = (((pow(_1341, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1342 < 0.0031306699384003878f) { + _1367 = (_1342 * 12.920000076293945f); + } else { + _1367 = (((pow(_1342, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1343 < 0.0031306699384003878f) { + _2797 = _1356; + _2798 = _1367; + _2799 = (_1343 * 12.920000076293945f); + } else { + _2797 = _1356; + _2798 = _1367; + _2799 = (((pow(_1343, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1382 = mad(0.04736635088920593f, _1343, mad(0.3395121395587921f, _1342, (_1341 * 0.613191545009613f))); + float _1385 = mad(0.01345000695437193f, _1343, mad(0.9163357615470886f, _1342, (_1341 * 0.07020691782236099f))); + float _1388 = mad(0.8696067929267883f, _1343, mad(0.1095672994852066f, _1342, (_1341 * 0.020618872717022896f))); + float _1398 = max(6.103519990574569e-05f, mad(_32, _1388, mad(_31, _1385, (_1382 * _30)))); + float _1399 = max(6.103519990574569e-05f, mad(_35, _1388, mad(_34, _1385, (_1382 * _33)))); + float _1400 = max(6.103519990574569e-05f, mad(_38, _1388, mad(_37, _1385, (_1382 * _36)))); + _2797 = min((_1398 * 4.5f), ((exp2(log2(max(_1398, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2798 = min((_1399 * 4.5f), ((exp2(log2(max(_1399, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2799 = min((_1400 * 4.5f), ((exp2(log2(max(_1400, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1427 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1427) { + float _1430 = _1328 * 3.0f; + float _1431 = _1329 * 3.0f; + float _1434 = mad(0.17733481526374817f, _1431, mad(0.38297808170318604f, _1430, (_1327 * 1.31910240650177f))); + float _1437 = mad(0.09676162153482437f, _1431, mad(0.8134231567382812f, _1430, (_1327 * 0.2693769633769989f))); + float _1440 = mad(0.870704174041748f, _1431, mad(0.11154405772686005f, _1430, (_1327 * 0.05263196676969528f))); + float _1444 = max(max(_1434, _1437), _1440); + float _1449 = (max(_1444, 1.000000013351432e-10f) - max(min(min(_1434, _1437), _1440), 1.000000013351432e-10f)) / max(_1444, 0.009999999776482582f); + float _1462 = ((_1437 + _1434) + _1440) + (sqrt((((_1440 - _1437) * _1440) + ((_1437 - _1434) * _1437)) + ((_1434 - _1440) * _1434)) * 1.75f); + float _1463 = _1462 * 0.3333333432674408f; + float _1464 = _1449 + -0.4000000059604645f; + float _1465 = _1464 * 5.0f; + float _1469 = max((1.0f - abs(_1464 * 2.5f)), 0.0f); + float _1480 = ((float((int)(((int)(uint)((bool)(_1465 > 0.0f))) - ((int)(uint)((bool)(_1465 < 0.0f))))) * (1.0f - (_1469 * _1469))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1463 <= 0.0533333346247673f)) { + if (!(_1463 >= 0.1599999964237213f)) { + _1489 = (((0.23999999463558197f / _1462) + -0.5f) * _1480); + } else { + _1489 = 0.0f; + } + } else { + _1489 = _1480; + } + float _1490 = _1489 + 1.0f; + float _1491 = _1490 * _1434; + float _1492 = _1490 * _1437; + float _1493 = _1490 * _1440; + do { + if (!((bool)(_1491 == _1492) && (bool)(_1492 == _1493))) { + float _1500 = ((_1491 * 2.0f) - _1492) - _1493; + float _1503 = ((_1437 - _1440) * 1.7320507764816284f) * _1490; + float _1505 = atan(_1503 / _1500); + bool _1508 = (_1500 < 0.0f); + bool _1509 = (_1500 == 0.0f); + bool _1510 = (_1503 >= 0.0f); + bool _1511 = (_1503 < 0.0f); + _1522 = select((_1510 && _1509), 90.0f, select((_1511 && _1509), -90.0f, (select((_1511 && _1508), (_1505 + -3.1415927410125732f), select((_1510 && _1508), (_1505 + 3.1415927410125732f), _1505)) * 57.2957763671875f))); + } else { + _1522 = 0.0f; + } + float _1527 = min(max(select((_1522 < 0.0f), (_1522 + 360.0f), _1522), 0.0f), 360.0f); + do { + if (_1527 < -180.0f) { + _1536 = (_1527 + 360.0f); + } else { + if (_1527 > 180.0f) { + _1536 = (_1527 + -360.0f); + } else { + _1536 = _1527; + } + } + do { + if ((bool)(_1536 > -67.5f) && (bool)(_1536 < 67.5f)) { + float _1542 = (_1536 + 67.5f) * 0.029629629105329514f; + int _1543 = int(_1542); + float _1545 = _1542 - float((int)(_1543)); + float _1546 = _1545 * _1545; + float _1547 = _1546 * _1545; + if (_1543 == 3) { + _1575 = (((0.1666666716337204f - (_1545 * 0.5f)) + (_1546 * 0.5f)) - (_1547 * 0.1666666716337204f)); + } else { + if (_1543 == 2) { + _1575 = ((0.6666666865348816f - _1546) + (_1547 * 0.5f)); + } else { + if (_1543 == 1) { + _1575 = (((_1547 * -0.5f) + 0.1666666716337204f) + ((_1546 + _1545) * 0.5f)); + } else { + _1575 = select((_1543 == 0), (_1547 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1575 = 0.0f; + } + float _1584 = min(max(((((_1449 * 0.27000001072883606f) * (0.029999999329447746f - _1491)) * _1575) + _1491), 0.0f), 65535.0f); + float _1585 = min(max(_1492, 0.0f), 65535.0f); + float _1586 = min(max(_1493, 0.0f), 65535.0f); + float _1599 = min(max(mad(-0.21492856740951538f, _1586, mad(-0.2365107536315918f, _1585, (_1584 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _1600 = min(max(mad(-0.09967592358589172f, _1586, mad(1.17622971534729f, _1585, (_1584 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _1601 = min(max(mad(0.9977163076400757f, _1586, mad(-0.006032449658960104f, _1585, (_1584 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _1602 = dot(float3(_1599, _1600, _1601), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1609 = ((_1599 - _1602) * 0.9599999785423279f) + _1602; + float _1610 = ((_1600 - _1602) * 0.9599999785423279f) + _1602; + float _1611 = ((_1601 - _1602) * 0.9599999785423279f) + _1602; + float _1614 = log2(select((_1609 <= 0.0f), 6.103515625e-05f, _1609)); + float _1615 = _1614 * 0.3010300099849701f; + do { + if (!(_1615 <= -5.2601776123046875f)) { + if ((bool)(_1615 > -5.2601776123046875f) && (bool)(_1615 < -0.7447274923324585f)) { + float _1623 = (_1614 * 0.19999998807907104f) + 3.494786262512207f; + int _1624 = int(_1623); + float _1626 = _1623 - float((int)(_1624)); + float _1628 = _global_0[_1624]; + float _1631 = _global_0[(_1624 + 1)]; + float _1636 = _1628 * 0.5f; + _1668 = dot(float3((_1626 * _1626), _1626, 1.0f), float3(mad((_global_0[(_1624 + 2)]), 0.5f, mad(_1631, -1.0f, _1636)), (_1631 - _1628), mad(_1631, 0.5f, _1636))); + } else { + if ((bool)(_1615 >= -0.7447274923324585f) && (bool)(_1615 < 4.673812389373779f)) { + float _1648 = (_1614 * 0.1666666567325592f) + 0.4123218357563019f; + int _1649 = int(_1648); + float _1651 = _1648 - float((int)(_1649)); + float _1653 = _global_1[_1649]; + float _1656 = _global_1[(_1649 + 1)]; + float _1661 = _1653 * 0.5f; + _1668 = dot(float3((_1651 * _1651), _1651, 1.0f), float3(mad((_global_1[(_1649 + 2)]), 0.5f, mad(_1656, -1.0f, _1661)), (_1656 - _1653), mad(_1656, 0.5f, _1661))); + } else { + _1668 = 4.0f; + } + } + } else { + _1668 = -4.0f; + } + float _1670 = exp2(_1668 * 3.321928024291992f); + float _1673 = log2(select((_1610 <= 0.0f), 6.103515625e-05f, _1610)); + float _1674 = _1673 * 0.3010300099849701f; + do { + if (!(_1674 <= -5.2601776123046875f)) { + if ((bool)(_1674 > -5.2601776123046875f) && (bool)(_1674 < -0.7447274923324585f)) { + float _1682 = (_1673 * 0.19999998807907104f) + 3.494786262512207f; + int _1683 = int(_1682); + float _1685 = _1682 - float((int)(_1683)); + float _1687 = _global_0[_1683]; + float _1690 = _global_0[(_1683 + 1)]; + float _1695 = _1687 * 0.5f; + _1727 = dot(float3((_1685 * _1685), _1685, 1.0f), float3(mad((_global_0[(_1683 + 2)]), 0.5f, mad(_1690, -1.0f, _1695)), (_1690 - _1687), mad(_1690, 0.5f, _1695))); + } else { + if ((bool)(_1674 >= -0.7447274923324585f) && (bool)(_1674 < 4.673812389373779f)) { + float _1707 = (_1673 * 0.1666666567325592f) + 0.4123218357563019f; + int _1708 = int(_1707); + float _1710 = _1707 - float((int)(_1708)); + float _1712 = _global_1[_1708]; + float _1715 = _global_1[(_1708 + 1)]; + float _1720 = _1712 * 0.5f; + _1727 = dot(float3((_1710 * _1710), _1710, 1.0f), float3(mad((_global_1[(_1708 + 2)]), 0.5f, mad(_1715, -1.0f, _1720)), (_1715 - _1712), mad(_1715, 0.5f, _1720))); + } else { + _1727 = 4.0f; + } + } + } else { + _1727 = -4.0f; + } + float _1729 = exp2(_1727 * 3.321928024291992f); + float _1732 = log2(select((_1611 <= 0.0f), 6.103515625e-05f, _1611)); + float _1733 = _1732 * 0.3010300099849701f; + do { + if (!(_1733 <= -5.2601776123046875f)) { + if ((bool)(_1733 > -5.2601776123046875f) && (bool)(_1733 < -0.7447274923324585f)) { + float _1741 = (_1732 * 0.19999998807907104f) + 3.494786262512207f; + int _1742 = int(_1741); + float _1744 = _1741 - float((int)(_1742)); + float _1746 = _global_0[_1742]; + float _1749 = _global_0[(_1742 + 1)]; + float _1754 = _1746 * 0.5f; + _1786 = dot(float3((_1744 * _1744), _1744, 1.0f), float3(mad((_global_0[(_1742 + 2)]), 0.5f, mad(_1749, -1.0f, _1754)), (_1749 - _1746), mad(_1749, 0.5f, _1754))); + } else { + if ((bool)(_1733 >= -0.7447274923324585f) && (bool)(_1733 < 4.673812389373779f)) { + float _1766 = (_1732 * 0.1666666567325592f) + 0.4123218357563019f; + int _1767 = int(_1766); + float _1769 = _1766 - float((int)(_1767)); + float _1771 = _global_1[_1767]; + float _1774 = _global_1[(_1767 + 1)]; + float _1779 = _1771 * 0.5f; + _1786 = dot(float3((_1769 * _1769), _1769, 1.0f), float3(mad((_global_1[(_1767 + 2)]), 0.5f, mad(_1774, -1.0f, _1779)), (_1774 - _1771), mad(_1774, 0.5f, _1779))); + } else { + _1786 = 4.0f; + } + } + } else { + _1786 = -4.0f; + } + float _1788 = exp2(_1786 * 3.321928024291992f); + float _1791 = mad(0.16386906802654266f, _1788, mad(0.14067870378494263f, _1729, (_1670 * 0.6954522132873535f))); + float _1794 = mad(0.0955343171954155f, _1788, mad(0.8596711158752441f, _1729, (_1670 * 0.044794563204050064f))); + float _1797 = mad(1.0015007257461548f, _1788, mad(0.004025210160762072f, _1729, (_1670 * -0.005525882821530104f))); + float _1800 = mad(-0.21492856740951538f, _1797, mad(-0.2365107536315918f, _1794, (_1791 * 1.4514392614364624f))); + float _1803 = mad(-0.09967592358589172f, _1797, mad(1.17622971534729f, _1794, (_1791 * -0.07655377686023712f))); + float _1806 = mad(0.9977163076400757f, _1797, mad(-0.006032449658960104f, _1794, (_1791 * 0.008316148072481155f))); + float _1809 = log2(select((_1800 <= 0.0f), 9.999999747378752e-05f, _1800)); + float _1810 = _1809 * 0.3010300099849701f; + do { + if (!(!(_1810 <= -3.848327875137329f))) { + _1869 = ((_1809 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1810 > -3.848327875137329f) && (bool)(_1810 < 0.6812411546707153f)) { + float _1821 = (_1809 + 12.783867835998535f) * 0.46521204710006714f; + int _1822 = int(_1821); + float _1824 = _1821 - float((int)(_1822)); + float _1826 = _global_2[_1822]; + float _1829 = _global_2[(_1822 + 1)]; + float _1834 = _1826 * 0.5f; + _1869 = dot(float3((_1824 * _1824), _1824, 1.0f), float3(mad((_global_2[(_1822 + 2)]), 0.5f, mad(_1829, -1.0f, _1834)), (_1829 - _1826), mad(_1829, 0.5f, _1834))); + } else { + if ((bool)(_1810 >= 0.6812411546707153f) && (bool)(_1810 < 3.653702974319458f)) { + float _1846 = (_1809 + -2.2630341053009033f) * 0.7089107632637024f; + int _1847 = int(_1846); + float _1849 = _1846 - float((int)(_1847)); + float _1851 = _global_3[_1847]; + float _1854 = _global_3[(_1847 + 1)]; + float _1859 = _1851 * 0.5f; + _1869 = dot(float3((_1849 * _1849), _1849, 1.0f), float3(mad((_global_3[(_1847 + 2)]), 0.5f, mad(_1854, -1.0f, _1859)), (_1854 - _1851), mad(_1854, 0.5f, _1859))); + } else { + _1869 = ((_1809 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _1874 = log2(select((_1803 <= 0.0f), 9.999999747378752e-05f, _1803)); + float _1875 = _1874 * 0.3010300099849701f; + do { + if (!(!(_1875 <= -3.848327875137329f))) { + _1934 = ((_1874 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1875 > -3.848327875137329f) && (bool)(_1875 < 0.6812411546707153f)) { + float _1886 = (_1874 + 12.783867835998535f) * 0.46521204710006714f; + int _1887 = int(_1886); + float _1889 = _1886 - float((int)(_1887)); + float _1891 = _global_2[_1887]; + float _1894 = _global_2[(_1887 + 1)]; + float _1899 = _1891 * 0.5f; + _1934 = dot(float3((_1889 * _1889), _1889, 1.0f), float3(mad((_global_2[(_1887 + 2)]), 0.5f, mad(_1894, -1.0f, _1899)), (_1894 - _1891), mad(_1894, 0.5f, _1899))); + } else { + if ((bool)(_1875 >= 0.6812411546707153f) && (bool)(_1875 < 3.653702974319458f)) { + float _1911 = (_1874 + -2.2630341053009033f) * 0.7089107632637024f; + int _1912 = int(_1911); + float _1914 = _1911 - float((int)(_1912)); + float _1916 = _global_3[_1912]; + float _1919 = _global_3[(_1912 + 1)]; + float _1924 = _1916 * 0.5f; + _1934 = dot(float3((_1914 * _1914), _1914, 1.0f), float3(mad((_global_3[(_1912 + 2)]), 0.5f, mad(_1919, -1.0f, _1924)), (_1919 - _1916), mad(_1919, 0.5f, _1924))); + } else { + _1934 = ((_1874 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _1939 = log2(select((_1806 <= 0.0f), 9.999999747378752e-05f, _1806)); + float _1940 = _1939 * 0.3010300099849701f; + do { + if (!(!(_1940 <= -3.848327875137329f))) { + _1999 = ((_1939 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1940 > -3.848327875137329f) && (bool)(_1940 < 0.6812411546707153f)) { + float _1951 = (_1939 + 12.783867835998535f) * 0.46521204710006714f; + int _1952 = int(_1951); + float _1954 = _1951 - float((int)(_1952)); + float _1956 = _global_2[_1952]; + float _1959 = _global_2[(_1952 + 1)]; + float _1964 = _1956 * 0.5f; + _1999 = dot(float3((_1954 * _1954), _1954, 1.0f), float3(mad((_global_2[(_1952 + 2)]), 0.5f, mad(_1959, -1.0f, _1964)), (_1959 - _1956), mad(_1959, 0.5f, _1964))); + } else { + if ((bool)(_1940 >= 0.6812411546707153f) && (bool)(_1940 < 3.653702974319458f)) { + float _1976 = (_1939 + -2.2630341053009033f) * 0.7089107632637024f; + int _1977 = int(_1976); + float _1979 = _1976 - float((int)(_1977)); + float _1981 = _global_3[_1977]; + float _1984 = _global_3[(_1977 + 1)]; + float _1989 = _1981 * 0.5f; + _1999 = dot(float3((_1979 * _1979), _1979, 1.0f), float3(mad((_global_3[(_1977 + 2)]), 0.5f, mad(_1984, -1.0f, _1989)), (_1984 - _1981), mad(_1984, 0.5f, _1989))); + } else { + _1999 = ((_1939 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2002 = exp2(_1869 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2003 = exp2(_1934 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2004 = exp2(_1999 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1427) { + _2016 = mad(_32, _2004, mad(_31, _2003, (_2002 * _30))); + _2017 = mad(_35, _2004, mad(_34, _2003, (_2002 * _33))); + _2018 = mad(_38, _2004, mad(_37, _2003, (_2002 * _36))); + } else { + _2016 = _2002; + _2017 = _2003; + _2018 = _2004; + } + float _2028 = exp2(log2(_2016 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2029 = exp2(log2(_2017 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2030 = exp2(log2(_2018 * 9.999999747378752e-05f) * 0.1593017578125f); + _2797 = exp2(log2((1.0f / ((_2028 * 18.6875f) + 1.0f)) * ((_2028 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2798 = exp2(log2((1.0f / ((_2029 * 18.6875f) + 1.0f)) * ((_2029 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2799 = exp2(log2((1.0f / ((_2030 * 18.6875f) + 1.0f)) * ((_2030 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2063 = _1328 * 3.0f; + float _2064 = _1329 * 3.0f; + float _2067 = mad(0.17733481526374817f, _2064, mad(0.38297808170318604f, _2063, (_1327 * 1.31910240650177f))); + float _2070 = mad(0.09676162153482437f, _2064, mad(0.8134231567382812f, _2063, (_1327 * 0.2693769633769989f))); + float _2073 = mad(0.870704174041748f, _2064, mad(0.11154405772686005f, _2063, (_1327 * 0.05263196676969528f))); + float _2077 = max(max(_2067, _2070), _2073); + float _2082 = (max(_2077, 1.000000013351432e-10f) - max(min(min(_2067, _2070), _2073), 1.000000013351432e-10f)) / max(_2077, 0.009999999776482582f); + float _2095 = ((_2070 + _2067) + _2073) + (sqrt((((_2073 - _2070) * _2073) + ((_2070 - _2067) * _2070)) + ((_2067 - _2073) * _2067)) * 1.75f); + float _2096 = _2095 * 0.3333333432674408f; + float _2097 = _2082 + -0.4000000059604645f; + float _2098 = _2097 * 5.0f; + float _2102 = max((1.0f - abs(_2097 * 2.5f)), 0.0f); + float _2113 = ((float((int)(((int)(uint)((bool)(_2098 > 0.0f))) - ((int)(uint)((bool)(_2098 < 0.0f))))) * (1.0f - (_2102 * _2102))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2096 <= 0.0533333346247673f)) { + if (!(_2096 >= 0.1599999964237213f)) { + _2122 = (((0.23999999463558197f / _2095) + -0.5f) * _2113); + } else { + _2122 = 0.0f; + } + } else { + _2122 = _2113; + } + float _2123 = _2122 + 1.0f; + float _2124 = _2123 * _2067; + float _2125 = _2123 * _2070; + float _2126 = _2123 * _2073; + do { + if (!((bool)(_2124 == _2125) && (bool)(_2125 == _2126))) { + float _2133 = ((_2124 * 2.0f) - _2125) - _2126; + float _2136 = ((_2070 - _2073) * 1.7320507764816284f) * _2123; + float _2138 = atan(_2136 / _2133); + bool _2141 = (_2133 < 0.0f); + bool _2142 = (_2133 == 0.0f); + bool _2143 = (_2136 >= 0.0f); + bool _2144 = (_2136 < 0.0f); + _2155 = select((_2143 && _2142), 90.0f, select((_2144 && _2142), -90.0f, (select((_2144 && _2141), (_2138 + -3.1415927410125732f), select((_2143 && _2141), (_2138 + 3.1415927410125732f), _2138)) * 57.2957763671875f))); + } else { + _2155 = 0.0f; + } + float _2160 = min(max(select((_2155 < 0.0f), (_2155 + 360.0f), _2155), 0.0f), 360.0f); + do { + if (_2160 < -180.0f) { + _2169 = (_2160 + 360.0f); + } else { + if (_2160 > 180.0f) { + _2169 = (_2160 + -360.0f); + } else { + _2169 = _2160; + } + } + do { + if ((bool)(_2169 > -67.5f) && (bool)(_2169 < 67.5f)) { + float _2175 = (_2169 + 67.5f) * 0.029629629105329514f; + int _2176 = int(_2175); + float _2178 = _2175 - float((int)(_2176)); + float _2179 = _2178 * _2178; + float _2180 = _2179 * _2178; + if (_2176 == 3) { + _2208 = (((0.1666666716337204f - (_2178 * 0.5f)) + (_2179 * 0.5f)) - (_2180 * 0.1666666716337204f)); + } else { + if (_2176 == 2) { + _2208 = ((0.6666666865348816f - _2179) + (_2180 * 0.5f)); + } else { + if (_2176 == 1) { + _2208 = (((_2180 * -0.5f) + 0.1666666716337204f) + ((_2179 + _2178) * 0.5f)); + } else { + _2208 = select((_2176 == 0), (_2180 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2208 = 0.0f; + } + float _2217 = min(max(((((_2082 * 0.27000001072883606f) * (0.029999999329447746f - _2124)) * _2208) + _2124), 0.0f), 65535.0f); + float _2218 = min(max(_2125, 0.0f), 65535.0f); + float _2219 = min(max(_2126, 0.0f), 65535.0f); + float _2232 = min(max(mad(-0.21492856740951538f, _2219, mad(-0.2365107536315918f, _2218, (_2217 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2233 = min(max(mad(-0.09967592358589172f, _2219, mad(1.17622971534729f, _2218, (_2217 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2234 = min(max(mad(0.9977163076400757f, _2219, mad(-0.006032449658960104f, _2218, (_2217 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2235 = dot(float3(_2232, _2233, _2234), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2242 = ((_2232 - _2235) * 0.9599999785423279f) + _2235; + float _2243 = ((_2233 - _2235) * 0.9599999785423279f) + _2235; + float _2244 = ((_2234 - _2235) * 0.9599999785423279f) + _2235; + float _2247 = log2(select((_2242 <= 0.0f), 6.103515625e-05f, _2242)); + float _2248 = _2247 * 0.3010300099849701f; + do { + if (!(_2248 <= -5.2601776123046875f)) { + if ((bool)(_2248 > -5.2601776123046875f) && (bool)(_2248 < -0.7447274923324585f)) { + float _2256 = (_2247 * 0.19999998807907104f) + 3.494786262512207f; + int _2257 = int(_2256); + float _2259 = _2256 - float((int)(_2257)); + float _2261 = _global_0[_2257]; + float _2264 = _global_0[(_2257 + 1)]; + float _2269 = _2261 * 0.5f; + _2301 = dot(float3((_2259 * _2259), _2259, 1.0f), float3(mad((_global_0[(_2257 + 2)]), 0.5f, mad(_2264, -1.0f, _2269)), (_2264 - _2261), mad(_2264, 0.5f, _2269))); + } else { + if ((bool)(_2248 >= -0.7447274923324585f) && (bool)(_2248 < 4.673812389373779f)) { + float _2281 = (_2247 * 0.1666666567325592f) + 0.4123218357563019f; + int _2282 = int(_2281); + float _2284 = _2281 - float((int)(_2282)); + float _2286 = _global_1[_2282]; + float _2289 = _global_1[(_2282 + 1)]; + float _2294 = _2286 * 0.5f; + _2301 = dot(float3((_2284 * _2284), _2284, 1.0f), float3(mad((_global_1[(_2282 + 2)]), 0.5f, mad(_2289, -1.0f, _2294)), (_2289 - _2286), mad(_2289, 0.5f, _2294))); + } else { + _2301 = 4.0f; + } + } + } else { + _2301 = -4.0f; + } + float _2303 = exp2(_2301 * 3.321928024291992f); + float _2306 = log2(select((_2243 <= 0.0f), 6.103515625e-05f, _2243)); + float _2307 = _2306 * 0.3010300099849701f; + do { + if (!(_2307 <= -5.2601776123046875f)) { + if ((bool)(_2307 > -5.2601776123046875f) && (bool)(_2307 < -0.7447274923324585f)) { + float _2315 = (_2306 * 0.19999998807907104f) + 3.494786262512207f; + int _2316 = int(_2315); + float _2318 = _2315 - float((int)(_2316)); + float _2320 = _global_0[_2316]; + float _2323 = _global_0[(_2316 + 1)]; + float _2328 = _2320 * 0.5f; + _2360 = dot(float3((_2318 * _2318), _2318, 1.0f), float3(mad((_global_0[(_2316 + 2)]), 0.5f, mad(_2323, -1.0f, _2328)), (_2323 - _2320), mad(_2323, 0.5f, _2328))); + } else { + if ((bool)(_2307 >= -0.7447274923324585f) && (bool)(_2307 < 4.673812389373779f)) { + float _2340 = (_2306 * 0.1666666567325592f) + 0.4123218357563019f; + int _2341 = int(_2340); + float _2343 = _2340 - float((int)(_2341)); + float _2345 = _global_1[_2341]; + float _2348 = _global_1[(_2341 + 1)]; + float _2353 = _2345 * 0.5f; + _2360 = dot(float3((_2343 * _2343), _2343, 1.0f), float3(mad((_global_1[(_2341 + 2)]), 0.5f, mad(_2348, -1.0f, _2353)), (_2348 - _2345), mad(_2348, 0.5f, _2353))); + } else { + _2360 = 4.0f; + } + } + } else { + _2360 = -4.0f; + } + float _2362 = exp2(_2360 * 3.321928024291992f); + float _2365 = log2(select((_2244 <= 0.0f), 6.103515625e-05f, _2244)); + float _2366 = _2365 * 0.3010300099849701f; + do { + if (!(_2366 <= -5.2601776123046875f)) { + if ((bool)(_2366 > -5.2601776123046875f) && (bool)(_2366 < -0.7447274923324585f)) { + float _2374 = (_2365 * 0.19999998807907104f) + 3.494786262512207f; + int _2375 = int(_2374); + float _2377 = _2374 - float((int)(_2375)); + float _2379 = _global_0[_2375]; + float _2382 = _global_0[(_2375 + 1)]; + float _2387 = _2379 * 0.5f; + _2419 = dot(float3((_2377 * _2377), _2377, 1.0f), float3(mad((_global_0[(_2375 + 2)]), 0.5f, mad(_2382, -1.0f, _2387)), (_2382 - _2379), mad(_2382, 0.5f, _2387))); + } else { + if ((bool)(_2366 >= -0.7447274923324585f) && (bool)(_2366 < 4.673812389373779f)) { + float _2399 = (_2365 * 0.1666666567325592f) + 0.4123218357563019f; + int _2400 = int(_2399); + float _2402 = _2399 - float((int)(_2400)); + float _2404 = _global_1[_2400]; + float _2407 = _global_1[(_2400 + 1)]; + float _2412 = _2404 * 0.5f; + _2419 = dot(float3((_2402 * _2402), _2402, 1.0f), float3(mad((_global_1[(_2400 + 2)]), 0.5f, mad(_2407, -1.0f, _2412)), (_2407 - _2404), mad(_2407, 0.5f, _2412))); + } else { + _2419 = 4.0f; + } + } + } else { + _2419 = -4.0f; + } + float _2421 = exp2(_2419 * 3.321928024291992f); + float _2424 = mad(0.16386906802654266f, _2421, mad(0.14067870378494263f, _2362, (_2303 * 0.6954522132873535f))); + float _2427 = mad(0.0955343171954155f, _2421, mad(0.8596711158752441f, _2362, (_2303 * 0.044794563204050064f))); + float _2430 = mad(1.0015007257461548f, _2421, mad(0.004025210160762072f, _2362, (_2303 * -0.005525882821530104f))); + float _2433 = mad(-0.21492856740951538f, _2430, mad(-0.2365107536315918f, _2427, (_2424 * 1.4514392614364624f))); + float _2436 = mad(-0.09967592358589172f, _2430, mad(1.17622971534729f, _2427, (_2424 * -0.07655377686023712f))); + float _2439 = mad(0.9977163076400757f, _2430, mad(-0.006032449658960104f, _2427, (_2424 * 0.008316148072481155f))); + float _2442 = log2(select((_2433 <= 0.0f), 9.999999747378752e-05f, _2433)); + float _2443 = _2442 * 0.3010300099849701f; + do { + if (!(_2443 <= -3.848327875137329f)) { + if ((bool)(_2443 > -3.848327875137329f) && (bool)(_2443 < 0.6812411546707153f)) { + float _2451 = (_2442 + 12.783867835998535f) * 0.46521204710006714f; + int _2452 = int(_2451); + float _2454 = _2451 - float((int)(_2452)); + float _2456 = _global_4[_2452]; + float _2459 = _global_4[(_2452 + 1)]; + float _2464 = _2456 * 0.5f; + _2499 = dot(float3((_2454 * _2454), _2454, 1.0f), float3(mad((_global_4[(_2452 + 2)]), 0.5f, mad(_2459, -1.0f, _2464)), (_2459 - _2456), mad(_2459, 0.5f, _2464))); + } else { + if ((bool)(_2443 >= 0.6812411546707153f) && (bool)(_2443 < 3.7613162994384766f)) { + float _2476 = (_2442 + -2.2630341053009033f) * 0.6841424107551575f; + int _2477 = int(_2476); + float _2479 = _2476 - float((int)(_2477)); + float _2481 = _global_5[_2477]; + float _2484 = _global_5[(_2477 + 1)]; + float _2489 = _2481 * 0.5f; + _2499 = dot(float3((_2479 * _2479), _2479, 1.0f), float3(mad((_global_5[(_2477 + 2)]), 0.5f, mad(_2484, -1.0f, _2489)), (_2484 - _2481), mad(_2484, 0.5f, _2489))); + } else { + _2499 = ((_2442 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2499 = -2.301030158996582f; + } + float _2501 = exp2(_2499 * 3.321928024291992f); + float _2504 = log2(select((_2436 <= 0.0f), 9.999999747378752e-05f, _2436)); + float _2505 = _2504 * 0.3010300099849701f; + do { + if (!(_2505 <= -3.848327875137329f)) { + if ((bool)(_2505 > -3.848327875137329f) && (bool)(_2505 < 0.6812411546707153f)) { + float _2513 = (_2504 + 12.783867835998535f) * 0.46521204710006714f; + int _2514 = int(_2513); + float _2516 = _2513 - float((int)(_2514)); + float _2518 = _global_4[_2514]; + float _2521 = _global_4[(_2514 + 1)]; + float _2526 = _2518 * 0.5f; + _2561 = dot(float3((_2516 * _2516), _2516, 1.0f), float3(mad((_global_4[(_2514 + 2)]), 0.5f, mad(_2521, -1.0f, _2526)), (_2521 - _2518), mad(_2521, 0.5f, _2526))); + } else { + if ((bool)(_2505 >= 0.6812411546707153f) && (bool)(_2505 < 3.7613162994384766f)) { + float _2538 = (_2504 + -2.2630341053009033f) * 0.6841424107551575f; + int _2539 = int(_2538); + float _2541 = _2538 - float((int)(_2539)); + float _2543 = _global_5[_2539]; + float _2546 = _global_5[(_2539 + 1)]; + float _2551 = _2543 * 0.5f; + _2561 = dot(float3((_2541 * _2541), _2541, 1.0f), float3(mad((_global_5[(_2539 + 2)]), 0.5f, mad(_2546, -1.0f, _2551)), (_2546 - _2543), mad(_2546, 0.5f, _2551))); + } else { + _2561 = ((_2504 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2561 = -2.301030158996582f; + } + float _2563 = exp2(_2561 * 3.321928024291992f); + float _2566 = log2(select((_2439 <= 0.0f), 9.999999747378752e-05f, _2439)); + float _2567 = _2566 * 0.3010300099849701f; + do { + if (!(_2567 <= -3.848327875137329f)) { + if ((bool)(_2567 > -3.848327875137329f) && (bool)(_2567 < 0.6812411546707153f)) { + float _2575 = (_2566 + 12.783867835998535f) * 0.46521204710006714f; + int _2576 = int(_2575); + float _2578 = _2575 - float((int)(_2576)); + float _2580 = _global_4[_2576]; + float _2583 = _global_4[(_2576 + 1)]; + float _2588 = _2580 * 0.5f; + _2623 = dot(float3((_2578 * _2578), _2578, 1.0f), float3(mad((_global_4[(_2576 + 2)]), 0.5f, mad(_2583, -1.0f, _2588)), (_2583 - _2580), mad(_2583, 0.5f, _2588))); + } else { + if ((bool)(_2567 >= 0.6812411546707153f) && (bool)(_2567 < 3.7613162994384766f)) { + float _2600 = (_2566 + -2.2630341053009033f) * 0.6841424107551575f; + int _2601 = int(_2600); + float _2603 = _2600 - float((int)(_2601)); + float _2605 = _global_5[_2601]; + float _2608 = _global_5[(_2601 + 1)]; + float _2613 = _2605 * 0.5f; + _2623 = dot(float3((_2603 * _2603), _2603, 1.0f), float3(mad((_global_5[(_2601 + 2)]), 0.5f, mad(_2608, -1.0f, _2613)), (_2608 - _2605), mad(_2608, 0.5f, _2613))); + } else { + _2623 = ((_2566 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2623 = -2.301030158996582f; + } + float _2625 = exp2(_2623 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _2637 = mad(_32, _2625, mad(_31, _2563, (_2501 * _30))); + _2638 = mad(_35, _2625, mad(_34, _2563, (_2501 * _33))); + _2639 = mad(_38, _2625, mad(_37, _2563, (_2501 * _36))); + } else { + _2637 = _2501; + _2638 = _2563; + _2639 = _2625; + } + float _2649 = exp2(log2(_2637 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2650 = exp2(log2(_2638 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2651 = exp2(log2(_2639 * 9.999999747378752e-05f) * 0.1593017578125f); + _2797 = exp2(log2((1.0f / ((_2649 * 18.6875f) + 1.0f)) * ((_2649 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2798 = exp2(log2((1.0f / ((_2650 * 18.6875f) + 1.0f)) * ((_2650 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2799 = exp2(log2((1.0f / ((_2651 * 18.6875f) + 1.0f)) * ((_2651 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _2684 = mad(0.04736635088920593f, _1329, mad(0.3395121395587921f, _1328, (_1327 * 0.613191545009613f))); + float _2687 = mad(0.01345000695437193f, _1329, mad(0.9163357615470886f, _1328, (_1327 * 0.07020691782236099f))); + float _2690 = mad(0.8696067929267883f, _1329, mad(0.1095672994852066f, _1328, (_1327 * 0.020618872717022896f))); + float _2709 = exp2(log2(mad(_32, _2690, mad(_31, _2687, (_2684 * _30))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2710 = exp2(log2(mad(_35, _2690, mad(_34, _2687, (_2684 * _33))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2711 = exp2(log2(mad(_38, _2690, mad(_37, _2687, (_2684 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); + _2797 = exp2(log2((1.0f / ((_2709 * 18.6875f) + 1.0f)) * ((_2709 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2798 = exp2(log2((1.0f / ((_2710 * 18.6875f) + 1.0f)) * ((_2710 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2799 = exp2(log2((1.0f / ((_2711 * 18.6875f) + 1.0f)) * ((_2711 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _2746 = mad(0.04736635088920593f, _1317, mad(0.3395121395587921f, _1316, (_1315 * 0.613191545009613f))); + float _2749 = mad(0.01345000695437193f, _1317, mad(0.9163357615470886f, _1316, (_1315 * 0.07020691782236099f))); + float _2752 = mad(0.8696067929267883f, _1317, mad(0.1095672994852066f, _1316, (_1315 * 0.020618872717022896f))); + _2797 = mad(_32, _2752, mad(_31, _2749, (_2746 * _30))); + _2798 = mad(_35, _2752, mad(_34, _2749, (_2746 * _33))); + _2799 = mad(_38, _2752, mad(_37, _2749, (_2746 * _36))); + } else { + float _2765 = mad(0.04736635088920593f, _1343, mad(0.3395121395587921f, _1342, (_1341 * 0.613191545009613f))); + float _2768 = mad(0.01345000695437193f, _1343, mad(0.9163357615470886f, _1342, (_1341 * 0.07020691782236099f))); + float _2771 = mad(0.8696067929267883f, _1343, mad(0.1095672994852066f, _1342, (_1341 * 0.020618872717022896f))); + float _2786 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _2797 = exp2(_2786 * log2(mad(_32, _2771, mad(_31, _2768, (_2765 * _30))))); + _2798 = exp2(_2786 * log2(mad(_35, _2771, mad(_34, _2768, (_2765 * _33))))); + _2799 = exp2(_2786 * log2(mad(_38, _2771, mad(_37, _2768, (_2765 * _36))))); + } + } else { + _2797 = _1327; + _2798 = _1328; + _2799 = _1329; + } + } + } + } + } + } + SV_Target.x = (_2797 * 0.9523810148239136f); + SV_Target.y = (_2798 * 0.9523810148239136f); + SV_Target.z = (_2799 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x600C14AA.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x600C14AA.ps_6_0.hlsl new file mode 100644 index 000000000..4126393ea --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x600C14AA.ps_6_0.hlsl @@ -0,0 +1,1611 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_039z : packoffset(c039.z); + float cb0_040x : packoffset(c040.x); + float cb0_041x : packoffset(c041.x); + float cb0_042x : packoffset(c042.x); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + float cb0_073z : packoffset(c073.z); + float cb0_073w : packoffset(c073.w); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _11 = TEXCOORD.x + -0.015625f; + float _12 = TEXCOORD.y + -0.015625f; + float _15 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _36; + float _37; + float _38; + float _39; + float _40; + float _41; + float _42; + float _43; + float _44; + float _101; + float _102; + float _103; + float _342; + float _343; + float _344; + float _510; + float _511; + float _533; + float _534; + float _535; + float _680; + float _681; + float _702; + float _703; + float _704; + float _850; + float _851; + float _872; + float _873; + float _874; + float _1009; + float _1010; + float _1031; + float _1032; + float _1033; + float _1128; + float _1161; + float _1175; + float _1239; + float _1376; + float _1377; + float _1378; + float _1521; + float _1522; + float _1523; + float _1537; + float _1548; + float _1559; + float _1760; + float _1771; + float _1893; + float _1926; + float _1940; + float _1979; + float _2072; + float _2131; + float _2190; + float _2273; + float _2338; + float _2403; + float _2420; + float _2421; + float _2422; + float _2526; + float _2559; + float _2573; + float _2612; + float _2705; + float _2764; + float _2823; + float _2903; + float _2965; + float _3027; + float _3041; + float _3042; + float _3043; + float _3199; + float _3200; + float _3201; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _25 = (cb0_074w == 4); + _36 = select(_25, 1.0f, 1.7050515413284302f); + _37 = select(_25, 0.0f, -0.6217905879020691f); + _38 = select(_25, 0.0f, -0.0832584798336029f); + _39 = select(_25, 0.0f, -0.13025718927383423f); + _40 = select(_25, 1.0f, 1.1408027410507202f); + _41 = select(_25, 0.0f, -0.010548528283834457f); + _42 = select(_25, 0.0f, -0.024003278464078903f); + _43 = select(_25, 0.0f, -0.1289687603712082f); + _44 = select(_25, 1.0f, 1.152971863746643f); + } else { + _36 = 0.6954522132873535f; + _37 = 0.14067870378494263f; + _38 = 0.16386906802654266f; + _39 = 0.044794563204050064f; + _40 = 0.8596711158752441f; + _41 = 0.0955343171954155f; + _42 = -0.005525882821530104f; + _43 = 0.004025210160762072f; + _44 = 1.0015007257461548f; + } + } else { + _36 = 1.02579927444458f; + _37 = -0.020052503794431686f; + _38 = -0.0057713985443115234f; + _39 = -0.0022350111976265907f; + _40 = 1.0045825242996216f; + _41 = -0.002352306619286537f; + _42 = -0.005014004185795784f; + _43 = -0.025293385609984398f; + _44 = 1.0304402112960815f; + } + } else { + _36 = 1.379158854484558f; + _37 = -0.3088507056236267f; + _38 = -0.07034677267074585f; + _39 = -0.06933528929948807f; + _40 = 1.0822921991348267f; + _41 = -0.012962047010660172f; + _42 = -0.002159259282052517f; + _43 = -0.045465391129255295f; + _44 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _54 = exp2(log2(_11 * 1.0322580337524414f) * 0.012683313339948654f); + float _55 = exp2(log2(_12 * 1.0322580337524414f) * 0.012683313339948654f); + float _56 = exp2(log2(_15 * 0.032258063554763794f) * 0.012683313339948654f); + _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _102 = (exp2(log2(max(0.0f, (_55 + -0.8359375f)) / (18.8515625f - (_55 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _103 = (exp2(log2(max(0.0f, (_56 + -0.8359375f)) / (18.8515625f - (_56 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _101 = ((exp2((_11 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _102 = ((exp2((_12 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _103 = ((exp2((_15 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _106 = cb0_047x * 1.0005563497543335f; + float _120 = select((_106 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _106) + 99.11000061035156f) / _106) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _106) + 247.47999572753906f) / _106) + 0.23703999817371368f)); + float _134 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _144 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _149 = ((_134 * 2.0f) + 4.0f) - (_144 * 8.0f); + float _150 = (_134 * 3.0f) / _149; + float _152 = (_144 * 2.0f) / _149; + bool _153 = (cb0_047x < 4000.0f); + float _158 = rsqrt(dot(float2(_134, _144), float2(_134, _144))); + float _159 = cb0_047y * 0.05000000074505806f; + float _162 = _134 - ((_159 * _144) * _158); + float _165 = ((_159 * _134) * _158) + _144; + float _170 = (4.0f - (_165 * 8.0f)) + (_162 * 2.0f); + float _176 = (((_162 * 3.0f) / _170) - _150) + select(_153, _150, _120); + float _177 = (((_165 * 2.0f) / _170) - _152) + select(_153, _152, (((_120 * 2.869999885559082f) + -0.2750000059604645f) - ((_120 * _120) * 3.0f))); + float _178 = max(_177, 1.000000013351432e-10f); + float _179 = _176 / _178; + float _182 = ((1.0f - _176) - _177) / _178; + float _192 = 0.9413792490959167f / mad(-0.16140000522136688f, _182, ((_179 * 0.8950999975204468f) + 0.266400009393692f)); + float _193 = 1.0404363870620728f / mad(0.03669999912381172f, _182, (1.7135000228881836f - (_179 * 0.7501999735832214f))); + float _194 = 1.089766502380371f / mad(1.0296000242233276f, _182, ((_179 * 0.03889999911189079f) + -0.06849999725818634f)); + float _195 = mad(_193, -0.7501999735832214f, 0.0f); + float _196 = mad(_193, 1.7135000228881836f, 0.0f); + float _197 = mad(_193, 0.03669999912381172f, -0.0f); + float _198 = mad(_194, 0.03889999911189079f, 0.0f); + float _199 = mad(_194, -0.06849999725818634f, 0.0f); + float _200 = mad(_194, 1.0296000242233276f, 0.0f); + float _203 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_192 * 0.883457362651825f))); + float _206 = mad(0.1599626988172531f, _199, mad(-0.1470542997121811f, _196, (_192 * 0.26293492317199707f))); + float _209 = mad(0.1599626988172531f, _200, mad(-0.1470542997121811f, _197, (_192 * -0.15930065512657166f))); + float _212 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_192 * 0.38695648312568665f))); + float _215 = mad(0.04929120093584061f, _199, mad(0.5183603167533875f, _196, (_192 * 0.11516613513231277f))); + float _218 = mad(0.04929120093584061f, _200, mad(0.5183603167533875f, _197, (_192 * -0.0697740763425827f))); + float _221 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_192 * -0.007634039502590895f))); + float _224 = mad(0.9684867262840271f, _199, mad(0.04004279896616936f, _196, (_192 * -0.0022720457054674625f))); + float _227 = mad(0.9684867262840271f, _200, mad(0.04004279896616936f, _197, (_192 * 0.0013765322510153055f))); + float _230 = mad(_209, 0.01933390088379383f, mad(_206, 0.2126729041337967f, (_203 * 0.4124563932418823f))); + float _233 = mad(_209, 0.11919199675321579f, mad(_206, 0.7151522040367126f, (_203 * 0.3575761020183563f))); + float _236 = mad(_209, 0.9503040909767151f, mad(_206, 0.07217500358819962f, (_203 * 0.18043750524520874f))); + float _239 = mad(_218, 0.01933390088379383f, mad(_215, 0.2126729041337967f, (_212 * 0.4124563932418823f))); + float _242 = mad(_218, 0.11919199675321579f, mad(_215, 0.7151522040367126f, (_212 * 0.3575761020183563f))); + float _245 = mad(_218, 0.9503040909767151f, mad(_215, 0.07217500358819962f, (_212 * 0.18043750524520874f))); + float _248 = mad(_227, 0.01933390088379383f, mad(_224, 0.2126729041337967f, (_221 * 0.4124563932418823f))); + float _251 = mad(_227, 0.11919199675321579f, mad(_224, 0.7151522040367126f, (_221 * 0.3575761020183563f))); + float _254 = mad(_227, 0.9503040909767151f, mad(_224, 0.07217500358819962f, (_221 * 0.18043750524520874f))); + float _284 = mad(mad(-0.4986107647418976f, _254, mad(-1.5373831987380981f, _245, (_236 * 3.2409698963165283f))), _103, mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _102, (mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))) * _101))); + float _287 = mad(mad(0.04155505821108818f, _254, mad(1.8759675025939941f, _245, (_236 * -0.9692436456680298f))), _103, mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _102, (mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))) * _101))); + float _290 = mad(mad(1.056971549987793f, _254, mad(-0.20397695899009705f, _245, (_236 * 0.05563008040189743f))), _103, mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _102, (mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))) * _101))); + float _293 = mad(0.04736635088920593f, _290, mad(0.3395121395587921f, _287, (_284 * 0.613191545009613f))); + float _296 = mad(0.01345000695437193f, _290, mad(0.9163357615470886f, _287, (_284 * 0.07020691782236099f))); + float _299 = mad(0.8696067929267883f, _290, mad(0.1095672994852066f, _287, (_284 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_293, _296, _299); + // bool _302 = (cb0_046x == 0); + bool _302 = ((uint)(tm_flags.x) == 0); + + if (_302) { + float _304 = dot(float3(_293, _296, _299), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _308 = (_293 / _304) + -1.0f; + float _309 = (_296 / _304) + -1.0f; + float _310 = (_299 / _304) + -1.0f; + // float _322 = (1.0f - exp2(((_304 * _304) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_308, _309, _310), float3(_308, _309, _310)) * -4.0f)); + float _322 = (1.0f - exp2(((_304 * _304) * -4.0f) )) * (1.0f - exp2(dot(float3(_308, _309, _310), float3(_308, _309, _310)) * -4.0f)); + + _342 = (((mad(-0.06368283927440643f, _299, mad(-0.32929131388664246f, _296, (_293 * 1.370412826538086f))) - _293) * _322) + _293); + _343 = (((mad(-0.010861567221581936f, _299, mad(1.0970908403396606f, _296, (_293 * -0.08343426138162613f))) - _296) * _322) + _296); + _344 = (((mad(1.203694462776184f, _299, mad(-0.09862564504146576f, _296, (_293 * -0.02579325996339321f))) - _299) * _322) + _299); + } else { + _342 = _293; + _343 = _296; + _344 = _299; + } + float _345 = dot(float3(_342, _343, _344), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _359 = cb0_052w + cb0_057w; + float _373 = cb0_051w * cb0_056w; + float _387 = cb0_050w * cb0_055w; + float _401 = cb0_049w * cb0_054w; + float _415 = cb0_048w * cb0_053w; + float _419 = _342 - _345; + float _420 = _343 - _345; + float _421 = _344 - _345; + float _478 = cb0_073w + 1.0f; + float _482 = (_478 * (((cb0_052x + cb0_057x) + _359) + (((cb0_051x * cb0_056x) * _373) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _401) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _415) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _387)))))); + float _483 = (_478 * (((cb0_052y + cb0_057y) + _359) + (((cb0_051y * cb0_056y) * _373) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _401) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _415) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _387)))))); + float _484 = (_478 * (((cb0_052z + cb0_057z) + _359) + (((cb0_051z * cb0_056z) * _373) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _401) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _415) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _387)))))); + + float _488 = max(_482, max(_483, _484)); + float _489 = _488 - min(_482, min(_483, _484)); + if (!(_489 == 0.0f)) { + float _492 = _489 / _488; + if (_482 == _488) { + _510 = ((_483 - _484) / _489); + _511 = _492; + } else { + if (_483 == _488) { + _510 = (((_484 - _482) / _489) + 2.0f); + _511 = _492; + } else { + if (_484 == _488) { + _510 = (((_482 - _483) / _489) + 4.0f); + _511 = _492; + } else { + _510 = 0.0f; + _511 = _492; + } + } + } + } else { + _510 = 0.0f; + _511 = 0.0f; + } + float _513 = cb0_073z + _510; + float _514 = floor(_513); + float _515 = _513 - _514; + float _516 = 1.0f - _511; + float _518 = 1.0f - (_515 * _511); + float _521 = 1.0f - ((1.0f - _515) * _511); + if (!(_514 == 0.0f)) { + if (!(_514 == 1.0f)) { + if (!(_514 == 2.0f)) { + if (!(_514 == 3.0f)) { + if (!(_514 == 4.0f)) { + _533 = 1.0f; + _534 = _516; + _535 = _518; + } else { + _533 = _521; + _534 = _516; + _535 = 1.0f; + } + } else { + _533 = _516; + _534 = _518; + _535 = 1.0f; + } + } else { + _533 = _516; + _534 = 1.0f; + _535 = _521; + } + } else { + _533 = _518; + _534 = 1.0f; + _535 = _516; + } + } else { + _533 = 1.0f; + _534 = _521; + _535 = _516; + } + float _541 = saturate(_345 / cb0_073x); + float _545 = (_541 * _541) * (3.0f - (_541 * 2.0f)); + float _546 = 1.0f - _545; + float _555 = cb0_052w + cb0_067w; + float _564 = cb0_051w * cb0_066w; + float _573 = cb0_050w * cb0_065w; + float _582 = cb0_049w * cb0_064w; + float _591 = cb0_048w * cb0_063w; + float _652 = (_478 * (((cb0_052x + cb0_067x) + _555) + (((cb0_051x * cb0_066x) * _564) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _582) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _591) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _573)))))); + float _653 = (_478 * (((cb0_052y + cb0_067y) + _555) + (((cb0_051y * cb0_066y) * _564) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _582) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _591) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _573)))))); + float _654 = (_478 * (((cb0_052z + cb0_067z) + _555) + (((cb0_051z * cb0_066z) * _564) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _582) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _591) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _573)))))); + float _658 = max(_652, max(_653, _654)); + float _659 = _658 - min(_652, min(_653, _654)); + if (!(_659 == 0.0f)) { + float _662 = _659 / _658; + if (_652 == _658) { + _680 = ((_653 - _654) / _659); + _681 = _662; + } else { + if (_653 == _658) { + _680 = (((_654 - _652) / _659) + 2.0f); + _681 = _662; + } else { + if (_654 == _658) { + _680 = (((_652 - _653) / _659) + 4.0f); + _681 = _662; + } else { + _680 = 0.0f; + _681 = _662; + } + } + } + } else { + _680 = 0.0f; + _681 = 0.0f; + } + float _682 = cb0_073z + _680; + float _683 = floor(_682); + float _684 = _682 - _683; + float _685 = 1.0f - _681; + float _687 = 1.0f - (_684 * _681); + float _690 = 1.0f - ((1.0f - _684) * _681); + if (!(_683 == 0.0f)) { + if (!(_683 == 1.0f)) { + if (!(_683 == 2.0f)) { + if (!(_683 == 3.0f)) { + if (!(_683 == 4.0f)) { + _702 = 1.0f; + _703 = _685; + _704 = _687; + } else { + _702 = _690; + _703 = _685; + _704 = 1.0f; + } + } else { + _702 = _685; + _703 = _687; + _704 = 1.0f; + } + } else { + _702 = _685; + _703 = 1.0f; + _704 = _690; + } + } else { + _702 = _687; + _703 = 1.0f; + _704 = _685; + } + } else { + _702 = 1.0f; + _703 = _690; + _704 = _685; + } + float _712 = saturate((_345 - cb0_073y) / (1.0f - cb0_073y)); + float _716 = (_712 * _712) * (3.0f - (_712 * 2.0f)); + float _725 = cb0_052w + cb0_062w; + float _734 = cb0_051w * cb0_061w; + float _743 = cb0_050w * cb0_060w; + float _752 = cb0_049w * cb0_059w; + float _761 = cb0_048w * cb0_058w; + float _822 = (_478 * (((cb0_052x + cb0_062x) + _725) + (((cb0_051x * cb0_061x) * _734) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _752) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _761) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _743)))))); + float _823 = (_478 * (((cb0_052y + cb0_062y) + _725) + (((cb0_051y * cb0_061y) * _734) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _752) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _761) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _743)))))); + float _824 = (_478 * (((cb0_052z + cb0_062z) + _725) + (((cb0_051z * cb0_061z) * _734) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _752) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _761) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _743)))))); + float _828 = max(_822, max(_823, _824)); + float _829 = _828 - min(_822, min(_823, _824)); + if (!(_829 == 0.0f)) { + float _832 = _829 / _828; + if (_822 == _828) { + _850 = ((_823 - _824) / _829); + _851 = _832; + } else { + if (_823 == _828) { + _850 = (((_824 - _822) / _829) + 2.0f); + _851 = _832; + } else { + if (_824 == _828) { + _850 = (((_822 - _823) / _829) + 4.0f); + _851 = _832; + } else { + _850 = 0.0f; + _851 = _832; + } + } + } + } else { + _850 = 0.0f; + _851 = 0.0f; + } + float _852 = cb0_073z + _850; + float _853 = floor(_852); + float _854 = _852 - _853; + float _855 = 1.0f - _851; + float _857 = 1.0f - (_854 * _851); + float _860 = 1.0f - ((1.0f - _854) * _851); + if (!(_853 == 0.0f)) { + if (!(_853 == 1.0f)) { + if (!(_853 == 2.0f)) { + if (!(_853 == 3.0f)) { + if (!(_853 == 4.0f)) { + _872 = 1.0f; + _873 = _855; + _874 = _857; + } else { + _872 = _860; + _873 = _855; + _874 = 1.0f; + } + } else { + _872 = _855; + _873 = _857; + _874 = 1.0f; + } + } else { + _872 = _855; + _873 = 1.0f; + _874 = _860; + } + } else { + _872 = _857; + _873 = 1.0f; + _874 = _855; + } + } else { + _872 = 1.0f; + _873 = _860; + _874 = _855; + } + float _879 = _828 * (_545 - _716); + float _887 = (((_702 * _658) * _716) + ((_533 * _488) * _546)) + (_879 * _872); + float _889 = (((_703 * _658) * _716) + ((_534 * _488) * _546)) + (_879 * _873); + float _891 = (((_704 * _658) * _716) + ((_535 * _488) * _546)) + (_879 * _874); + float _917 = dot(float3(_887, _889, _891), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _981 = (_478 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_887 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); + float _982 = (_478 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_889 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); + float _983 = (_478 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_891 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); + float _987 = max(_981, max(_982, _983)); + float _988 = _987 - min(_981, min(_982, _983)); + if (!(_988 == 0.0f)) { + float _991 = _988 / _987; + if (_981 == _987) { + _1009 = ((_982 - _983) / _988); + _1010 = _991; + } else { + if (_982 == _987) { + _1009 = (((_983 - _981) / _988) + 2.0f); + _1010 = _991; + } else { + if (_983 == _987) { + _1009 = (((_981 - _982) / _988) + 4.0f); + _1010 = _991; + } else { + _1009 = 0.0f; + _1010 = _991; + } + } + } + } else { + _1009 = 0.0f; + _1010 = 0.0f; + } + float _1011 = cb0_073z + _1009; + float _1012 = floor(_1011); + float _1013 = _1011 - _1012; + float _1014 = 1.0f - _1010; + float _1016 = 1.0f - (_1013 * _1010); + float _1019 = 1.0f - ((1.0f - _1013) * _1010); + if (!(_1012 == 0.0f)) { + if (!(_1012 == 1.0f)) { + if (!(_1012 == 2.0f)) { + if (!(_1012 == 3.0f)) { + if (!(_1012 == 4.0f)) { + _1031 = 1.0f; + _1032 = _1014; + _1033 = _1016; + } else { + _1031 = _1019; + _1032 = _1014; + _1033 = 1.0f; + } + } else { + _1031 = _1014; + _1032 = _1016; + _1033 = 1.0f; + } + } else { + _1031 = _1014; + _1032 = 1.0f; + _1033 = _1019; + } + } else { + _1031 = _1016; + _1032 = 1.0f; + _1033 = _1014; + } + } else { + _1031 = 1.0f; + _1032 = _1019; + _1033 = _1014; + } + float _1034 = _1031 * _987; + float _1035 = _1032 * _987; + float _1036 = _1033 * _987; + float _1039 = mad(-0.0832584798336029f, _1036, mad(-0.6217905879020691f, _1035, (_1034 * 1.7050515413284302f))); + float _1042 = mad(-0.010548528283834457f, _1036, mad(1.1408027410507202f, _1035, (_1034 * -0.13025718927383423f))); + float _1045 = mad(1.152971863746643f, _1036, mad(-0.1289687603712082f, _1035, (_1034 * -0.024003278464078903f))); + float _1061 = ((mad(0.061360642313957214f, _1036, mad(-4.540197551250458e-09f, _1035, (_1034 * 0.9386394023895264f))) - _1034) * cb0_075x) + _1034; + float _1062 = ((mad(0.169205904006958f, _1036, mad(0.8307942152023315f, _1035, (_1034 * 6.775371730327606e-08f))) - _1035) * cb0_075x) + _1035; + float _1063 = (mad(-2.3283064365386963e-10f, _1035, (_1034 * -9.313225746154785e-10f)) * cb0_075x) + _1036; + + + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _1073 = mad(0.16386905312538147f, _1063, mad(0.14067868888378143f, _1062, (_1061 * 0.6954522132873535f))); + float _1076 = mad(0.0955343246459961f, _1063, mad(0.8596711158752441f, _1062, (_1061 * 0.044794581830501556f))); + float _1079 = mad(1.0015007257461548f, _1063, mad(0.004025210160762072f, _1062, (_1061 * -0.005525882821530104f))); + float _1083 = max(max(_1073, _1076), _1079); + float _1088 = (max(_1083, 1.000000013351432e-10f) - max(min(min(_1073, _1076), _1079), 1.000000013351432e-10f)) / max(_1083, 0.009999999776482582f); + float _1101 = ((_1076 + _1073) + _1079) + (sqrt((((_1079 - _1076) * _1079) + ((_1076 - _1073) * _1076)) + ((_1073 - _1079) * _1073)) * 1.75f); + float _1102 = _1101 * 0.3333333432674408f; + float _1103 = _1088 + -0.4000000059604645f; + float _1104 = _1103 * 5.0f; + float _1108 = max((1.0f - abs(_1103 * 2.5f)), 0.0f); + float _1119 = ((float((int)(((int)(uint)((bool)(_1104 > 0.0f))) - ((int)(uint)((bool)(_1104 < 0.0f))))) * (1.0f - (_1108 * _1108))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1102 <= 0.0533333346247673f)) { + if (!(_1102 >= 0.1599999964237213f)) { + _1128 = (((0.23999999463558197f / _1101) + -0.5f) * _1119); + } else { + _1128 = 0.0f; + } + } else { + _1128 = _1119; + } + float _1129 = _1128 + 1.0f; + float _1130 = _1129 * _1073; + float _1131 = _1129 * _1076; + float _1132 = _1129 * _1079; + do { + if (!((bool)(_1130 == _1131) && (bool)(_1131 == _1132))) { + float _1139 = ((_1130 * 2.0f) - _1131) - _1132; + float _1142 = ((_1076 - _1079) * 1.7320507764816284f) * _1129; + float _1144 = atan(_1142 / _1139); + bool _1147 = (_1139 < 0.0f); + bool _1148 = (_1139 == 0.0f); + bool _1149 = (_1142 >= 0.0f); + bool _1150 = (_1142 < 0.0f); + _1161 = select((_1149 && _1148), 90.0f, select((_1150 && _1148), -90.0f, (select((_1150 && _1147), (_1144 + -3.1415927410125732f), select((_1149 && _1147), (_1144 + 3.1415927410125732f), _1144)) * 57.2957763671875f))); + } else { + _1161 = 0.0f; + } + float _1166 = min(max(select((_1161 < 0.0f), (_1161 + 360.0f), _1161), 0.0f), 360.0f); + do { + if (_1166 < -180.0f) { + _1175 = (_1166 + 360.0f); + } else { + if (_1166 > 180.0f) { + _1175 = (_1166 + -360.0f); + } else { + _1175 = _1166; + } + } + float _1179 = saturate(1.0f - abs(_1175 * 0.014814814552664757f)); + float _1183 = (_1179 * _1179) * (3.0f - (_1179 * 2.0f)); + float _1189 = ((_1183 * _1183) * ((_1088 * 0.18000000715255737f) * (0.029999999329447746f - _1130))) + _1130; + float _1199 = max(0.0f, mad(-0.21492856740951538f, _1132, mad(-0.2365107536315918f, _1131, (_1189 * 1.4514392614364624f)))); + float _1200 = max(0.0f, mad(-0.09967592358589172f, _1132, mad(1.17622971534729f, _1131, (_1189 * -0.07655377686023712f)))); + float _1201 = max(0.0f, mad(0.9977163076400757f, _1132, mad(-0.006032449658960104f, _1131, (_1189 * 0.008316148072481155f)))); + float _1202 = dot(float3(_1199, _1200, _1201), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1216 = (cb0_036w + 1.0f) - cb0_036y; + float _1219 = cb0_037x + 1.0f; + float _1221 = _1219 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _1239 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _1230 = (cb0_036w + 0.18000000715255737f) / _1216; + _1239 = (-0.7447274923324585f - ((log2(_1230 / (2.0f - _1230)) * 0.3465735912322998f) * (_1216 / cb0_036x))); + } + float _1242 = ((1.0f - cb0_036y) / cb0_036x) - _1239; + float _1244 = (cb0_036z / cb0_036x) - _1242; + float _1248 = log2(lerp(_1202, _1199, 0.9599999785423279f)) * 0.3010300099849701f; + float _1249 = log2(lerp(_1202, _1200, 0.9599999785423279f)) * 0.3010300099849701f; + float _1250 = log2(lerp(_1202, _1201, 0.9599999785423279f)) * 0.3010300099849701f; + float _1254 = cb0_036x * (_1248 + _1242); + float _1255 = cb0_036x * (_1249 + _1242); + float _1256 = cb0_036x * (_1250 + _1242); + float _1257 = _1216 * 2.0f; + float _1259 = (cb0_036x * -2.0f) / _1216; + float _1260 = _1248 - _1239; + float _1261 = _1249 - _1239; + float _1262 = _1250 - _1239; + float _1281 = _1221 * 2.0f; + float _1283 = (cb0_036x * 2.0f) / _1221; + float _1308 = select((_1248 < _1239), ((_1257 / (exp2((_1260 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1254); + float _1309 = select((_1249 < _1239), ((_1257 / (exp2((_1261 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1255); + float _1310 = select((_1250 < _1239), ((_1257 / (exp2((_1262 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1256); + float _1317 = _1244 - _1239; + float _1321 = saturate(_1260 / _1317); + float _1322 = saturate(_1261 / _1317); + float _1323 = saturate(_1262 / _1317); + bool _1324 = (_1244 < _1239); + float _1328 = select(_1324, (1.0f - _1321), _1321); + float _1329 = select(_1324, (1.0f - _1322), _1322); + float _1330 = select(_1324, (1.0f - _1323), _1323); + float _1349 = (((_1328 * _1328) * (select((_1248 > _1244), (_1219 - (_1281 / (exp2(((_1248 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; + float _1350 = (((_1329 * _1329) * (select((_1249 > _1244), (_1219 - (_1281 / (exp2(((_1249 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1255) - _1309)) * (3.0f - (_1329 * 2.0f))) + _1309; + float _1351 = (((_1330 * _1330) * (select((_1250 > _1244), (_1219 - (_1281 / (exp2(((_1250 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1256) - _1310)) * (3.0f - (_1330 * 2.0f))) + _1310; + float _1352 = dot(float3(_1349, _1350, _1351), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1376 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1349, 0.9300000071525574f))) - _1061)) + _1061); + _1377 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1350, 0.9300000071525574f))) - _1062)) + _1062); + _1378 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1351, 0.9300000071525574f))) - _1063)) + _1063); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1376 = _1061; + _1377 = _1062; + _1378 = _1063; + } + float _1394 = ((mad(-0.06537103652954102f, _1378, mad(1.451815478503704e-06f, _1377, (_1376 * 1.065374732017517f))) - _1376) * cb0_075x) + _1376; + float _1395 = ((mad(-0.20366770029067993f, _1378, mad(1.2036634683609009f, _1377, (_1376 * -2.57161445915699e-07f))) - _1377) * cb0_075x) + _1377; + float _1396 = ((mad(0.9999996423721313f, _1378, mad(2.0954757928848267e-08f, _1377, (_1376 * 1.862645149230957e-08f))) - _1378) * cb0_075x) + _1378; + [branch] + if (!_302) { + float _1439 = 1.0f / (dot(float3(_1039, _1042, _1045), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1449 = max(0.0f, (((_1439 * cb0_035x) + cb0_034x) * dot(float3(_1039, _1042, _1045), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1450 = max(0.0f, (((_1439 * cb0_035y) + cb0_034y) * dot(float3(_1039, _1042, _1045), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1451 = max(0.0f, (((_1439 * cb0_035z) + cb0_034z) * dot(float3(_1039, _1042, _1045), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1457 = max(0.0f, (cb0_031x - _1449)); + float _1458 = max(0.0f, (cb0_031x - _1450)); + float _1459 = max(0.0f, (cb0_031x - _1451)); + float _1461 = max(_1449, cb0_031z); + float _1462 = max(_1450, cb0_031z); + float _1463 = max(_1451, cb0_031z); + _1521 = (((((((cb0_032x * _1461) + cb0_032y) * (1.0f / (cb0_031w + _1461))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1449, cb0_031x), cb0_031z))) + ((cb0_028w * _1457) * (1.0f / (cb0_031y + _1457)))) + cb0_029w); + _1522 = ((((((1.0f / (cb0_031w + _1462)) * ((cb0_032x * _1462) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1450, cb0_031x), cb0_031z))) + ((cb0_028w * _1458) * (1.0f / (cb0_031y + _1458)))) + cb0_029w); + _1523 = ((((((1.0f / (cb0_031w + _1463)) * ((cb0_032x * _1463) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1451, cb0_031x), cb0_031z))) + ((cb0_028w * _1459) * (1.0f / (cb0_031y + _1459)))) + cb0_029w); + } else { + _1521 = max(0.0f, mad(-0.0832584798336029f, _1396, mad(-0.6217905879020691f, _1395, (_1394 * 1.7050515413284302f)))); + _1522 = max(0.0f, mad(-0.010548528283834457f, _1396, mad(1.1408027410507202f, _1395, (_1394 * -0.13025718927383423f)))); + _1523 = max(0.0f, mad(1.152971863746643f, _1396, mad(-0.1289687603712082f, _1395, (_1394 * -0.024003278464078903f)))); + } + float3 bt709_tonemapped = float3(_1521, _1522, _1523); + + float lut_sampling_scale = 1.0f; + float3 lut_linear_input = max(0.f, bt709_tonemapped); + if (RENODX_TONE_MAP_TYPE != 0.0f) { + + lut_sampling_scale = renodx::tonemap::neutwo::ComputeMaxChannelScale(lut_linear_input); + lut_linear_input *= lut_sampling_scale; + } + + if (lut_linear_input.r < 0.0031306699384003878f) { + _1537 = (lut_linear_input.r * 12.920000076293945f); + } else { + _1537 = (((pow(lut_linear_input.r, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (lut_linear_input.g < 0.0031306699384003878f) { + _1548 = (lut_linear_input.g * 12.920000076293945f); + } else { + _1548 = (((pow(lut_linear_input.g, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (lut_linear_input.b < 0.0031306699384003878f) { + _1559 = (lut_linear_input.b * 12.920000076293945f); + } else { + _1559 = (((pow(lut_linear_input.b, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + + float lut_sample_max_channel = renodx::math::Max(_1537, _1548, _1559, 1.0f); + float3 lut_input_srgb = saturate(float3(_1537, _1548, _1559) / lut_sample_max_channel); + _1537 = lut_input_srgb.r; + _1548 = lut_input_srgb.g; + _1559 = lut_input_srgb.b; + + float _1563 = (_1548 * 0.9375f) + 0.03125f; + float _1571 = _1559 * 15.0f; + float _1572 = floor(_1571); + float _1573 = _1571 - _1572; + float _1575 = (_1572 + ((_1537 * 0.9375f) + 0.03125f)) * 0.0625f; + float _1580 = _1575 + 0.0625f; + + float4 _1576 = t1.SampleLevel(s1, float2(_1575, _1563), 0.0f); + float4 _1581 = t1.SampleLevel(s1, float2(_1580, _1563), 0.0f); + float4 _1602 = t2.SampleLevel(s2, float2(_1575, _1563), 0.0f); + float4 _1606 = t2.SampleLevel(s2, float2(_1580, _1563), 0.0f); + + float _1622 = (((lerp(_1576.x, _1581.x, _1573)) * cb0_041x) + (cb0_040x * _1537)) + ((lerp(_1602.x, _1606.x, _1573)) * cb0_042x); + float _1623 = (((lerp(_1576.y, _1581.y, _1573)) * cb0_041x) + (cb0_040x * _1548)) + ((lerp(_1602.y, _1606.y, _1573)) * cb0_042x); + float _1624 = (((lerp(_1576.z, _1581.z, _1573)) * cb0_041x) + (cb0_040x * _1559)) + ((lerp(_1602.z, _1606.z, _1573)) * cb0_042x); + + // Keep t0 as an anchor blend stage for now. + float4 _1627 = t0.Sample(s0, float2(_1575, _1563)); + float4 _1631 = t0.Sample(s0, float2(_1580, _1563)); + float _1649 = cb0_038w * cb0_039z; + float _1656 = max(6.103519990574569e-05f, ((_1649 * ((_1627.x - _1622) + ((_1631.x - _1627.x) * _1573))) + _1622)); + float _1657 = max(6.103519990574569e-05f, ((_1649 * ((_1627.y - _1623) + ((_1631.y - _1627.y) * _1573))) + _1623)); + float _1658 = max(6.103519990574569e-05f, ((_1649 * ((_1627.z - _1624) + ((_1631.z - _1627.z) * _1573))) + _1624)); + + wuwa::lut::ApplySampleMaxChannel(_1656, _1657, _1658, lut_sample_max_channel); + + float3 linear_output; + linear_output.r = select((_1656 > 0.040449999272823334f), exp2(log2((_1656 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1656 * 0.07739938050508499f)); + linear_output.g = select((_1657 > 0.040449999272823334f), exp2(log2((_1657 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1657 * 0.07739938050508499f)); + linear_output.b = select((_1658 > 0.040449999272823334f), exp2(log2((_1658 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1658 * 0.07739938050508499f)); + + wuwa::lut::ApplyInverseSamplingScale(linear_output.r, linear_output.g, linear_output.b, lut_sampling_scale); + + float3 scaled = float3(cb0_044y, cb0_044z, cb0_044w) * (((cb0_026y + (cb0_026x * linear_output)) * linear_output) + cb0_026z); + float3 output = ((float3(cb0_045x, cb0_045y, cb0_045z) - scaled) * cb0_045w) + scaled; + + float _1717 = output.r; + float _1718 = output.g; + float _1719 = output.b; + wuwa::lut::ApplyLutStrength(_1717, _1718, _1719, ungraded); + float _1720 = cb0_044y * _1039; + float _1721 = cb0_044z * _1042; + float _1722 = cb0_044w * _1045; + float _1729 = ((cb0_045x - _1720) * cb0_045w) + _1720; + float _1730 = ((cb0_045y - _1721) * cb0_045w) + _1721; + float _1731 = ((cb0_045z - _1722) * cb0_045w) + _1722; + float _1743 = exp2(log2(max(0.0f, _1717)) * cb0_027y); + float _1744 = exp2(log2(max(0.0f, _1718)) * cb0_027y); + float _1745 = exp2(log2(max(0.0f, _1719)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1743, _1744, _1745)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1743 < 0.0031306699384003878f) { + _1760 = (_1743 * 12.920000076293945f); + } else { + _1760 = (((pow(_1743, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1744 < 0.0031306699384003878f) { + _1771 = (_1744 * 12.920000076293945f); + } else { + _1771 = (((pow(_1744, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1745 < 0.0031306699384003878f) { + _3199 = _1760; + _3200 = _1771; + _3201 = (_1745 * 12.920000076293945f); + } else { + _3199 = _1760; + _3200 = _1771; + _3201 = (((pow(_1745, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1786 = mad(0.04736635088920593f, _1745, mad(0.3395121395587921f, _1744, (_1743 * 0.613191545009613f))); + float _1789 = mad(0.01345000695437193f, _1745, mad(0.9163357615470886f, _1744, (_1743 * 0.07020691782236099f))); + float _1792 = mad(0.8696067929267883f, _1745, mad(0.1095672994852066f, _1744, (_1743 * 0.020618872717022896f))); + float _1802 = max(6.103519990574569e-05f, mad(_38, _1792, mad(_37, _1789, (_1786 * _36)))); + float _1803 = max(6.103519990574569e-05f, mad(_41, _1792, mad(_40, _1789, (_1786 * _39)))); + float _1804 = max(6.103519990574569e-05f, mad(_44, _1792, mad(_43, _1789, (_1786 * _42)))); + _3199 = min((_1802 * 4.5f), ((exp2(log2(max(_1802, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3200 = min((_1803 * 4.5f), ((exp2(log2(max(_1803, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3201 = min((_1804 * 4.5f), ((exp2(log2(max(_1804, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1831 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1831) { + float _1834 = _1730 * 3.0f; + float _1835 = _1731 * 3.0f; + float _1838 = mad(0.17733481526374817f, _1835, mad(0.38297808170318604f, _1834, (_1729 * 1.31910240650177f))); + float _1841 = mad(0.09676162153482437f, _1835, mad(0.8134231567382812f, _1834, (_1729 * 0.2693769633769989f))); + float _1844 = mad(0.870704174041748f, _1835, mad(0.11154405772686005f, _1834, (_1729 * 0.05263196676969528f))); + float _1848 = max(max(_1838, _1841), _1844); + float _1853 = (max(_1848, 1.000000013351432e-10f) - max(min(min(_1838, _1841), _1844), 1.000000013351432e-10f)) / max(_1848, 0.009999999776482582f); + float _1866 = ((_1841 + _1838) + _1844) + (sqrt((((_1844 - _1841) * _1844) + ((_1841 - _1838) * _1841)) + ((_1838 - _1844) * _1838)) * 1.75f); + float _1867 = _1866 * 0.3333333432674408f; + float _1868 = _1853 + -0.4000000059604645f; + float _1869 = _1868 * 5.0f; + float _1873 = max((1.0f - abs(_1868 * 2.5f)), 0.0f); + float _1884 = ((float((int)(((int)(uint)((bool)(_1869 > 0.0f))) - ((int)(uint)((bool)(_1869 < 0.0f))))) * (1.0f - (_1873 * _1873))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1867 <= 0.0533333346247673f)) { + if (!(_1867 >= 0.1599999964237213f)) { + _1893 = (((0.23999999463558197f / _1866) + -0.5f) * _1884); + } else { + _1893 = 0.0f; + } + } else { + _1893 = _1884; + } + float _1894 = _1893 + 1.0f; + float _1895 = _1894 * _1838; + float _1896 = _1894 * _1841; + float _1897 = _1894 * _1844; + do { + if (!((bool)(_1895 == _1896) && (bool)(_1896 == _1897))) { + float _1904 = ((_1895 * 2.0f) - _1896) - _1897; + float _1907 = ((_1841 - _1844) * 1.7320507764816284f) * _1894; + float _1909 = atan(_1907 / _1904); + bool _1912 = (_1904 < 0.0f); + bool _1913 = (_1904 == 0.0f); + bool _1914 = (_1907 >= 0.0f); + bool _1915 = (_1907 < 0.0f); + _1926 = select((_1914 && _1913), 90.0f, select((_1915 && _1913), -90.0f, (select((_1915 && _1912), (_1909 + -3.1415927410125732f), select((_1914 && _1912), (_1909 + 3.1415927410125732f), _1909)) * 57.2957763671875f))); + } else { + _1926 = 0.0f; + } + float _1931 = min(max(select((_1926 < 0.0f), (_1926 + 360.0f), _1926), 0.0f), 360.0f); + do { + if (_1931 < -180.0f) { + _1940 = (_1931 + 360.0f); + } else { + if (_1931 > 180.0f) { + _1940 = (_1931 + -360.0f); + } else { + _1940 = _1931; + } + } + do { + if ((bool)(_1940 > -67.5f) && (bool)(_1940 < 67.5f)) { + float _1946 = (_1940 + 67.5f) * 0.029629629105329514f; + int _1947 = int(_1946); + float _1949 = _1946 - float((int)(_1947)); + float _1950 = _1949 * _1949; + float _1951 = _1950 * _1949; + if (_1947 == 3) { + _1979 = (((0.1666666716337204f - (_1949 * 0.5f)) + (_1950 * 0.5f)) - (_1951 * 0.1666666716337204f)); + } else { + if (_1947 == 2) { + _1979 = ((0.6666666865348816f - _1950) + (_1951 * 0.5f)); + } else { + if (_1947 == 1) { + _1979 = (((_1951 * -0.5f) + 0.1666666716337204f) + ((_1950 + _1949) * 0.5f)); + } else { + _1979 = select((_1947 == 0), (_1951 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1979 = 0.0f; + } + float _1988 = min(max(((((_1853 * 0.27000001072883606f) * (0.029999999329447746f - _1895)) * _1979) + _1895), 0.0f), 65535.0f); + float _1989 = min(max(_1896, 0.0f), 65535.0f); + float _1990 = min(max(_1897, 0.0f), 65535.0f); + float _2003 = min(max(mad(-0.21492856740951538f, _1990, mad(-0.2365107536315918f, _1989, (_1988 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2004 = min(max(mad(-0.09967592358589172f, _1990, mad(1.17622971534729f, _1989, (_1988 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2005 = min(max(mad(0.9977163076400757f, _1990, mad(-0.006032449658960104f, _1989, (_1988 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2006 = dot(float3(_2003, _2004, _2005), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2013 = ((_2003 - _2006) * 0.9599999785423279f) + _2006; + float _2014 = ((_2004 - _2006) * 0.9599999785423279f) + _2006; + float _2015 = ((_2005 - _2006) * 0.9599999785423279f) + _2006; + float _2018 = log2(select((_2013 <= 0.0f), 6.103515625e-05f, _2013)); + float _2019 = _2018 * 0.3010300099849701f; + do { + if (!(_2019 <= -5.2601776123046875f)) { + if ((bool)(_2019 > -5.2601776123046875f) && (bool)(_2019 < -0.7447274923324585f)) { + float _2027 = (_2018 * 0.19999998807907104f) + 3.494786262512207f; + int _2028 = int(_2027); + float _2030 = _2027 - float((int)(_2028)); + float _2032 = _global_0[_2028]; + float _2035 = _global_0[(_2028 + 1)]; + float _2040 = _2032 * 0.5f; + _2072 = dot(float3((_2030 * _2030), _2030, 1.0f), float3(mad((_global_0[(_2028 + 2)]), 0.5f, mad(_2035, -1.0f, _2040)), (_2035 - _2032), mad(_2035, 0.5f, _2040))); + } else { + if ((bool)(_2019 >= -0.7447274923324585f) && (bool)(_2019 < 4.673812389373779f)) { + float _2052 = (_2018 * 0.1666666567325592f) + 0.4123218357563019f; + int _2053 = int(_2052); + float _2055 = _2052 - float((int)(_2053)); + float _2057 = _global_1[_2053]; + float _2060 = _global_1[(_2053 + 1)]; + float _2065 = _2057 * 0.5f; + _2072 = dot(float3((_2055 * _2055), _2055, 1.0f), float3(mad((_global_1[(_2053 + 2)]), 0.5f, mad(_2060, -1.0f, _2065)), (_2060 - _2057), mad(_2060, 0.5f, _2065))); + } else { + _2072 = 4.0f; + } + } + } else { + _2072 = -4.0f; + } + float _2074 = exp2(_2072 * 3.321928024291992f); + float _2077 = log2(select((_2014 <= 0.0f), 6.103515625e-05f, _2014)); + float _2078 = _2077 * 0.3010300099849701f; + do { + if (!(_2078 <= -5.2601776123046875f)) { + if ((bool)(_2078 > -5.2601776123046875f) && (bool)(_2078 < -0.7447274923324585f)) { + float _2086 = (_2077 * 0.19999998807907104f) + 3.494786262512207f; + int _2087 = int(_2086); + float _2089 = _2086 - float((int)(_2087)); + float _2091 = _global_0[_2087]; + float _2094 = _global_0[(_2087 + 1)]; + float _2099 = _2091 * 0.5f; + _2131 = dot(float3((_2089 * _2089), _2089, 1.0f), float3(mad((_global_0[(_2087 + 2)]), 0.5f, mad(_2094, -1.0f, _2099)), (_2094 - _2091), mad(_2094, 0.5f, _2099))); + } else { + if ((bool)(_2078 >= -0.7447274923324585f) && (bool)(_2078 < 4.673812389373779f)) { + float _2111 = (_2077 * 0.1666666567325592f) + 0.4123218357563019f; + int _2112 = int(_2111); + float _2114 = _2111 - float((int)(_2112)); + float _2116 = _global_1[_2112]; + float _2119 = _global_1[(_2112 + 1)]; + float _2124 = _2116 * 0.5f; + _2131 = dot(float3((_2114 * _2114), _2114, 1.0f), float3(mad((_global_1[(_2112 + 2)]), 0.5f, mad(_2119, -1.0f, _2124)), (_2119 - _2116), mad(_2119, 0.5f, _2124))); + } else { + _2131 = 4.0f; + } + } + } else { + _2131 = -4.0f; + } + float _2133 = exp2(_2131 * 3.321928024291992f); + float _2136 = log2(select((_2015 <= 0.0f), 6.103515625e-05f, _2015)); + float _2137 = _2136 * 0.3010300099849701f; + do { + if (!(_2137 <= -5.2601776123046875f)) { + if ((bool)(_2137 > -5.2601776123046875f) && (bool)(_2137 < -0.7447274923324585f)) { + float _2145 = (_2136 * 0.19999998807907104f) + 3.494786262512207f; + int _2146 = int(_2145); + float _2148 = _2145 - float((int)(_2146)); + float _2150 = _global_0[_2146]; + float _2153 = _global_0[(_2146 + 1)]; + float _2158 = _2150 * 0.5f; + _2190 = dot(float3((_2148 * _2148), _2148, 1.0f), float3(mad((_global_0[(_2146 + 2)]), 0.5f, mad(_2153, -1.0f, _2158)), (_2153 - _2150), mad(_2153, 0.5f, _2158))); + } else { + if ((bool)(_2137 >= -0.7447274923324585f) && (bool)(_2137 < 4.673812389373779f)) { + float _2170 = (_2136 * 0.1666666567325592f) + 0.4123218357563019f; + int _2171 = int(_2170); + float _2173 = _2170 - float((int)(_2171)); + float _2175 = _global_1[_2171]; + float _2178 = _global_1[(_2171 + 1)]; + float _2183 = _2175 * 0.5f; + _2190 = dot(float3((_2173 * _2173), _2173, 1.0f), float3(mad((_global_1[(_2171 + 2)]), 0.5f, mad(_2178, -1.0f, _2183)), (_2178 - _2175), mad(_2178, 0.5f, _2183))); + } else { + _2190 = 4.0f; + } + } + } else { + _2190 = -4.0f; + } + float _2192 = exp2(_2190 * 3.321928024291992f); + float _2195 = mad(0.16386906802654266f, _2192, mad(0.14067870378494263f, _2133, (_2074 * 0.6954522132873535f))); + float _2198 = mad(0.0955343171954155f, _2192, mad(0.8596711158752441f, _2133, (_2074 * 0.044794563204050064f))); + float _2201 = mad(1.0015007257461548f, _2192, mad(0.004025210160762072f, _2133, (_2074 * -0.005525882821530104f))); + float _2204 = mad(-0.21492856740951538f, _2201, mad(-0.2365107536315918f, _2198, (_2195 * 1.4514392614364624f))); + float _2207 = mad(-0.09967592358589172f, _2201, mad(1.17622971534729f, _2198, (_2195 * -0.07655377686023712f))); + float _2210 = mad(0.9977163076400757f, _2201, mad(-0.006032449658960104f, _2198, (_2195 * 0.008316148072481155f))); + float _2213 = log2(select((_2204 <= 0.0f), 9.999999747378752e-05f, _2204)); + float _2214 = _2213 * 0.3010300099849701f; + do { + if (!(!(_2214 <= -3.848327875137329f))) { + _2273 = ((_2213 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2214 > -3.848327875137329f) && (bool)(_2214 < 0.6812411546707153f)) { + float _2225 = (_2213 + 12.783867835998535f) * 0.46521204710006714f; + int _2226 = int(_2225); + float _2228 = _2225 - float((int)(_2226)); + float _2230 = _global_2[_2226]; + float _2233 = _global_2[(_2226 + 1)]; + float _2238 = _2230 * 0.5f; + _2273 = dot(float3((_2228 * _2228), _2228, 1.0f), float3(mad((_global_2[(_2226 + 2)]), 0.5f, mad(_2233, -1.0f, _2238)), (_2233 - _2230), mad(_2233, 0.5f, _2238))); + } else { + if ((bool)(_2214 >= 0.6812411546707153f) && (bool)(_2214 < 3.653702974319458f)) { + float _2250 = (_2213 + -2.2630341053009033f) * 0.7089107632637024f; + int _2251 = int(_2250); + float _2253 = _2250 - float((int)(_2251)); + float _2255 = _global_3[_2251]; + float _2258 = _global_3[(_2251 + 1)]; + float _2263 = _2255 * 0.5f; + _2273 = dot(float3((_2253 * _2253), _2253, 1.0f), float3(mad((_global_3[(_2251 + 2)]), 0.5f, mad(_2258, -1.0f, _2263)), (_2258 - _2255), mad(_2258, 0.5f, _2263))); + } else { + _2273 = ((_2213 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2278 = log2(select((_2207 <= 0.0f), 9.999999747378752e-05f, _2207)); + float _2279 = _2278 * 0.3010300099849701f; + do { + if (!(!(_2279 <= -3.848327875137329f))) { + _2338 = ((_2278 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2279 > -3.848327875137329f) && (bool)(_2279 < 0.6812411546707153f)) { + float _2290 = (_2278 + 12.783867835998535f) * 0.46521204710006714f; + int _2291 = int(_2290); + float _2293 = _2290 - float((int)(_2291)); + float _2295 = _global_2[_2291]; + float _2298 = _global_2[(_2291 + 1)]; + float _2303 = _2295 * 0.5f; + _2338 = dot(float3((_2293 * _2293), _2293, 1.0f), float3(mad((_global_2[(_2291 + 2)]), 0.5f, mad(_2298, -1.0f, _2303)), (_2298 - _2295), mad(_2298, 0.5f, _2303))); + } else { + if ((bool)(_2279 >= 0.6812411546707153f) && (bool)(_2279 < 3.653702974319458f)) { + float _2315 = (_2278 + -2.2630341053009033f) * 0.7089107632637024f; + int _2316 = int(_2315); + float _2318 = _2315 - float((int)(_2316)); + float _2320 = _global_3[_2316]; + float _2323 = _global_3[(_2316 + 1)]; + float _2328 = _2320 * 0.5f; + _2338 = dot(float3((_2318 * _2318), _2318, 1.0f), float3(mad((_global_3[(_2316 + 2)]), 0.5f, mad(_2323, -1.0f, _2328)), (_2323 - _2320), mad(_2323, 0.5f, _2328))); + } else { + _2338 = ((_2278 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2343 = log2(select((_2210 <= 0.0f), 9.999999747378752e-05f, _2210)); + float _2344 = _2343 * 0.3010300099849701f; + do { + if (!(!(_2344 <= -3.848327875137329f))) { + _2403 = ((_2343 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2344 > -3.848327875137329f) && (bool)(_2344 < 0.6812411546707153f)) { + float _2355 = (_2343 + 12.783867835998535f) * 0.46521204710006714f; + int _2356 = int(_2355); + float _2358 = _2355 - float((int)(_2356)); + float _2360 = _global_2[_2356]; + float _2363 = _global_2[(_2356 + 1)]; + float _2368 = _2360 * 0.5f; + _2403 = dot(float3((_2358 * _2358), _2358, 1.0f), float3(mad((_global_2[(_2356 + 2)]), 0.5f, mad(_2363, -1.0f, _2368)), (_2363 - _2360), mad(_2363, 0.5f, _2368))); + } else { + if ((bool)(_2344 >= 0.6812411546707153f) && (bool)(_2344 < 3.653702974319458f)) { + float _2380 = (_2343 + -2.2630341053009033f) * 0.7089107632637024f; + int _2381 = int(_2380); + float _2383 = _2380 - float((int)(_2381)); + float _2385 = _global_3[_2381]; + float _2388 = _global_3[(_2381 + 1)]; + float _2393 = _2385 * 0.5f; + _2403 = dot(float3((_2383 * _2383), _2383, 1.0f), float3(mad((_global_3[(_2381 + 2)]), 0.5f, mad(_2388, -1.0f, _2393)), (_2388 - _2385), mad(_2388, 0.5f, _2393))); + } else { + _2403 = ((_2343 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2406 = exp2(_2273 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2407 = exp2(_2338 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2408 = exp2(_2403 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1831) { + _2420 = mad(_38, _2408, mad(_37, _2407, (_2406 * _36))); + _2421 = mad(_41, _2408, mad(_40, _2407, (_2406 * _39))); + _2422 = mad(_44, _2408, mad(_43, _2407, (_2406 * _42))); + } else { + _2420 = _2406; + _2421 = _2407; + _2422 = _2408; + } + float _2432 = exp2(log2(_2420 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2433 = exp2(log2(_2421 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2434 = exp2(log2(_2422 * 9.999999747378752e-05f) * 0.1593017578125f); + _3199 = exp2(log2((1.0f / ((_2432 * 18.6875f) + 1.0f)) * ((_2432 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3200 = exp2(log2((1.0f / ((_2433 * 18.6875f) + 1.0f)) * ((_2433 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3201 = exp2(log2((1.0f / ((_2434 * 18.6875f) + 1.0f)) * ((_2434 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2467 = _1730 * 3.0f; + float _2468 = _1731 * 3.0f; + float _2471 = mad(0.17733481526374817f, _2468, mad(0.38297808170318604f, _2467, (_1729 * 1.31910240650177f))); + float _2474 = mad(0.09676162153482437f, _2468, mad(0.8134231567382812f, _2467, (_1729 * 0.2693769633769989f))); + float _2477 = mad(0.870704174041748f, _2468, mad(0.11154405772686005f, _2467, (_1729 * 0.05263196676969528f))); + float _2481 = max(max(_2471, _2474), _2477); + float _2486 = (max(_2481, 1.000000013351432e-10f) - max(min(min(_2471, _2474), _2477), 1.000000013351432e-10f)) / max(_2481, 0.009999999776482582f); + float _2499 = ((_2474 + _2471) + _2477) + (sqrt((((_2477 - _2474) * _2477) + ((_2474 - _2471) * _2474)) + ((_2471 - _2477) * _2471)) * 1.75f); + float _2500 = _2499 * 0.3333333432674408f; + float _2501 = _2486 + -0.4000000059604645f; + float _2502 = _2501 * 5.0f; + float _2506 = max((1.0f - abs(_2501 * 2.5f)), 0.0f); + float _2517 = ((float((int)(((int)(uint)((bool)(_2502 > 0.0f))) - ((int)(uint)((bool)(_2502 < 0.0f))))) * (1.0f - (_2506 * _2506))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2500 <= 0.0533333346247673f)) { + if (!(_2500 >= 0.1599999964237213f)) { + _2526 = (((0.23999999463558197f / _2499) + -0.5f) * _2517); + } else { + _2526 = 0.0f; + } + } else { + _2526 = _2517; + } + float _2527 = _2526 + 1.0f; + float _2528 = _2527 * _2471; + float _2529 = _2527 * _2474; + float _2530 = _2527 * _2477; + do { + if (!((bool)(_2528 == _2529) && (bool)(_2529 == _2530))) { + float _2537 = ((_2528 * 2.0f) - _2529) - _2530; + float _2540 = ((_2474 - _2477) * 1.7320507764816284f) * _2527; + float _2542 = atan(_2540 / _2537); + bool _2545 = (_2537 < 0.0f); + bool _2546 = (_2537 == 0.0f); + bool _2547 = (_2540 >= 0.0f); + bool _2548 = (_2540 < 0.0f); + _2559 = select((_2547 && _2546), 90.0f, select((_2548 && _2546), -90.0f, (select((_2548 && _2545), (_2542 + -3.1415927410125732f), select((_2547 && _2545), (_2542 + 3.1415927410125732f), _2542)) * 57.2957763671875f))); + } else { + _2559 = 0.0f; + } + float _2564 = min(max(select((_2559 < 0.0f), (_2559 + 360.0f), _2559), 0.0f), 360.0f); + do { + if (_2564 < -180.0f) { + _2573 = (_2564 + 360.0f); + } else { + if (_2564 > 180.0f) { + _2573 = (_2564 + -360.0f); + } else { + _2573 = _2564; + } + } + do { + if ((bool)(_2573 > -67.5f) && (bool)(_2573 < 67.5f)) { + float _2579 = (_2573 + 67.5f) * 0.029629629105329514f; + int _2580 = int(_2579); + float _2582 = _2579 - float((int)(_2580)); + float _2583 = _2582 * _2582; + float _2584 = _2583 * _2582; + if (_2580 == 3) { + _2612 = (((0.1666666716337204f - (_2582 * 0.5f)) + (_2583 * 0.5f)) - (_2584 * 0.1666666716337204f)); + } else { + if (_2580 == 2) { + _2612 = ((0.6666666865348816f - _2583) + (_2584 * 0.5f)); + } else { + if (_2580 == 1) { + _2612 = (((_2584 * -0.5f) + 0.1666666716337204f) + ((_2583 + _2582) * 0.5f)); + } else { + _2612 = select((_2580 == 0), (_2584 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2612 = 0.0f; + } + float _2621 = min(max(((((_2486 * 0.27000001072883606f) * (0.029999999329447746f - _2528)) * _2612) + _2528), 0.0f), 65535.0f); + float _2622 = min(max(_2529, 0.0f), 65535.0f); + float _2623 = min(max(_2530, 0.0f), 65535.0f); + float _2636 = min(max(mad(-0.21492856740951538f, _2623, mad(-0.2365107536315918f, _2622, (_2621 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2637 = min(max(mad(-0.09967592358589172f, _2623, mad(1.17622971534729f, _2622, (_2621 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2638 = min(max(mad(0.9977163076400757f, _2623, mad(-0.006032449658960104f, _2622, (_2621 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2639 = dot(float3(_2636, _2637, _2638), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2646 = ((_2636 - _2639) * 0.9599999785423279f) + _2639; + float _2647 = ((_2637 - _2639) * 0.9599999785423279f) + _2639; + float _2648 = ((_2638 - _2639) * 0.9599999785423279f) + _2639; + float _2651 = log2(select((_2646 <= 0.0f), 6.103515625e-05f, _2646)); + float _2652 = _2651 * 0.3010300099849701f; + do { + if (!(_2652 <= -5.2601776123046875f)) { + if ((bool)(_2652 > -5.2601776123046875f) && (bool)(_2652 < -0.7447274923324585f)) { + float _2660 = (_2651 * 0.19999998807907104f) + 3.494786262512207f; + int _2661 = int(_2660); + float _2663 = _2660 - float((int)(_2661)); + float _2665 = _global_0[_2661]; + float _2668 = _global_0[(_2661 + 1)]; + float _2673 = _2665 * 0.5f; + _2705 = dot(float3((_2663 * _2663), _2663, 1.0f), float3(mad((_global_0[(_2661 + 2)]), 0.5f, mad(_2668, -1.0f, _2673)), (_2668 - _2665), mad(_2668, 0.5f, _2673))); + } else { + if ((bool)(_2652 >= -0.7447274923324585f) && (bool)(_2652 < 4.673812389373779f)) { + float _2685 = (_2651 * 0.1666666567325592f) + 0.4123218357563019f; + int _2686 = int(_2685); + float _2688 = _2685 - float((int)(_2686)); + float _2690 = _global_1[_2686]; + float _2693 = _global_1[(_2686 + 1)]; + float _2698 = _2690 * 0.5f; + _2705 = dot(float3((_2688 * _2688), _2688, 1.0f), float3(mad((_global_1[(_2686 + 2)]), 0.5f, mad(_2693, -1.0f, _2698)), (_2693 - _2690), mad(_2693, 0.5f, _2698))); + } else { + _2705 = 4.0f; + } + } + } else { + _2705 = -4.0f; + } + float _2707 = exp2(_2705 * 3.321928024291992f); + float _2710 = log2(select((_2647 <= 0.0f), 6.103515625e-05f, _2647)); + float _2711 = _2710 * 0.3010300099849701f; + do { + if (!(_2711 <= -5.2601776123046875f)) { + if ((bool)(_2711 > -5.2601776123046875f) && (bool)(_2711 < -0.7447274923324585f)) { + float _2719 = (_2710 * 0.19999998807907104f) + 3.494786262512207f; + int _2720 = int(_2719); + float _2722 = _2719 - float((int)(_2720)); + float _2724 = _global_0[_2720]; + float _2727 = _global_0[(_2720 + 1)]; + float _2732 = _2724 * 0.5f; + _2764 = dot(float3((_2722 * _2722), _2722, 1.0f), float3(mad((_global_0[(_2720 + 2)]), 0.5f, mad(_2727, -1.0f, _2732)), (_2727 - _2724), mad(_2727, 0.5f, _2732))); + } else { + if ((bool)(_2711 >= -0.7447274923324585f) && (bool)(_2711 < 4.673812389373779f)) { + float _2744 = (_2710 * 0.1666666567325592f) + 0.4123218357563019f; + int _2745 = int(_2744); + float _2747 = _2744 - float((int)(_2745)); + float _2749 = _global_1[_2745]; + float _2752 = _global_1[(_2745 + 1)]; + float _2757 = _2749 * 0.5f; + _2764 = dot(float3((_2747 * _2747), _2747, 1.0f), float3(mad((_global_1[(_2745 + 2)]), 0.5f, mad(_2752, -1.0f, _2757)), (_2752 - _2749), mad(_2752, 0.5f, _2757))); + } else { + _2764 = 4.0f; + } + } + } else { + _2764 = -4.0f; + } + float _2766 = exp2(_2764 * 3.321928024291992f); + float _2769 = log2(select((_2648 <= 0.0f), 6.103515625e-05f, _2648)); + float _2770 = _2769 * 0.3010300099849701f; + do { + if (!(_2770 <= -5.2601776123046875f)) { + if ((bool)(_2770 > -5.2601776123046875f) && (bool)(_2770 < -0.7447274923324585f)) { + float _2778 = (_2769 * 0.19999998807907104f) + 3.494786262512207f; + int _2779 = int(_2778); + float _2781 = _2778 - float((int)(_2779)); + float _2783 = _global_0[_2779]; + float _2786 = _global_0[(_2779 + 1)]; + float _2791 = _2783 * 0.5f; + _2823 = dot(float3((_2781 * _2781), _2781, 1.0f), float3(mad((_global_0[(_2779 + 2)]), 0.5f, mad(_2786, -1.0f, _2791)), (_2786 - _2783), mad(_2786, 0.5f, _2791))); + } else { + if ((bool)(_2770 >= -0.7447274923324585f) && (bool)(_2770 < 4.673812389373779f)) { + float _2803 = (_2769 * 0.1666666567325592f) + 0.4123218357563019f; + int _2804 = int(_2803); + float _2806 = _2803 - float((int)(_2804)); + float _2808 = _global_1[_2804]; + float _2811 = _global_1[(_2804 + 1)]; + float _2816 = _2808 * 0.5f; + _2823 = dot(float3((_2806 * _2806), _2806, 1.0f), float3(mad((_global_1[(_2804 + 2)]), 0.5f, mad(_2811, -1.0f, _2816)), (_2811 - _2808), mad(_2811, 0.5f, _2816))); + } else { + _2823 = 4.0f; + } + } + } else { + _2823 = -4.0f; + } + float _2825 = exp2(_2823 * 3.321928024291992f); + float _2828 = mad(0.16386906802654266f, _2825, mad(0.14067870378494263f, _2766, (_2707 * 0.6954522132873535f))); + float _2831 = mad(0.0955343171954155f, _2825, mad(0.8596711158752441f, _2766, (_2707 * 0.044794563204050064f))); + float _2834 = mad(1.0015007257461548f, _2825, mad(0.004025210160762072f, _2766, (_2707 * -0.005525882821530104f))); + float _2837 = mad(-0.21492856740951538f, _2834, mad(-0.2365107536315918f, _2831, (_2828 * 1.4514392614364624f))); + float _2840 = mad(-0.09967592358589172f, _2834, mad(1.17622971534729f, _2831, (_2828 * -0.07655377686023712f))); + float _2843 = mad(0.9977163076400757f, _2834, mad(-0.006032449658960104f, _2831, (_2828 * 0.008316148072481155f))); + float _2846 = log2(select((_2837 <= 0.0f), 9.999999747378752e-05f, _2837)); + float _2847 = _2846 * 0.3010300099849701f; + do { + if (!(_2847 <= -3.848327875137329f)) { + if ((bool)(_2847 > -3.848327875137329f) && (bool)(_2847 < 0.6812411546707153f)) { + float _2855 = (_2846 + 12.783867835998535f) * 0.46521204710006714f; + int _2856 = int(_2855); + float _2858 = _2855 - float((int)(_2856)); + float _2860 = _global_4[_2856]; + float _2863 = _global_4[(_2856 + 1)]; + float _2868 = _2860 * 0.5f; + _2903 = dot(float3((_2858 * _2858), _2858, 1.0f), float3(mad((_global_4[(_2856 + 2)]), 0.5f, mad(_2863, -1.0f, _2868)), (_2863 - _2860), mad(_2863, 0.5f, _2868))); + } else { + if ((bool)(_2847 >= 0.6812411546707153f) && (bool)(_2847 < 3.7613162994384766f)) { + float _2880 = (_2846 + -2.2630341053009033f) * 0.6841424107551575f; + int _2881 = int(_2880); + float _2883 = _2880 - float((int)(_2881)); + float _2885 = _global_5[_2881]; + float _2888 = _global_5[(_2881 + 1)]; + float _2893 = _2885 * 0.5f; + _2903 = dot(float3((_2883 * _2883), _2883, 1.0f), float3(mad((_global_5[(_2881 + 2)]), 0.5f, mad(_2888, -1.0f, _2893)), (_2888 - _2885), mad(_2888, 0.5f, _2893))); + } else { + _2903 = ((_2846 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2903 = -2.301030158996582f; + } + float _2905 = exp2(_2903 * 3.321928024291992f); + float _2908 = log2(select((_2840 <= 0.0f), 9.999999747378752e-05f, _2840)); + float _2909 = _2908 * 0.3010300099849701f; + do { + if (!(_2909 <= -3.848327875137329f)) { + if ((bool)(_2909 > -3.848327875137329f) && (bool)(_2909 < 0.6812411546707153f)) { + float _2917 = (_2908 + 12.783867835998535f) * 0.46521204710006714f; + int _2918 = int(_2917); + float _2920 = _2917 - float((int)(_2918)); + float _2922 = _global_4[_2918]; + float _2925 = _global_4[(_2918 + 1)]; + float _2930 = _2922 * 0.5f; + _2965 = dot(float3((_2920 * _2920), _2920, 1.0f), float3(mad((_global_4[(_2918 + 2)]), 0.5f, mad(_2925, -1.0f, _2930)), (_2925 - _2922), mad(_2925, 0.5f, _2930))); + } else { + if ((bool)(_2909 >= 0.6812411546707153f) && (bool)(_2909 < 3.7613162994384766f)) { + float _2942 = (_2908 + -2.2630341053009033f) * 0.6841424107551575f; + int _2943 = int(_2942); + float _2945 = _2942 - float((int)(_2943)); + float _2947 = _global_5[_2943]; + float _2950 = _global_5[(_2943 + 1)]; + float _2955 = _2947 * 0.5f; + _2965 = dot(float3((_2945 * _2945), _2945, 1.0f), float3(mad((_global_5[(_2943 + 2)]), 0.5f, mad(_2950, -1.0f, _2955)), (_2950 - _2947), mad(_2950, 0.5f, _2955))); + } else { + _2965 = ((_2908 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2965 = -2.301030158996582f; + } + float _2967 = exp2(_2965 * 3.321928024291992f); + float _2970 = log2(select((_2843 <= 0.0f), 9.999999747378752e-05f, _2843)); + float _2971 = _2970 * 0.3010300099849701f; + do { + if (!(_2971 <= -3.848327875137329f)) { + if ((bool)(_2971 > -3.848327875137329f) && (bool)(_2971 < 0.6812411546707153f)) { + float _2979 = (_2970 + 12.783867835998535f) * 0.46521204710006714f; + int _2980 = int(_2979); + float _2982 = _2979 - float((int)(_2980)); + float _2984 = _global_4[_2980]; + float _2987 = _global_4[(_2980 + 1)]; + float _2992 = _2984 * 0.5f; + _3027 = dot(float3((_2982 * _2982), _2982, 1.0f), float3(mad((_global_4[(_2980 + 2)]), 0.5f, mad(_2987, -1.0f, _2992)), (_2987 - _2984), mad(_2987, 0.5f, _2992))); + } else { + if ((bool)(_2971 >= 0.6812411546707153f) && (bool)(_2971 < 3.7613162994384766f)) { + float _3004 = (_2970 + -2.2630341053009033f) * 0.6841424107551575f; + int _3005 = int(_3004); + float _3007 = _3004 - float((int)(_3005)); + float _3009 = _global_5[_3005]; + float _3012 = _global_5[(_3005 + 1)]; + float _3017 = _3009 * 0.5f; + _3027 = dot(float3((_3007 * _3007), _3007, 1.0f), float3(mad((_global_5[(_3005 + 2)]), 0.5f, mad(_3012, -1.0f, _3017)), (_3012 - _3009), mad(_3012, 0.5f, _3017))); + } else { + _3027 = ((_2970 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _3027 = -2.301030158996582f; + } + float _3029 = exp2(_3027 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _3041 = mad(_38, _3029, mad(_37, _2967, (_2905 * _36))); + _3042 = mad(_41, _3029, mad(_40, _2967, (_2905 * _39))); + _3043 = mad(_44, _3029, mad(_43, _2967, (_2905 * _42))); + } else { + _3041 = _2905; + _3042 = _2967; + _3043 = _3029; + } + float _3053 = exp2(log2(_3041 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3054 = exp2(log2(_3042 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3055 = exp2(log2(_3043 * 9.999999747378752e-05f) * 0.1593017578125f); + _3199 = exp2(log2((1.0f / ((_3053 * 18.6875f) + 1.0f)) * ((_3053 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3200 = exp2(log2((1.0f / ((_3054 * 18.6875f) + 1.0f)) * ((_3054 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3201 = exp2(log2((1.0f / ((_3055 * 18.6875f) + 1.0f)) * ((_3055 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _3088 = mad(0.04736635088920593f, _1731, mad(0.3395121395587921f, _1730, (_1729 * 0.613191545009613f))); + float _3091 = mad(0.01345000695437193f, _1731, mad(0.9163357615470886f, _1730, (_1729 * 0.07020691782236099f))); + float _3094 = mad(0.8696067929267883f, _1731, mad(0.1095672994852066f, _1730, (_1729 * 0.020618872717022896f))); + float _3113 = exp2(log2(mad(_38, _3094, mad(_37, _3091, (_3088 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3114 = exp2(log2(mad(_41, _3094, mad(_40, _3091, (_3088 * _39))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3115 = exp2(log2(mad(_44, _3094, mad(_43, _3091, (_3088 * _42))) * 9.999999747378752e-05f) * 0.1593017578125f); + _3199 = exp2(log2((1.0f / ((_3113 * 18.6875f) + 1.0f)) * ((_3113 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3200 = exp2(log2((1.0f / ((_3114 * 18.6875f) + 1.0f)) * ((_3114 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3201 = exp2(log2((1.0f / ((_3115 * 18.6875f) + 1.0f)) * ((_3115 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _3150 = mad(0.04736635088920593f, _1719, mad(0.3395121395587921f, _1718, (_1717 * 0.613191545009613f))); + float _3153 = mad(0.01345000695437193f, _1719, mad(0.9163357615470886f, _1718, (_1717 * 0.07020691782236099f))); + float _3156 = mad(0.8696067929267883f, _1719, mad(0.1095672994852066f, _1718, (_1717 * 0.020618872717022896f))); + _3199 = mad(_38, _3156, mad(_37, _3153, (_3150 * _36))); + _3200 = mad(_41, _3156, mad(_40, _3153, (_3150 * _39))); + _3201 = mad(_44, _3156, mad(_43, _3153, (_3150 * _42))); + } else { + float _3169 = mad(0.04736635088920593f, _1745, mad(0.3395121395587921f, _1744, (_1743 * 0.613191545009613f))); + float _3172 = mad(0.01345000695437193f, _1745, mad(0.9163357615470886f, _1744, (_1743 * 0.07020691782236099f))); + float _3175 = mad(0.8696067929267883f, _1745, mad(0.1095672994852066f, _1744, (_1743 * 0.020618872717022896f))); + float _3188 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _3199 = exp2(_3188 * log2(mad(_38, _3175, mad(_37, _3172, (_3169 * _36))))); + _3200 = exp2(_3188 * log2(mad(_41, _3175, mad(_40, _3172, (_3169 * _39))))); + _3201 = exp2(_3188 * log2(mad(_44, _3175, mad(_43, _3172, (_3169 * _42))))); + } + } else { + _3199 = _1729; + _3200 = _1730; + _3201 = _1731; + } + } + } + } + } + } + SV_Target.x = (_3199 * 0.9523810148239136f); + SV_Target.y = (_3200 * 0.9523810148239136f); + SV_Target.z = (_3201 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x7C4A124D.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x7C4A124D.ps_6_0.hlsl new file mode 100644 index 000000000..fb88b7571 --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0x7C4A124D.ps_6_0.hlsl @@ -0,0 +1,1290 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_040x : packoffset(c040.x); + float cb0_041x : packoffset(c041.x); + float cb0_042x : packoffset(c042.x); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _9 = TEXCOORD.x + -0.015625f; + float _10 = TEXCOORD.y + -0.015625f; + float _13 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _34; + float _35; + float _36; + float _37; + float _38; + float _39; + float _40; + float _41; + float _42; + float _99; + float _100; + float _101; + float _340; + float _341; + float _342; + float _889; + float _922; + float _936; + float _1000; + float _1137; + float _1138; + float _1139; + float _1282; + float _1283; + float _1284; + float _1298; + float _1309; + float _1320; + float _1490; + float _1501; + float _1623; + float _1656; + float _1670; + float _1709; + float _1802; + float _1861; + float _1920; + float _2003; + float _2068; + float _2133; + float _2150; + float _2151; + float _2152; + float _2256; + float _2289; + float _2303; + float _2342; + float _2435; + float _2494; + float _2553; + float _2633; + float _2695; + float _2757; + float _2771; + float _2772; + float _2773; + float _2931; + float _2932; + float _2933; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _23 = (cb0_074w == 4); + _34 = select(_23, 1.0f, 1.7050515413284302f); + _35 = select(_23, 0.0f, -0.6217905879020691f); + _36 = select(_23, 0.0f, -0.0832584798336029f); + _37 = select(_23, 0.0f, -0.13025718927383423f); + _38 = select(_23, 1.0f, 1.1408027410507202f); + _39 = select(_23, 0.0f, -0.010548528283834457f); + _40 = select(_23, 0.0f, -0.024003278464078903f); + _41 = select(_23, 0.0f, -0.1289687603712082f); + _42 = select(_23, 1.0f, 1.152971863746643f); + } else { + _34 = 0.6954522132873535f; + _35 = 0.14067870378494263f; + _36 = 0.16386906802654266f; + _37 = 0.044794563204050064f; + _38 = 0.8596711158752441f; + _39 = 0.0955343171954155f; + _40 = -0.005525882821530104f; + _41 = 0.004025210160762072f; + _42 = 1.0015007257461548f; + } + } else { + _34 = 1.02579927444458f; + _35 = -0.020052503794431686f; + _36 = -0.0057713985443115234f; + _37 = -0.0022350111976265907f; + _38 = 1.0045825242996216f; + _39 = -0.002352306619286537f; + _40 = -0.005014004185795784f; + _41 = -0.025293385609984398f; + _42 = 1.0304402112960815f; + } + } else { + _34 = 1.379158854484558f; + _35 = -0.3088507056236267f; + _36 = -0.07034677267074585f; + _37 = -0.06933528929948807f; + _38 = 1.0822921991348267f; + _39 = -0.012962047010660172f; + _40 = -0.002159259282052517f; + _41 = -0.045465391129255295f; + _42 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); + float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); + float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); + _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _104 = cb0_047x * 1.0005563497543335f; + float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); + float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); + float _148 = (_132 * 3.0f) / _147; + float _150 = (_142 * 2.0f) / _147; + bool _151 = (cb0_047x < 4000.0f); + float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); + float _157 = cb0_047y * 0.05000000074505806f; + float _160 = _132 - ((_157 * _142) * _156); + float _163 = ((_157 * _132) * _156) + _142; + float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); + float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); + float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); + float _176 = max(_175, 1.000000013351432e-10f); + float _177 = _174 / _176; + float _180 = ((1.0f - _174) - _175) / _176; + float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); + float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); + float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); + float _193 = mad(_191, -0.7501999735832214f, 0.0f); + float _194 = mad(_191, 1.7135000228881836f, 0.0f); + float _195 = mad(_191, 0.03669999912381172f, -0.0f); + float _196 = mad(_192, 0.03889999911189079f, 0.0f); + float _197 = mad(_192, -0.06849999725818634f, 0.0f); + float _198 = mad(_192, 1.0296000242233276f, 0.0f); + float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); + float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); + float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); + float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); + float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); + float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); + float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); + float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); + float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); + float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); + float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); + float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); + float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); + float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); + float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); + float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); + float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); + float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); + float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); + float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); + float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); + float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); + float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); + float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_291, _294, _297); + // bool _300 = (cb0_046x == 0); + bool _300 = ((uint)(tm_flags.x) == 0); + if (_300) { + float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _306 = (_291 / _302) + -1.0f; + float _307 = (_294 / _302) + -1.0f; + float _308 = (_297 / _302) + -1.0f; + float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); + _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); + _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); + _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); + } else { + _340 = _291; + _341 = _294; + _342 = _297; + } + float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _357 = cb0_052w + cb0_057w; + float _371 = cb0_051w * cb0_056w; + float _385 = cb0_050w * cb0_055w; + float _399 = cb0_049w * cb0_054w; + float _413 = cb0_048w * cb0_053w; + float _417 = _340 - _343; + float _418 = _341 - _343; + float _419 = _342 - _343; + float _477 = saturate(_343 / cb0_073x); + float _481 = (_477 * _477) * (3.0f - (_477 * 2.0f)); + float _482 = 1.0f - _481; + float _491 = cb0_052w + cb0_067w; + float _500 = cb0_051w * cb0_066w; + float _509 = cb0_050w * cb0_065w; + float _518 = cb0_049w * cb0_064w; + float _527 = cb0_048w * cb0_063w; + float _589 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); + float _593 = (_589 * _589) * (3.0f - (_589 * 2.0f)); + float _602 = cb0_052w + cb0_062w; + float _611 = cb0_051w * cb0_061w; + float _620 = cb0_050w * cb0_060w; + float _629 = cb0_049w * cb0_059w; + float _638 = cb0_048w * cb0_058w; + float _696 = _481 - _593; + float _707 = ((_593 * (((cb0_052x + cb0_067x) + _491) + (((cb0_051x * cb0_066x) * _500) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _518) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _527) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _509)))))) + (_482 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385))))))) + ((((cb0_052x + cb0_062x) + _602) + (((cb0_051x * cb0_061x) * _611) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _629) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _638) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _620))))) * _696); + float _709 = ((_593 * (((cb0_052y + cb0_067y) + _491) + (((cb0_051y * cb0_066y) * _500) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _518) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _527) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _509)))))) + (_482 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385))))))) + ((((cb0_052y + cb0_062y) + _602) + (((cb0_051y * cb0_061y) * _611) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _629) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _638) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _620))))) * _696); + float _711 = ((_593 * (((cb0_052z + cb0_067z) + _491) + (((cb0_051z * cb0_066z) * _500) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _518) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _527) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _509)))))) + (_482 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385))))))) + ((((cb0_052z + cb0_062z) + _602) + (((cb0_051z * cb0_061z) * _611) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _629) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _638) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _620))))) * _696); + float _737 = dot(float3(_707, _709, _711), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _795 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_707 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); + float _796 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_709 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); + float _797 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_711 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); + float _800 = mad(-0.0832584798336029f, _797, mad(-0.6217905879020691f, _796, (_795 * 1.7050515413284302f))); + float _803 = mad(-0.010548528283834457f, _797, mad(1.1408027410507202f, _796, (_795 * -0.13025718927383423f))); + float _806 = mad(1.152971863746643f, _797, mad(-0.1289687603712082f, _796, (_795 * -0.024003278464078903f))); + float _822 = ((mad(0.061360642313957214f, _797, mad(-4.540197551250458e-09f, _796, (_795 * 0.9386394023895264f))) - _795) * cb0_075x) + _795; + float _823 = ((mad(0.169205904006958f, _797, mad(0.8307942152023315f, _796, (_795 * 6.775371730327606e-08f))) - _796) * cb0_075x) + _796; + float _824 = (mad(-2.3283064365386963e-10f, _796, (_795 * -9.313225746154785e-10f)) * cb0_075x) + _797; + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _834 = mad(0.16386905312538147f, _824, mad(0.14067868888378143f, _823, (_822 * 0.6954522132873535f))); + float _837 = mad(0.0955343246459961f, _824, mad(0.8596711158752441f, _823, (_822 * 0.044794581830501556f))); + float _840 = mad(1.0015007257461548f, _824, mad(0.004025210160762072f, _823, (_822 * -0.005525882821530104f))); + float _844 = max(max(_834, _837), _840); + float _849 = (max(_844, 1.000000013351432e-10f) - max(min(min(_834, _837), _840), 1.000000013351432e-10f)) / max(_844, 0.009999999776482582f); + float _862 = ((_837 + _834) + _840) + (sqrt((((_840 - _837) * _840) + ((_837 - _834) * _837)) + ((_834 - _840) * _834)) * 1.75f); + float _863 = _862 * 0.3333333432674408f; + float _864 = _849 + -0.4000000059604645f; + float _865 = _864 * 5.0f; + float _869 = max((1.0f - abs(_864 * 2.5f)), 0.0f); + float _880 = ((float((int)(((int)(uint)((bool)(_865 > 0.0f))) - ((int)(uint)((bool)(_865 < 0.0f))))) * (1.0f - (_869 * _869))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_863 <= 0.0533333346247673f)) { + if (!(_863 >= 0.1599999964237213f)) { + _889 = (((0.23999999463558197f / _862) + -0.5f) * _880); + } else { + _889 = 0.0f; + } + } else { + _889 = _880; + } + float _890 = _889 + 1.0f; + float _891 = _890 * _834; + float _892 = _890 * _837; + float _893 = _890 * _840; + do { + if (!((bool)(_891 == _892) && (bool)(_892 == _893))) { + float _900 = ((_891 * 2.0f) - _892) - _893; + float _903 = ((_837 - _840) * 1.7320507764816284f) * _890; + float _905 = atan(_903 / _900); + bool _908 = (_900 < 0.0f); + bool _909 = (_900 == 0.0f); + bool _910 = (_903 >= 0.0f); + bool _911 = (_903 < 0.0f); + _922 = select((_910 && _909), 90.0f, select((_911 && _909), -90.0f, (select((_911 && _908), (_905 + -3.1415927410125732f), select((_910 && _908), (_905 + 3.1415927410125732f), _905)) * 57.2957763671875f))); + } else { + _922 = 0.0f; + } + float _927 = min(max(select((_922 < 0.0f), (_922 + 360.0f), _922), 0.0f), 360.0f); + do { + if (_927 < -180.0f) { + _936 = (_927 + 360.0f); + } else { + if (_927 > 180.0f) { + _936 = (_927 + -360.0f); + } else { + _936 = _927; + } + } + float _940 = saturate(1.0f - abs(_936 * 0.014814814552664757f)); + float _944 = (_940 * _940) * (3.0f - (_940 * 2.0f)); + float _950 = ((_944 * _944) * ((_849 * 0.18000000715255737f) * (0.029999999329447746f - _891))) + _891; + float _960 = max(0.0f, mad(-0.21492856740951538f, _893, mad(-0.2365107536315918f, _892, (_950 * 1.4514392614364624f)))); + float _961 = max(0.0f, mad(-0.09967592358589172f, _893, mad(1.17622971534729f, _892, (_950 * -0.07655377686023712f)))); + float _962 = max(0.0f, mad(0.9977163076400757f, _893, mad(-0.006032449658960104f, _892, (_950 * 0.008316148072481155f)))); + float _963 = dot(float3(_960, _961, _962), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _977 = (cb0_036w + 1.0f) - cb0_036y; + float _980 = cb0_037x + 1.0f; + float _982 = _980 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _1000 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _991 = (cb0_036w + 0.18000000715255737f) / _977; + _1000 = (-0.7447274923324585f - ((log2(_991 / (2.0f - _991)) * 0.3465735912322998f) * (_977 / cb0_036x))); + } + float _1003 = ((1.0f - cb0_036y) / cb0_036x) - _1000; + float _1005 = (cb0_036z / cb0_036x) - _1003; + float _1009 = log2(lerp(_963, _960, 0.9599999785423279f)) * 0.3010300099849701f; + float _1010 = log2(lerp(_963, _961, 0.9599999785423279f)) * 0.3010300099849701f; + float _1011 = log2(lerp(_963, _962, 0.9599999785423279f)) * 0.3010300099849701f; + float _1015 = cb0_036x * (_1009 + _1003); + float _1016 = cb0_036x * (_1010 + _1003); + float _1017 = cb0_036x * (_1011 + _1003); + float _1018 = _977 * 2.0f; + float _1020 = (cb0_036x * -2.0f) / _977; + float _1021 = _1009 - _1000; + float _1022 = _1010 - _1000; + float _1023 = _1011 - _1000; + float _1042 = _982 * 2.0f; + float _1044 = (cb0_036x * 2.0f) / _982; + float _1069 = select((_1009 < _1000), ((_1018 / (exp2((_1021 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1015); + float _1070 = select((_1010 < _1000), ((_1018 / (exp2((_1022 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1016); + float _1071 = select((_1011 < _1000), ((_1018 / (exp2((_1023 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1017); + float _1078 = _1005 - _1000; + float _1082 = saturate(_1021 / _1078); + float _1083 = saturate(_1022 / _1078); + float _1084 = saturate(_1023 / _1078); + bool _1085 = (_1005 < _1000); + float _1089 = select(_1085, (1.0f - _1082), _1082); + float _1090 = select(_1085, (1.0f - _1083), _1083); + float _1091 = select(_1085, (1.0f - _1084), _1084); + float _1110 = (((_1089 * _1089) * (select((_1009 > _1005), (_980 - (_1042 / (exp2(((_1009 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; + float _1111 = (((_1090 * _1090) * (select((_1010 > _1005), (_980 - (_1042 / (exp2(((_1010 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1016) - _1070)) * (3.0f - (_1090 * 2.0f))) + _1070; + float _1112 = (((_1091 * _1091) * (select((_1011 > _1005), (_980 - (_1042 / (exp2(((_1011 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1017) - _1071)) * (3.0f - (_1091 * 2.0f))) + _1071; + float _1113 = dot(float3(_1110, _1111, _1112), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1137 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1110, 0.9300000071525574f))) - _822)) + _822); + _1138 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1111, 0.9300000071525574f))) - _823)) + _823); + _1139 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1112, 0.9300000071525574f))) - _824)) + _824); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1137 = _822; + _1138 = _823; + _1139 = _824; + } + float _1155 = ((mad(-0.06537103652954102f, _1139, mad(1.451815478503704e-06f, _1138, (_1137 * 1.065374732017517f))) - _1137) * cb0_075x) + _1137; + float _1156 = ((mad(-0.20366770029067993f, _1139, mad(1.2036634683609009f, _1138, (_1137 * -2.57161445915699e-07f))) - _1138) * cb0_075x) + _1138; + float _1157 = ((mad(0.9999996423721313f, _1139, mad(2.0954757928848267e-08f, _1138, (_1137 * 1.862645149230957e-08f))) - _1139) * cb0_075x) + _1139; + [branch] + if (!_300) { + float _1200 = 1.0f / (dot(float3(_800, _803, _806), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1210 = max(0.0f, (((_1200 * cb0_035x) + cb0_034x) * dot(float3(_800, _803, _806), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1211 = max(0.0f, (((_1200 * cb0_035y) + cb0_034y) * dot(float3(_800, _803, _806), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1212 = max(0.0f, (((_1200 * cb0_035z) + cb0_034z) * dot(float3(_800, _803, _806), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1218 = max(0.0f, (cb0_031x - _1210)); + float _1219 = max(0.0f, (cb0_031x - _1211)); + float _1220 = max(0.0f, (cb0_031x - _1212)); + float _1222 = max(_1210, cb0_031z); + float _1223 = max(_1211, cb0_031z); + float _1224 = max(_1212, cb0_031z); + _1282 = (((((((cb0_032x * _1222) + cb0_032y) * (1.0f / (cb0_031w + _1222))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1210, cb0_031x), cb0_031z))) + ((cb0_028w * _1218) * (1.0f / (cb0_031y + _1218)))) + cb0_029w); + _1283 = ((((((1.0f / (cb0_031w + _1223)) * ((cb0_032x * _1223) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1211, cb0_031x), cb0_031z))) + ((cb0_028w * _1219) * (1.0f / (cb0_031y + _1219)))) + cb0_029w); + _1284 = ((((((1.0f / (cb0_031w + _1224)) * ((cb0_032x * _1224) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1212, cb0_031x), cb0_031z))) + ((cb0_028w * _1220) * (1.0f / (cb0_031y + _1220)))) + cb0_029w); + } else { + _1282 = max(0.0f, mad(-0.0832584798336029f, _1157, mad(-0.6217905879020691f, _1156, (_1155 * 1.7050515413284302f)))); + _1283 = max(0.0f, mad(-0.010548528283834457f, _1157, mad(1.1408027410507202f, _1156, (_1155 * -0.13025718927383423f)))); + _1284 = max(0.0f, mad(1.152971863746643f, _1157, mad(-0.1289687603712082f, _1156, (_1155 * -0.024003278464078903f)))); + } + float _1285 = (_1282); + float _1286 = (_1283); + float _1287 = (_1284); + + float lut_sampling_scale = wuwa::lut::PrepareLinearInput(_1285, _1286, _1287); + + if (_1285 < 0.0031306699384003878f) { + _1298 = (_1285 * 12.920000076293945f); + } else { + _1298 = (((pow(_1285, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1286 < 0.0031306699384003878f) { + _1309 = (_1286 * 12.920000076293945f); + } else { + _1309 = (((pow(_1286, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1287 < 0.0031306699384003878f) { + _1320 = (_1287 * 12.920000076293945f); + } else { + _1320 = (((pow(_1287, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + + float lut_sample_max_channel = wuwa::lut::NormalizeEncodedInput(_1298, _1309, _1320); + + float _1324 = (_1309 * 0.9375f) + 0.03125f; + float _1332 = _1320 * 15.0f; + float _1333 = floor(_1332); + float _1334 = _1332 - _1333; + float _1336 = (_1333 + ((_1298 * 0.9375f) + 0.03125f)) * 0.0625f; + float4 _1337 = t0.Sample(s0, float2(_1336, _1324)); + float _1341 = _1336 + 0.0625f; + float4 _1342 = t0.Sample(s0, float2(_1341, _1324)); + float4 _1363 = t1.Sample(s1, float2(_1336, _1324)); + float4 _1367 = t1.Sample(s1, float2(_1341, _1324)); + float _1386 = max(6.103519990574569e-05f, ((((lerp(_1337.x, _1342.x, _1334)) * cb0_041x) + (cb0_040x * _1298)) + ((lerp(_1363.x, _1367.x, _1334)) * cb0_042x))); + float _1387 = max(6.103519990574569e-05f, ((((lerp(_1337.y, _1342.y, _1334)) * cb0_041x) + (cb0_040x * _1309)) + ((lerp(_1363.y, _1367.y, _1334)) * cb0_042x))); + float _1388 = max(6.103519990574569e-05f, ((((lerp(_1337.z, _1342.z, _1334)) * cb0_041x) + (cb0_040x * _1320)) + ((lerp(_1363.z, _1367.z, _1334)) * cb0_042x))); + + wuwa::lut::ApplySampleMaxChannel(_1386, _1387, _1388, lut_sample_max_channel); + + float _1410 = select((_1386 > 0.040449999272823334f), exp2(log2((_1386 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1386 * 0.07739938050508499f)); + float _1411 = select((_1387 > 0.040449999272823334f), exp2(log2((_1387 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1387 * 0.07739938050508499f)); + float _1412 = select((_1388 > 0.040449999272823334f), exp2(log2((_1388 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1388 * 0.07739938050508499f)); + + wuwa::lut::ApplyInverseSamplingScale(_1410, _1411, _1412, lut_sampling_scale); + + float _1438 = cb0_044y * (((cb0_026y + (cb0_026x * _1410)) * _1410) + cb0_026z); + float _1439 = cb0_044z * (((cb0_026y + (cb0_026x * _1411)) * _1411) + cb0_026z); + float _1440 = cb0_044w * (((cb0_026y + (cb0_026x * _1412)) * _1412) + cb0_026z); + float _1447 = ((cb0_045x - _1438) * cb0_045w) + _1438; + float _1448 = ((cb0_045y - _1439) * cb0_045w) + _1439; + float _1449 = ((cb0_045z - _1440) * cb0_045w) + _1440; + wuwa::lut::ApplyLutStrength(_1447, _1448, _1449, ungraded); + float _1450 = cb0_044y * _800; + float _1451 = cb0_044z * _803; + float _1452 = cb0_044w * _806; + float _1459 = ((cb0_045x - _1450) * cb0_045w) + _1450; + float _1460 = ((cb0_045y - _1451) * cb0_045w) + _1451; + float _1461 = ((cb0_045z - _1452) * cb0_045w) + _1452; + float _1473 = exp2(log2(max(0.0f, _1447)) * cb0_027y); + float _1474 = exp2(log2(max(0.0f, _1448)) * cb0_027y); + float _1475 = exp2(log2(max(0.0f, _1449)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1473, _1474, _1475)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1473 < 0.0031306699384003878f) { + _1490 = (_1473 * 12.920000076293945f); + } else { + _1490 = (((pow(_1473, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1474 < 0.0031306699384003878f) { + _1501 = (_1474 * 12.920000076293945f); + } else { + _1501 = (((pow(_1474, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1475 < 0.0031306699384003878f) { + _2931 = _1490; + _2932 = _1501; + _2933 = (_1475 * 12.920000076293945f); + } else { + _2931 = _1490; + _2932 = _1501; + _2933 = (((pow(_1475, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1516 = mad(0.04736635088920593f, _1475, mad(0.3395121395587921f, _1474, (_1473 * 0.613191545009613f))); + float _1519 = mad(0.01345000695437193f, _1475, mad(0.9163357615470886f, _1474, (_1473 * 0.07020691782236099f))); + float _1522 = mad(0.8696067929267883f, _1475, mad(0.1095672994852066f, _1474, (_1473 * 0.020618872717022896f))); + float _1532 = max(6.103519990574569e-05f, mad(_36, _1522, mad(_35, _1519, (_1516 * _34)))); + float _1533 = max(6.103519990574569e-05f, mad(_39, _1522, mad(_38, _1519, (_1516 * _37)))); + float _1534 = max(6.103519990574569e-05f, mad(_42, _1522, mad(_41, _1519, (_1516 * _40)))); + _2931 = min((_1532 * 4.5f), ((exp2(log2(max(_1532, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2932 = min((_1533 * 4.5f), ((exp2(log2(max(_1533, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _2933 = min((_1534 * 4.5f), ((exp2(log2(max(_1534, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1561 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1561) { + float _1564 = _1460 * 3.0f; + float _1565 = _1461 * 3.0f; + float _1568 = mad(0.17733481526374817f, _1565, mad(0.38297808170318604f, _1564, (_1459 * 1.31910240650177f))); + float _1571 = mad(0.09676162153482437f, _1565, mad(0.8134231567382812f, _1564, (_1459 * 0.2693769633769989f))); + float _1574 = mad(0.870704174041748f, _1565, mad(0.11154405772686005f, _1564, (_1459 * 0.05263196676969528f))); + float _1578 = max(max(_1568, _1571), _1574); + float _1583 = (max(_1578, 1.000000013351432e-10f) - max(min(min(_1568, _1571), _1574), 1.000000013351432e-10f)) / max(_1578, 0.009999999776482582f); + float _1596 = ((_1571 + _1568) + _1574) + (sqrt((((_1574 - _1571) * _1574) + ((_1571 - _1568) * _1571)) + ((_1568 - _1574) * _1568)) * 1.75f); + float _1597 = _1596 * 0.3333333432674408f; + float _1598 = _1583 + -0.4000000059604645f; + float _1599 = _1598 * 5.0f; + float _1603 = max((1.0f - abs(_1598 * 2.5f)), 0.0f); + float _1614 = ((float((int)(((int)(uint)((bool)(_1599 > 0.0f))) - ((int)(uint)((bool)(_1599 < 0.0f))))) * (1.0f - (_1603 * _1603))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1597 <= 0.0533333346247673f)) { + if (!(_1597 >= 0.1599999964237213f)) { + _1623 = (((0.23999999463558197f / _1596) + -0.5f) * _1614); + } else { + _1623 = 0.0f; + } + } else { + _1623 = _1614; + } + float _1624 = _1623 + 1.0f; + float _1625 = _1624 * _1568; + float _1626 = _1624 * _1571; + float _1627 = _1624 * _1574; + do { + if (!((bool)(_1625 == _1626) && (bool)(_1626 == _1627))) { + float _1634 = ((_1625 * 2.0f) - _1626) - _1627; + float _1637 = ((_1571 - _1574) * 1.7320507764816284f) * _1624; + float _1639 = atan(_1637 / _1634); + bool _1642 = (_1634 < 0.0f); + bool _1643 = (_1634 == 0.0f); + bool _1644 = (_1637 >= 0.0f); + bool _1645 = (_1637 < 0.0f); + _1656 = select((_1644 && _1643), 90.0f, select((_1645 && _1643), -90.0f, (select((_1645 && _1642), (_1639 + -3.1415927410125732f), select((_1644 && _1642), (_1639 + 3.1415927410125732f), _1639)) * 57.2957763671875f))); + } else { + _1656 = 0.0f; + } + float _1661 = min(max(select((_1656 < 0.0f), (_1656 + 360.0f), _1656), 0.0f), 360.0f); + do { + if (_1661 < -180.0f) { + _1670 = (_1661 + 360.0f); + } else { + if (_1661 > 180.0f) { + _1670 = (_1661 + -360.0f); + } else { + _1670 = _1661; + } + } + do { + if ((bool)(_1670 > -67.5f) && (bool)(_1670 < 67.5f)) { + float _1676 = (_1670 + 67.5f) * 0.029629629105329514f; + int _1677 = int(_1676); + float _1679 = _1676 - float((int)(_1677)); + float _1680 = _1679 * _1679; + float _1681 = _1680 * _1679; + if (_1677 == 3) { + _1709 = (((0.1666666716337204f - (_1679 * 0.5f)) + (_1680 * 0.5f)) - (_1681 * 0.1666666716337204f)); + } else { + if (_1677 == 2) { + _1709 = ((0.6666666865348816f - _1680) + (_1681 * 0.5f)); + } else { + if (_1677 == 1) { + _1709 = (((_1681 * -0.5f) + 0.1666666716337204f) + ((_1680 + _1679) * 0.5f)); + } else { + _1709 = select((_1677 == 0), (_1681 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1709 = 0.0f; + } + float _1718 = min(max(((((_1583 * 0.27000001072883606f) * (0.029999999329447746f - _1625)) * _1709) + _1625), 0.0f), 65535.0f); + float _1719 = min(max(_1626, 0.0f), 65535.0f); + float _1720 = min(max(_1627, 0.0f), 65535.0f); + float _1733 = min(max(mad(-0.21492856740951538f, _1720, mad(-0.2365107536315918f, _1719, (_1718 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _1734 = min(max(mad(-0.09967592358589172f, _1720, mad(1.17622971534729f, _1719, (_1718 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _1735 = min(max(mad(0.9977163076400757f, _1720, mad(-0.006032449658960104f, _1719, (_1718 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _1736 = dot(float3(_1733, _1734, _1735), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1743 = ((_1733 - _1736) * 0.9599999785423279f) + _1736; + float _1744 = ((_1734 - _1736) * 0.9599999785423279f) + _1736; + float _1745 = ((_1735 - _1736) * 0.9599999785423279f) + _1736; + float _1748 = log2(select((_1743 <= 0.0f), 6.103515625e-05f, _1743)); + float _1749 = _1748 * 0.3010300099849701f; + do { + if (!(_1749 <= -5.2601776123046875f)) { + if ((bool)(_1749 > -5.2601776123046875f) && (bool)(_1749 < -0.7447274923324585f)) { + float _1757 = (_1748 * 0.19999998807907104f) + 3.494786262512207f; + int _1758 = int(_1757); + float _1760 = _1757 - float((int)(_1758)); + float _1762 = _global_0[_1758]; + float _1765 = _global_0[(_1758 + 1)]; + float _1770 = _1762 * 0.5f; + _1802 = dot(float3((_1760 * _1760), _1760, 1.0f), float3(mad((_global_0[(_1758 + 2)]), 0.5f, mad(_1765, -1.0f, _1770)), (_1765 - _1762), mad(_1765, 0.5f, _1770))); + } else { + if ((bool)(_1749 >= -0.7447274923324585f) && (bool)(_1749 < 4.673812389373779f)) { + float _1782 = (_1748 * 0.1666666567325592f) + 0.4123218357563019f; + int _1783 = int(_1782); + float _1785 = _1782 - float((int)(_1783)); + float _1787 = _global_1[_1783]; + float _1790 = _global_1[(_1783 + 1)]; + float _1795 = _1787 * 0.5f; + _1802 = dot(float3((_1785 * _1785), _1785, 1.0f), float3(mad((_global_1[(_1783 + 2)]), 0.5f, mad(_1790, -1.0f, _1795)), (_1790 - _1787), mad(_1790, 0.5f, _1795))); + } else { + _1802 = 4.0f; + } + } + } else { + _1802 = -4.0f; + } + float _1804 = exp2(_1802 * 3.321928024291992f); + float _1807 = log2(select((_1744 <= 0.0f), 6.103515625e-05f, _1744)); + float _1808 = _1807 * 0.3010300099849701f; + do { + if (!(_1808 <= -5.2601776123046875f)) { + if ((bool)(_1808 > -5.2601776123046875f) && (bool)(_1808 < -0.7447274923324585f)) { + float _1816 = (_1807 * 0.19999998807907104f) + 3.494786262512207f; + int _1817 = int(_1816); + float _1819 = _1816 - float((int)(_1817)); + float _1821 = _global_0[_1817]; + float _1824 = _global_0[(_1817 + 1)]; + float _1829 = _1821 * 0.5f; + _1861 = dot(float3((_1819 * _1819), _1819, 1.0f), float3(mad((_global_0[(_1817 + 2)]), 0.5f, mad(_1824, -1.0f, _1829)), (_1824 - _1821), mad(_1824, 0.5f, _1829))); + } else { + if ((bool)(_1808 >= -0.7447274923324585f) && (bool)(_1808 < 4.673812389373779f)) { + float _1841 = (_1807 * 0.1666666567325592f) + 0.4123218357563019f; + int _1842 = int(_1841); + float _1844 = _1841 - float((int)(_1842)); + float _1846 = _global_1[_1842]; + float _1849 = _global_1[(_1842 + 1)]; + float _1854 = _1846 * 0.5f; + _1861 = dot(float3((_1844 * _1844), _1844, 1.0f), float3(mad((_global_1[(_1842 + 2)]), 0.5f, mad(_1849, -1.0f, _1854)), (_1849 - _1846), mad(_1849, 0.5f, _1854))); + } else { + _1861 = 4.0f; + } + } + } else { + _1861 = -4.0f; + } + float _1863 = exp2(_1861 * 3.321928024291992f); + float _1866 = log2(select((_1745 <= 0.0f), 6.103515625e-05f, _1745)); + float _1867 = _1866 * 0.3010300099849701f; + do { + if (!(_1867 <= -5.2601776123046875f)) { + if ((bool)(_1867 > -5.2601776123046875f) && (bool)(_1867 < -0.7447274923324585f)) { + float _1875 = (_1866 * 0.19999998807907104f) + 3.494786262512207f; + int _1876 = int(_1875); + float _1878 = _1875 - float((int)(_1876)); + float _1880 = _global_0[_1876]; + float _1883 = _global_0[(_1876 + 1)]; + float _1888 = _1880 * 0.5f; + _1920 = dot(float3((_1878 * _1878), _1878, 1.0f), float3(mad((_global_0[(_1876 + 2)]), 0.5f, mad(_1883, -1.0f, _1888)), (_1883 - _1880), mad(_1883, 0.5f, _1888))); + } else { + if ((bool)(_1867 >= -0.7447274923324585f) && (bool)(_1867 < 4.673812389373779f)) { + float _1900 = (_1866 * 0.1666666567325592f) + 0.4123218357563019f; + int _1901 = int(_1900); + float _1903 = _1900 - float((int)(_1901)); + float _1905 = _global_1[_1901]; + float _1908 = _global_1[(_1901 + 1)]; + float _1913 = _1905 * 0.5f; + _1920 = dot(float3((_1903 * _1903), _1903, 1.0f), float3(mad((_global_1[(_1901 + 2)]), 0.5f, mad(_1908, -1.0f, _1913)), (_1908 - _1905), mad(_1908, 0.5f, _1913))); + } else { + _1920 = 4.0f; + } + } + } else { + _1920 = -4.0f; + } + float _1922 = exp2(_1920 * 3.321928024291992f); + float _1925 = mad(0.16386906802654266f, _1922, mad(0.14067870378494263f, _1863, (_1804 * 0.6954522132873535f))); + float _1928 = mad(0.0955343171954155f, _1922, mad(0.8596711158752441f, _1863, (_1804 * 0.044794563204050064f))); + float _1931 = mad(1.0015007257461548f, _1922, mad(0.004025210160762072f, _1863, (_1804 * -0.005525882821530104f))); + float _1934 = mad(-0.21492856740951538f, _1931, mad(-0.2365107536315918f, _1928, (_1925 * 1.4514392614364624f))); + float _1937 = mad(-0.09967592358589172f, _1931, mad(1.17622971534729f, _1928, (_1925 * -0.07655377686023712f))); + float _1940 = mad(0.9977163076400757f, _1931, mad(-0.006032449658960104f, _1928, (_1925 * 0.008316148072481155f))); + float _1943 = log2(select((_1934 <= 0.0f), 9.999999747378752e-05f, _1934)); + float _1944 = _1943 * 0.3010300099849701f; + do { + if (!(!(_1944 <= -3.848327875137329f))) { + _2003 = ((_1943 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_1944 > -3.848327875137329f) && (bool)(_1944 < 0.6812411546707153f)) { + float _1955 = (_1943 + 12.783867835998535f) * 0.46521204710006714f; + int _1956 = int(_1955); + float _1958 = _1955 - float((int)(_1956)); + float _1960 = _global_2[_1956]; + float _1963 = _global_2[(_1956 + 1)]; + float _1968 = _1960 * 0.5f; + _2003 = dot(float3((_1958 * _1958), _1958, 1.0f), float3(mad((_global_2[(_1956 + 2)]), 0.5f, mad(_1963, -1.0f, _1968)), (_1963 - _1960), mad(_1963, 0.5f, _1968))); + } else { + if ((bool)(_1944 >= 0.6812411546707153f) && (bool)(_1944 < 3.653702974319458f)) { + float _1980 = (_1943 + -2.2630341053009033f) * 0.7089107632637024f; + int _1981 = int(_1980); + float _1983 = _1980 - float((int)(_1981)); + float _1985 = _global_3[_1981]; + float _1988 = _global_3[(_1981 + 1)]; + float _1993 = _1985 * 0.5f; + _2003 = dot(float3((_1983 * _1983), _1983, 1.0f), float3(mad((_global_3[(_1981 + 2)]), 0.5f, mad(_1988, -1.0f, _1993)), (_1988 - _1985), mad(_1988, 0.5f, _1993))); + } else { + _2003 = ((_1943 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2008 = log2(select((_1937 <= 0.0f), 9.999999747378752e-05f, _1937)); + float _2009 = _2008 * 0.3010300099849701f; + do { + if (!(!(_2009 <= -3.848327875137329f))) { + _2068 = ((_2008 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2009 > -3.848327875137329f) && (bool)(_2009 < 0.6812411546707153f)) { + float _2020 = (_2008 + 12.783867835998535f) * 0.46521204710006714f; + int _2021 = int(_2020); + float _2023 = _2020 - float((int)(_2021)); + float _2025 = _global_2[_2021]; + float _2028 = _global_2[(_2021 + 1)]; + float _2033 = _2025 * 0.5f; + _2068 = dot(float3((_2023 * _2023), _2023, 1.0f), float3(mad((_global_2[(_2021 + 2)]), 0.5f, mad(_2028, -1.0f, _2033)), (_2028 - _2025), mad(_2028, 0.5f, _2033))); + } else { + if ((bool)(_2009 >= 0.6812411546707153f) && (bool)(_2009 < 3.653702974319458f)) { + float _2045 = (_2008 + -2.2630341053009033f) * 0.7089107632637024f; + int _2046 = int(_2045); + float _2048 = _2045 - float((int)(_2046)); + float _2050 = _global_3[_2046]; + float _2053 = _global_3[(_2046 + 1)]; + float _2058 = _2050 * 0.5f; + _2068 = dot(float3((_2048 * _2048), _2048, 1.0f), float3(mad((_global_3[(_2046 + 2)]), 0.5f, mad(_2053, -1.0f, _2058)), (_2053 - _2050), mad(_2053, 0.5f, _2058))); + } else { + _2068 = ((_2008 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2073 = log2(select((_1940 <= 0.0f), 9.999999747378752e-05f, _1940)); + float _2074 = _2073 * 0.3010300099849701f; + do { + if (!(!(_2074 <= -3.848327875137329f))) { + _2133 = ((_2073 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2074 > -3.848327875137329f) && (bool)(_2074 < 0.6812411546707153f)) { + float _2085 = (_2073 + 12.783867835998535f) * 0.46521204710006714f; + int _2086 = int(_2085); + float _2088 = _2085 - float((int)(_2086)); + float _2090 = _global_2[_2086]; + float _2093 = _global_2[(_2086 + 1)]; + float _2098 = _2090 * 0.5f; + _2133 = dot(float3((_2088 * _2088), _2088, 1.0f), float3(mad((_global_2[(_2086 + 2)]), 0.5f, mad(_2093, -1.0f, _2098)), (_2093 - _2090), mad(_2093, 0.5f, _2098))); + } else { + if ((bool)(_2074 >= 0.6812411546707153f) && (bool)(_2074 < 3.653702974319458f)) { + float _2110 = (_2073 + -2.2630341053009033f) * 0.7089107632637024f; + int _2111 = int(_2110); + float _2113 = _2110 - float((int)(_2111)); + float _2115 = _global_3[_2111]; + float _2118 = _global_3[(_2111 + 1)]; + float _2123 = _2115 * 0.5f; + _2133 = dot(float3((_2113 * _2113), _2113, 1.0f), float3(mad((_global_3[(_2111 + 2)]), 0.5f, mad(_2118, -1.0f, _2123)), (_2118 - _2115), mad(_2118, 0.5f, _2123))); + } else { + _2133 = ((_2073 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2136 = exp2(_2003 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2137 = exp2(_2068 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2138 = exp2(_2133 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1561) { + _2150 = mad(_36, _2138, mad(_35, _2137, (_2136 * _34))); + _2151 = mad(_39, _2138, mad(_38, _2137, (_2136 * _37))); + _2152 = mad(_42, _2138, mad(_41, _2137, (_2136 * _40))); + } else { + _2150 = _2136; + _2151 = _2137; + _2152 = _2138; + } + float _2162 = exp2(log2(_2150 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2163 = exp2(log2(_2151 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2164 = exp2(log2(_2152 * 9.999999747378752e-05f) * 0.1593017578125f); + _2931 = exp2(log2((1.0f / ((_2162 * 18.6875f) + 1.0f)) * ((_2162 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2932 = exp2(log2((1.0f / ((_2163 * 18.6875f) + 1.0f)) * ((_2163 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2933 = exp2(log2((1.0f / ((_2164 * 18.6875f) + 1.0f)) * ((_2164 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2197 = _1460 * 3.0f; + float _2198 = _1461 * 3.0f; + float _2201 = mad(0.17733481526374817f, _2198, mad(0.38297808170318604f, _2197, (_1459 * 1.31910240650177f))); + float _2204 = mad(0.09676162153482437f, _2198, mad(0.8134231567382812f, _2197, (_1459 * 0.2693769633769989f))); + float _2207 = mad(0.870704174041748f, _2198, mad(0.11154405772686005f, _2197, (_1459 * 0.05263196676969528f))); + float _2211 = max(max(_2201, _2204), _2207); + float _2216 = (max(_2211, 1.000000013351432e-10f) - max(min(min(_2201, _2204), _2207), 1.000000013351432e-10f)) / max(_2211, 0.009999999776482582f); + float _2229 = ((_2204 + _2201) + _2207) + (sqrt((((_2207 - _2204) * _2207) + ((_2204 - _2201) * _2204)) + ((_2201 - _2207) * _2201)) * 1.75f); + float _2230 = _2229 * 0.3333333432674408f; + float _2231 = _2216 + -0.4000000059604645f; + float _2232 = _2231 * 5.0f; + float _2236 = max((1.0f - abs(_2231 * 2.5f)), 0.0f); + float _2247 = ((float((int)(((int)(uint)((bool)(_2232 > 0.0f))) - ((int)(uint)((bool)(_2232 < 0.0f))))) * (1.0f - (_2236 * _2236))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2230 <= 0.0533333346247673f)) { + if (!(_2230 >= 0.1599999964237213f)) { + _2256 = (((0.23999999463558197f / _2229) + -0.5f) * _2247); + } else { + _2256 = 0.0f; + } + } else { + _2256 = _2247; + } + float _2257 = _2256 + 1.0f; + float _2258 = _2257 * _2201; + float _2259 = _2257 * _2204; + float _2260 = _2257 * _2207; + do { + if (!((bool)(_2258 == _2259) && (bool)(_2259 == _2260))) { + float _2267 = ((_2258 * 2.0f) - _2259) - _2260; + float _2270 = ((_2204 - _2207) * 1.7320507764816284f) * _2257; + float _2272 = atan(_2270 / _2267); + bool _2275 = (_2267 < 0.0f); + bool _2276 = (_2267 == 0.0f); + bool _2277 = (_2270 >= 0.0f); + bool _2278 = (_2270 < 0.0f); + _2289 = select((_2277 && _2276), 90.0f, select((_2278 && _2276), -90.0f, (select((_2278 && _2275), (_2272 + -3.1415927410125732f), select((_2277 && _2275), (_2272 + 3.1415927410125732f), _2272)) * 57.2957763671875f))); + } else { + _2289 = 0.0f; + } + float _2294 = min(max(select((_2289 < 0.0f), (_2289 + 360.0f), _2289), 0.0f), 360.0f); + do { + if (_2294 < -180.0f) { + _2303 = (_2294 + 360.0f); + } else { + if (_2294 > 180.0f) { + _2303 = (_2294 + -360.0f); + } else { + _2303 = _2294; + } + } + do { + if ((bool)(_2303 > -67.5f) && (bool)(_2303 < 67.5f)) { + float _2309 = (_2303 + 67.5f) * 0.029629629105329514f; + int _2310 = int(_2309); + float _2312 = _2309 - float((int)(_2310)); + float _2313 = _2312 * _2312; + float _2314 = _2313 * _2312; + if (_2310 == 3) { + _2342 = (((0.1666666716337204f - (_2312 * 0.5f)) + (_2313 * 0.5f)) - (_2314 * 0.1666666716337204f)); + } else { + if (_2310 == 2) { + _2342 = ((0.6666666865348816f - _2313) + (_2314 * 0.5f)); + } else { + if (_2310 == 1) { + _2342 = (((_2314 * -0.5f) + 0.1666666716337204f) + ((_2313 + _2312) * 0.5f)); + } else { + _2342 = select((_2310 == 0), (_2314 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2342 = 0.0f; + } + float _2351 = min(max(((((_2216 * 0.27000001072883606f) * (0.029999999329447746f - _2258)) * _2342) + _2258), 0.0f), 65535.0f); + float _2352 = min(max(_2259, 0.0f), 65535.0f); + float _2353 = min(max(_2260, 0.0f), 65535.0f); + float _2366 = min(max(mad(-0.21492856740951538f, _2353, mad(-0.2365107536315918f, _2352, (_2351 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2367 = min(max(mad(-0.09967592358589172f, _2353, mad(1.17622971534729f, _2352, (_2351 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2368 = min(max(mad(0.9977163076400757f, _2353, mad(-0.006032449658960104f, _2352, (_2351 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2369 = dot(float3(_2366, _2367, _2368), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2376 = ((_2366 - _2369) * 0.9599999785423279f) + _2369; + float _2377 = ((_2367 - _2369) * 0.9599999785423279f) + _2369; + float _2378 = ((_2368 - _2369) * 0.9599999785423279f) + _2369; + float _2381 = log2(select((_2376 <= 0.0f), 6.103515625e-05f, _2376)); + float _2382 = _2381 * 0.3010300099849701f; + do { + if (!(_2382 <= -5.2601776123046875f)) { + if ((bool)(_2382 > -5.2601776123046875f) && (bool)(_2382 < -0.7447274923324585f)) { + float _2390 = (_2381 * 0.19999998807907104f) + 3.494786262512207f; + int _2391 = int(_2390); + float _2393 = _2390 - float((int)(_2391)); + float _2395 = _global_0[_2391]; + float _2398 = _global_0[(_2391 + 1)]; + float _2403 = _2395 * 0.5f; + _2435 = dot(float3((_2393 * _2393), _2393, 1.0f), float3(mad((_global_0[(_2391 + 2)]), 0.5f, mad(_2398, -1.0f, _2403)), (_2398 - _2395), mad(_2398, 0.5f, _2403))); + } else { + if ((bool)(_2382 >= -0.7447274923324585f) && (bool)(_2382 < 4.673812389373779f)) { + float _2415 = (_2381 * 0.1666666567325592f) + 0.4123218357563019f; + int _2416 = int(_2415); + float _2418 = _2415 - float((int)(_2416)); + float _2420 = _global_1[_2416]; + float _2423 = _global_1[(_2416 + 1)]; + float _2428 = _2420 * 0.5f; + _2435 = dot(float3((_2418 * _2418), _2418, 1.0f), float3(mad((_global_1[(_2416 + 2)]), 0.5f, mad(_2423, -1.0f, _2428)), (_2423 - _2420), mad(_2423, 0.5f, _2428))); + } else { + _2435 = 4.0f; + } + } + } else { + _2435 = -4.0f; + } + float _2437 = exp2(_2435 * 3.321928024291992f); + float _2440 = log2(select((_2377 <= 0.0f), 6.103515625e-05f, _2377)); + float _2441 = _2440 * 0.3010300099849701f; + do { + if (!(_2441 <= -5.2601776123046875f)) { + if ((bool)(_2441 > -5.2601776123046875f) && (bool)(_2441 < -0.7447274923324585f)) { + float _2449 = (_2440 * 0.19999998807907104f) + 3.494786262512207f; + int _2450 = int(_2449); + float _2452 = _2449 - float((int)(_2450)); + float _2454 = _global_0[_2450]; + float _2457 = _global_0[(_2450 + 1)]; + float _2462 = _2454 * 0.5f; + _2494 = dot(float3((_2452 * _2452), _2452, 1.0f), float3(mad((_global_0[(_2450 + 2)]), 0.5f, mad(_2457, -1.0f, _2462)), (_2457 - _2454), mad(_2457, 0.5f, _2462))); + } else { + if ((bool)(_2441 >= -0.7447274923324585f) && (bool)(_2441 < 4.673812389373779f)) { + float _2474 = (_2440 * 0.1666666567325592f) + 0.4123218357563019f; + int _2475 = int(_2474); + float _2477 = _2474 - float((int)(_2475)); + float _2479 = _global_1[_2475]; + float _2482 = _global_1[(_2475 + 1)]; + float _2487 = _2479 * 0.5f; + _2494 = dot(float3((_2477 * _2477), _2477, 1.0f), float3(mad((_global_1[(_2475 + 2)]), 0.5f, mad(_2482, -1.0f, _2487)), (_2482 - _2479), mad(_2482, 0.5f, _2487))); + } else { + _2494 = 4.0f; + } + } + } else { + _2494 = -4.0f; + } + float _2496 = exp2(_2494 * 3.321928024291992f); + float _2499 = log2(select((_2378 <= 0.0f), 6.103515625e-05f, _2378)); + float _2500 = _2499 * 0.3010300099849701f; + do { + if (!(_2500 <= -5.2601776123046875f)) { + if ((bool)(_2500 > -5.2601776123046875f) && (bool)(_2500 < -0.7447274923324585f)) { + float _2508 = (_2499 * 0.19999998807907104f) + 3.494786262512207f; + int _2509 = int(_2508); + float _2511 = _2508 - float((int)(_2509)); + float _2513 = _global_0[_2509]; + float _2516 = _global_0[(_2509 + 1)]; + float _2521 = _2513 * 0.5f; + _2553 = dot(float3((_2511 * _2511), _2511, 1.0f), float3(mad((_global_0[(_2509 + 2)]), 0.5f, mad(_2516, -1.0f, _2521)), (_2516 - _2513), mad(_2516, 0.5f, _2521))); + } else { + if ((bool)(_2500 >= -0.7447274923324585f) && (bool)(_2500 < 4.673812389373779f)) { + float _2533 = (_2499 * 0.1666666567325592f) + 0.4123218357563019f; + int _2534 = int(_2533); + float _2536 = _2533 - float((int)(_2534)); + float _2538 = _global_1[_2534]; + float _2541 = _global_1[(_2534 + 1)]; + float _2546 = _2538 * 0.5f; + _2553 = dot(float3((_2536 * _2536), _2536, 1.0f), float3(mad((_global_1[(_2534 + 2)]), 0.5f, mad(_2541, -1.0f, _2546)), (_2541 - _2538), mad(_2541, 0.5f, _2546))); + } else { + _2553 = 4.0f; + } + } + } else { + _2553 = -4.0f; + } + float _2555 = exp2(_2553 * 3.321928024291992f); + float _2558 = mad(0.16386906802654266f, _2555, mad(0.14067870378494263f, _2496, (_2437 * 0.6954522132873535f))); + float _2561 = mad(0.0955343171954155f, _2555, mad(0.8596711158752441f, _2496, (_2437 * 0.044794563204050064f))); + float _2564 = mad(1.0015007257461548f, _2555, mad(0.004025210160762072f, _2496, (_2437 * -0.005525882821530104f))); + float _2567 = mad(-0.21492856740951538f, _2564, mad(-0.2365107536315918f, _2561, (_2558 * 1.4514392614364624f))); + float _2570 = mad(-0.09967592358589172f, _2564, mad(1.17622971534729f, _2561, (_2558 * -0.07655377686023712f))); + float _2573 = mad(0.9977163076400757f, _2564, mad(-0.006032449658960104f, _2561, (_2558 * 0.008316148072481155f))); + float _2576 = log2(select((_2567 <= 0.0f), 9.999999747378752e-05f, _2567)); + float _2577 = _2576 * 0.3010300099849701f; + do { + if (!(_2577 <= -3.848327875137329f)) { + if ((bool)(_2577 > -3.848327875137329f) && (bool)(_2577 < 0.6812411546707153f)) { + float _2585 = (_2576 + 12.783867835998535f) * 0.46521204710006714f; + int _2586 = int(_2585); + float _2588 = _2585 - float((int)(_2586)); + float _2590 = _global_4[_2586]; + float _2593 = _global_4[(_2586 + 1)]; + float _2598 = _2590 * 0.5f; + _2633 = dot(float3((_2588 * _2588), _2588, 1.0f), float3(mad((_global_4[(_2586 + 2)]), 0.5f, mad(_2593, -1.0f, _2598)), (_2593 - _2590), mad(_2593, 0.5f, _2598))); + } else { + if ((bool)(_2577 >= 0.6812411546707153f) && (bool)(_2577 < 3.7613162994384766f)) { + float _2610 = (_2576 + -2.2630341053009033f) * 0.6841424107551575f; + int _2611 = int(_2610); + float _2613 = _2610 - float((int)(_2611)); + float _2615 = _global_5[_2611]; + float _2618 = _global_5[(_2611 + 1)]; + float _2623 = _2615 * 0.5f; + _2633 = dot(float3((_2613 * _2613), _2613, 1.0f), float3(mad((_global_5[(_2611 + 2)]), 0.5f, mad(_2618, -1.0f, _2623)), (_2618 - _2615), mad(_2618, 0.5f, _2623))); + } else { + _2633 = ((_2576 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2633 = -2.301030158996582f; + } + float _2635 = exp2(_2633 * 3.321928024291992f); + float _2638 = log2(select((_2570 <= 0.0f), 9.999999747378752e-05f, _2570)); + float _2639 = _2638 * 0.3010300099849701f; + do { + if (!(_2639 <= -3.848327875137329f)) { + if ((bool)(_2639 > -3.848327875137329f) && (bool)(_2639 < 0.6812411546707153f)) { + float _2647 = (_2638 + 12.783867835998535f) * 0.46521204710006714f; + int _2648 = int(_2647); + float _2650 = _2647 - float((int)(_2648)); + float _2652 = _global_4[_2648]; + float _2655 = _global_4[(_2648 + 1)]; + float _2660 = _2652 * 0.5f; + _2695 = dot(float3((_2650 * _2650), _2650, 1.0f), float3(mad((_global_4[(_2648 + 2)]), 0.5f, mad(_2655, -1.0f, _2660)), (_2655 - _2652), mad(_2655, 0.5f, _2660))); + } else { + if ((bool)(_2639 >= 0.6812411546707153f) && (bool)(_2639 < 3.7613162994384766f)) { + float _2672 = (_2638 + -2.2630341053009033f) * 0.6841424107551575f; + int _2673 = int(_2672); + float _2675 = _2672 - float((int)(_2673)); + float _2677 = _global_5[_2673]; + float _2680 = _global_5[(_2673 + 1)]; + float _2685 = _2677 * 0.5f; + _2695 = dot(float3((_2675 * _2675), _2675, 1.0f), float3(mad((_global_5[(_2673 + 2)]), 0.5f, mad(_2680, -1.0f, _2685)), (_2680 - _2677), mad(_2680, 0.5f, _2685))); + } else { + _2695 = ((_2638 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2695 = -2.301030158996582f; + } + float _2697 = exp2(_2695 * 3.321928024291992f); + float _2700 = log2(select((_2573 <= 0.0f), 9.999999747378752e-05f, _2573)); + float _2701 = _2700 * 0.3010300099849701f; + do { + if (!(_2701 <= -3.848327875137329f)) { + if ((bool)(_2701 > -3.848327875137329f) && (bool)(_2701 < 0.6812411546707153f)) { + float _2709 = (_2700 + 12.783867835998535f) * 0.46521204710006714f; + int _2710 = int(_2709); + float _2712 = _2709 - float((int)(_2710)); + float _2714 = _global_4[_2710]; + float _2717 = _global_4[(_2710 + 1)]; + float _2722 = _2714 * 0.5f; + _2757 = dot(float3((_2712 * _2712), _2712, 1.0f), float3(mad((_global_4[(_2710 + 2)]), 0.5f, mad(_2717, -1.0f, _2722)), (_2717 - _2714), mad(_2717, 0.5f, _2722))); + } else { + if ((bool)(_2701 >= 0.6812411546707153f) && (bool)(_2701 < 3.7613162994384766f)) { + float _2734 = (_2700 + -2.2630341053009033f) * 0.6841424107551575f; + int _2735 = int(_2734); + float _2737 = _2734 - float((int)(_2735)); + float _2739 = _global_5[_2735]; + float _2742 = _global_5[(_2735 + 1)]; + float _2747 = _2739 * 0.5f; + _2757 = dot(float3((_2737 * _2737), _2737, 1.0f), float3(mad((_global_5[(_2735 + 2)]), 0.5f, mad(_2742, -1.0f, _2747)), (_2742 - _2739), mad(_2742, 0.5f, _2747))); + } else { + _2757 = ((_2700 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2757 = -2.301030158996582f; + } + float _2759 = exp2(_2757 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _2771 = mad(_36, _2759, mad(_35, _2697, (_2635 * _34))); + _2772 = mad(_39, _2759, mad(_38, _2697, (_2635 * _37))); + _2773 = mad(_42, _2759, mad(_41, _2697, (_2635 * _40))); + } else { + _2771 = _2635; + _2772 = _2697; + _2773 = _2759; + } + float _2783 = exp2(log2(_2771 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2784 = exp2(log2(_2772 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2785 = exp2(log2(_2773 * 9.999999747378752e-05f) * 0.1593017578125f); + _2931 = exp2(log2((1.0f / ((_2783 * 18.6875f) + 1.0f)) * ((_2783 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2932 = exp2(log2((1.0f / ((_2784 * 18.6875f) + 1.0f)) * ((_2784 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2933 = exp2(log2((1.0f / ((_2785 * 18.6875f) + 1.0f)) * ((_2785 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _2818 = mad(0.04736635088920593f, _1461, mad(0.3395121395587921f, _1460, (_1459 * 0.613191545009613f))); + float _2821 = mad(0.01345000695437193f, _1461, mad(0.9163357615470886f, _1460, (_1459 * 0.07020691782236099f))); + float _2824 = mad(0.8696067929267883f, _1461, mad(0.1095672994852066f, _1460, (_1459 * 0.020618872717022896f))); + float _2843 = exp2(log2(mad(_36, _2824, mad(_35, _2821, (_2818 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2844 = exp2(log2(mad(_39, _2824, mad(_38, _2821, (_2818 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _2845 = exp2(log2(mad(_42, _2824, mad(_41, _2821, (_2818 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); + _2931 = exp2(log2((1.0f / ((_2843 * 18.6875f) + 1.0f)) * ((_2843 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2932 = exp2(log2((1.0f / ((_2844 * 18.6875f) + 1.0f)) * ((_2844 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _2933 = exp2(log2((1.0f / ((_2845 * 18.6875f) + 1.0f)) * ((_2845 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _2880 = mad(0.04736635088920593f, _1449, mad(0.3395121395587921f, _1448, (_1447 * 0.613191545009613f))); + float _2883 = mad(0.01345000695437193f, _1449, mad(0.9163357615470886f, _1448, (_1447 * 0.07020691782236099f))); + float _2886 = mad(0.8696067929267883f, _1449, mad(0.1095672994852066f, _1448, (_1447 * 0.020618872717022896f))); + _2931 = mad(_36, _2886, mad(_35, _2883, (_2880 * _34))); + _2932 = mad(_39, _2886, mad(_38, _2883, (_2880 * _37))); + _2933 = mad(_42, _2886, mad(_41, _2883, (_2880 * _40))); + } else { + float _2899 = mad(0.04736635088920593f, _1475, mad(0.3395121395587921f, _1474, (_1473 * 0.613191545009613f))); + float _2902 = mad(0.01345000695437193f, _1475, mad(0.9163357615470886f, _1474, (_1473 * 0.07020691782236099f))); + float _2905 = mad(0.8696067929267883f, _1475, mad(0.1095672994852066f, _1474, (_1473 * 0.020618872717022896f))); + float _2920 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _2931 = exp2(_2920 * log2(mad(_36, _2905, mad(_35, _2902, (_2899 * _34))))); + _2932 = exp2(_2920 * log2(mad(_39, _2905, mad(_38, _2902, (_2899 * _37))))); + _2933 = exp2(_2920 * log2(mad(_42, _2905, mad(_41, _2902, (_2899 * _40))))); + } + } else { + _2931 = _1459; + _2932 = _1460; + _2933 = _1461; + } + } + } + } + } + } + SV_Target.x = (_2931 * 0.9523810148239136f); + SV_Target.y = (_2932 * 0.9523810148239136f); + SV_Target.z = (_2933 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xDE5AD011.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xDE5AD011.ps_6_0.hlsl new file mode 100644 index 000000000..9492ddad3 --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xDE5AD011.ps_6_0.hlsl @@ -0,0 +1,1579 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_039z : packoffset(c039.z); + float cb0_040x : packoffset(c040.x); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + float cb0_073z : packoffset(c073.z); + float cb0_073w : packoffset(c073.w); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +SamplerState s0 : register(s0); + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _7 = TEXCOORD.x + -0.015625f; + float _8 = TEXCOORD.y + -0.015625f; + float _11 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _32; + float _33; + float _34; + float _35; + float _36; + float _37; + float _38; + float _39; + float _40; + float _97; + float _98; + float _99; + float _338; + float _339; + float _340; + float _506; + float _507; + float _529; + float _530; + float _531; + float _676; + float _677; + float _698; + float _699; + float _700; + float _846; + float _847; + float _868; + float _869; + float _870; + float _1005; + float _1006; + float _1027; + float _1028; + float _1029; + float _1124; + float _1157; + float _1171; + float _1235; + float _1372; + float _1373; + float _1374; + float _1517; + float _1518; + float _1519; + float _1533; + float _1544; + float _1555; + float _1706; + float _1717; + float _1839; + float _1872; + float _1886; + float _1925; + float _2018; + float _2077; + float _2136; + float _2219; + float _2284; + float _2349; + float _2366; + float _2367; + float _2368; + float _2472; + float _2505; + float _2519; + float _2558; + float _2651; + float _2710; + float _2769; + float _2849; + float _2911; + float _2973; + float _2987; + float _2988; + float _2989; + float _3145; + float _3146; + float _3147; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _21 = (cb0_074w == 4); + _32 = select(_21, 1.0f, 1.7050515413284302f); + _33 = select(_21, 0.0f, -0.6217905879020691f); + _34 = select(_21, 0.0f, -0.0832584798336029f); + _35 = select(_21, 0.0f, -0.13025718927383423f); + _36 = select(_21, 1.0f, 1.1408027410507202f); + _37 = select(_21, 0.0f, -0.010548528283834457f); + _38 = select(_21, 0.0f, -0.024003278464078903f); + _39 = select(_21, 0.0f, -0.1289687603712082f); + _40 = select(_21, 1.0f, 1.152971863746643f); + } else { + _32 = 0.6954522132873535f; + _33 = 0.14067870378494263f; + _34 = 0.16386906802654266f; + _35 = 0.044794563204050064f; + _36 = 0.8596711158752441f; + _37 = 0.0955343171954155f; + _38 = -0.005525882821530104f; + _39 = 0.004025210160762072f; + _40 = 1.0015007257461548f; + } + } else { + _32 = 1.02579927444458f; + _33 = -0.020052503794431686f; + _34 = -0.0057713985443115234f; + _35 = -0.0022350111976265907f; + _36 = 1.0045825242996216f; + _37 = -0.002352306619286537f; + _38 = -0.005014004185795784f; + _39 = -0.025293385609984398f; + _40 = 1.0304402112960815f; + } + } else { + _32 = 1.379158854484558f; + _33 = -0.3088507056236267f; + _34 = -0.07034677267074585f; + _35 = -0.06933528929948807f; + _36 = 1.0822921991348267f; + _37 = -0.012962047010660172f; + _38 = -0.002159259282052517f; + _39 = -0.045465391129255295f; + _40 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); + float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); + float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); + _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _102 = cb0_047x * 1.0005563497543335f; + float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); + float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); + float _146 = (_130 * 3.0f) / _145; + float _148 = (_140 * 2.0f) / _145; + bool _149 = (cb0_047x < 4000.0f); + float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); + float _155 = cb0_047y * 0.05000000074505806f; + float _158 = _130 - ((_155 * _140) * _154); + float _161 = ((_155 * _130) * _154) + _140; + float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); + float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); + float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); + float _174 = max(_173, 1.000000013351432e-10f); + float _175 = _172 / _174; + float _178 = ((1.0f - _172) - _173) / _174; + float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); + float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); + float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); + float _191 = mad(_189, -0.7501999735832214f, 0.0f); + float _192 = mad(_189, 1.7135000228881836f, 0.0f); + float _193 = mad(_189, 0.03669999912381172f, -0.0f); + float _194 = mad(_190, 0.03889999911189079f, 0.0f); + float _195 = mad(_190, -0.06849999725818634f, 0.0f); + float _196 = mad(_190, 1.0296000242233276f, 0.0f); + float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); + float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); + float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); + float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); + float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); + float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); + float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); + float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); + float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); + float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); + float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); + float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); + float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); + float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); + float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); + float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); + float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); + float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); + float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); + float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); + float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); + float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); + float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); + float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_289, _292, _295); + // bool _298 = (cb0_046x == 0); + bool _298 = ((uint)(tm_flags.x) == 0); + if (_298) { + float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _304 = (_289 / _300) + -1.0f; + float _305 = (_292 / _300) + -1.0f; + float _306 = (_295 / _300) + -1.0f; + // float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); + float _318 = (1.0f - exp2(((_300 * _300) * -4.0f))) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); + + _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); + _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); + _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); + } else { + _338 = _289; + _339 = _292; + _340 = _295; + } + float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _355 = cb0_052w + cb0_057w; + float _369 = cb0_051w * cb0_056w; + float _383 = cb0_050w * cb0_055w; + float _397 = cb0_049w * cb0_054w; + float _411 = cb0_048w * cb0_053w; + float _415 = _338 - _341; + float _416 = _339 - _341; + float _417 = _340 - _341; + float _474 = cb0_073w + 1.0f; + float _478 = (_474 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383)))))); + float _479 = (_474 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383)))))); + float _480 = (_474 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383)))))); + float _484 = max(_478, max(_479, _480)); + float _485 = _484 - min(_478, min(_479, _480)); + if (!(_485 == 0.0f)) { + float _488 = _485 / _484; + if (_478 == _484) { + _506 = ((_479 - _480) / _485); + _507 = _488; + } else { + if (_479 == _484) { + _506 = (((_480 - _478) / _485) + 2.0f); + _507 = _488; + } else { + if (_480 == _484) { + _506 = (((_478 - _479) / _485) + 4.0f); + _507 = _488; + } else { + _506 = 0.0f; + _507 = _488; + } + } + } + } else { + _506 = 0.0f; + _507 = 0.0f; + } + float _509 = cb0_073z + _506; + float _510 = floor(_509); + float _511 = _509 - _510; + float _512 = 1.0f - _507; + float _514 = 1.0f - (_511 * _507); + float _517 = 1.0f - ((1.0f - _511) * _507); + if (!(_510 == 0.0f)) { + if (!(_510 == 1.0f)) { + if (!(_510 == 2.0f)) { + if (!(_510 == 3.0f)) { + if (!(_510 == 4.0f)) { + _529 = 1.0f; + _530 = _512; + _531 = _514; + } else { + _529 = _517; + _530 = _512; + _531 = 1.0f; + } + } else { + _529 = _512; + _530 = _514; + _531 = 1.0f; + } + } else { + _529 = _512; + _530 = 1.0f; + _531 = _517; + } + } else { + _529 = _514; + _530 = 1.0f; + _531 = _512; + } + } else { + _529 = 1.0f; + _530 = _517; + _531 = _512; + } + float _537 = saturate(_341 / cb0_073x); + float _541 = (_537 * _537) * (3.0f - (_537 * 2.0f)); + float _542 = 1.0f - _541; + float _551 = cb0_052w + cb0_067w; + float _560 = cb0_051w * cb0_066w; + float _569 = cb0_050w * cb0_065w; + float _578 = cb0_049w * cb0_064w; + float _587 = cb0_048w * cb0_063w; + float _648 = (_474 * (((cb0_052x + cb0_067x) + _551) + (((cb0_051x * cb0_066x) * _560) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _578) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _587) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _569)))))); + float _649 = (_474 * (((cb0_052y + cb0_067y) + _551) + (((cb0_051y * cb0_066y) * _560) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _578) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _587) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _569)))))); + float _650 = (_474 * (((cb0_052z + cb0_067z) + _551) + (((cb0_051z * cb0_066z) * _560) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _578) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _587) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _569)))))); + float _654 = max(_648, max(_649, _650)); + float _655 = _654 - min(_648, min(_649, _650)); + if (!(_655 == 0.0f)) { + float _658 = _655 / _654; + if (_648 == _654) { + _676 = ((_649 - _650) / _655); + _677 = _658; + } else { + if (_649 == _654) { + _676 = (((_650 - _648) / _655) + 2.0f); + _677 = _658; + } else { + if (_650 == _654) { + _676 = (((_648 - _649) / _655) + 4.0f); + _677 = _658; + } else { + _676 = 0.0f; + _677 = _658; + } + } + } + } else { + _676 = 0.0f; + _677 = 0.0f; + } + float _678 = cb0_073z + _676; + float _679 = floor(_678); + float _680 = _678 - _679; + float _681 = 1.0f - _677; + float _683 = 1.0f - (_680 * _677); + float _686 = 1.0f - ((1.0f - _680) * _677); + if (!(_679 == 0.0f)) { + if (!(_679 == 1.0f)) { + if (!(_679 == 2.0f)) { + if (!(_679 == 3.0f)) { + if (!(_679 == 4.0f)) { + _698 = 1.0f; + _699 = _681; + _700 = _683; + } else { + _698 = _686; + _699 = _681; + _700 = 1.0f; + } + } else { + _698 = _681; + _699 = _683; + _700 = 1.0f; + } + } else { + _698 = _681; + _699 = 1.0f; + _700 = _686; + } + } else { + _698 = _683; + _699 = 1.0f; + _700 = _681; + } + } else { + _698 = 1.0f; + _699 = _686; + _700 = _681; + } + float _708 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); + float _712 = (_708 * _708) * (3.0f - (_708 * 2.0f)); + float _721 = cb0_052w + cb0_062w; + float _730 = cb0_051w * cb0_061w; + float _739 = cb0_050w * cb0_060w; + float _748 = cb0_049w * cb0_059w; + float _757 = cb0_048w * cb0_058w; + float _818 = (_474 * (((cb0_052x + cb0_062x) + _721) + (((cb0_051x * cb0_061x) * _730) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _748) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _757) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _739)))))); + float _819 = (_474 * (((cb0_052y + cb0_062y) + _721) + (((cb0_051y * cb0_061y) * _730) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _748) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _757) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _739)))))); + float _820 = (_474 * (((cb0_052z + cb0_062z) + _721) + (((cb0_051z * cb0_061z) * _730) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _748) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _757) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _739)))))); + float _824 = max(_818, max(_819, _820)); + float _825 = _824 - min(_818, min(_819, _820)); + if (!(_825 == 0.0f)) { + float _828 = _825 / _824; + if (_818 == _824) { + _846 = ((_819 - _820) / _825); + _847 = _828; + } else { + if (_819 == _824) { + _846 = (((_820 - _818) / _825) + 2.0f); + _847 = _828; + } else { + if (_820 == _824) { + _846 = (((_818 - _819) / _825) + 4.0f); + _847 = _828; + } else { + _846 = 0.0f; + _847 = _828; + } + } + } + } else { + _846 = 0.0f; + _847 = 0.0f; + } + float _848 = cb0_073z + _846; + float _849 = floor(_848); + float _850 = _848 - _849; + float _851 = 1.0f - _847; + float _853 = 1.0f - (_850 * _847); + float _856 = 1.0f - ((1.0f - _850) * _847); + if (!(_849 == 0.0f)) { + if (!(_849 == 1.0f)) { + if (!(_849 == 2.0f)) { + if (!(_849 == 3.0f)) { + if (!(_849 == 4.0f)) { + _868 = 1.0f; + _869 = _851; + _870 = _853; + } else { + _868 = _856; + _869 = _851; + _870 = 1.0f; + } + } else { + _868 = _851; + _869 = _853; + _870 = 1.0f; + } + } else { + _868 = _851; + _869 = 1.0f; + _870 = _856; + } + } else { + _868 = _853; + _869 = 1.0f; + _870 = _851; + } + } else { + _868 = 1.0f; + _869 = _856; + _870 = _851; + } + float _875 = _824 * (_541 - _712); + float _883 = (((_698 * _654) * _712) + ((_529 * _484) * _542)) + (_875 * _868); + float _885 = (((_699 * _654) * _712) + ((_530 * _484) * _542)) + (_875 * _869); + float _887 = (((_700 * _654) * _712) + ((_531 * _484) * _542)) + (_875 * _870); + float _913 = dot(float3(_883, _885, _887), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _977 = (_474 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_883 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); + float _978 = (_474 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_885 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); + float _979 = (_474 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_887 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); + float _983 = max(_977, max(_978, _979)); + float _984 = _983 - min(_977, min(_978, _979)); + if (!(_984 == 0.0f)) { + float _987 = _984 / _983; + if (_977 == _983) { + _1005 = ((_978 - _979) / _984); + _1006 = _987; + } else { + if (_978 == _983) { + _1005 = (((_979 - _977) / _984) + 2.0f); + _1006 = _987; + } else { + if (_979 == _983) { + _1005 = (((_977 - _978) / _984) + 4.0f); + _1006 = _987; + } else { + _1005 = 0.0f; + _1006 = _987; + } + } + } + } else { + _1005 = 0.0f; + _1006 = 0.0f; + } + float _1007 = cb0_073z + _1005; + float _1008 = floor(_1007); + float _1009 = _1007 - _1008; + float _1010 = 1.0f - _1006; + float _1012 = 1.0f - (_1009 * _1006); + float _1015 = 1.0f - ((1.0f - _1009) * _1006); + if (!(_1008 == 0.0f)) { + if (!(_1008 == 1.0f)) { + if (!(_1008 == 2.0f)) { + if (!(_1008 == 3.0f)) { + if (!(_1008 == 4.0f)) { + _1027 = 1.0f; + _1028 = _1010; + _1029 = _1012; + } else { + _1027 = _1015; + _1028 = _1010; + _1029 = 1.0f; + } + } else { + _1027 = _1010; + _1028 = _1012; + _1029 = 1.0f; + } + } else { + _1027 = _1010; + _1028 = 1.0f; + _1029 = _1015; + } + } else { + _1027 = _1012; + _1028 = 1.0f; + _1029 = _1010; + } + } else { + _1027 = 1.0f; + _1028 = _1015; + _1029 = _1010; + } + float _1030 = _1027 * _983; + float _1031 = _1028 * _983; + float _1032 = _1029 * _983; + float _1035 = mad(-0.0832584798336029f, _1032, mad(-0.6217905879020691f, _1031, (_1030 * 1.7050515413284302f))); + float _1038 = mad(-0.010548528283834457f, _1032, mad(1.1408027410507202f, _1031, (_1030 * -0.13025718927383423f))); + float _1041 = mad(1.152971863746643f, _1032, mad(-0.1289687603712082f, _1031, (_1030 * -0.024003278464078903f))); + float _1057 = ((mad(0.061360642313957214f, _1032, mad(-4.540197551250458e-09f, _1031, (_1030 * 0.9386394023895264f))) - _1030) * cb0_075x) + _1030; + float _1058 = ((mad(0.169205904006958f, _1032, mad(0.8307942152023315f, _1031, (_1030 * 6.775371730327606e-08f))) - _1031) * cb0_075x) + _1031; + float _1059 = (mad(-2.3283064365386963e-10f, _1031, (_1030 * -9.313225746154785e-10f)) * cb0_075x) + _1032; + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _1069 = mad(0.16386905312538147f, _1059, mad(0.14067868888378143f, _1058, (_1057 * 0.6954522132873535f))); + float _1072 = mad(0.0955343246459961f, _1059, mad(0.8596711158752441f, _1058, (_1057 * 0.044794581830501556f))); + float _1075 = mad(1.0015007257461548f, _1059, mad(0.004025210160762072f, _1058, (_1057 * -0.005525882821530104f))); + float _1079 = max(max(_1069, _1072), _1075); + float _1084 = (max(_1079, 1.000000013351432e-10f) - max(min(min(_1069, _1072), _1075), 1.000000013351432e-10f)) / max(_1079, 0.009999999776482582f); + float _1097 = ((_1072 + _1069) + _1075) + (sqrt((((_1075 - _1072) * _1075) + ((_1072 - _1069) * _1072)) + ((_1069 - _1075) * _1069)) * 1.75f); + float _1098 = _1097 * 0.3333333432674408f; + float _1099 = _1084 + -0.4000000059604645f; + float _1100 = _1099 * 5.0f; + float _1104 = max((1.0f - abs(_1099 * 2.5f)), 0.0f); + float _1115 = ((float((int)(((int)(uint)((bool)(_1100 > 0.0f))) - ((int)(uint)((bool)(_1100 < 0.0f))))) * (1.0f - (_1104 * _1104))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1098 <= 0.0533333346247673f)) { + if (!(_1098 >= 0.1599999964237213f)) { + _1124 = (((0.23999999463558197f / _1097) + -0.5f) * _1115); + } else { + _1124 = 0.0f; + } + } else { + _1124 = _1115; + } + float _1125 = _1124 + 1.0f; + float _1126 = _1125 * _1069; + float _1127 = _1125 * _1072; + float _1128 = _1125 * _1075; + do { + if (!((bool)(_1126 == _1127) && (bool)(_1127 == _1128))) { + float _1135 = ((_1126 * 2.0f) - _1127) - _1128; + float _1138 = ((_1072 - _1075) * 1.7320507764816284f) * _1125; + float _1140 = atan(_1138 / _1135); + bool _1143 = (_1135 < 0.0f); + bool _1144 = (_1135 == 0.0f); + bool _1145 = (_1138 >= 0.0f); + bool _1146 = (_1138 < 0.0f); + _1157 = select((_1145 && _1144), 90.0f, select((_1146 && _1144), -90.0f, (select((_1146 && _1143), (_1140 + -3.1415927410125732f), select((_1145 && _1143), (_1140 + 3.1415927410125732f), _1140)) * 57.2957763671875f))); + } else { + _1157 = 0.0f; + } + float _1162 = min(max(select((_1157 < 0.0f), (_1157 + 360.0f), _1157), 0.0f), 360.0f); + do { + if (_1162 < -180.0f) { + _1171 = (_1162 + 360.0f); + } else { + if (_1162 > 180.0f) { + _1171 = (_1162 + -360.0f); + } else { + _1171 = _1162; + } + } + float _1175 = saturate(1.0f - abs(_1171 * 0.014814814552664757f)); + float _1179 = (_1175 * _1175) * (3.0f - (_1175 * 2.0f)); + float _1185 = ((_1179 * _1179) * ((_1084 * 0.18000000715255737f) * (0.029999999329447746f - _1126))) + _1126; + float _1195 = max(0.0f, mad(-0.21492856740951538f, _1128, mad(-0.2365107536315918f, _1127, (_1185 * 1.4514392614364624f)))); + float _1196 = max(0.0f, mad(-0.09967592358589172f, _1128, mad(1.17622971534729f, _1127, (_1185 * -0.07655377686023712f)))); + float _1197 = max(0.0f, mad(0.9977163076400757f, _1128, mad(-0.006032449658960104f, _1127, (_1185 * 0.008316148072481155f)))); + float _1198 = dot(float3(_1195, _1196, _1197), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1212 = (cb0_036w + 1.0f) - cb0_036y; + float _1215 = cb0_037x + 1.0f; + float _1217 = _1215 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _1235 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _1226 = (cb0_036w + 0.18000000715255737f) / _1212; + _1235 = (-0.7447274923324585f - ((log2(_1226 / (2.0f - _1226)) * 0.3465735912322998f) * (_1212 / cb0_036x))); + } + float _1238 = ((1.0f - cb0_036y) / cb0_036x) - _1235; + float _1240 = (cb0_036z / cb0_036x) - _1238; + float _1244 = log2(lerp(_1198, _1195, 0.9599999785423279f)) * 0.3010300099849701f; + float _1245 = log2(lerp(_1198, _1196, 0.9599999785423279f)) * 0.3010300099849701f; + float _1246 = log2(lerp(_1198, _1197, 0.9599999785423279f)) * 0.3010300099849701f; + float _1250 = cb0_036x * (_1244 + _1238); + float _1251 = cb0_036x * (_1245 + _1238); + float _1252 = cb0_036x * (_1246 + _1238); + float _1253 = _1212 * 2.0f; + float _1255 = (cb0_036x * -2.0f) / _1212; + float _1256 = _1244 - _1235; + float _1257 = _1245 - _1235; + float _1258 = _1246 - _1235; + float _1277 = _1217 * 2.0f; + float _1279 = (cb0_036x * 2.0f) / _1217; + float _1304 = select((_1244 < _1235), ((_1253 / (exp2((_1256 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1250); + float _1305 = select((_1245 < _1235), ((_1253 / (exp2((_1257 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1251); + float _1306 = select((_1246 < _1235), ((_1253 / (exp2((_1258 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1252); + float _1313 = _1240 - _1235; + float _1317 = saturate(_1256 / _1313); + float _1318 = saturate(_1257 / _1313); + float _1319 = saturate(_1258 / _1313); + bool _1320 = (_1240 < _1235); + float _1324 = select(_1320, (1.0f - _1317), _1317); + float _1325 = select(_1320, (1.0f - _1318), _1318); + float _1326 = select(_1320, (1.0f - _1319), _1319); + float _1345 = (((_1324 * _1324) * (select((_1244 > _1240), (_1215 - (_1277 / (exp2(((_1244 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1250) - _1304)) * (3.0f - (_1324 * 2.0f))) + _1304; + float _1346 = (((_1325 * _1325) * (select((_1245 > _1240), (_1215 - (_1277 / (exp2(((_1245 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1251) - _1305)) * (3.0f - (_1325 * 2.0f))) + _1305; + float _1347 = (((_1326 * _1326) * (select((_1246 > _1240), (_1215 - (_1277 / (exp2(((_1246 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; + float _1348 = dot(float3(_1345, _1346, _1347), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1372 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1345, 0.9300000071525574f))) - _1057)) + _1057); + _1373 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1346, 0.9300000071525574f))) - _1058)) + _1058); + _1374 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1347, 0.9300000071525574f))) - _1059)) + _1059); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1372 = _1057; + _1373 = _1058; + _1374 = _1059; + } + float _1390 = ((mad(-0.06537103652954102f, _1374, mad(1.451815478503704e-06f, _1373, (_1372 * 1.065374732017517f))) - _1372) * cb0_075x) + _1372; + float _1391 = ((mad(-0.20366770029067993f, _1374, mad(1.2036634683609009f, _1373, (_1372 * -2.57161445915699e-07f))) - _1373) * cb0_075x) + _1373; + float _1392 = ((mad(0.9999996423721313f, _1374, mad(2.0954757928848267e-08f, _1373, (_1372 * 1.862645149230957e-08f))) - _1374) * cb0_075x) + _1374; + [branch] + if (!_298) { + float _1435 = 1.0f / (dot(float3(_1035, _1038, _1041), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1445 = max(0.0f, (((_1435 * cb0_035x) + cb0_034x) * dot(float3(_1035, _1038, _1041), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1446 = max(0.0f, (((_1435 * cb0_035y) + cb0_034y) * dot(float3(_1035, _1038, _1041), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1447 = max(0.0f, (((_1435 * cb0_035z) + cb0_034z) * dot(float3(_1035, _1038, _1041), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1453 = max(0.0f, (cb0_031x - _1445)); + float _1454 = max(0.0f, (cb0_031x - _1446)); + float _1455 = max(0.0f, (cb0_031x - _1447)); + float _1457 = max(_1445, cb0_031z); + float _1458 = max(_1446, cb0_031z); + float _1459 = max(_1447, cb0_031z); + _1517 = (((((((cb0_032x * _1457) + cb0_032y) * (1.0f / (cb0_031w + _1457))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1445, cb0_031x), cb0_031z))) + ((cb0_028w * _1453) * (1.0f / (cb0_031y + _1453)))) + cb0_029w); + _1518 = ((((((1.0f / (cb0_031w + _1458)) * ((cb0_032x * _1458) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1446, cb0_031x), cb0_031z))) + ((cb0_028w * _1454) * (1.0f / (cb0_031y + _1454)))) + cb0_029w); + _1519 = ((((((1.0f / (cb0_031w + _1459)) * ((cb0_032x * _1459) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1447, cb0_031x), cb0_031z))) + ((cb0_028w * _1455) * (1.0f / (cb0_031y + _1455)))) + cb0_029w); + } else { + _1517 = max(0.0f, mad(-0.0832584798336029f, _1392, mad(-0.6217905879020691f, _1391, (_1390 * 1.7050515413284302f)))); + _1518 = max(0.0f, mad(-0.010548528283834457f, _1392, mad(1.1408027410507202f, _1391, (_1390 * -0.13025718927383423f)))); + _1519 = max(0.0f, mad(1.152971863746643f, _1392, mad(-0.1289687603712082f, _1391, (_1390 * -0.024003278464078903f)))); + } + float _1520 = (_1517); + float _1521 = (_1518); + float _1522 = (_1519); + + float lut_sampling_scale = wuwa::lut::PrepareLinearInput(_1520, _1521, _1522); + + // Encode the scaled linear color to sRGB for LUT addressing. + if (_1520 < 0.0031306699384003878f) { + _1533 = (_1520 * 12.920000076293945f); + } else { + _1533 = (((pow(_1520, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1521 < 0.0031306699384003878f) { + _1544 = (_1521 * 12.920000076293945f); + } else { + _1544 = (((pow(_1521, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1522 < 0.0031306699384003878f) { + _1555 = (_1522 * 12.920000076293945f); + } else { + _1555 = (((pow(_1522, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + + float lut_sample_max_channel = wuwa::lut::NormalizeEncodedInput(_1533, _1544, _1555); + + float _1559 = (_1544 * 0.9375f) + 0.03125f; + float _1562 = cb0_040x * _1533; + float _1563 = cb0_040x * _1544; + float _1564 = cb0_040x * _1555; + float _1567 = _1555 * 15.0f; + float _1568 = floor(_1567); + float _1569 = _1567 - _1568; + float _1571 = (((_1533 * 0.9375f) + 0.03125f) + _1568) * 0.0625f; + float4 _1572 = t0.Sample(s0, float2(_1571, _1559)); + float4 _1577 = t0.Sample(s0, float2((_1571 + 0.0625f), _1559)); + float _1595 = cb0_038w * cb0_039z; + float _1602 = max(6.103519990574569e-05f, ((_1595 * ((_1572.x - _1562) + ((_1577.x - _1572.x) * _1569))) + _1562)); + float _1603 = max(6.103519990574569e-05f, ((_1595 * ((_1572.y - _1563) + ((_1577.y - _1572.y) * _1569))) + _1563)); + float _1604 = max(6.103519990574569e-05f, ((_1595 * ((_1572.z - _1564) + ((_1577.z - _1572.z) * _1569))) + _1564)); + + // Restore compressed range before sRGB->linear decode. + wuwa::lut::ApplySampleMaxChannel(_1602, _1603, _1604, lut_sample_max_channel); + + float _1626 = select((_1602 > 0.040449999272823334f), exp2(log2((_1602 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1602 * 0.07739938050508499f)); + float _1627 = select((_1603 > 0.040449999272823334f), exp2(log2((_1603 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1603 * 0.07739938050508499f)); + float _1628 = select((_1604 > 0.040449999272823334f), exp2(log2((_1604 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1604 * 0.07739938050508499f)); + + wuwa::lut::ApplyInverseSamplingScale(_1626, _1627, _1628, lut_sampling_scale); + float _1654 = cb0_044y * (((cb0_026y + (cb0_026x * _1626)) * _1626) + cb0_026z); + float _1655 = cb0_044z * (((cb0_026y + (cb0_026x * _1627)) * _1627) + cb0_026z); + float _1656 = cb0_044w * (((cb0_026y + (cb0_026x * _1628)) * _1628) + cb0_026z); + float _1663 = ((cb0_045x - _1654) * cb0_045w) + _1654; + float _1664 = ((cb0_045y - _1655) * cb0_045w) + _1655; + float _1665 = ((cb0_045z - _1656) * cb0_045w) + _1656; + wuwa::lut::ApplyLutStrength(_1663, _1664, _1665, ungraded); + float _1666 = cb0_044y * _1035; + float _1667 = cb0_044z * _1038; + float _1668 = cb0_044w * _1041; + float _1675 = ((cb0_045x - _1666) * cb0_045w) + _1666; + float _1676 = ((cb0_045y - _1667) * cb0_045w) + _1667; + float _1677 = ((cb0_045z - _1668) * cb0_045w) + _1668; + float _1689 = exp2(log2(max(0.0f, _1663)) * cb0_027y); + float _1690 = exp2(log2(max(0.0f, _1664)) * cb0_027y); + float _1691 = exp2(log2(max(0.0f, _1665)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1689, _1690, _1691)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1689 < 0.0031306699384003878f) { + _1706 = (_1689 * 12.920000076293945f); + } else { + _1706 = (((pow(_1689, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1690 < 0.0031306699384003878f) { + _1717 = (_1690 * 12.920000076293945f); + } else { + _1717 = (((pow(_1690, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1691 < 0.0031306699384003878f) { + _3145 = _1706; + _3146 = _1717; + _3147 = (_1691 * 12.920000076293945f); + } else { + _3145 = _1706; + _3146 = _1717; + _3147 = (((pow(_1691, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1732 = mad(0.04736635088920593f, _1691, mad(0.3395121395587921f, _1690, (_1689 * 0.613191545009613f))); + float _1735 = mad(0.01345000695437193f, _1691, mad(0.9163357615470886f, _1690, (_1689 * 0.07020691782236099f))); + float _1738 = mad(0.8696067929267883f, _1691, mad(0.1095672994852066f, _1690, (_1689 * 0.020618872717022896f))); + float _1748 = max(6.103519990574569e-05f, mad(_34, _1738, mad(_33, _1735, (_1732 * _32)))); + float _1749 = max(6.103519990574569e-05f, mad(_37, _1738, mad(_36, _1735, (_1732 * _35)))); + float _1750 = max(6.103519990574569e-05f, mad(_40, _1738, mad(_39, _1735, (_1732 * _38)))); + _3145 = min((_1748 * 4.5f), ((exp2(log2(max(_1748, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3146 = min((_1749 * 4.5f), ((exp2(log2(max(_1749, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3147 = min((_1750 * 4.5f), ((exp2(log2(max(_1750, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1777 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1777) { + float _1780 = _1676 * 3.0f; + float _1781 = _1677 * 3.0f; + float _1784 = mad(0.17733481526374817f, _1781, mad(0.38297808170318604f, _1780, (_1675 * 1.31910240650177f))); + float _1787 = mad(0.09676162153482437f, _1781, mad(0.8134231567382812f, _1780, (_1675 * 0.2693769633769989f))); + float _1790 = mad(0.870704174041748f, _1781, mad(0.11154405772686005f, _1780, (_1675 * 0.05263196676969528f))); + float _1794 = max(max(_1784, _1787), _1790); + float _1799 = (max(_1794, 1.000000013351432e-10f) - max(min(min(_1784, _1787), _1790), 1.000000013351432e-10f)) / max(_1794, 0.009999999776482582f); + float _1812 = ((_1787 + _1784) + _1790) + (sqrt((((_1790 - _1787) * _1790) + ((_1787 - _1784) * _1787)) + ((_1784 - _1790) * _1784)) * 1.75f); + float _1813 = _1812 * 0.3333333432674408f; + float _1814 = _1799 + -0.4000000059604645f; + float _1815 = _1814 * 5.0f; + float _1819 = max((1.0f - abs(_1814 * 2.5f)), 0.0f); + float _1830 = ((float((int)(((int)(uint)((bool)(_1815 > 0.0f))) - ((int)(uint)((bool)(_1815 < 0.0f))))) * (1.0f - (_1819 * _1819))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1813 <= 0.0533333346247673f)) { + if (!(_1813 >= 0.1599999964237213f)) { + _1839 = (((0.23999999463558197f / _1812) + -0.5f) * _1830); + } else { + _1839 = 0.0f; + } + } else { + _1839 = _1830; + } + float _1840 = _1839 + 1.0f; + float _1841 = _1840 * _1784; + float _1842 = _1840 * _1787; + float _1843 = _1840 * _1790; + do { + if (!((bool)(_1841 == _1842) && (bool)(_1842 == _1843))) { + float _1850 = ((_1841 * 2.0f) - _1842) - _1843; + float _1853 = ((_1787 - _1790) * 1.7320507764816284f) * _1840; + float _1855 = atan(_1853 / _1850); + bool _1858 = (_1850 < 0.0f); + bool _1859 = (_1850 == 0.0f); + bool _1860 = (_1853 >= 0.0f); + bool _1861 = (_1853 < 0.0f); + _1872 = select((_1860 && _1859), 90.0f, select((_1861 && _1859), -90.0f, (select((_1861 && _1858), (_1855 + -3.1415927410125732f), select((_1860 && _1858), (_1855 + 3.1415927410125732f), _1855)) * 57.2957763671875f))); + } else { + _1872 = 0.0f; + } + float _1877 = min(max(select((_1872 < 0.0f), (_1872 + 360.0f), _1872), 0.0f), 360.0f); + do { + if (_1877 < -180.0f) { + _1886 = (_1877 + 360.0f); + } else { + if (_1877 > 180.0f) { + _1886 = (_1877 + -360.0f); + } else { + _1886 = _1877; + } + } + do { + if ((bool)(_1886 > -67.5f) && (bool)(_1886 < 67.5f)) { + float _1892 = (_1886 + 67.5f) * 0.029629629105329514f; + int _1893 = int(_1892); + float _1895 = _1892 - float((int)(_1893)); + float _1896 = _1895 * _1895; + float _1897 = _1896 * _1895; + if (_1893 == 3) { + _1925 = (((0.1666666716337204f - (_1895 * 0.5f)) + (_1896 * 0.5f)) - (_1897 * 0.1666666716337204f)); + } else { + if (_1893 == 2) { + _1925 = ((0.6666666865348816f - _1896) + (_1897 * 0.5f)); + } else { + if (_1893 == 1) { + _1925 = (((_1897 * -0.5f) + 0.1666666716337204f) + ((_1896 + _1895) * 0.5f)); + } else { + _1925 = select((_1893 == 0), (_1897 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1925 = 0.0f; + } + float _1934 = min(max(((((_1799 * 0.27000001072883606f) * (0.029999999329447746f - _1841)) * _1925) + _1841), 0.0f), 65535.0f); + float _1935 = min(max(_1842, 0.0f), 65535.0f); + float _1936 = min(max(_1843, 0.0f), 65535.0f); + float _1949 = min(max(mad(-0.21492856740951538f, _1936, mad(-0.2365107536315918f, _1935, (_1934 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _1950 = min(max(mad(-0.09967592358589172f, _1936, mad(1.17622971534729f, _1935, (_1934 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _1951 = min(max(mad(0.9977163076400757f, _1936, mad(-0.006032449658960104f, _1935, (_1934 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _1952 = dot(float3(_1949, _1950, _1951), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1959 = ((_1949 - _1952) * 0.9599999785423279f) + _1952; + float _1960 = ((_1950 - _1952) * 0.9599999785423279f) + _1952; + float _1961 = ((_1951 - _1952) * 0.9599999785423279f) + _1952; + float _1964 = log2(select((_1959 <= 0.0f), 6.103515625e-05f, _1959)); + float _1965 = _1964 * 0.3010300099849701f; + do { + if (!(_1965 <= -5.2601776123046875f)) { + if ((bool)(_1965 > -5.2601776123046875f) && (bool)(_1965 < -0.7447274923324585f)) { + float _1973 = (_1964 * 0.19999998807907104f) + 3.494786262512207f; + int _1974 = int(_1973); + float _1976 = _1973 - float((int)(_1974)); + float _1978 = _global_0[_1974]; + float _1981 = _global_0[(_1974 + 1)]; + float _1986 = _1978 * 0.5f; + _2018 = dot(float3((_1976 * _1976), _1976, 1.0f), float3(mad((_global_0[(_1974 + 2)]), 0.5f, mad(_1981, -1.0f, _1986)), (_1981 - _1978), mad(_1981, 0.5f, _1986))); + } else { + if ((bool)(_1965 >= -0.7447274923324585f) && (bool)(_1965 < 4.673812389373779f)) { + float _1998 = (_1964 * 0.1666666567325592f) + 0.4123218357563019f; + int _1999 = int(_1998); + float _2001 = _1998 - float((int)(_1999)); + float _2003 = _global_1[_1999]; + float _2006 = _global_1[(_1999 + 1)]; + float _2011 = _2003 * 0.5f; + _2018 = dot(float3((_2001 * _2001), _2001, 1.0f), float3(mad((_global_1[(_1999 + 2)]), 0.5f, mad(_2006, -1.0f, _2011)), (_2006 - _2003), mad(_2006, 0.5f, _2011))); + } else { + _2018 = 4.0f; + } + } + } else { + _2018 = -4.0f; + } + float _2020 = exp2(_2018 * 3.321928024291992f); + float _2023 = log2(select((_1960 <= 0.0f), 6.103515625e-05f, _1960)); + float _2024 = _2023 * 0.3010300099849701f; + do { + if (!(_2024 <= -5.2601776123046875f)) { + if ((bool)(_2024 > -5.2601776123046875f) && (bool)(_2024 < -0.7447274923324585f)) { + float _2032 = (_2023 * 0.19999998807907104f) + 3.494786262512207f; + int _2033 = int(_2032); + float _2035 = _2032 - float((int)(_2033)); + float _2037 = _global_0[_2033]; + float _2040 = _global_0[(_2033 + 1)]; + float _2045 = _2037 * 0.5f; + _2077 = dot(float3((_2035 * _2035), _2035, 1.0f), float3(mad((_global_0[(_2033 + 2)]), 0.5f, mad(_2040, -1.0f, _2045)), (_2040 - _2037), mad(_2040, 0.5f, _2045))); + } else { + if ((bool)(_2024 >= -0.7447274923324585f) && (bool)(_2024 < 4.673812389373779f)) { + float _2057 = (_2023 * 0.1666666567325592f) + 0.4123218357563019f; + int _2058 = int(_2057); + float _2060 = _2057 - float((int)(_2058)); + float _2062 = _global_1[_2058]; + float _2065 = _global_1[(_2058 + 1)]; + float _2070 = _2062 * 0.5f; + _2077 = dot(float3((_2060 * _2060), _2060, 1.0f), float3(mad((_global_1[(_2058 + 2)]), 0.5f, mad(_2065, -1.0f, _2070)), (_2065 - _2062), mad(_2065, 0.5f, _2070))); + } else { + _2077 = 4.0f; + } + } + } else { + _2077 = -4.0f; + } + float _2079 = exp2(_2077 * 3.321928024291992f); + float _2082 = log2(select((_1961 <= 0.0f), 6.103515625e-05f, _1961)); + float _2083 = _2082 * 0.3010300099849701f; + do { + if (!(_2083 <= -5.2601776123046875f)) { + if ((bool)(_2083 > -5.2601776123046875f) && (bool)(_2083 < -0.7447274923324585f)) { + float _2091 = (_2082 * 0.19999998807907104f) + 3.494786262512207f; + int _2092 = int(_2091); + float _2094 = _2091 - float((int)(_2092)); + float _2096 = _global_0[_2092]; + float _2099 = _global_0[(_2092 + 1)]; + float _2104 = _2096 * 0.5f; + _2136 = dot(float3((_2094 * _2094), _2094, 1.0f), float3(mad((_global_0[(_2092 + 2)]), 0.5f, mad(_2099, -1.0f, _2104)), (_2099 - _2096), mad(_2099, 0.5f, _2104))); + } else { + if ((bool)(_2083 >= -0.7447274923324585f) && (bool)(_2083 < 4.673812389373779f)) { + float _2116 = (_2082 * 0.1666666567325592f) + 0.4123218357563019f; + int _2117 = int(_2116); + float _2119 = _2116 - float((int)(_2117)); + float _2121 = _global_1[_2117]; + float _2124 = _global_1[(_2117 + 1)]; + float _2129 = _2121 * 0.5f; + _2136 = dot(float3((_2119 * _2119), _2119, 1.0f), float3(mad((_global_1[(_2117 + 2)]), 0.5f, mad(_2124, -1.0f, _2129)), (_2124 - _2121), mad(_2124, 0.5f, _2129))); + } else { + _2136 = 4.0f; + } + } + } else { + _2136 = -4.0f; + } + float _2138 = exp2(_2136 * 3.321928024291992f); + float _2141 = mad(0.16386906802654266f, _2138, mad(0.14067870378494263f, _2079, (_2020 * 0.6954522132873535f))); + float _2144 = mad(0.0955343171954155f, _2138, mad(0.8596711158752441f, _2079, (_2020 * 0.044794563204050064f))); + float _2147 = mad(1.0015007257461548f, _2138, mad(0.004025210160762072f, _2079, (_2020 * -0.005525882821530104f))); + float _2150 = mad(-0.21492856740951538f, _2147, mad(-0.2365107536315918f, _2144, (_2141 * 1.4514392614364624f))); + float _2153 = mad(-0.09967592358589172f, _2147, mad(1.17622971534729f, _2144, (_2141 * -0.07655377686023712f))); + float _2156 = mad(0.9977163076400757f, _2147, mad(-0.006032449658960104f, _2144, (_2141 * 0.008316148072481155f))); + float _2159 = log2(select((_2150 <= 0.0f), 9.999999747378752e-05f, _2150)); + float _2160 = _2159 * 0.3010300099849701f; + do { + if (!(!(_2160 <= -3.848327875137329f))) { + _2219 = ((_2159 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2160 > -3.848327875137329f) && (bool)(_2160 < 0.6812411546707153f)) { + float _2171 = (_2159 + 12.783867835998535f) * 0.46521204710006714f; + int _2172 = int(_2171); + float _2174 = _2171 - float((int)(_2172)); + float _2176 = _global_2[_2172]; + float _2179 = _global_2[(_2172 + 1)]; + float _2184 = _2176 * 0.5f; + _2219 = dot(float3((_2174 * _2174), _2174, 1.0f), float3(mad((_global_2[(_2172 + 2)]), 0.5f, mad(_2179, -1.0f, _2184)), (_2179 - _2176), mad(_2179, 0.5f, _2184))); + } else { + if ((bool)(_2160 >= 0.6812411546707153f) && (bool)(_2160 < 3.653702974319458f)) { + float _2196 = (_2159 + -2.2630341053009033f) * 0.7089107632637024f; + int _2197 = int(_2196); + float _2199 = _2196 - float((int)(_2197)); + float _2201 = _global_3[_2197]; + float _2204 = _global_3[(_2197 + 1)]; + float _2209 = _2201 * 0.5f; + _2219 = dot(float3((_2199 * _2199), _2199, 1.0f), float3(mad((_global_3[(_2197 + 2)]), 0.5f, mad(_2204, -1.0f, _2209)), (_2204 - _2201), mad(_2204, 0.5f, _2209))); + } else { + _2219 = ((_2159 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2224 = log2(select((_2153 <= 0.0f), 9.999999747378752e-05f, _2153)); + float _2225 = _2224 * 0.3010300099849701f; + do { + if (!(!(_2225 <= -3.848327875137329f))) { + _2284 = ((_2224 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2225 > -3.848327875137329f) && (bool)(_2225 < 0.6812411546707153f)) { + float _2236 = (_2224 + 12.783867835998535f) * 0.46521204710006714f; + int _2237 = int(_2236); + float _2239 = _2236 - float((int)(_2237)); + float _2241 = _global_2[_2237]; + float _2244 = _global_2[(_2237 + 1)]; + float _2249 = _2241 * 0.5f; + _2284 = dot(float3((_2239 * _2239), _2239, 1.0f), float3(mad((_global_2[(_2237 + 2)]), 0.5f, mad(_2244, -1.0f, _2249)), (_2244 - _2241), mad(_2244, 0.5f, _2249))); + } else { + if ((bool)(_2225 >= 0.6812411546707153f) && (bool)(_2225 < 3.653702974319458f)) { + float _2261 = (_2224 + -2.2630341053009033f) * 0.7089107632637024f; + int _2262 = int(_2261); + float _2264 = _2261 - float((int)(_2262)); + float _2266 = _global_3[_2262]; + float _2269 = _global_3[(_2262 + 1)]; + float _2274 = _2266 * 0.5f; + _2284 = dot(float3((_2264 * _2264), _2264, 1.0f), float3(mad((_global_3[(_2262 + 2)]), 0.5f, mad(_2269, -1.0f, _2274)), (_2269 - _2266), mad(_2269, 0.5f, _2274))); + } else { + _2284 = ((_2224 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2289 = log2(select((_2156 <= 0.0f), 9.999999747378752e-05f, _2156)); + float _2290 = _2289 * 0.3010300099849701f; + do { + if (!(!(_2290 <= -3.848327875137329f))) { + _2349 = ((_2289 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2290 > -3.848327875137329f) && (bool)(_2290 < 0.6812411546707153f)) { + float _2301 = (_2289 + 12.783867835998535f) * 0.46521204710006714f; + int _2302 = int(_2301); + float _2304 = _2301 - float((int)(_2302)); + float _2306 = _global_2[_2302]; + float _2309 = _global_2[(_2302 + 1)]; + float _2314 = _2306 * 0.5f; + _2349 = dot(float3((_2304 * _2304), _2304, 1.0f), float3(mad((_global_2[(_2302 + 2)]), 0.5f, mad(_2309, -1.0f, _2314)), (_2309 - _2306), mad(_2309, 0.5f, _2314))); + } else { + if ((bool)(_2290 >= 0.6812411546707153f) && (bool)(_2290 < 3.653702974319458f)) { + float _2326 = (_2289 + -2.2630341053009033f) * 0.7089107632637024f; + int _2327 = int(_2326); + float _2329 = _2326 - float((int)(_2327)); + float _2331 = _global_3[_2327]; + float _2334 = _global_3[(_2327 + 1)]; + float _2339 = _2331 * 0.5f; + _2349 = dot(float3((_2329 * _2329), _2329, 1.0f), float3(mad((_global_3[(_2327 + 2)]), 0.5f, mad(_2334, -1.0f, _2339)), (_2334 - _2331), mad(_2334, 0.5f, _2339))); + } else { + _2349 = ((_2289 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2352 = exp2(_2219 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2353 = exp2(_2284 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2354 = exp2(_2349 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1777) { + _2366 = mad(_34, _2354, mad(_33, _2353, (_2352 * _32))); + _2367 = mad(_37, _2354, mad(_36, _2353, (_2352 * _35))); + _2368 = mad(_40, _2354, mad(_39, _2353, (_2352 * _38))); + } else { + _2366 = _2352; + _2367 = _2353; + _2368 = _2354; + } + float _2378 = exp2(log2(_2366 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2379 = exp2(log2(_2367 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2380 = exp2(log2(_2368 * 9.999999747378752e-05f) * 0.1593017578125f); + _3145 = exp2(log2((1.0f / ((_2378 * 18.6875f) + 1.0f)) * ((_2378 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3146 = exp2(log2((1.0f / ((_2379 * 18.6875f) + 1.0f)) * ((_2379 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3147 = exp2(log2((1.0f / ((_2380 * 18.6875f) + 1.0f)) * ((_2380 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2413 = _1676 * 3.0f; + float _2414 = _1677 * 3.0f; + float _2417 = mad(0.17733481526374817f, _2414, mad(0.38297808170318604f, _2413, (_1675 * 1.31910240650177f))); + float _2420 = mad(0.09676162153482437f, _2414, mad(0.8134231567382812f, _2413, (_1675 * 0.2693769633769989f))); + float _2423 = mad(0.870704174041748f, _2414, mad(0.11154405772686005f, _2413, (_1675 * 0.05263196676969528f))); + float _2427 = max(max(_2417, _2420), _2423); + float _2432 = (max(_2427, 1.000000013351432e-10f) - max(min(min(_2417, _2420), _2423), 1.000000013351432e-10f)) / max(_2427, 0.009999999776482582f); + float _2445 = ((_2420 + _2417) + _2423) + (sqrt((((_2423 - _2420) * _2423) + ((_2420 - _2417) * _2420)) + ((_2417 - _2423) * _2417)) * 1.75f); + float _2446 = _2445 * 0.3333333432674408f; + float _2447 = _2432 + -0.4000000059604645f; + float _2448 = _2447 * 5.0f; + float _2452 = max((1.0f - abs(_2447 * 2.5f)), 0.0f); + float _2463 = ((float((int)(((int)(uint)((bool)(_2448 > 0.0f))) - ((int)(uint)((bool)(_2448 < 0.0f))))) * (1.0f - (_2452 * _2452))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2446 <= 0.0533333346247673f)) { + if (!(_2446 >= 0.1599999964237213f)) { + _2472 = (((0.23999999463558197f / _2445) + -0.5f) * _2463); + } else { + _2472 = 0.0f; + } + } else { + _2472 = _2463; + } + float _2473 = _2472 + 1.0f; + float _2474 = _2473 * _2417; + float _2475 = _2473 * _2420; + float _2476 = _2473 * _2423; + do { + if (!((bool)(_2474 == _2475) && (bool)(_2475 == _2476))) { + float _2483 = ((_2474 * 2.0f) - _2475) - _2476; + float _2486 = ((_2420 - _2423) * 1.7320507764816284f) * _2473; + float _2488 = atan(_2486 / _2483); + bool _2491 = (_2483 < 0.0f); + bool _2492 = (_2483 == 0.0f); + bool _2493 = (_2486 >= 0.0f); + bool _2494 = (_2486 < 0.0f); + _2505 = select((_2493 && _2492), 90.0f, select((_2494 && _2492), -90.0f, (select((_2494 && _2491), (_2488 + -3.1415927410125732f), select((_2493 && _2491), (_2488 + 3.1415927410125732f), _2488)) * 57.2957763671875f))); + } else { + _2505 = 0.0f; + } + float _2510 = min(max(select((_2505 < 0.0f), (_2505 + 360.0f), _2505), 0.0f), 360.0f); + do { + if (_2510 < -180.0f) { + _2519 = (_2510 + 360.0f); + } else { + if (_2510 > 180.0f) { + _2519 = (_2510 + -360.0f); + } else { + _2519 = _2510; + } + } + do { + if ((bool)(_2519 > -67.5f) && (bool)(_2519 < 67.5f)) { + float _2525 = (_2519 + 67.5f) * 0.029629629105329514f; + int _2526 = int(_2525); + float _2528 = _2525 - float((int)(_2526)); + float _2529 = _2528 * _2528; + float _2530 = _2529 * _2528; + if (_2526 == 3) { + _2558 = (((0.1666666716337204f - (_2528 * 0.5f)) + (_2529 * 0.5f)) - (_2530 * 0.1666666716337204f)); + } else { + if (_2526 == 2) { + _2558 = ((0.6666666865348816f - _2529) + (_2530 * 0.5f)); + } else { + if (_2526 == 1) { + _2558 = (((_2530 * -0.5f) + 0.1666666716337204f) + ((_2529 + _2528) * 0.5f)); + } else { + _2558 = select((_2526 == 0), (_2530 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2558 = 0.0f; + } + float _2567 = min(max(((((_2432 * 0.27000001072883606f) * (0.029999999329447746f - _2474)) * _2558) + _2474), 0.0f), 65535.0f); + float _2568 = min(max(_2475, 0.0f), 65535.0f); + float _2569 = min(max(_2476, 0.0f), 65535.0f); + float _2582 = min(max(mad(-0.21492856740951538f, _2569, mad(-0.2365107536315918f, _2568, (_2567 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2583 = min(max(mad(-0.09967592358589172f, _2569, mad(1.17622971534729f, _2568, (_2567 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2584 = min(max(mad(0.9977163076400757f, _2569, mad(-0.006032449658960104f, _2568, (_2567 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2585 = dot(float3(_2582, _2583, _2584), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2592 = ((_2582 - _2585) * 0.9599999785423279f) + _2585; + float _2593 = ((_2583 - _2585) * 0.9599999785423279f) + _2585; + float _2594 = ((_2584 - _2585) * 0.9599999785423279f) + _2585; + float _2597 = log2(select((_2592 <= 0.0f), 6.103515625e-05f, _2592)); + float _2598 = _2597 * 0.3010300099849701f; + do { + if (!(_2598 <= -5.2601776123046875f)) { + if ((bool)(_2598 > -5.2601776123046875f) && (bool)(_2598 < -0.7447274923324585f)) { + float _2606 = (_2597 * 0.19999998807907104f) + 3.494786262512207f; + int _2607 = int(_2606); + float _2609 = _2606 - float((int)(_2607)); + float _2611 = _global_0[_2607]; + float _2614 = _global_0[(_2607 + 1)]; + float _2619 = _2611 * 0.5f; + _2651 = dot(float3((_2609 * _2609), _2609, 1.0f), float3(mad((_global_0[(_2607 + 2)]), 0.5f, mad(_2614, -1.0f, _2619)), (_2614 - _2611), mad(_2614, 0.5f, _2619))); + } else { + if ((bool)(_2598 >= -0.7447274923324585f) && (bool)(_2598 < 4.673812389373779f)) { + float _2631 = (_2597 * 0.1666666567325592f) + 0.4123218357563019f; + int _2632 = int(_2631); + float _2634 = _2631 - float((int)(_2632)); + float _2636 = _global_1[_2632]; + float _2639 = _global_1[(_2632 + 1)]; + float _2644 = _2636 * 0.5f; + _2651 = dot(float3((_2634 * _2634), _2634, 1.0f), float3(mad((_global_1[(_2632 + 2)]), 0.5f, mad(_2639, -1.0f, _2644)), (_2639 - _2636), mad(_2639, 0.5f, _2644))); + } else { + _2651 = 4.0f; + } + } + } else { + _2651 = -4.0f; + } + float _2653 = exp2(_2651 * 3.321928024291992f); + float _2656 = log2(select((_2593 <= 0.0f), 6.103515625e-05f, _2593)); + float _2657 = _2656 * 0.3010300099849701f; + do { + if (!(_2657 <= -5.2601776123046875f)) { + if ((bool)(_2657 > -5.2601776123046875f) && (bool)(_2657 < -0.7447274923324585f)) { + float _2665 = (_2656 * 0.19999998807907104f) + 3.494786262512207f; + int _2666 = int(_2665); + float _2668 = _2665 - float((int)(_2666)); + float _2670 = _global_0[_2666]; + float _2673 = _global_0[(_2666 + 1)]; + float _2678 = _2670 * 0.5f; + _2710 = dot(float3((_2668 * _2668), _2668, 1.0f), float3(mad((_global_0[(_2666 + 2)]), 0.5f, mad(_2673, -1.0f, _2678)), (_2673 - _2670), mad(_2673, 0.5f, _2678))); + } else { + if ((bool)(_2657 >= -0.7447274923324585f) && (bool)(_2657 < 4.673812389373779f)) { + float _2690 = (_2656 * 0.1666666567325592f) + 0.4123218357563019f; + int _2691 = int(_2690); + float _2693 = _2690 - float((int)(_2691)); + float _2695 = _global_1[_2691]; + float _2698 = _global_1[(_2691 + 1)]; + float _2703 = _2695 * 0.5f; + _2710 = dot(float3((_2693 * _2693), _2693, 1.0f), float3(mad((_global_1[(_2691 + 2)]), 0.5f, mad(_2698, -1.0f, _2703)), (_2698 - _2695), mad(_2698, 0.5f, _2703))); + } else { + _2710 = 4.0f; + } + } + } else { + _2710 = -4.0f; + } + float _2712 = exp2(_2710 * 3.321928024291992f); + float _2715 = log2(select((_2594 <= 0.0f), 6.103515625e-05f, _2594)); + float _2716 = _2715 * 0.3010300099849701f; + do { + if (!(_2716 <= -5.2601776123046875f)) { + if ((bool)(_2716 > -5.2601776123046875f) && (bool)(_2716 < -0.7447274923324585f)) { + float _2724 = (_2715 * 0.19999998807907104f) + 3.494786262512207f; + int _2725 = int(_2724); + float _2727 = _2724 - float((int)(_2725)); + float _2729 = _global_0[_2725]; + float _2732 = _global_0[(_2725 + 1)]; + float _2737 = _2729 * 0.5f; + _2769 = dot(float3((_2727 * _2727), _2727, 1.0f), float3(mad((_global_0[(_2725 + 2)]), 0.5f, mad(_2732, -1.0f, _2737)), (_2732 - _2729), mad(_2732, 0.5f, _2737))); + } else { + if ((bool)(_2716 >= -0.7447274923324585f) && (bool)(_2716 < 4.673812389373779f)) { + float _2749 = (_2715 * 0.1666666567325592f) + 0.4123218357563019f; + int _2750 = int(_2749); + float _2752 = _2749 - float((int)(_2750)); + float _2754 = _global_1[_2750]; + float _2757 = _global_1[(_2750 + 1)]; + float _2762 = _2754 * 0.5f; + _2769 = dot(float3((_2752 * _2752), _2752, 1.0f), float3(mad((_global_1[(_2750 + 2)]), 0.5f, mad(_2757, -1.0f, _2762)), (_2757 - _2754), mad(_2757, 0.5f, _2762))); + } else { + _2769 = 4.0f; + } + } + } else { + _2769 = -4.0f; + } + float _2771 = exp2(_2769 * 3.321928024291992f); + float _2774 = mad(0.16386906802654266f, _2771, mad(0.14067870378494263f, _2712, (_2653 * 0.6954522132873535f))); + float _2777 = mad(0.0955343171954155f, _2771, mad(0.8596711158752441f, _2712, (_2653 * 0.044794563204050064f))); + float _2780 = mad(1.0015007257461548f, _2771, mad(0.004025210160762072f, _2712, (_2653 * -0.005525882821530104f))); + float _2783 = mad(-0.21492856740951538f, _2780, mad(-0.2365107536315918f, _2777, (_2774 * 1.4514392614364624f))); + float _2786 = mad(-0.09967592358589172f, _2780, mad(1.17622971534729f, _2777, (_2774 * -0.07655377686023712f))); + float _2789 = mad(0.9977163076400757f, _2780, mad(-0.006032449658960104f, _2777, (_2774 * 0.008316148072481155f))); + float _2792 = log2(select((_2783 <= 0.0f), 9.999999747378752e-05f, _2783)); + float _2793 = _2792 * 0.3010300099849701f; + do { + if (!(_2793 <= -3.848327875137329f)) { + if ((bool)(_2793 > -3.848327875137329f) && (bool)(_2793 < 0.6812411546707153f)) { + float _2801 = (_2792 + 12.783867835998535f) * 0.46521204710006714f; + int _2802 = int(_2801); + float _2804 = _2801 - float((int)(_2802)); + float _2806 = _global_4[_2802]; + float _2809 = _global_4[(_2802 + 1)]; + float _2814 = _2806 * 0.5f; + _2849 = dot(float3((_2804 * _2804), _2804, 1.0f), float3(mad((_global_4[(_2802 + 2)]), 0.5f, mad(_2809, -1.0f, _2814)), (_2809 - _2806), mad(_2809, 0.5f, _2814))); + } else { + if ((bool)(_2793 >= 0.6812411546707153f) && (bool)(_2793 < 3.7613162994384766f)) { + float _2826 = (_2792 + -2.2630341053009033f) * 0.6841424107551575f; + int _2827 = int(_2826); + float _2829 = _2826 - float((int)(_2827)); + float _2831 = _global_5[_2827]; + float _2834 = _global_5[(_2827 + 1)]; + float _2839 = _2831 * 0.5f; + _2849 = dot(float3((_2829 * _2829), _2829, 1.0f), float3(mad((_global_5[(_2827 + 2)]), 0.5f, mad(_2834, -1.0f, _2839)), (_2834 - _2831), mad(_2834, 0.5f, _2839))); + } else { + _2849 = ((_2792 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2849 = -2.301030158996582f; + } + float _2851 = exp2(_2849 * 3.321928024291992f); + float _2854 = log2(select((_2786 <= 0.0f), 9.999999747378752e-05f, _2786)); + float _2855 = _2854 * 0.3010300099849701f; + do { + if (!(_2855 <= -3.848327875137329f)) { + if ((bool)(_2855 > -3.848327875137329f) && (bool)(_2855 < 0.6812411546707153f)) { + float _2863 = (_2854 + 12.783867835998535f) * 0.46521204710006714f; + int _2864 = int(_2863); + float _2866 = _2863 - float((int)(_2864)); + float _2868 = _global_4[_2864]; + float _2871 = _global_4[(_2864 + 1)]; + float _2876 = _2868 * 0.5f; + _2911 = dot(float3((_2866 * _2866), _2866, 1.0f), float3(mad((_global_4[(_2864 + 2)]), 0.5f, mad(_2871, -1.0f, _2876)), (_2871 - _2868), mad(_2871, 0.5f, _2876))); + } else { + if ((bool)(_2855 >= 0.6812411546707153f) && (bool)(_2855 < 3.7613162994384766f)) { + float _2888 = (_2854 + -2.2630341053009033f) * 0.6841424107551575f; + int _2889 = int(_2888); + float _2891 = _2888 - float((int)(_2889)); + float _2893 = _global_5[_2889]; + float _2896 = _global_5[(_2889 + 1)]; + float _2901 = _2893 * 0.5f; + _2911 = dot(float3((_2891 * _2891), _2891, 1.0f), float3(mad((_global_5[(_2889 + 2)]), 0.5f, mad(_2896, -1.0f, _2901)), (_2896 - _2893), mad(_2896, 0.5f, _2901))); + } else { + _2911 = ((_2854 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2911 = -2.301030158996582f; + } + float _2913 = exp2(_2911 * 3.321928024291992f); + float _2916 = log2(select((_2789 <= 0.0f), 9.999999747378752e-05f, _2789)); + float _2917 = _2916 * 0.3010300099849701f; + do { + if (!(_2917 <= -3.848327875137329f)) { + if ((bool)(_2917 > -3.848327875137329f) && (bool)(_2917 < 0.6812411546707153f)) { + float _2925 = (_2916 + 12.783867835998535f) * 0.46521204710006714f; + int _2926 = int(_2925); + float _2928 = _2925 - float((int)(_2926)); + float _2930 = _global_4[_2926]; + float _2933 = _global_4[(_2926 + 1)]; + float _2938 = _2930 * 0.5f; + _2973 = dot(float3((_2928 * _2928), _2928, 1.0f), float3(mad((_global_4[(_2926 + 2)]), 0.5f, mad(_2933, -1.0f, _2938)), (_2933 - _2930), mad(_2933, 0.5f, _2938))); + } else { + if ((bool)(_2917 >= 0.6812411546707153f) && (bool)(_2917 < 3.7613162994384766f)) { + float _2950 = (_2916 + -2.2630341053009033f) * 0.6841424107551575f; + int _2951 = int(_2950); + float _2953 = _2950 - float((int)(_2951)); + float _2955 = _global_5[_2951]; + float _2958 = _global_5[(_2951 + 1)]; + float _2963 = _2955 * 0.5f; + _2973 = dot(float3((_2953 * _2953), _2953, 1.0f), float3(mad((_global_5[(_2951 + 2)]), 0.5f, mad(_2958, -1.0f, _2963)), (_2958 - _2955), mad(_2958, 0.5f, _2963))); + } else { + _2973 = ((_2916 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2973 = -2.301030158996582f; + } + float _2975 = exp2(_2973 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _2987 = mad(_34, _2975, mad(_33, _2913, (_2851 * _32))); + _2988 = mad(_37, _2975, mad(_36, _2913, (_2851 * _35))); + _2989 = mad(_40, _2975, mad(_39, _2913, (_2851 * _38))); + } else { + _2987 = _2851; + _2988 = _2913; + _2989 = _2975; + } + float _2999 = exp2(log2(_2987 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3000 = exp2(log2(_2988 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3001 = exp2(log2(_2989 * 9.999999747378752e-05f) * 0.1593017578125f); + _3145 = exp2(log2((1.0f / ((_2999 * 18.6875f) + 1.0f)) * ((_2999 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3146 = exp2(log2((1.0f / ((_3000 * 18.6875f) + 1.0f)) * ((_3000 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3147 = exp2(log2((1.0f / ((_3001 * 18.6875f) + 1.0f)) * ((_3001 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _3034 = mad(0.04736635088920593f, _1677, mad(0.3395121395587921f, _1676, (_1675 * 0.613191545009613f))); + float _3037 = mad(0.01345000695437193f, _1677, mad(0.9163357615470886f, _1676, (_1675 * 0.07020691782236099f))); + float _3040 = mad(0.8696067929267883f, _1677, mad(0.1095672994852066f, _1676, (_1675 * 0.020618872717022896f))); + float _3059 = exp2(log2(mad(_34, _3040, mad(_33, _3037, (_3034 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3060 = exp2(log2(mad(_37, _3040, mad(_36, _3037, (_3034 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3061 = exp2(log2(mad(_40, _3040, mad(_39, _3037, (_3034 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); + _3145 = exp2(log2((1.0f / ((_3059 * 18.6875f) + 1.0f)) * ((_3059 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3146 = exp2(log2((1.0f / ((_3060 * 18.6875f) + 1.0f)) * ((_3060 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3147 = exp2(log2((1.0f / ((_3061 * 18.6875f) + 1.0f)) * ((_3061 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _3096 = mad(0.04736635088920593f, _1665, mad(0.3395121395587921f, _1664, (_1663 * 0.613191545009613f))); + float _3099 = mad(0.01345000695437193f, _1665, mad(0.9163357615470886f, _1664, (_1663 * 0.07020691782236099f))); + float _3102 = mad(0.8696067929267883f, _1665, mad(0.1095672994852066f, _1664, (_1663 * 0.020618872717022896f))); + _3145 = mad(_34, _3102, mad(_33, _3099, (_3096 * _32))); + _3146 = mad(_37, _3102, mad(_36, _3099, (_3096 * _35))); + _3147 = mad(_40, _3102, mad(_39, _3099, (_3096 * _38))); + } else { + float _3115 = mad(0.04736635088920593f, _1691, mad(0.3395121395587921f, _1690, (_1689 * 0.613191545009613f))); + float _3118 = mad(0.01345000695437193f, _1691, mad(0.9163357615470886f, _1690, (_1689 * 0.07020691782236099f))); + float _3121 = mad(0.8696067929267883f, _1691, mad(0.1095672994852066f, _1690, (_1689 * 0.020618872717022896f))); + float _3134 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _3145 = exp2(_3134 * log2(mad(_34, _3121, mad(_33, _3118, (_3115 * _32))))); + _3146 = exp2(_3134 * log2(mad(_37, _3121, mad(_36, _3118, (_3115 * _35))))); + _3147 = exp2(_3134 * log2(mad(_40, _3121, mad(_39, _3118, (_3115 * _38))))); + } + } else { + _3145 = _1675; + _3146 = _1676; + _3147 = _1677; + } + } + } + } + } + } + SV_Target.x = (_3145 * 0.9523810148239136f); + SV_Target.y = (_3146 * 0.9523810148239136f); + SV_Target.z = (_3147 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xF87DC33D.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xF87DC33D.ps_6_0.hlsl new file mode 100644 index 000000000..4acad4f5c --- /dev/null +++ b/src/games/wutheringwaves/3_2/lutbuilder/lutbuilder_0xF87DC33D.ps_6_0.hlsl @@ -0,0 +1,1580 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float cb0_026x : packoffset(c026.x); + float cb0_026y : packoffset(c026.y); + float cb0_026z : packoffset(c026.z); + float cb0_027y : packoffset(c027.y); + float cb0_027z : packoffset(c027.z); + float cb0_028x : packoffset(c028.x); + float cb0_028y : packoffset(c028.y); + float cb0_028z : packoffset(c028.z); + float cb0_028w : packoffset(c028.w); + float cb0_029x : packoffset(c029.x); + float cb0_029y : packoffset(c029.y); + float cb0_029z : packoffset(c029.z); + float cb0_029w : packoffset(c029.w); + float cb0_030x : packoffset(c030.x); + float cb0_030y : packoffset(c030.y); + float cb0_030z : packoffset(c030.z); + float cb0_030w : packoffset(c030.w); + float cb0_031x : packoffset(c031.x); + float cb0_031y : packoffset(c031.y); + float cb0_031z : packoffset(c031.z); + float cb0_031w : packoffset(c031.w); + float cb0_032x : packoffset(c032.x); + float cb0_032y : packoffset(c032.y); + float cb0_033x : packoffset(c033.x); + float cb0_033y : packoffset(c033.y); + float cb0_033z : packoffset(c033.z); + float cb0_034x : packoffset(c034.x); + float cb0_034y : packoffset(c034.y); + float cb0_034z : packoffset(c034.z); + float cb0_035x : packoffset(c035.x); + float cb0_035y : packoffset(c035.y); + float cb0_035z : packoffset(c035.z); + float cb0_036x : packoffset(c036.x); + float cb0_036y : packoffset(c036.y); + float cb0_036z : packoffset(c036.z); + float cb0_036w : packoffset(c036.w); + float cb0_037x : packoffset(c037.x); + float cb0_038w : packoffset(c038.w); + float cb0_039z : packoffset(c039.z); + float cb0_040x : packoffset(c040.x); + float cb0_041x : packoffset(c041.x); + float cb0_044y : packoffset(c044.y); + float cb0_044z : packoffset(c044.z); + float cb0_044w : packoffset(c044.w); + float cb0_045x : packoffset(c045.x); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + int cb0_046x : packoffset(c046.x); + int cb0_046y : packoffset(c046.y); + int cb0_046z : packoffset(c046.z); + int cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_049z : packoffset(c049.z); + float cb0_049w : packoffset(c049.w); + float cb0_050x : packoffset(c050.x); + float cb0_050y : packoffset(c050.y); + float cb0_050z : packoffset(c050.z); + float cb0_050w : packoffset(c050.w); + float cb0_051x : packoffset(c051.x); + float cb0_051y : packoffset(c051.y); + float cb0_051z : packoffset(c051.z); + float cb0_051w : packoffset(c051.w); + float cb0_052x : packoffset(c052.x); + float cb0_052y : packoffset(c052.y); + float cb0_052z : packoffset(c052.z); + float cb0_052w : packoffset(c052.w); + float cb0_053x : packoffset(c053.x); + float cb0_053y : packoffset(c053.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_054z : packoffset(c054.z); + float cb0_054w : packoffset(c054.w); + float cb0_055x : packoffset(c055.x); + float cb0_055y : packoffset(c055.y); + float cb0_055z : packoffset(c055.z); + float cb0_055w : packoffset(c055.w); + float cb0_056x : packoffset(c056.x); + float cb0_056y : packoffset(c056.y); + float cb0_056z : packoffset(c056.z); + float cb0_056w : packoffset(c056.w); + float cb0_057x : packoffset(c057.x); + float cb0_057y : packoffset(c057.y); + float cb0_057z : packoffset(c057.z); + float cb0_057w : packoffset(c057.w); + float cb0_058x : packoffset(c058.x); + float cb0_058y : packoffset(c058.y); + float cb0_058z : packoffset(c058.z); + float cb0_058w : packoffset(c058.w); + float cb0_059x : packoffset(c059.x); + float cb0_059y : packoffset(c059.y); + float cb0_059z : packoffset(c059.z); + float cb0_059w : packoffset(c059.w); + float cb0_060x : packoffset(c060.x); + float cb0_060y : packoffset(c060.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_061z : packoffset(c061.z); + float cb0_061w : packoffset(c061.w); + float cb0_062x : packoffset(c062.x); + float cb0_062y : packoffset(c062.y); + float cb0_062z : packoffset(c062.z); + float cb0_062w : packoffset(c062.w); + float cb0_063x : packoffset(c063.x); + float cb0_063y : packoffset(c063.y); + float cb0_063z : packoffset(c063.z); + float cb0_063w : packoffset(c063.w); + float cb0_064x : packoffset(c064.x); + float cb0_064y : packoffset(c064.y); + float cb0_064z : packoffset(c064.z); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_065y : packoffset(c065.y); + float cb0_065z : packoffset(c065.z); + float cb0_065w : packoffset(c065.w); + float cb0_066x : packoffset(c066.x); + float cb0_066y : packoffset(c066.y); + float cb0_066z : packoffset(c066.z); + float cb0_066w : packoffset(c066.w); + float cb0_067x : packoffset(c067.x); + float cb0_067y : packoffset(c067.y); + float cb0_067z : packoffset(c067.z); + float cb0_067w : packoffset(c067.w); + float cb0_068x : packoffset(c068.x); + float cb0_068y : packoffset(c068.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_069z : packoffset(c069.z); + float cb0_069w : packoffset(c069.w); + float cb0_070x : packoffset(c070.x); + float cb0_070y : packoffset(c070.y); + float cb0_070z : packoffset(c070.z); + float cb0_070w : packoffset(c070.w); + float cb0_071x : packoffset(c071.x); + float cb0_071y : packoffset(c071.y); + float cb0_071z : packoffset(c071.z); + float cb0_071w : packoffset(c071.w); + float cb0_072x : packoffset(c072.x); + float cb0_072y : packoffset(c072.y); + float cb0_072z : packoffset(c072.z); + float cb0_072w : packoffset(c072.w); + float cb0_073x : packoffset(c073.x); + float cb0_073y : packoffset(c073.y); + float cb0_073z : packoffset(c073.z); + float cb0_073w : packoffset(c073.w); + int cb0_074z : packoffset(c074.z); + int cb0_074w : packoffset(c074.w); + float cb0_075x : packoffset(c075.x); + float cb0_075y : packoffset(c075.y); + float cb0_075z : packoffset(c075.z); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; +static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; +static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; +static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; +static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex +) : SV_Target { + float4 SV_Target; + float _9 = TEXCOORD.x + -0.015625f; + float _10 = TEXCOORD.y + -0.015625f; + float _13 = float((uint)(int)(SV_RenderTargetArrayIndex)); + float _34; + float _35; + float _36; + float _37; + float _38; + float _39; + float _40; + float _41; + float _42; + float _99; + float _100; + float _101; + float _340; + float _341; + float _342; + float _508; + float _509; + float _531; + float _532; + float _533; + float _678; + float _679; + float _700; + float _701; + float _702; + float _848; + float _849; + float _870; + float _871; + float _872; + float _1007; + float _1008; + float _1029; + float _1030; + float _1031; + float _1126; + float _1159; + float _1173; + float _1237; + float _1374; + float _1375; + float _1376; + float _1519; + float _1520; + float _1521; + float _1535; + float _1546; + float _1557; + float _1733; + float _1744; + float _1866; + float _1899; + float _1913; + float _1952; + float _2045; + float _2104; + float _2163; + float _2246; + float _2311; + float _2376; + float _2393; + float _2394; + float _2395; + float _2499; + float _2532; + float _2546; + float _2585; + float _2678; + float _2737; + float _2796; + float _2876; + float _2938; + float _3000; + float _3014; + float _3015; + float _3016; + float _3172; + float _3173; + float _3174; + + const float4 tm_flags = float4( + cb0_046x, + float(RENODX_WUWA_TM == 1), + float(RENODX_WUWA_TM == 2), + float(RENODX_WUWA_TM == 3) + ); + + if (!(cb0_074w == 1)) { + if (!(cb0_074w == 2)) { + if (!(cb0_074w == 3)) { + bool _23 = (cb0_074w == 4); + _34 = select(_23, 1.0f, 1.7050515413284302f); + _35 = select(_23, 0.0f, -0.6217905879020691f); + _36 = select(_23, 0.0f, -0.0832584798336029f); + _37 = select(_23, 0.0f, -0.13025718927383423f); + _38 = select(_23, 1.0f, 1.1408027410507202f); + _39 = select(_23, 0.0f, -0.010548528283834457f); + _40 = select(_23, 0.0f, -0.024003278464078903f); + _41 = select(_23, 0.0f, -0.1289687603712082f); + _42 = select(_23, 1.0f, 1.152971863746643f); + } else { + _34 = 0.6954522132873535f; + _35 = 0.14067870378494263f; + _36 = 0.16386906802654266f; + _37 = 0.044794563204050064f; + _38 = 0.8596711158752441f; + _39 = 0.0955343171954155f; + _40 = -0.005525882821530104f; + _41 = 0.004025210160762072f; + _42 = 1.0015007257461548f; + } + } else { + _34 = 1.02579927444458f; + _35 = -0.020052503794431686f; + _36 = -0.0057713985443115234f; + _37 = -0.0022350111976265907f; + _38 = 1.0045825242996216f; + _39 = -0.002352306619286537f; + _40 = -0.005014004185795784f; + _41 = -0.025293385609984398f; + _42 = 1.0304402112960815f; + } + } else { + _34 = 1.379158854484558f; + _35 = -0.3088507056236267f; + _36 = -0.07034677267074585f; + _37 = -0.06933528929948807f; + _38 = 1.0822921991348267f; + _39 = -0.012962047010660172f; + _40 = -0.002159259282052517f; + _41 = -0.045465391129255295f; + _42 = 1.0477596521377563f; + } + if ((uint)cb0_074z > (uint)2) { + float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); + float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); + float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); + _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); + _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); + } else { + _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); + } + float _104 = cb0_047x * 1.0005563497543335f; + float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); + float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); + float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); + float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); + float _148 = (_132 * 3.0f) / _147; + float _150 = (_142 * 2.0f) / _147; + bool _151 = (cb0_047x < 4000.0f); + float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); + float _157 = cb0_047y * 0.05000000074505806f; + float _160 = _132 - ((_157 * _142) * _156); + float _163 = ((_157 * _132) * _156) + _142; + float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); + float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); + float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); + float _176 = max(_175, 1.000000013351432e-10f); + float _177 = _174 / _176; + float _180 = ((1.0f - _174) - _175) / _176; + float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); + float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); + float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); + float _193 = mad(_191, -0.7501999735832214f, 0.0f); + float _194 = mad(_191, 1.7135000228881836f, 0.0f); + float _195 = mad(_191, 0.03669999912381172f, -0.0f); + float _196 = mad(_192, 0.03889999911189079f, 0.0f); + float _197 = mad(_192, -0.06849999725818634f, 0.0f); + float _198 = mad(_192, 1.0296000242233276f, 0.0f); + float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); + float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); + float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); + float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); + float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); + float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); + float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); + float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); + float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); + float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); + float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); + float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); + float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); + float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); + float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); + float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); + float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); + float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); + float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); + float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); + float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); + float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); + float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); + float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); + CAPTURE_UNGRADED(_291, _294, _297); + // bool _300 = (cb0_046x == 0); + bool _300 = ((uint)(tm_flags.x) == 0); + if (_300) { + float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _306 = (_291 / _302) + -1.0f; + float _307 = (_294 / _302) + -1.0f; + float _308 = (_297 / _302) + -1.0f; + float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); + _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); + _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); + _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); + } else { + _340 = _291; + _341 = _294; + _342 = _297; + } + float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _357 = cb0_052w + cb0_057w; + float _371 = cb0_051w * cb0_056w; + float _385 = cb0_050w * cb0_055w; + float _399 = cb0_049w * cb0_054w; + float _413 = cb0_048w * cb0_053w; + float _417 = _340 - _343; + float _418 = _341 - _343; + float _419 = _342 - _343; + float _476 = cb0_073w + 1.0f; + float _480 = (_476 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385)))))); + float _481 = (_476 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385)))))); + float _482 = (_476 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385)))))); + float _486 = max(_480, max(_481, _482)); + float _487 = _486 - min(_480, min(_481, _482)); + if (!(_487 == 0.0f)) { + float _490 = _487 / _486; + if (_480 == _486) { + _508 = ((_481 - _482) / _487); + _509 = _490; + } else { + if (_481 == _486) { + _508 = (((_482 - _480) / _487) + 2.0f); + _509 = _490; + } else { + if (_482 == _486) { + _508 = (((_480 - _481) / _487) + 4.0f); + _509 = _490; + } else { + _508 = 0.0f; + _509 = _490; + } + } + } + } else { + _508 = 0.0f; + _509 = 0.0f; + } + float _511 = cb0_073z + _508; + float _512 = floor(_511); + float _513 = _511 - _512; + float _514 = 1.0f - _509; + float _516 = 1.0f - (_513 * _509); + float _519 = 1.0f - ((1.0f - _513) * _509); + if (!(_512 == 0.0f)) { + if (!(_512 == 1.0f)) { + if (!(_512 == 2.0f)) { + if (!(_512 == 3.0f)) { + if (!(_512 == 4.0f)) { + _531 = 1.0f; + _532 = _514; + _533 = _516; + } else { + _531 = _519; + _532 = _514; + _533 = 1.0f; + } + } else { + _531 = _514; + _532 = _516; + _533 = 1.0f; + } + } else { + _531 = _514; + _532 = 1.0f; + _533 = _519; + } + } else { + _531 = _516; + _532 = 1.0f; + _533 = _514; + } + } else { + _531 = 1.0f; + _532 = _519; + _533 = _514; + } + float _539 = saturate(_343 / cb0_073x); + float _543 = (_539 * _539) * (3.0f - (_539 * 2.0f)); + float _544 = 1.0f - _543; + float _553 = cb0_052w + cb0_067w; + float _562 = cb0_051w * cb0_066w; + float _571 = cb0_050w * cb0_065w; + float _580 = cb0_049w * cb0_064w; + float _589 = cb0_048w * cb0_063w; + float _650 = (_476 * (((cb0_052x + cb0_067x) + _553) + (((cb0_051x * cb0_066x) * _562) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _580) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _589) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _571)))))); + float _651 = (_476 * (((cb0_052y + cb0_067y) + _553) + (((cb0_051y * cb0_066y) * _562) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _580) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _589) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _571)))))); + float _652 = (_476 * (((cb0_052z + cb0_067z) + _553) + (((cb0_051z * cb0_066z) * _562) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _580) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _589) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _571)))))); + float _656 = max(_650, max(_651, _652)); + float _657 = _656 - min(_650, min(_651, _652)); + if (!(_657 == 0.0f)) { + float _660 = _657 / _656; + if (_650 == _656) { + _678 = ((_651 - _652) / _657); + _679 = _660; + } else { + if (_651 == _656) { + _678 = (((_652 - _650) / _657) + 2.0f); + _679 = _660; + } else { + if (_652 == _656) { + _678 = (((_650 - _651) / _657) + 4.0f); + _679 = _660; + } else { + _678 = 0.0f; + _679 = _660; + } + } + } + } else { + _678 = 0.0f; + _679 = 0.0f; + } + float _680 = cb0_073z + _678; + float _681 = floor(_680); + float _682 = _680 - _681; + float _683 = 1.0f - _679; + float _685 = 1.0f - (_682 * _679); + float _688 = 1.0f - ((1.0f - _682) * _679); + if (!(_681 == 0.0f)) { + if (!(_681 == 1.0f)) { + if (!(_681 == 2.0f)) { + if (!(_681 == 3.0f)) { + if (!(_681 == 4.0f)) { + _700 = 1.0f; + _701 = _683; + _702 = _685; + } else { + _700 = _688; + _701 = _683; + _702 = 1.0f; + } + } else { + _700 = _683; + _701 = _685; + _702 = 1.0f; + } + } else { + _700 = _683; + _701 = 1.0f; + _702 = _688; + } + } else { + _700 = _685; + _701 = 1.0f; + _702 = _683; + } + } else { + _700 = 1.0f; + _701 = _688; + _702 = _683; + } + float _710 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); + float _714 = (_710 * _710) * (3.0f - (_710 * 2.0f)); + float _723 = cb0_052w + cb0_062w; + float _732 = cb0_051w * cb0_061w; + float _741 = cb0_050w * cb0_060w; + float _750 = cb0_049w * cb0_059w; + float _759 = cb0_048w * cb0_058w; + float _820 = (_476 * (((cb0_052x + cb0_062x) + _723) + (((cb0_051x * cb0_061x) * _732) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _750) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _759) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _741)))))); + float _821 = (_476 * (((cb0_052y + cb0_062y) + _723) + (((cb0_051y * cb0_061y) * _732) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _750) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _759) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _741)))))); + float _822 = (_476 * (((cb0_052z + cb0_062z) + _723) + (((cb0_051z * cb0_061z) * _732) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _750) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _759) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _741)))))); + float _826 = max(_820, max(_821, _822)); + float _827 = _826 - min(_820, min(_821, _822)); + if (!(_827 == 0.0f)) { + float _830 = _827 / _826; + if (_820 == _826) { + _848 = ((_821 - _822) / _827); + _849 = _830; + } else { + if (_821 == _826) { + _848 = (((_822 - _820) / _827) + 2.0f); + _849 = _830; + } else { + if (_822 == _826) { + _848 = (((_820 - _821) / _827) + 4.0f); + _849 = _830; + } else { + _848 = 0.0f; + _849 = _830; + } + } + } + } else { + _848 = 0.0f; + _849 = 0.0f; + } + float _850 = cb0_073z + _848; + float _851 = floor(_850); + float _852 = _850 - _851; + float _853 = 1.0f - _849; + float _855 = 1.0f - (_852 * _849); + float _858 = 1.0f - ((1.0f - _852) * _849); + if (!(_851 == 0.0f)) { + if (!(_851 == 1.0f)) { + if (!(_851 == 2.0f)) { + if (!(_851 == 3.0f)) { + if (!(_851 == 4.0f)) { + _870 = 1.0f; + _871 = _853; + _872 = _855; + } else { + _870 = _858; + _871 = _853; + _872 = 1.0f; + } + } else { + _870 = _853; + _871 = _855; + _872 = 1.0f; + } + } else { + _870 = _853; + _871 = 1.0f; + _872 = _858; + } + } else { + _870 = _855; + _871 = 1.0f; + _872 = _853; + } + } else { + _870 = 1.0f; + _871 = _858; + _872 = _853; + } + float _877 = _826 * (_543 - _714); + float _885 = (((_700 * _656) * _714) + ((_531 * _486) * _544)) + (_877 * _870); + float _887 = (((_701 * _656) * _714) + ((_532 * _486) * _544)) + (_877 * _871); + float _889 = (((_702 * _656) * _714) + ((_533 * _486) * _544)) + (_877 * _872); + float _915 = dot(float3(_885, _887, _889), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _979 = (_476 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_885 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); + float _980 = (_476 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_887 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); + float _981 = (_476 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_889 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); + float _985 = max(_979, max(_980, _981)); + float _986 = _985 - min(_979, min(_980, _981)); + if (!(_986 == 0.0f)) { + float _989 = _986 / _985; + if (_979 == _985) { + _1007 = ((_980 - _981) / _986); + _1008 = _989; + } else { + if (_980 == _985) { + _1007 = (((_981 - _979) / _986) + 2.0f); + _1008 = _989; + } else { + if (_981 == _985) { + _1007 = (((_979 - _980) / _986) + 4.0f); + _1008 = _989; + } else { + _1007 = 0.0f; + _1008 = _989; + } + } + } + } else { + _1007 = 0.0f; + _1008 = 0.0f; + } + float _1009 = cb0_073z + _1007; + float _1010 = floor(_1009); + float _1011 = _1009 - _1010; + float _1012 = 1.0f - _1008; + float _1014 = 1.0f - (_1011 * _1008); + float _1017 = 1.0f - ((1.0f - _1011) * _1008); + if (!(_1010 == 0.0f)) { + if (!(_1010 == 1.0f)) { + if (!(_1010 == 2.0f)) { + if (!(_1010 == 3.0f)) { + if (!(_1010 == 4.0f)) { + _1029 = 1.0f; + _1030 = _1012; + _1031 = _1014; + } else { + _1029 = _1017; + _1030 = _1012; + _1031 = 1.0f; + } + } else { + _1029 = _1012; + _1030 = _1014; + _1031 = 1.0f; + } + } else { + _1029 = _1012; + _1030 = 1.0f; + _1031 = _1017; + } + } else { + _1029 = _1014; + _1030 = 1.0f; + _1031 = _1012; + } + } else { + _1029 = 1.0f; + _1030 = _1017; + _1031 = _1012; + } + float _1032 = _1029 * _985; + float _1033 = _1030 * _985; + float _1034 = _1031 * _985; + float _1037 = mad(-0.0832584798336029f, _1034, mad(-0.6217905879020691f, _1033, (_1032 * 1.7050515413284302f))); + float _1040 = mad(-0.010548528283834457f, _1034, mad(1.1408027410507202f, _1033, (_1032 * -0.13025718927383423f))); + float _1043 = mad(1.152971863746643f, _1034, mad(-0.1289687603712082f, _1033, (_1032 * -0.024003278464078903f))); + float _1059 = ((mad(0.061360642313957214f, _1034, mad(-4.540197551250458e-09f, _1033, (_1032 * 0.9386394023895264f))) - _1032) * cb0_075x) + _1032; + float _1060 = ((mad(0.169205904006958f, _1034, mad(0.8307942152023315f, _1033, (_1032 * 6.775371730327606e-08f))) - _1033) * cb0_075x) + _1033; + float _1061 = (mad(-2.3283064365386963e-10f, _1033, (_1032 * -9.313225746154785e-10f)) * cb0_075x) + _1034; + // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { + if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { + float _1071 = mad(0.16386905312538147f, _1061, mad(0.14067868888378143f, _1060, (_1059 * 0.6954522132873535f))); + float _1074 = mad(0.0955343246459961f, _1061, mad(0.8596711158752441f, _1060, (_1059 * 0.044794581830501556f))); + float _1077 = mad(1.0015007257461548f, _1061, mad(0.004025210160762072f, _1060, (_1059 * -0.005525882821530104f))); + float _1081 = max(max(_1071, _1074), _1077); + float _1086 = (max(_1081, 1.000000013351432e-10f) - max(min(min(_1071, _1074), _1077), 1.000000013351432e-10f)) / max(_1081, 0.009999999776482582f); + float _1099 = ((_1074 + _1071) + _1077) + (sqrt((((_1077 - _1074) * _1077) + ((_1074 - _1071) * _1074)) + ((_1071 - _1077) * _1071)) * 1.75f); + float _1100 = _1099 * 0.3333333432674408f; + float _1101 = _1086 + -0.4000000059604645f; + float _1102 = _1101 * 5.0f; + float _1106 = max((1.0f - abs(_1101 * 2.5f)), 0.0f); + float _1117 = ((float((int)(((int)(uint)((bool)(_1102 > 0.0f))) - ((int)(uint)((bool)(_1102 < 0.0f))))) * (1.0f - (_1106 * _1106))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1100 <= 0.0533333346247673f)) { + if (!(_1100 >= 0.1599999964237213f)) { + _1126 = (((0.23999999463558197f / _1099) + -0.5f) * _1117); + } else { + _1126 = 0.0f; + } + } else { + _1126 = _1117; + } + float _1127 = _1126 + 1.0f; + float _1128 = _1127 * _1071; + float _1129 = _1127 * _1074; + float _1130 = _1127 * _1077; + do { + if (!((bool)(_1128 == _1129) && (bool)(_1129 == _1130))) { + float _1137 = ((_1128 * 2.0f) - _1129) - _1130; + float _1140 = ((_1074 - _1077) * 1.7320507764816284f) * _1127; + float _1142 = atan(_1140 / _1137); + bool _1145 = (_1137 < 0.0f); + bool _1146 = (_1137 == 0.0f); + bool _1147 = (_1140 >= 0.0f); + bool _1148 = (_1140 < 0.0f); + _1159 = select((_1147 && _1146), 90.0f, select((_1148 && _1146), -90.0f, (select((_1148 && _1145), (_1142 + -3.1415927410125732f), select((_1147 && _1145), (_1142 + 3.1415927410125732f), _1142)) * 57.2957763671875f))); + } else { + _1159 = 0.0f; + } + float _1164 = min(max(select((_1159 < 0.0f), (_1159 + 360.0f), _1159), 0.0f), 360.0f); + do { + if (_1164 < -180.0f) { + _1173 = (_1164 + 360.0f); + } else { + if (_1164 > 180.0f) { + _1173 = (_1164 + -360.0f); + } else { + _1173 = _1164; + } + } + float _1177 = saturate(1.0f - abs(_1173 * 0.014814814552664757f)); + float _1181 = (_1177 * _1177) * (3.0f - (_1177 * 2.0f)); + float _1187 = ((_1181 * _1181) * ((_1086 * 0.18000000715255737f) * (0.029999999329447746f - _1128))) + _1128; + float _1197 = max(0.0f, mad(-0.21492856740951538f, _1130, mad(-0.2365107536315918f, _1129, (_1187 * 1.4514392614364624f)))); + float _1198 = max(0.0f, mad(-0.09967592358589172f, _1130, mad(1.17622971534729f, _1129, (_1187 * -0.07655377686023712f)))); + float _1199 = max(0.0f, mad(0.9977163076400757f, _1130, mad(-0.006032449658960104f, _1129, (_1187 * 0.008316148072481155f)))); + float _1200 = dot(float3(_1197, _1198, _1199), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1214 = (cb0_036w + 1.0f) - cb0_036y; + float _1217 = cb0_037x + 1.0f; + float _1219 = _1217 - cb0_036z; + do { + if (cb0_036y > 0.800000011920929f) { + _1237 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); + } else { + float _1228 = (cb0_036w + 0.18000000715255737f) / _1214; + _1237 = (-0.7447274923324585f - ((log2(_1228 / (2.0f - _1228)) * 0.3465735912322998f) * (_1214 / cb0_036x))); + } + float _1240 = ((1.0f - cb0_036y) / cb0_036x) - _1237; + float _1242 = (cb0_036z / cb0_036x) - _1240; + float _1246 = log2(lerp(_1200, _1197, 0.9599999785423279f)) * 0.3010300099849701f; + float _1247 = log2(lerp(_1200, _1198, 0.9599999785423279f)) * 0.3010300099849701f; + float _1248 = log2(lerp(_1200, _1199, 0.9599999785423279f)) * 0.3010300099849701f; + float _1252 = cb0_036x * (_1246 + _1240); + float _1253 = cb0_036x * (_1247 + _1240); + float _1254 = cb0_036x * (_1248 + _1240); + float _1255 = _1214 * 2.0f; + float _1257 = (cb0_036x * -2.0f) / _1214; + float _1258 = _1246 - _1237; + float _1259 = _1247 - _1237; + float _1260 = _1248 - _1237; + float _1279 = _1219 * 2.0f; + float _1281 = (cb0_036x * 2.0f) / _1219; + float _1306 = select((_1246 < _1237), ((_1255 / (exp2((_1258 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1252); + float _1307 = select((_1247 < _1237), ((_1255 / (exp2((_1259 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1253); + float _1308 = select((_1248 < _1237), ((_1255 / (exp2((_1260 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1254); + float _1315 = _1242 - _1237; + float _1319 = saturate(_1258 / _1315); + float _1320 = saturate(_1259 / _1315); + float _1321 = saturate(_1260 / _1315); + bool _1322 = (_1242 < _1237); + float _1326 = select(_1322, (1.0f - _1319), _1319); + float _1327 = select(_1322, (1.0f - _1320), _1320); + float _1328 = select(_1322, (1.0f - _1321), _1321); + float _1347 = (((_1326 * _1326) * (select((_1246 > _1242), (_1217 - (_1279 / (exp2(((_1246 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; + float _1348 = (((_1327 * _1327) * (select((_1247 > _1242), (_1217 - (_1279 / (exp2(((_1247 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1253) - _1307)) * (3.0f - (_1327 * 2.0f))) + _1307; + float _1349 = (((_1328 * _1328) * (select((_1248 > _1242), (_1217 - (_1279 / (exp2(((_1248 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; + float _1350 = dot(float3(_1347, _1348, _1349), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + _1374 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1347, 0.9300000071525574f))) - _1059)) + _1059); + _1375 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1348, 0.9300000071525574f))) - _1060)) + _1060); + _1376 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1349, 0.9300000071525574f))) - _1061)) + _1061); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _1374 = _1059; + _1375 = _1060; + _1376 = _1061; + } + float _1392 = ((mad(-0.06537103652954102f, _1376, mad(1.451815478503704e-06f, _1375, (_1374 * 1.065374732017517f))) - _1374) * cb0_075x) + _1374; + float _1393 = ((mad(-0.20366770029067993f, _1376, mad(1.2036634683609009f, _1375, (_1374 * -2.57161445915699e-07f))) - _1375) * cb0_075x) + _1375; + float _1394 = ((mad(0.9999996423721313f, _1376, mad(2.0954757928848267e-08f, _1375, (_1374 * 1.862645149230957e-08f))) - _1376) * cb0_075x) + _1376; + [branch] + if (!_300) { + float _1437 = 1.0f / (dot(float3(_1037, _1040, _1043), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); + float _1447 = max(0.0f, (((_1437 * cb0_035x) + cb0_034x) * dot(float3(_1037, _1040, _1043), float3(cb0_028x, cb0_028y, cb0_028z)))); + float _1448 = max(0.0f, (((_1437 * cb0_035y) + cb0_034y) * dot(float3(_1037, _1040, _1043), float3(cb0_029x, cb0_029y, cb0_029z)))); + float _1449 = max(0.0f, (((_1437 * cb0_035z) + cb0_034z) * dot(float3(_1037, _1040, _1043), float3(cb0_030x, cb0_030y, cb0_030z)))); + float _1455 = max(0.0f, (cb0_031x - _1447)); + float _1456 = max(0.0f, (cb0_031x - _1448)); + float _1457 = max(0.0f, (cb0_031x - _1449)); + float _1459 = max(_1447, cb0_031z); + float _1460 = max(_1448, cb0_031z); + float _1461 = max(_1449, cb0_031z); + _1519 = (((((((cb0_032x * _1459) + cb0_032y) * (1.0f / (cb0_031w + _1459))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1447, cb0_031x), cb0_031z))) + ((cb0_028w * _1455) * (1.0f / (cb0_031y + _1455)))) + cb0_029w); + _1520 = ((((((1.0f / (cb0_031w + _1460)) * ((cb0_032x * _1460) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1448, cb0_031x), cb0_031z))) + ((cb0_028w * _1456) * (1.0f / (cb0_031y + _1456)))) + cb0_029w); + _1521 = ((((((1.0f / (cb0_031w + _1461)) * ((cb0_032x * _1461) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1449, cb0_031x), cb0_031z))) + ((cb0_028w * _1457) * (1.0f / (cb0_031y + _1457)))) + cb0_029w); + } else { + _1519 = max(0.0f, mad(-0.0832584798336029f, _1394, mad(-0.6217905879020691f, _1393, (_1392 * 1.7050515413284302f)))); + _1520 = max(0.0f, mad(-0.010548528283834457f, _1394, mad(1.1408027410507202f, _1393, (_1392 * -0.13025718927383423f)))); + _1521 = max(0.0f, mad(1.152971863746643f, _1394, mad(-0.1289687603712082f, _1393, (_1392 * -0.024003278464078903f)))); + } + float lut_sampling_scale = wuwa::lut::PrepareLinearInput(_1519, _1520, _1521); + + if (_1519 < 0.0031306699384003878f) { + _1535 = (_1519 * 12.920000076293945f); + } else { + _1535 = (((pow(_1519, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1520 < 0.0031306699384003878f) { + _1546 = (_1520 * 12.920000076293945f); + } else { + _1546 = (((pow(_1520, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1521 < 0.0031306699384003878f) { + _1557 = (_1521 * 12.920000076293945f); + } else { + _1557 = (((pow(_1521, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + + float lut_sample_max_channel = wuwa::lut::NormalizeEncodedInput(_1535, _1546, _1557); + + float _1561 = (_1546 * 0.9375f) + 0.03125f; + float _1569 = _1557 * 15.0f; + float _1570 = floor(_1569); + float _1571 = _1569 - _1570; + float _1573 = (_1570 + ((_1535 * 0.9375f) + 0.03125f)) * 0.0625f; + float4 _1574 = t1.Sample(s1, float2(_1573, _1561)); + float _1578 = _1573 + 0.0625f; + float4 _1579 = t1.Sample(s1, float2(_1578, _1561)); + float _1595 = ((lerp(_1574.x, _1579.x, _1571)) * cb0_041x) + (cb0_040x * _1535); + float _1596 = ((lerp(_1574.y, _1579.y, _1571)) * cb0_041x) + (cb0_040x * _1546); + float _1597 = ((lerp(_1574.z, _1579.z, _1571)) * cb0_041x) + (cb0_040x * _1557); + float4 _1600 = t0.Sample(s0, float2(_1573, _1561)); + float4 _1604 = t0.Sample(s0, float2(_1578, _1561)); + float _1622 = cb0_038w * cb0_039z; + float _1629 = max(6.103519990574569e-05f, ((_1622 * ((_1600.x - _1595) + ((_1604.x - _1600.x) * _1571))) + _1595)); + float _1630 = max(6.103519990574569e-05f, ((_1622 * ((_1600.y - _1596) + ((_1604.y - _1600.y) * _1571))) + _1596)); + float _1631 = max(6.103519990574569e-05f, ((_1622 * ((_1600.z - _1597) + ((_1604.z - _1600.z) * _1571))) + _1597)); + + wuwa::lut::ApplySampleMaxChannel(_1629, _1630, _1631, lut_sample_max_channel); + + float _1653 = select((_1629 > 0.040449999272823334f), exp2(log2((_1629 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1629 * 0.07739938050508499f)); + float _1654 = select((_1630 > 0.040449999272823334f), exp2(log2((_1630 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1630 * 0.07739938050508499f)); + float _1655 = select((_1631 > 0.040449999272823334f), exp2(log2((_1631 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1631 * 0.07739938050508499f)); + + wuwa::lut::ApplyInverseSamplingScale(_1653, _1654, _1655, lut_sampling_scale); + + float _1681 = cb0_044y * (((cb0_026y + (cb0_026x * _1653)) * _1653) + cb0_026z); + float _1682 = cb0_044z * (((cb0_026y + (cb0_026x * _1654)) * _1654) + cb0_026z); + float _1683 = cb0_044w * (((cb0_026y + (cb0_026x * _1655)) * _1655) + cb0_026z); + float _1690 = ((cb0_045x - _1681) * cb0_045w) + _1681; + float _1691 = ((cb0_045y - _1682) * cb0_045w) + _1682; + float _1692 = ((cb0_045z - _1683) * cb0_045w) + _1683; + wuwa::lut::ApplyLutStrength(_1690, _1691, _1692, ungraded); + float _1693 = cb0_044y * _1037; + float _1694 = cb0_044z * _1040; + float _1695 = cb0_044w * _1043; + float _1702 = ((cb0_045x - _1693) * cb0_045w) + _1693; + float _1703 = ((cb0_045y - _1694) * cb0_045w) + _1694; + float _1704 = ((cb0_045z - _1695) * cb0_045w) + _1695; + float _1716 = exp2(log2(max(0.0f, _1690)) * cb0_027y); + float _1717 = exp2(log2(max(0.0f, _1691)) * cb0_027y); + float _1718 = exp2(log2(max(0.0f, _1692)) * cb0_027y); + + SV_Target.rgb = GenerateLUTOutput(float3(_1716, _1717, _1718)); + SV_Target.a = 0; + return SV_Target; + + [branch] + if (cb0_074z == 0) { + do { + if (_1716 < 0.0031306699384003878f) { + _1733 = (_1716 * 12.920000076293945f); + } else { + _1733 = (((pow(_1716, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + do { + if (_1717 < 0.0031306699384003878f) { + _1744 = (_1717 * 12.920000076293945f); + } else { + _1744 = (((pow(_1717, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + if (_1718 < 0.0031306699384003878f) { + _3172 = _1733; + _3173 = _1744; + _3174 = (_1718 * 12.920000076293945f); + } else { + _3172 = _1733; + _3173 = _1744; + _3174 = (((pow(_1718, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); + } + } while (false); + } while (false); + } else { + if (cb0_074z == 1) { + float _1759 = mad(0.04736635088920593f, _1718, mad(0.3395121395587921f, _1717, (_1716 * 0.613191545009613f))); + float _1762 = mad(0.01345000695437193f, _1718, mad(0.9163357615470886f, _1717, (_1716 * 0.07020691782236099f))); + float _1765 = mad(0.8696067929267883f, _1718, mad(0.1095672994852066f, _1717, (_1716 * 0.020618872717022896f))); + float _1775 = max(6.103519990574569e-05f, mad(_36, _1765, mad(_35, _1762, (_1759 * _34)))); + float _1776 = max(6.103519990574569e-05f, mad(_39, _1765, mad(_38, _1762, (_1759 * _37)))); + float _1777 = max(6.103519990574569e-05f, mad(_42, _1765, mad(_41, _1762, (_1759 * _40)))); + _3172 = min((_1775 * 4.5f), ((exp2(log2(max(_1775, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3173 = min((_1776 * 4.5f), ((exp2(log2(max(_1776, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + _3174 = min((_1777 * 4.5f), ((exp2(log2(max(_1777, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); + } else { + bool _1804 = (cb0_074z == 5); + if ((bool)(cb0_074z == 3) || _1804) { + float _1807 = _1703 * 3.0f; + float _1808 = _1704 * 3.0f; + float _1811 = mad(0.17733481526374817f, _1808, mad(0.38297808170318604f, _1807, (_1702 * 1.31910240650177f))); + float _1814 = mad(0.09676162153482437f, _1808, mad(0.8134231567382812f, _1807, (_1702 * 0.2693769633769989f))); + float _1817 = mad(0.870704174041748f, _1808, mad(0.11154405772686005f, _1807, (_1702 * 0.05263196676969528f))); + float _1821 = max(max(_1811, _1814), _1817); + float _1826 = (max(_1821, 1.000000013351432e-10f) - max(min(min(_1811, _1814), _1817), 1.000000013351432e-10f)) / max(_1821, 0.009999999776482582f); + float _1839 = ((_1814 + _1811) + _1817) + (sqrt((((_1817 - _1814) * _1817) + ((_1814 - _1811) * _1814)) + ((_1811 - _1817) * _1811)) * 1.75f); + float _1840 = _1839 * 0.3333333432674408f; + float _1841 = _1826 + -0.4000000059604645f; + float _1842 = _1841 * 5.0f; + float _1846 = max((1.0f - abs(_1841 * 2.5f)), 0.0f); + float _1857 = ((float((int)(((int)(uint)((bool)(_1842 > 0.0f))) - ((int)(uint)((bool)(_1842 < 0.0f))))) * (1.0f - (_1846 * _1846))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_1840 <= 0.0533333346247673f)) { + if (!(_1840 >= 0.1599999964237213f)) { + _1866 = (((0.23999999463558197f / _1839) + -0.5f) * _1857); + } else { + _1866 = 0.0f; + } + } else { + _1866 = _1857; + } + float _1867 = _1866 + 1.0f; + float _1868 = _1867 * _1811; + float _1869 = _1867 * _1814; + float _1870 = _1867 * _1817; + do { + if (!((bool)(_1868 == _1869) && (bool)(_1869 == _1870))) { + float _1877 = ((_1868 * 2.0f) - _1869) - _1870; + float _1880 = ((_1814 - _1817) * 1.7320507764816284f) * _1867; + float _1882 = atan(_1880 / _1877); + bool _1885 = (_1877 < 0.0f); + bool _1886 = (_1877 == 0.0f); + bool _1887 = (_1880 >= 0.0f); + bool _1888 = (_1880 < 0.0f); + _1899 = select((_1887 && _1886), 90.0f, select((_1888 && _1886), -90.0f, (select((_1888 && _1885), (_1882 + -3.1415927410125732f), select((_1887 && _1885), (_1882 + 3.1415927410125732f), _1882)) * 57.2957763671875f))); + } else { + _1899 = 0.0f; + } + float _1904 = min(max(select((_1899 < 0.0f), (_1899 + 360.0f), _1899), 0.0f), 360.0f); + do { + if (_1904 < -180.0f) { + _1913 = (_1904 + 360.0f); + } else { + if (_1904 > 180.0f) { + _1913 = (_1904 + -360.0f); + } else { + _1913 = _1904; + } + } + do { + if ((bool)(_1913 > -67.5f) && (bool)(_1913 < 67.5f)) { + float _1919 = (_1913 + 67.5f) * 0.029629629105329514f; + int _1920 = int(_1919); + float _1922 = _1919 - float((int)(_1920)); + float _1923 = _1922 * _1922; + float _1924 = _1923 * _1922; + if (_1920 == 3) { + _1952 = (((0.1666666716337204f - (_1922 * 0.5f)) + (_1923 * 0.5f)) - (_1924 * 0.1666666716337204f)); + } else { + if (_1920 == 2) { + _1952 = ((0.6666666865348816f - _1923) + (_1924 * 0.5f)); + } else { + if (_1920 == 1) { + _1952 = (((_1924 * -0.5f) + 0.1666666716337204f) + ((_1923 + _1922) * 0.5f)); + } else { + _1952 = select((_1920 == 0), (_1924 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _1952 = 0.0f; + } + float _1961 = min(max(((((_1826 * 0.27000001072883606f) * (0.029999999329447746f - _1868)) * _1952) + _1868), 0.0f), 65535.0f); + float _1962 = min(max(_1869, 0.0f), 65535.0f); + float _1963 = min(max(_1870, 0.0f), 65535.0f); + float _1976 = min(max(mad(-0.21492856740951538f, _1963, mad(-0.2365107536315918f, _1962, (_1961 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _1977 = min(max(mad(-0.09967592358589172f, _1963, mad(1.17622971534729f, _1962, (_1961 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _1978 = min(max(mad(0.9977163076400757f, _1963, mad(-0.006032449658960104f, _1962, (_1961 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _1979 = dot(float3(_1976, _1977, _1978), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _1986 = ((_1976 - _1979) * 0.9599999785423279f) + _1979; + float _1987 = ((_1977 - _1979) * 0.9599999785423279f) + _1979; + float _1988 = ((_1978 - _1979) * 0.9599999785423279f) + _1979; + float _1991 = log2(select((_1986 <= 0.0f), 6.103515625e-05f, _1986)); + float _1992 = _1991 * 0.3010300099849701f; + do { + if (!(_1992 <= -5.2601776123046875f)) { + if ((bool)(_1992 > -5.2601776123046875f) && (bool)(_1992 < -0.7447274923324585f)) { + float _2000 = (_1991 * 0.19999998807907104f) + 3.494786262512207f; + int _2001 = int(_2000); + float _2003 = _2000 - float((int)(_2001)); + float _2005 = _global_0[_2001]; + float _2008 = _global_0[(_2001 + 1)]; + float _2013 = _2005 * 0.5f; + _2045 = dot(float3((_2003 * _2003), _2003, 1.0f), float3(mad((_global_0[(_2001 + 2)]), 0.5f, mad(_2008, -1.0f, _2013)), (_2008 - _2005), mad(_2008, 0.5f, _2013))); + } else { + if ((bool)(_1992 >= -0.7447274923324585f) && (bool)(_1992 < 4.673812389373779f)) { + float _2025 = (_1991 * 0.1666666567325592f) + 0.4123218357563019f; + int _2026 = int(_2025); + float _2028 = _2025 - float((int)(_2026)); + float _2030 = _global_1[_2026]; + float _2033 = _global_1[(_2026 + 1)]; + float _2038 = _2030 * 0.5f; + _2045 = dot(float3((_2028 * _2028), _2028, 1.0f), float3(mad((_global_1[(_2026 + 2)]), 0.5f, mad(_2033, -1.0f, _2038)), (_2033 - _2030), mad(_2033, 0.5f, _2038))); + } else { + _2045 = 4.0f; + } + } + } else { + _2045 = -4.0f; + } + float _2047 = exp2(_2045 * 3.321928024291992f); + float _2050 = log2(select((_1987 <= 0.0f), 6.103515625e-05f, _1987)); + float _2051 = _2050 * 0.3010300099849701f; + do { + if (!(_2051 <= -5.2601776123046875f)) { + if ((bool)(_2051 > -5.2601776123046875f) && (bool)(_2051 < -0.7447274923324585f)) { + float _2059 = (_2050 * 0.19999998807907104f) + 3.494786262512207f; + int _2060 = int(_2059); + float _2062 = _2059 - float((int)(_2060)); + float _2064 = _global_0[_2060]; + float _2067 = _global_0[(_2060 + 1)]; + float _2072 = _2064 * 0.5f; + _2104 = dot(float3((_2062 * _2062), _2062, 1.0f), float3(mad((_global_0[(_2060 + 2)]), 0.5f, mad(_2067, -1.0f, _2072)), (_2067 - _2064), mad(_2067, 0.5f, _2072))); + } else { + if ((bool)(_2051 >= -0.7447274923324585f) && (bool)(_2051 < 4.673812389373779f)) { + float _2084 = (_2050 * 0.1666666567325592f) + 0.4123218357563019f; + int _2085 = int(_2084); + float _2087 = _2084 - float((int)(_2085)); + float _2089 = _global_1[_2085]; + float _2092 = _global_1[(_2085 + 1)]; + float _2097 = _2089 * 0.5f; + _2104 = dot(float3((_2087 * _2087), _2087, 1.0f), float3(mad((_global_1[(_2085 + 2)]), 0.5f, mad(_2092, -1.0f, _2097)), (_2092 - _2089), mad(_2092, 0.5f, _2097))); + } else { + _2104 = 4.0f; + } + } + } else { + _2104 = -4.0f; + } + float _2106 = exp2(_2104 * 3.321928024291992f); + float _2109 = log2(select((_1988 <= 0.0f), 6.103515625e-05f, _1988)); + float _2110 = _2109 * 0.3010300099849701f; + do { + if (!(_2110 <= -5.2601776123046875f)) { + if ((bool)(_2110 > -5.2601776123046875f) && (bool)(_2110 < -0.7447274923324585f)) { + float _2118 = (_2109 * 0.19999998807907104f) + 3.494786262512207f; + int _2119 = int(_2118); + float _2121 = _2118 - float((int)(_2119)); + float _2123 = _global_0[_2119]; + float _2126 = _global_0[(_2119 + 1)]; + float _2131 = _2123 * 0.5f; + _2163 = dot(float3((_2121 * _2121), _2121, 1.0f), float3(mad((_global_0[(_2119 + 2)]), 0.5f, mad(_2126, -1.0f, _2131)), (_2126 - _2123), mad(_2126, 0.5f, _2131))); + } else { + if ((bool)(_2110 >= -0.7447274923324585f) && (bool)(_2110 < 4.673812389373779f)) { + float _2143 = (_2109 * 0.1666666567325592f) + 0.4123218357563019f; + int _2144 = int(_2143); + float _2146 = _2143 - float((int)(_2144)); + float _2148 = _global_1[_2144]; + float _2151 = _global_1[(_2144 + 1)]; + float _2156 = _2148 * 0.5f; + _2163 = dot(float3((_2146 * _2146), _2146, 1.0f), float3(mad((_global_1[(_2144 + 2)]), 0.5f, mad(_2151, -1.0f, _2156)), (_2151 - _2148), mad(_2151, 0.5f, _2156))); + } else { + _2163 = 4.0f; + } + } + } else { + _2163 = -4.0f; + } + float _2165 = exp2(_2163 * 3.321928024291992f); + float _2168 = mad(0.16386906802654266f, _2165, mad(0.14067870378494263f, _2106, (_2047 * 0.6954522132873535f))); + float _2171 = mad(0.0955343171954155f, _2165, mad(0.8596711158752441f, _2106, (_2047 * 0.044794563204050064f))); + float _2174 = mad(1.0015007257461548f, _2165, mad(0.004025210160762072f, _2106, (_2047 * -0.005525882821530104f))); + float _2177 = mad(-0.21492856740951538f, _2174, mad(-0.2365107536315918f, _2171, (_2168 * 1.4514392614364624f))); + float _2180 = mad(-0.09967592358589172f, _2174, mad(1.17622971534729f, _2171, (_2168 * -0.07655377686023712f))); + float _2183 = mad(0.9977163076400757f, _2174, mad(-0.006032449658960104f, _2171, (_2168 * 0.008316148072481155f))); + float _2186 = log2(select((_2177 <= 0.0f), 9.999999747378752e-05f, _2177)); + float _2187 = _2186 * 0.3010300099849701f; + do { + if (!(!(_2187 <= -3.848327875137329f))) { + _2246 = ((_2186 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2187 > -3.848327875137329f) && (bool)(_2187 < 0.6812411546707153f)) { + float _2198 = (_2186 + 12.783867835998535f) * 0.46521204710006714f; + int _2199 = int(_2198); + float _2201 = _2198 - float((int)(_2199)); + float _2203 = _global_2[_2199]; + float _2206 = _global_2[(_2199 + 1)]; + float _2211 = _2203 * 0.5f; + _2246 = dot(float3((_2201 * _2201), _2201, 1.0f), float3(mad((_global_2[(_2199 + 2)]), 0.5f, mad(_2206, -1.0f, _2211)), (_2206 - _2203), mad(_2206, 0.5f, _2211))); + } else { + if ((bool)(_2187 >= 0.6812411546707153f) && (bool)(_2187 < 3.653702974319458f)) { + float _2223 = (_2186 + -2.2630341053009033f) * 0.7089107632637024f; + int _2224 = int(_2223); + float _2226 = _2223 - float((int)(_2224)); + float _2228 = _global_3[_2224]; + float _2231 = _global_3[(_2224 + 1)]; + float _2236 = _2228 * 0.5f; + _2246 = dot(float3((_2226 * _2226), _2226, 1.0f), float3(mad((_global_3[(_2224 + 2)]), 0.5f, mad(_2231, -1.0f, _2236)), (_2231 - _2228), mad(_2231, 0.5f, _2236))); + } else { + _2246 = ((_2186 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2251 = log2(select((_2180 <= 0.0f), 9.999999747378752e-05f, _2180)); + float _2252 = _2251 * 0.3010300099849701f; + do { + if (!(!(_2252 <= -3.848327875137329f))) { + _2311 = ((_2251 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2252 > -3.848327875137329f) && (bool)(_2252 < 0.6812411546707153f)) { + float _2263 = (_2251 + 12.783867835998535f) * 0.46521204710006714f; + int _2264 = int(_2263); + float _2266 = _2263 - float((int)(_2264)); + float _2268 = _global_2[_2264]; + float _2271 = _global_2[(_2264 + 1)]; + float _2276 = _2268 * 0.5f; + _2311 = dot(float3((_2266 * _2266), _2266, 1.0f), float3(mad((_global_2[(_2264 + 2)]), 0.5f, mad(_2271, -1.0f, _2276)), (_2271 - _2268), mad(_2271, 0.5f, _2276))); + } else { + if ((bool)(_2252 >= 0.6812411546707153f) && (bool)(_2252 < 3.653702974319458f)) { + float _2288 = (_2251 + -2.2630341053009033f) * 0.7089107632637024f; + int _2289 = int(_2288); + float _2291 = _2288 - float((int)(_2289)); + float _2293 = _global_3[_2289]; + float _2296 = _global_3[(_2289 + 1)]; + float _2301 = _2293 * 0.5f; + _2311 = dot(float3((_2291 * _2291), _2291, 1.0f), float3(mad((_global_3[(_2289 + 2)]), 0.5f, mad(_2296, -1.0f, _2301)), (_2296 - _2293), mad(_2296, 0.5f, _2301))); + } else { + _2311 = ((_2251 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2316 = log2(select((_2183 <= 0.0f), 9.999999747378752e-05f, _2183)); + float _2317 = _2316 * 0.3010300099849701f; + do { + if (!(!(_2317 <= -3.848327875137329f))) { + _2376 = ((_2316 * 0.9030900001525879f) + 7.54498291015625f); + } else { + if ((bool)(_2317 > -3.848327875137329f) && (bool)(_2317 < 0.6812411546707153f)) { + float _2328 = (_2316 + 12.783867835998535f) * 0.46521204710006714f; + int _2329 = int(_2328); + float _2331 = _2328 - float((int)(_2329)); + float _2333 = _global_2[_2329]; + float _2336 = _global_2[(_2329 + 1)]; + float _2341 = _2333 * 0.5f; + _2376 = dot(float3((_2331 * _2331), _2331, 1.0f), float3(mad((_global_2[(_2329 + 2)]), 0.5f, mad(_2336, -1.0f, _2341)), (_2336 - _2333), mad(_2336, 0.5f, _2341))); + } else { + if ((bool)(_2317 >= 0.6812411546707153f) && (bool)(_2317 < 3.653702974319458f)) { + float _2353 = (_2316 + -2.2630341053009033f) * 0.7089107632637024f; + int _2354 = int(_2353); + float _2356 = _2353 - float((int)(_2354)); + float _2358 = _global_3[_2354]; + float _2361 = _global_3[(_2354 + 1)]; + float _2366 = _2358 * 0.5f; + _2376 = dot(float3((_2356 * _2356), _2356, 1.0f), float3(mad((_global_3[(_2354 + 2)]), 0.5f, mad(_2361, -1.0f, _2366)), (_2361 - _2358), mad(_2361, 0.5f, _2366))); + } else { + _2376 = ((_2316 * 0.018061799928545952f) + 2.780777931213379f); + } + } + } + float _2379 = exp2(_2246 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2380 = exp2(_2311 * 3.321928024291992f) + -3.507384462864138e-05f; + float _2381 = exp2(_2376 * 3.321928024291992f) + -3.507384462864138e-05f; + do { + if (!_1804) { + _2393 = mad(_36, _2381, mad(_35, _2380, (_2379 * _34))); + _2394 = mad(_39, _2381, mad(_38, _2380, (_2379 * _37))); + _2395 = mad(_42, _2381, mad(_41, _2380, (_2379 * _40))); + } else { + _2393 = _2379; + _2394 = _2380; + _2395 = _2381; + } + float _2405 = exp2(log2(_2393 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2406 = exp2(log2(_2394 * 9.999999747378752e-05f) * 0.1593017578125f); + float _2407 = exp2(log2(_2395 * 9.999999747378752e-05f) * 0.1593017578125f); + _3172 = exp2(log2((1.0f / ((_2405 * 18.6875f) + 1.0f)) * ((_2405 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3173 = exp2(log2((1.0f / ((_2406 * 18.6875f) + 1.0f)) * ((_2406 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3174 = exp2(log2((1.0f / ((_2407 * 18.6875f) + 1.0f)) * ((_2407 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if ((cb0_074z & -3) == 4) { + float _2440 = _1703 * 3.0f; + float _2441 = _1704 * 3.0f; + float _2444 = mad(0.17733481526374817f, _2441, mad(0.38297808170318604f, _2440, (_1702 * 1.31910240650177f))); + float _2447 = mad(0.09676162153482437f, _2441, mad(0.8134231567382812f, _2440, (_1702 * 0.2693769633769989f))); + float _2450 = mad(0.870704174041748f, _2441, mad(0.11154405772686005f, _2440, (_1702 * 0.05263196676969528f))); + float _2454 = max(max(_2444, _2447), _2450); + float _2459 = (max(_2454, 1.000000013351432e-10f) - max(min(min(_2444, _2447), _2450), 1.000000013351432e-10f)) / max(_2454, 0.009999999776482582f); + float _2472 = ((_2447 + _2444) + _2450) + (sqrt((((_2450 - _2447) * _2450) + ((_2447 - _2444) * _2447)) + ((_2444 - _2450) * _2444)) * 1.75f); + float _2473 = _2472 * 0.3333333432674408f; + float _2474 = _2459 + -0.4000000059604645f; + float _2475 = _2474 * 5.0f; + float _2479 = max((1.0f - abs(_2474 * 2.5f)), 0.0f); + float _2490 = ((float((int)(((int)(uint)((bool)(_2475 > 0.0f))) - ((int)(uint)((bool)(_2475 < 0.0f))))) * (1.0f - (_2479 * _2479))) + 1.0f) * 0.02500000037252903f; + do { + if (!(_2473 <= 0.0533333346247673f)) { + if (!(_2473 >= 0.1599999964237213f)) { + _2499 = (((0.23999999463558197f / _2472) + -0.5f) * _2490); + } else { + _2499 = 0.0f; + } + } else { + _2499 = _2490; + } + float _2500 = _2499 + 1.0f; + float _2501 = _2500 * _2444; + float _2502 = _2500 * _2447; + float _2503 = _2500 * _2450; + do { + if (!((bool)(_2501 == _2502) && (bool)(_2502 == _2503))) { + float _2510 = ((_2501 * 2.0f) - _2502) - _2503; + float _2513 = ((_2447 - _2450) * 1.7320507764816284f) * _2500; + float _2515 = atan(_2513 / _2510); + bool _2518 = (_2510 < 0.0f); + bool _2519 = (_2510 == 0.0f); + bool _2520 = (_2513 >= 0.0f); + bool _2521 = (_2513 < 0.0f); + _2532 = select((_2520 && _2519), 90.0f, select((_2521 && _2519), -90.0f, (select((_2521 && _2518), (_2515 + -3.1415927410125732f), select((_2520 && _2518), (_2515 + 3.1415927410125732f), _2515)) * 57.2957763671875f))); + } else { + _2532 = 0.0f; + } + float _2537 = min(max(select((_2532 < 0.0f), (_2532 + 360.0f), _2532), 0.0f), 360.0f); + do { + if (_2537 < -180.0f) { + _2546 = (_2537 + 360.0f); + } else { + if (_2537 > 180.0f) { + _2546 = (_2537 + -360.0f); + } else { + _2546 = _2537; + } + } + do { + if ((bool)(_2546 > -67.5f) && (bool)(_2546 < 67.5f)) { + float _2552 = (_2546 + 67.5f) * 0.029629629105329514f; + int _2553 = int(_2552); + float _2555 = _2552 - float((int)(_2553)); + float _2556 = _2555 * _2555; + float _2557 = _2556 * _2555; + if (_2553 == 3) { + _2585 = (((0.1666666716337204f - (_2555 * 0.5f)) + (_2556 * 0.5f)) - (_2557 * 0.1666666716337204f)); + } else { + if (_2553 == 2) { + _2585 = ((0.6666666865348816f - _2556) + (_2557 * 0.5f)); + } else { + if (_2553 == 1) { + _2585 = (((_2557 * -0.5f) + 0.1666666716337204f) + ((_2556 + _2555) * 0.5f)); + } else { + _2585 = select((_2553 == 0), (_2557 * 0.1666666716337204f), 0.0f); + } + } + } + } else { + _2585 = 0.0f; + } + float _2594 = min(max(((((_2459 * 0.27000001072883606f) * (0.029999999329447746f - _2501)) * _2585) + _2501), 0.0f), 65535.0f); + float _2595 = min(max(_2502, 0.0f), 65535.0f); + float _2596 = min(max(_2503, 0.0f), 65535.0f); + float _2609 = min(max(mad(-0.21492856740951538f, _2596, mad(-0.2365107536315918f, _2595, (_2594 * 1.4514392614364624f))), 0.0f), 65535.0f); + float _2610 = min(max(mad(-0.09967592358589172f, _2596, mad(1.17622971534729f, _2595, (_2594 * -0.07655377686023712f))), 0.0f), 65535.0f); + float _2611 = min(max(mad(0.9977163076400757f, _2596, mad(-0.006032449658960104f, _2595, (_2594 * 0.008316148072481155f))), 0.0f), 65535.0f); + float _2612 = dot(float3(_2609, _2610, _2611), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); + float _2619 = ((_2609 - _2612) * 0.9599999785423279f) + _2612; + float _2620 = ((_2610 - _2612) * 0.9599999785423279f) + _2612; + float _2621 = ((_2611 - _2612) * 0.9599999785423279f) + _2612; + float _2624 = log2(select((_2619 <= 0.0f), 6.103515625e-05f, _2619)); + float _2625 = _2624 * 0.3010300099849701f; + do { + if (!(_2625 <= -5.2601776123046875f)) { + if ((bool)(_2625 > -5.2601776123046875f) && (bool)(_2625 < -0.7447274923324585f)) { + float _2633 = (_2624 * 0.19999998807907104f) + 3.494786262512207f; + int _2634 = int(_2633); + float _2636 = _2633 - float((int)(_2634)); + float _2638 = _global_0[_2634]; + float _2641 = _global_0[(_2634 + 1)]; + float _2646 = _2638 * 0.5f; + _2678 = dot(float3((_2636 * _2636), _2636, 1.0f), float3(mad((_global_0[(_2634 + 2)]), 0.5f, mad(_2641, -1.0f, _2646)), (_2641 - _2638), mad(_2641, 0.5f, _2646))); + } else { + if ((bool)(_2625 >= -0.7447274923324585f) && (bool)(_2625 < 4.673812389373779f)) { + float _2658 = (_2624 * 0.1666666567325592f) + 0.4123218357563019f; + int _2659 = int(_2658); + float _2661 = _2658 - float((int)(_2659)); + float _2663 = _global_1[_2659]; + float _2666 = _global_1[(_2659 + 1)]; + float _2671 = _2663 * 0.5f; + _2678 = dot(float3((_2661 * _2661), _2661, 1.0f), float3(mad((_global_1[(_2659 + 2)]), 0.5f, mad(_2666, -1.0f, _2671)), (_2666 - _2663), mad(_2666, 0.5f, _2671))); + } else { + _2678 = 4.0f; + } + } + } else { + _2678 = -4.0f; + } + float _2680 = exp2(_2678 * 3.321928024291992f); + float _2683 = log2(select((_2620 <= 0.0f), 6.103515625e-05f, _2620)); + float _2684 = _2683 * 0.3010300099849701f; + do { + if (!(_2684 <= -5.2601776123046875f)) { + if ((bool)(_2684 > -5.2601776123046875f) && (bool)(_2684 < -0.7447274923324585f)) { + float _2692 = (_2683 * 0.19999998807907104f) + 3.494786262512207f; + int _2693 = int(_2692); + float _2695 = _2692 - float((int)(_2693)); + float _2697 = _global_0[_2693]; + float _2700 = _global_0[(_2693 + 1)]; + float _2705 = _2697 * 0.5f; + _2737 = dot(float3((_2695 * _2695), _2695, 1.0f), float3(mad((_global_0[(_2693 + 2)]), 0.5f, mad(_2700, -1.0f, _2705)), (_2700 - _2697), mad(_2700, 0.5f, _2705))); + } else { + if ((bool)(_2684 >= -0.7447274923324585f) && (bool)(_2684 < 4.673812389373779f)) { + float _2717 = (_2683 * 0.1666666567325592f) + 0.4123218357563019f; + int _2718 = int(_2717); + float _2720 = _2717 - float((int)(_2718)); + float _2722 = _global_1[_2718]; + float _2725 = _global_1[(_2718 + 1)]; + float _2730 = _2722 * 0.5f; + _2737 = dot(float3((_2720 * _2720), _2720, 1.0f), float3(mad((_global_1[(_2718 + 2)]), 0.5f, mad(_2725, -1.0f, _2730)), (_2725 - _2722), mad(_2725, 0.5f, _2730))); + } else { + _2737 = 4.0f; + } + } + } else { + _2737 = -4.0f; + } + float _2739 = exp2(_2737 * 3.321928024291992f); + float _2742 = log2(select((_2621 <= 0.0f), 6.103515625e-05f, _2621)); + float _2743 = _2742 * 0.3010300099849701f; + do { + if (!(_2743 <= -5.2601776123046875f)) { + if ((bool)(_2743 > -5.2601776123046875f) && (bool)(_2743 < -0.7447274923324585f)) { + float _2751 = (_2742 * 0.19999998807907104f) + 3.494786262512207f; + int _2752 = int(_2751); + float _2754 = _2751 - float((int)(_2752)); + float _2756 = _global_0[_2752]; + float _2759 = _global_0[(_2752 + 1)]; + float _2764 = _2756 * 0.5f; + _2796 = dot(float3((_2754 * _2754), _2754, 1.0f), float3(mad((_global_0[(_2752 + 2)]), 0.5f, mad(_2759, -1.0f, _2764)), (_2759 - _2756), mad(_2759, 0.5f, _2764))); + } else { + if ((bool)(_2743 >= -0.7447274923324585f) && (bool)(_2743 < 4.673812389373779f)) { + float _2776 = (_2742 * 0.1666666567325592f) + 0.4123218357563019f; + int _2777 = int(_2776); + float _2779 = _2776 - float((int)(_2777)); + float _2781 = _global_1[_2777]; + float _2784 = _global_1[(_2777 + 1)]; + float _2789 = _2781 * 0.5f; + _2796 = dot(float3((_2779 * _2779), _2779, 1.0f), float3(mad((_global_1[(_2777 + 2)]), 0.5f, mad(_2784, -1.0f, _2789)), (_2784 - _2781), mad(_2784, 0.5f, _2789))); + } else { + _2796 = 4.0f; + } + } + } else { + _2796 = -4.0f; + } + float _2798 = exp2(_2796 * 3.321928024291992f); + float _2801 = mad(0.16386906802654266f, _2798, mad(0.14067870378494263f, _2739, (_2680 * 0.6954522132873535f))); + float _2804 = mad(0.0955343171954155f, _2798, mad(0.8596711158752441f, _2739, (_2680 * 0.044794563204050064f))); + float _2807 = mad(1.0015007257461548f, _2798, mad(0.004025210160762072f, _2739, (_2680 * -0.005525882821530104f))); + float _2810 = mad(-0.21492856740951538f, _2807, mad(-0.2365107536315918f, _2804, (_2801 * 1.4514392614364624f))); + float _2813 = mad(-0.09967592358589172f, _2807, mad(1.17622971534729f, _2804, (_2801 * -0.07655377686023712f))); + float _2816 = mad(0.9977163076400757f, _2807, mad(-0.006032449658960104f, _2804, (_2801 * 0.008316148072481155f))); + float _2819 = log2(select((_2810 <= 0.0f), 9.999999747378752e-05f, _2810)); + float _2820 = _2819 * 0.3010300099849701f; + do { + if (!(_2820 <= -3.848327875137329f)) { + if ((bool)(_2820 > -3.848327875137329f) && (bool)(_2820 < 0.6812411546707153f)) { + float _2828 = (_2819 + 12.783867835998535f) * 0.46521204710006714f; + int _2829 = int(_2828); + float _2831 = _2828 - float((int)(_2829)); + float _2833 = _global_4[_2829]; + float _2836 = _global_4[(_2829 + 1)]; + float _2841 = _2833 * 0.5f; + _2876 = dot(float3((_2831 * _2831), _2831, 1.0f), float3(mad((_global_4[(_2829 + 2)]), 0.5f, mad(_2836, -1.0f, _2841)), (_2836 - _2833), mad(_2836, 0.5f, _2841))); + } else { + if ((bool)(_2820 >= 0.6812411546707153f) && (bool)(_2820 < 3.7613162994384766f)) { + float _2853 = (_2819 + -2.2630341053009033f) * 0.6841424107551575f; + int _2854 = int(_2853); + float _2856 = _2853 - float((int)(_2854)); + float _2858 = _global_5[_2854]; + float _2861 = _global_5[(_2854 + 1)]; + float _2866 = _2858 * 0.5f; + _2876 = dot(float3((_2856 * _2856), _2856, 1.0f), float3(mad((_global_5[(_2854 + 2)]), 0.5f, mad(_2861, -1.0f, _2866)), (_2861 - _2858), mad(_2861, 0.5f, _2866))); + } else { + _2876 = ((_2819 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2876 = -2.301030158996582f; + } + float _2878 = exp2(_2876 * 3.321928024291992f); + float _2881 = log2(select((_2813 <= 0.0f), 9.999999747378752e-05f, _2813)); + float _2882 = _2881 * 0.3010300099849701f; + do { + if (!(_2882 <= -3.848327875137329f)) { + if ((bool)(_2882 > -3.848327875137329f) && (bool)(_2882 < 0.6812411546707153f)) { + float _2890 = (_2881 + 12.783867835998535f) * 0.46521204710006714f; + int _2891 = int(_2890); + float _2893 = _2890 - float((int)(_2891)); + float _2895 = _global_4[_2891]; + float _2898 = _global_4[(_2891 + 1)]; + float _2903 = _2895 * 0.5f; + _2938 = dot(float3((_2893 * _2893), _2893, 1.0f), float3(mad((_global_4[(_2891 + 2)]), 0.5f, mad(_2898, -1.0f, _2903)), (_2898 - _2895), mad(_2898, 0.5f, _2903))); + } else { + if ((bool)(_2882 >= 0.6812411546707153f) && (bool)(_2882 < 3.7613162994384766f)) { + float _2915 = (_2881 + -2.2630341053009033f) * 0.6841424107551575f; + int _2916 = int(_2915); + float _2918 = _2915 - float((int)(_2916)); + float _2920 = _global_5[_2916]; + float _2923 = _global_5[(_2916 + 1)]; + float _2928 = _2920 * 0.5f; + _2938 = dot(float3((_2918 * _2918), _2918, 1.0f), float3(mad((_global_5[(_2916 + 2)]), 0.5f, mad(_2923, -1.0f, _2928)), (_2923 - _2920), mad(_2923, 0.5f, _2928))); + } else { + _2938 = ((_2881 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _2938 = -2.301030158996582f; + } + float _2940 = exp2(_2938 * 3.321928024291992f); + float _2943 = log2(select((_2816 <= 0.0f), 9.999999747378752e-05f, _2816)); + float _2944 = _2943 * 0.3010300099849701f; + do { + if (!(_2944 <= -3.848327875137329f)) { + if ((bool)(_2944 > -3.848327875137329f) && (bool)(_2944 < 0.6812411546707153f)) { + float _2952 = (_2943 + 12.783867835998535f) * 0.46521204710006714f; + int _2953 = int(_2952); + float _2955 = _2952 - float((int)(_2953)); + float _2957 = _global_4[_2953]; + float _2960 = _global_4[(_2953 + 1)]; + float _2965 = _2957 * 0.5f; + _3000 = dot(float3((_2955 * _2955), _2955, 1.0f), float3(mad((_global_4[(_2953 + 2)]), 0.5f, mad(_2960, -1.0f, _2965)), (_2960 - _2957), mad(_2960, 0.5f, _2965))); + } else { + if ((bool)(_2944 >= 0.6812411546707153f) && (bool)(_2944 < 3.7613162994384766f)) { + float _2977 = (_2943 + -2.2630341053009033f) * 0.6841424107551575f; + int _2978 = int(_2977); + float _2980 = _2977 - float((int)(_2978)); + float _2982 = _global_5[_2978]; + float _2985 = _global_5[(_2978 + 1)]; + float _2990 = _2982 * 0.5f; + _3000 = dot(float3((_2980 * _2980), _2980, 1.0f), float3(mad((_global_5[(_2978 + 2)]), 0.5f, mad(_2985, -1.0f, _2990)), (_2985 - _2982), mad(_2985, 0.5f, _2990))); + } else { + _3000 = ((_2943 * 0.036123599857091904f) + 2.849672317504883f); + } + } + } else { + _3000 = -2.301030158996582f; + } + float _3002 = exp2(_3000 * 3.321928024291992f); + do { + if (!(cb0_074z == 6)) { + _3014 = mad(_36, _3002, mad(_35, _2940, (_2878 * _34))); + _3015 = mad(_39, _3002, mad(_38, _2940, (_2878 * _37))); + _3016 = mad(_42, _3002, mad(_41, _2940, (_2878 * _40))); + } else { + _3014 = _2878; + _3015 = _2940; + _3016 = _3002; + } + float _3026 = exp2(log2(_3014 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3027 = exp2(log2(_3015 * 9.999999747378752e-05f) * 0.1593017578125f); + float _3028 = exp2(log2(_3016 * 9.999999747378752e-05f) * 0.1593017578125f); + _3172 = exp2(log2((1.0f / ((_3026 * 18.6875f) + 1.0f)) * ((_3026 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3173 = exp2(log2((1.0f / ((_3027 * 18.6875f) + 1.0f)) * ((_3027 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3174 = exp2(log2((1.0f / ((_3028 * 18.6875f) + 1.0f)) * ((_3028 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + if (cb0_074z == 7) { + float _3061 = mad(0.04736635088920593f, _1704, mad(0.3395121395587921f, _1703, (_1702 * 0.613191545009613f))); + float _3064 = mad(0.01345000695437193f, _1704, mad(0.9163357615470886f, _1703, (_1702 * 0.07020691782236099f))); + float _3067 = mad(0.8696067929267883f, _1704, mad(0.1095672994852066f, _1703, (_1702 * 0.020618872717022896f))); + float _3086 = exp2(log2(mad(_36, _3067, mad(_35, _3064, (_3061 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3087 = exp2(log2(mad(_39, _3067, mad(_38, _3064, (_3061 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); + float _3088 = exp2(log2(mad(_42, _3067, mad(_41, _3064, (_3061 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); + _3172 = exp2(log2((1.0f / ((_3086 * 18.6875f) + 1.0f)) * ((_3086 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3173 = exp2(log2((1.0f / ((_3087 * 18.6875f) + 1.0f)) * ((_3087 * 18.8515625f) + 0.8359375f)) * 78.84375f); + _3174 = exp2(log2((1.0f / ((_3088 * 18.6875f) + 1.0f)) * ((_3088 * 18.8515625f) + 0.8359375f)) * 78.84375f); + } else { + if (!(cb0_074z == 8)) { + if (cb0_074z == 9) { + float _3123 = mad(0.04736635088920593f, _1692, mad(0.3395121395587921f, _1691, (_1690 * 0.613191545009613f))); + float _3126 = mad(0.01345000695437193f, _1692, mad(0.9163357615470886f, _1691, (_1690 * 0.07020691782236099f))); + float _3129 = mad(0.8696067929267883f, _1692, mad(0.1095672994852066f, _1691, (_1690 * 0.020618872717022896f))); + _3172 = mad(_36, _3129, mad(_35, _3126, (_3123 * _34))); + _3173 = mad(_39, _3129, mad(_38, _3126, (_3123 * _37))); + _3174 = mad(_42, _3129, mad(_41, _3126, (_3123 * _40))); + } else { + float _3142 = mad(0.04736635088920593f, _1718, mad(0.3395121395587921f, _1717, (_1716 * 0.613191545009613f))); + float _3145 = mad(0.01345000695437193f, _1718, mad(0.9163357615470886f, _1717, (_1716 * 0.07020691782236099f))); + float _3148 = mad(0.8696067929267883f, _1718, mad(0.1095672994852066f, _1717, (_1716 * 0.020618872717022896f))); + float _3161 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; + _3172 = exp2(_3161 * log2(mad(_36, _3148, mad(_35, _3145, (_3142 * _34))))); + _3173 = exp2(_3161 * log2(mad(_39, _3148, mad(_38, _3145, (_3142 * _37))))); + _3174 = exp2(_3161 * log2(mad(_42, _3148, mad(_41, _3145, (_3142 * _40))))); + } + } else { + _3172 = _1702; + _3173 = _1703; + _3174 = _1704; + } + } + } + } + } + } + SV_Target.x = (_3172 * 0.9523810148239136f); + SV_Target.y = (_3173 * 0.9523810148239136f); + SV_Target.z = (_3174 * 0.9523810148239136f); + SV_Target.w = 0.0f; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x0DC450EA.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x0DC450EA.ps_6_0.hlsl new file mode 100644 index 000000000..4b46500d0 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x0DC450EA.ps_6_0.hlsl @@ -0,0 +1,1115 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _32 = cb0_065x * cb0_064w; + float _33 = TEXCOORD_3.x * 0.5f; + float _34 = TEXCOORD_3.y * 0.5f; + float _105; + float _106; + float _114; + float _115; + float _213; + float _214; + float _215; + float _237; + float _244; + float _251; + float _258; + float _293; + float _294; + float _295; + float _330; + float _331; + float _332; + float _360; + float _361; + float _383; + float _414; + float _415; + float _476; + float _477; + float _545; + float _546; + float _618; + float _619; + float _620; + float _649; + float _650; + float _651; + float _716; + float _717; + float _718; + float _730; + float _731; + float _732; + float _863; + float _864; + float _865; + float _897; + float _898; + float _899; + float _946; + float _947; + float _948; + float _963; + float _964; + float _965; + float _1038; + float _1039; + float _1040; + float _1128; + float _1129; + float _1130; + if (!(!(cb0_102x != 0.0f))) { + float _39 = cb0_102x * 2.0f; + do { + if (_39 > 0.0f) { + float _43 = abs(_39) * 0.5f; + float _44 = tan(_43); + float _45 = _32 * TEXCOORD_3.x; + float _55 = rsqrt(dot(float2(_45, TEXCOORD_3.y), float2(_45, TEXCOORD_3.y))); + float _59 = rsqrt(dot(float2(_32, 1.0f), float2(_32, 1.0f))); + float _64 = tan((sqrt((_45 * _45) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_32 * _32) + 1.0f)) * _43); + _105 = (((_64 * ((_55 * _45) / (_59 * _32))) / _44) * 0.5f); + _106 = (((_64 * ((_55 * TEXCOORD_3.y) / _59)) / _44) * 0.5f); + } else { + if (_39 < 0.0f) { + float _78 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _83 = (((_78 * _78) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _78; + float _85 = atan(_33 / _34); + bool _88 = (_34 < 0.0f); + bool _89 = (_34 == 0.0f); + bool _90 = (_33 >= 0.0f); + bool _91 = (_33 < 0.0f); + float _99 = select((_90 && _89), 1.5707963705062866f, select((_91 && _89), -1.5707963705062866f, select((_91 && _88), (_85 + -3.1415927410125732f), select((_90 && _88), (_85 + 3.1415927410125732f), _85)))); + _105 = (sin(_99) * _83); + _106 = (cos(_99) * _83); + } else { + _105 = _33; + _106 = _34; + } + } + _114 = (((_105 + 0.5f) * 2.0f) + -1.0f); + _115 = (((_106 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _114 = TEXCOORD_3.x; + _115 = TEXCOORD_3.y; + } + float _128 = ((cb0_048z * _114) + cb0_049x) * cb0_048x; + float _129 = ((cb0_048w * _115) + cb0_049y) * cb0_048y; + float4 _130 = t5.SampleLevel(s5, float2(_128, _129), 0.0f); + float _142 = ((View_1040.x * _130.x) + View_1040.y) + (1.0f / ((View_1040.z * _130.x) - View_1040.w)); + float4 _143 = t4.Sample(s4, float2(_128, _129)); + float _151 = 1.0f / ((View_1040.w + _142) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _196 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _201 = saturate(((sqrt((_115 * _115) + (_114 * _114)) - cb0_098y) - _196) / (-0.0f - _196)); + float _205 = (_201 * _201) * (3.0f - (_201 * 2.0f)); + _213 = (1.0f - (_205 * max(cb0_097y, cb0_102y))); + _214 = (1.0f - (_205 * max(cb0_097y, cb0_103y))); + _215 = (1.0f - (_205 * max(cb0_097y, cb0_104y))); + } else { + _213 = 1.0f; + _214 = 1.0f; + _215 = 1.0f; + } + bool _221 = !(cb0_097z == 0.0f); + bool _222 = !(cb0_102z == 0.0f); + bool _224 = !(cb0_103z == 0.0f); + bool _226 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_221 || _222)) || _224)) || _226)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_221) { + _237 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _237 = cb0_097z; + } + do { + if (_222) { + _244 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _244 = cb0_102z; + } + do { + if (_224) { + _251 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _251 = cb0_103z; + } + do { + if (_226) { + _258 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _258 = cb0_104z; + } + float _259 = max(_237, _244); + float _260 = max(_237, _251); + float _261 = max(_237, _258); + float _277 = saturate((_142 - (_259 * 1000.0f)) / ((_259 * 9999.990234375f) + 0.009999999776482582f)); + float _278 = saturate((_142 - (_260 * 1000.0f)) / ((_260 * 9999.990234375f) + 0.009999999776482582f)); + float _279 = saturate((_142 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + _293 = ((_277 * _277) * (3.0f - (_277 * 2.0f))); + _294 = ((_278 * _278) * (3.0f - (_278 * 2.0f))); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _293 = 1.0f; + _294 = 1.0f; + _295 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _316 = saturate(select((((_151 - _143.x) + ((((View_448[3].z) - _151) + ((View_448[2].z) * _142)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_143.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _330 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _331 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _332 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _330 = 1.0f; + _331 = 1.0f; + _332 = 1.0f; + } + float _333 = TEXCOORD_2.w * 543.3099975585938f; + float _337 = frac(sin(_333 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _360 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _333) * 493013.0f) + 7.177000045776367f) - _337)) + _337); + _361 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _333) * 493013.0f) + 14.298999786376953f) - _337)) + _337); + } else { + _360 = _337; + _361 = _337; + } + if (cb0_100z > 0.0f) { + _383 = (((((_295 * _215) * _332) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_337 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _383 = 1.0f; + } + float _386 = (_294 * _214) * _331; + float _387 = _386 * cb0_100y; + if (cb0_100y > 0.0f) { + float _392 = View_2376 * 0.00016666666488163173f; + float _396 = frac(abs(_392)); + float _401 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_392 >= (-0.0f - _392)), _396, (-0.0f - _396)); + float _407 = (0.5f - frac(sin(dot(float2(_401, _401), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _414 = (((_387 * 0.5f) * _407) + _128); + _415 = ((_407 * _387) + _129); + } else { + _414 = _128; + _415 = _129; + } + float _425 = cb0_118z * cb0_117x; + float _426 = cb0_118z * cb0_117y; + bool _427 = (cb0_118x == 0.0f); + float _437 = (cb0_114z * _114) + cb0_114x; + float _438 = (cb0_114w * _115) + cb0_114y; + float _449 = float((int)(((int)(uint)((bool)(_437 > 0.0f))) - ((int)(uint)((bool)(_437 < 0.0f))))); + float _450 = float((int)(((int)(uint)((bool)(_438 > 0.0f))) - ((int)(uint)((bool)(_438 < 0.0f))))); + float _455 = saturate(abs(_437) - cb0_117z); + float _456 = saturate(abs(_438) - cb0_117z); + float _466 = _438 - ((_456 * _425) * _450); + float _468 = _438 - ((_456 * _426) * _450); + bool _469 = (cb0_118x > 0.0f); + if (_469) { + _476 = (_466 - (cb0_118w * 0.4000000059604645f)); + _477 = (_468 - (cb0_118w * 0.20000000298023224f)); + } else { + _476 = _466; + _477 = _468; + } + float4 _511 = t0.Sample(s0, float2(_414, _415)); + float4 _515 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_437 - ((_455 * select(_427, _425, cb0_117x)) * _449))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _476) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _517 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_437 - ((_455 * select(_427, _426, cb0_117y)) * _449))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _477) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_469) { + float _527 = saturate(((((_511.y * 0.5870000123977661f) - cb0_118y) + (_511.x * 0.29899999499320984f)) + (_511.z * 0.11400000005960464f)) * 10.0f); + float _531 = (_527 * _527) * (3.0f - (_527 * 2.0f)); + _545 = ((((_511.x - _515.x) + (_531 * (_515.x - _511.x))) * cb0_118x) + _515.x); + _546 = ((((_511.y - _517.y) + (_531 * (_517.y - _511.y))) * cb0_118x) + _517.y); + } else { + _545 = _515.x; + _546 = _517.y; + } + float _549 = saturate(cb0_099x); + float _551 = saturate(cb0_099y); + if (_549 > 0.0f) { + float _562 = saturate(((_545 * 0.29899999499320984f) + (_511.z * 0.11400000005960464f)) + (_546 * 0.5870000123977661f)); + float _568 = ((_562 * _562) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_562 * 2.0f)); + float _575 = max(sqrt(((_545 * _545) + (_511.z * _511.z)) + (_546 * _546)), 0.014999999664723873f); + float _576 = _545 / _575; + float _577 = _546 / _575; + float _578 = _511.z / _575; + float _588 = log2(_568); + float _607 = ((_293 * _213) * _330) * _549; + _618 = (((((lerp(_576, 1.0f, 0.25f)) * (((_551 * 0.17000000178813934f) + 0.029999999329447746f) + _568)) - _545) * _607) + _545); + _619 = (((((((_551 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_588 * 0.8999999761581421f)) * (lerp(_577, 1.0f, 0.25f))) - _546) * _607) + _546); + _620 = (((((((_551 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_588 * 0.949999988079071f)) * (lerp(_578, 1.0f, 0.25f))) - _511.z) * _607) + _511.z); + } else { + _618 = _545; + _619 = _546; + _620 = _511.z; + } + float _623 = saturate(cb0_100x); + float _624 = _386 * _623; + if (_623 > 0.0f) { + float _635 = (sin(((_115 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _649 = ((((_635 * _618) - _618) * _624) + _618); + _650 = ((((_635 * _619) - _619) * _624) + _619); + _651 = ((((_635 * _620) - _620) * _624) + _620); + } else { + _649 = _618; + _650 = _619; + _651 = _620; + } + float4 _676 = t1.Sample(s1, float2(min(max(((cb0_068z * _414) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _415) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_676); + [branch] + if (!(cb0_085z == 0)) { + bool _705 = (cb0_086x != 0); + float4 _708 = t2.Sample(s2, float2(select(_705, _414, min(max(((cb0_076z * _414) + cb0_077x), cb0_075z), cb0_076x)), select(_705, _415, min(max(((cb0_076w * _415) + cb0_077y), cb0_075w), cb0_076y)))); + _716 = (_708.x + _676.x); + _717 = (_708.y + _676.y); + _718 = (_708.z + _676.z); + } else { + _716 = _676.x; + _717 = _676.y; + _718 = _676.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _722 = t3.Sample(s3, float2(_414, _415)); + _730 = (_722.x + _716); + _731 = (_722.y + _717); + _732 = (_722.z + _718); + } else { + _730 = _716; + _731 = _717; + _732 = _718; + } + float _757 = TEXCOORD_1.z + -1.0f; + float _759 = TEXCOORD_1.w + -1.0f; + float _762 = ((_757 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _764 = ((_759 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _771 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_762, _764), float2(_762, _764))) + 1.0f); + float _772 = _771 * _771; + float _773 = cb0_091z + 1.0f; + float _801 = ((_757 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _803 = ((_759 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _810 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_801, _803), float2(_801, _803))) + 1.0f); + float _811 = _810 * _810; + float _812 = cb0_094z + 1.0f; + float _824 = (((_730 + ((_649 * TEXCOORD_1.x) * cb0_087x)) * _383) * ((_772 * (_773 - cb0_090x)) + cb0_090x)) * ((_811 * (_812 - cb0_093x)) + cb0_093x); + float _827 = (((_731 + ((_650 * TEXCOORD_1.x) * cb0_087y)) * _383) * ((_772 * (_773 - cb0_090y)) + cb0_090y)) * ((_811 * (_812 - cb0_093y)) + cb0_093y); + float _830 = (((_732 + ((_651 * TEXCOORD_1.x) * cb0_087z)) * _383) * ((_772 * (_773 - cb0_090z)) + cb0_090z)) * ((_811 * (_812 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_824, _827, _830)); + [branch] + if (WUWA_TM_IS(1)) { + _863 = ((((_824 * 1.3600000143051147f) + 0.04699999839067459f) * _824) / ((((_824 * 0.9599999785423279f) + 0.5600000023841858f) * _824) + 0.14000000059604645f)); + _864 = ((((_827 * 1.3600000143051147f) + 0.04699999839067459f) * _827) / ((((_827 * 0.9599999785423279f) + 0.5600000023841858f) * _827) + 0.14000000059604645f)); + _865 = ((((_830 * 1.3600000143051147f) + 0.04699999839067459f) * _830) / ((((_830 * 0.9599999785423279f) + 0.5600000023841858f) * _830) + 0.14000000059604645f)); + } else { + _863 = _824; + _864 = _827; + _865 = _830; + } + [branch] + if (WUWA_TM_IS(2)) { + float _875 = 1.0049500465393066f - (0.16398000717163086f / (_863 + -0.19505000114440918f)); + float _876 = 1.0049500465393066f - (0.16398000717163086f / (_864 + -0.19505000114440918f)); + float _877 = 1.0049500465393066f - (0.16398000717163086f / (_865 + -0.19505000114440918f)); + _897 = (((_863 - _875) * select((_863 > 0.6000000238418579f), 0.0f, 1.0f)) + _875); + _898 = (((_864 - _876) * select((_864 > 0.6000000238418579f), 0.0f, 1.0f)) + _876); + _899 = (((_865 - _877) * select((_865 > 0.6000000238418579f), 0.0f, 1.0f)) + _877); + } else { + _897 = _863; + _898 = _864; + _899 = _865; + } + [branch] + if (WUWA_TM_IS(3)) { + float _905 = cb0_037y * _897; + float _906 = cb0_037y * _898; + float _907 = cb0_037y * _899; + float _910 = cb0_037z * cb0_037w; + float _920 = cb0_038y * cb0_038x; + float _931 = cb0_038z * cb0_038x; + float _938 = cb0_038y / cb0_038z; + _946 = (((((_910 + _905) * _897) + _920) / (_931 + ((_905 + cb0_037z) * _897))) - _938); + _947 = (((((_910 + _906) * _898) + _920) / (_931 + ((_906 + cb0_037z) * _898))) - _938); + _948 = (((((_910 + _907) * _899) + _920) / (_931 + ((_907 + cb0_037z) * _899))) - _938); + } else { + _946 = _897; + _947 = _898; + _948 = _899; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _958 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _963 = (_958 * _946); + _964 = (_958 * _947); + _965 = (_958 * _948); + } else { + _963 = _946; + _964 = _947; + _965 = _948; + } + } else { + _963 = _946; + _964 = _947; + _965 = _948; + } + APPLY_EXTENDED_TONEMAP(_963, _964, _965); + float _986 = (saturate((log2(_963 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _987 = (saturate((log2(_964 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _988 = (saturate((log2(_965 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _989 = t7.Sample(s7, float3(_986, _987, _988)); + [branch] + if (!(cb0_108w == 0)) { + float4 _1013 = t6.Sample(s6, float2(min(max(((cb0_084z * _414) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _415) + cb0_085y), cb0_083w), cb0_084y))); + float _1023 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_1013.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _1024 = t8.Sample(s8, float3(_986, _987, _988)); + _1038 = (lerp(_1024.x, _989.x, _1023)); + _1039 = (lerp(_1024.y, _989.y, _1023)); + _1040 = (lerp(_1024.z, _989.z, _1023)); + } else { + _1038 = _989.x; + _1039 = _989.y; + _1040 = _989.z; + } + float _1041 = _1040 * 1.0499999523162842f; + float _1042 = _1039 * 1.0499999523162842f; + float _1043 = _1038 * 1.0499999523162842f; + float _1051 = ((_337 * 0.00390625f) + -0.001953125f) + _1043; + float _1052 = ((_360 * 0.00390625f) + -0.001953125f) + _1042; + float _1053 = ((_361 * 0.00390625f) + -0.001953125f) + _1041; + [branch] + if (!(cb0_107w == 0)) { + float _1065 = (pow(_1051, 0.012683313339948654f)); + float _1066 = (pow(_1052, 0.012683313339948654f)); + float _1067 = (pow(_1053, 0.012683313339948654f)); + float _1100 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1065 + -0.8359375f)) / (18.8515625f - (_1065 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1101 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1066 + -0.8359375f)) / (18.8515625f - (_1066 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1102 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1067 + -0.8359375f)) / (18.8515625f - (_1067 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1128 = min((_1100 * 12.920000076293945f), ((exp2(log2(max(_1100, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1129 = min((_1101 * 12.920000076293945f), ((exp2(log2(max(_1101, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1130 = min((_1102 * 12.920000076293945f), ((exp2(log2(max(_1102, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1128 = _1051; + _1129 = _1052; + _1130 = _1053; + } + SV_Target.x = _1128; + SV_Target.y = _1129; + SV_Target.z = _1130; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_1043, _1042, _1041), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x12A3DA21.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x12A3DA21.ps_6_0.hlsl new file mode 100644 index 000000000..31220edd4 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x12A3DA21.ps_6_0.hlsl @@ -0,0 +1,340 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _35 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _36 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _37 = TEXCOORD_2.w * 543.3099975585938f; + float _41 = frac(sin(_37 + TEXCOORD_2.z) * 493013.0f); + float _65; + float _66; + float _135; + float _136; + float _137; + float _149; + float _150; + float _151; + float _279; + float _280; + float _281; + float _313; + float _314; + float _315; + float _362; + float _363; + float _364; + float _379; + float _380; + float _381; + float _454; + float _455; + float _456; + float _544; + float _545; + float _546; + float _595; + float _596; + float _597; + float _598; + float _599; + float _600; + if (cb0_097x > 0.0f) { + _65 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _37) * 493013.0f) + 7.177000045776367f) - _41)) + _41); + _66 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _37) * 493013.0f) + 14.298999786376953f) - _41)) + _41); + } else { + _65 = _41; + _66 = _41; + } + float4 _67 = t0.Sample(s0, float2(_35, _36)); + float4 _95 = t1.Sample(s1, float2(min(max(((cb0_068z * _35) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _36) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_95); + [branch] + if (!(cb0_085z == 0)) { + bool _124 = (cb0_086x != 0); + float4 _127 = t2.Sample(s2, float2(select(_124, _35, min(max(((cb0_076z * _35) + cb0_077x), cb0_075z), cb0_076x)), select(_124, _36, min(max(((cb0_076w * _36) + cb0_077y), cb0_075w), cb0_076y)))); + _135 = (_127.x + _95.x); + _136 = (_127.y + _95.y); + _137 = (_127.z + _95.z); + } else { + _135 = _95.x; + _136 = _95.y; + _137 = _95.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _141 = t3.Sample(s3, float2(_35, _36)); + _149 = (_141.x + _135); + _150 = (_141.y + _136); + _151 = (_141.z + _137); + } else { + _149 = _135; + _150 = _136; + _151 = _137; + } + float _176 = TEXCOORD_1.z + -1.0f; + float _178 = TEXCOORD_1.w + -1.0f; + float _181 = ((_176 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _183 = ((_178 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _190 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_181, _183), float2(_181, _183))) + 1.0f); + float _191 = _190 * _190; + float _192 = cb0_091z + 1.0f; + float _220 = ((_176 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _222 = ((_178 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _229 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_220, _222), float2(_220, _222))) + 1.0f); + float _230 = _229 * _229; + float _231 = cb0_094z + 1.0f; + float _242 = (((_191 * (_192 - cb0_090x)) + cb0_090x) * (_149 + ((_67.x * TEXCOORD_1.x) * cb0_087x))) * ((_230 * (_231 - cb0_093x)) + cb0_093x); + float _244 = (((_191 * (_192 - cb0_090y)) + cb0_090y) * (_150 + ((_67.y * TEXCOORD_1.x) * cb0_087y))) * ((_230 * (_231 - cb0_093y)) + cb0_093y); + float _246 = (((_191 * (_192 - cb0_090z)) + cb0_090z) * (_151 + ((_67.z * TEXCOORD_1.x) * cb0_087z))) * ((_230 * (_231 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_242, _244, _246)); + [branch] + if (WUWA_TM_IS(1)) { + _279 = ((((_242 * 1.3600000143051147f) + 0.04699999839067459f) * _242) / ((((_242 * 0.9599999785423279f) + 0.5600000023841858f) * _242) + 0.14000000059604645f)); + _280 = ((((_244 * 1.3600000143051147f) + 0.04699999839067459f) * _244) / ((((_244 * 0.9599999785423279f) + 0.5600000023841858f) * _244) + 0.14000000059604645f)); + _281 = ((((_246 * 1.3600000143051147f) + 0.04699999839067459f) * _246) / ((((_246 * 0.9599999785423279f) + 0.5600000023841858f) * _246) + 0.14000000059604645f)); + } else { + _279 = _242; + _280 = _244; + _281 = _246; + } + [branch] + if (WUWA_TM_IS(2)) { + float _291 = 1.0049500465393066f - (0.16398000717163086f / (_279 + -0.19505000114440918f)); + float _292 = 1.0049500465393066f - (0.16398000717163086f / (_280 + -0.19505000114440918f)); + float _293 = 1.0049500465393066f - (0.16398000717163086f / (_281 + -0.19505000114440918f)); + _313 = (((_279 - _291) * select((_279 > 0.6000000238418579f), 0.0f, 1.0f)) + _291); + _314 = (((_280 - _292) * select((_280 > 0.6000000238418579f), 0.0f, 1.0f)) + _292); + _315 = (((_281 - _293) * select((_281 > 0.6000000238418579f), 0.0f, 1.0f)) + _293); + } else { + _313 = _279; + _314 = _280; + _315 = _281; + } + [branch] + if (WUWA_TM_IS(3)) { + float _321 = cb0_037y * _313; + float _322 = cb0_037y * _314; + float _323 = cb0_037y * _315; + float _326 = cb0_037z * cb0_037w; + float _336 = cb0_038y * cb0_038x; + float _347 = cb0_038z * cb0_038x; + float _354 = cb0_038y / cb0_038z; + _362 = (((((_326 + _321) * _313) + _336) / (_347 + ((_321 + cb0_037z) * _313))) - _354); + _363 = (((((_326 + _322) * _314) + _336) / (_347 + ((_322 + cb0_037z) * _314))) - _354); + _364 = (((((_326 + _323) * _315) + _336) / (_347 + ((_323 + cb0_037z) * _315))) - _354); + } else { + _362 = _313; + _363 = _314; + _364 = _315; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _374 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _379 = (_374 * _362); + _380 = (_374 * _363); + _381 = (_374 * _364); + } else { + _379 = _362; + _380 = _363; + _381 = _364; + } + } else { + _379 = _362; + _380 = _363; + _381 = _364; + } + APPLY_EXTENDED_TONEMAP(_379, _380, _381); + float _402 = (saturate((log2(_379 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _403 = (saturate((log2(_380 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _404 = (saturate((log2(_381 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _405 = t5.Sample(s5, float3(_402, _403, _404)); + [branch] + if (!(cb0_108w == 0)) { + float4 _429 = t4.Sample(s4, float2(min(max(((cb0_084z * _35) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _36) + cb0_085y), cb0_083w), cb0_084y))); + float _439 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_429.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _440 = t6.Sample(s6, float3(_402, _403, _404)); + _454 = (lerp(_440.x, _405.x, _439)); + _455 = (lerp(_440.y, _405.y, _439)); + _456 = (lerp(_440.z, _405.z, _439)); + } else { + _454 = _405.x; + _455 = _405.y; + _456 = _405.z; + } + float _457 = _456 * 1.0499999523162842f; + float _458 = _455 * 1.0499999523162842f; + float _459 = _454 * 1.0499999523162842f; + float _467 = ((_41 * 0.00390625f) + -0.001953125f) + _459; + float _468 = ((_65 * 0.00390625f) + -0.001953125f) + _458; + float _469 = ((_66 * 0.00390625f) + -0.001953125f) + _457; + [branch] + if (!(cb0_107w == 0)) { + float _481 = (pow(_467, 0.012683313339948654f)); + float _482 = (pow(_468, 0.012683313339948654f)); + float _483 = (pow(_469, 0.012683313339948654f)); + float _516 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_481 + -0.8359375f)) / (18.8515625f - (_481 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _517 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_482 + -0.8359375f)) / (18.8515625f - (_482 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _518 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_483 + -0.8359375f)) / (18.8515625f - (_483 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _544 = min((_516 * 12.920000076293945f), ((exp2(log2(max(_516, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _545 = min((_517 * 12.920000076293945f), ((exp2(log2(max(_517, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _546 = min((_518 * 12.920000076293945f), ((exp2(log2(max(_518, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _544 = _467; + _545 = _468; + _546 = _469; + } + GENERATE_INVERSION(_544, _545, _546); + + float _555 = ((((_545 * 587.0f) + (_544 * 299.0f)) + (_546 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _562 = saturate(float((int)(((int)(uint)((bool)(_555 > 0.0f))) - ((int)(uint)((bool)(_555 < 0.0f)))))); + float _569 = cb0_110x - _544; + float _570 = cb0_110y - _545; + float _571 = cb0_110z - _546; + float _576 = (WUWA_PEAK_SCALING * cb0_111x) - _544; + float _577 = (WUWA_PEAK_SCALING * cb0_111y) - _545; + float _578 = (WUWA_PEAK_SCALING * cb0_111z) - _546; + [branch] + if (cb0_109y > 0.0f) { + _595 = (_569 * cb0_109y); + _596 = (_570 * cb0_109y); + _597 = (_571 * cb0_109y); + _598 = (_576 * cb0_109y); + _599 = (_577 * cb0_109y); + _600 = (_578 * cb0_109y); + } else { + float _587 = abs(cb0_109y); + _595 = (_576 * _587); + _596 = (_577 * _587); + _597 = (_578 * _587); + _598 = (_569 * _587); + _599 = (_570 * _587); + _600 = (_571 * _587); + } + SV_Target.x = ((cb0_109x * (lerp(_595, _598, _562))) + _544); + SV_Target.y = ((cb0_109x * (lerp(_596, _599, _562))) + _545); + SV_Target.z = (((lerp(_597, _600, _562)) * cb0_109x) + _546); + SV_Target.rgb = wuwa::ApplyDisplayMap(SV_Target.rgb); + SV_Target.w = dot(float3(_459, _458, _457), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x17FE0A6E.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x17FE0A6E.ps_6_0.hlsl new file mode 100644 index 000000000..b23acaf18 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x17FE0A6E.ps_6_0.hlsl @@ -0,0 +1,1074 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _34 = cb0_065x * cb0_064w; + float _35 = TEXCOORD_3.x * 0.5f; + float _36 = TEXCOORD_3.y * 0.5f; + float _107; + float _108; + float _116; + float _117; + float _215; + float _216; + float _217; + float _239; + float _246; + float _253; + float _260; + float _295; + float _296; + float _297; + float _332; + float _333; + float _334; + float _362; + float _363; + float _385; + float _416; + float _417; + float _514; + float _515; + float _516; + float _545; + float _546; + float _547; + float _612; + float _613; + float _614; + float _626; + float _627; + float _628; + float _759; + float _760; + float _761; + float _793; + float _794; + float _795; + float _842; + float _843; + float _844; + float _859; + float _860; + float _861; + float _934; + float _935; + float _936; + float _1024; + float _1025; + float _1026; + if (!(!(cb0_102x != 0.0f))) { + float _41 = cb0_102x * 2.0f; + do { + if (_41 > 0.0f) { + float _45 = abs(_41) * 0.5f; + float _46 = tan(_45); + float _47 = _34 * TEXCOORD_3.x; + float _57 = rsqrt(dot(float2(_47, TEXCOORD_3.y), float2(_47, TEXCOORD_3.y))); + float _61 = rsqrt(dot(float2(_34, 1.0f), float2(_34, 1.0f))); + float _66 = tan((sqrt((_47 * _47) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_34 * _34) + 1.0f)) * _45); + _107 = (((_66 * ((_57 * _47) / (_61 * _34))) / _46) * 0.5f); + _108 = (((_66 * ((_57 * TEXCOORD_3.y) / _61)) / _46) * 0.5f); + } else { + if (_41 < 0.0f) { + float _80 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _85 = (((_80 * _80) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _80; + float _87 = atan(_35 / _36); + bool _90 = (_36 < 0.0f); + bool _91 = (_36 == 0.0f); + bool _92 = (_35 >= 0.0f); + bool _93 = (_35 < 0.0f); + float _101 = select((_92 && _91), 1.5707963705062866f, select((_93 && _91), -1.5707963705062866f, select((_93 && _90), (_87 + -3.1415927410125732f), select((_92 && _90), (_87 + 3.1415927410125732f), _87)))); + _107 = (sin(_101) * _85); + _108 = (cos(_101) * _85); + } else { + _107 = _35; + _108 = _36; + } + } + _116 = (((_107 + 0.5f) * 2.0f) + -1.0f); + _117 = (((_108 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _116 = TEXCOORD_3.x; + _117 = TEXCOORD_3.y; + } + float _130 = ((cb0_048z * _116) + cb0_049x) * cb0_048x; + float _131 = ((cb0_048w * _117) + cb0_049y) * cb0_048y; + float4 _132 = t5.SampleLevel(s5, float2(_130, _131), 0.0f); + float _144 = ((View_1040.x * _132.x) + View_1040.y) + (1.0f / ((View_1040.z * _132.x) - View_1040.w)); + float4 _145 = t4.Sample(s4, float2(_130, _131)); + float _153 = 1.0f / ((View_1040.w + _144) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _198 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _203 = saturate(((sqrt((_117 * _117) + (_116 * _116)) - cb0_098y) - _198) / (-0.0f - _198)); + float _207 = (_203 * _203) * (3.0f - (_203 * 2.0f)); + _215 = (1.0f - (_207 * max(cb0_097y, cb0_102y))); + _216 = (1.0f - (_207 * max(cb0_097y, cb0_103y))); + _217 = (1.0f - (_207 * max(cb0_097y, cb0_104y))); + } else { + _215 = 1.0f; + _216 = 1.0f; + _217 = 1.0f; + } + bool _223 = !(cb0_097z == 0.0f); + bool _224 = !(cb0_102z == 0.0f); + bool _226 = !(cb0_103z == 0.0f); + bool _228 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_223 || _224)) || _226)) || _228)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_223) { + _239 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _239 = cb0_097z; + } + do { + if (_224) { + _246 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _246 = cb0_102z; + } + do { + if (_226) { + _253 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _253 = cb0_103z; + } + do { + if (_228) { + _260 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _260 = cb0_104z; + } + float _261 = max(_239, _246); + float _262 = max(_239, _253); + float _263 = max(_239, _260); + float _279 = saturate((_144 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + float _280 = saturate((_144 - (_262 * 1000.0f)) / ((_262 * 9999.990234375f) + 0.009999999776482582f)); + float _281 = saturate((_144 - (_263 * 1000.0f)) / ((_263 * 9999.990234375f) + 0.009999999776482582f)); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + _296 = ((_280 * _280) * (3.0f - (_280 * 2.0f))); + _297 = ((_281 * _281) * (3.0f - (_281 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _295 = 1.0f; + _296 = 1.0f; + _297 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _318 = saturate(select((((_153 - _145.x) + ((((View_448[3].z) - _153) + ((View_448[2].z) * _144)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_145.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _332 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _333 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _334 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _332 = 1.0f; + _333 = 1.0f; + _334 = 1.0f; + } + float _335 = TEXCOORD_2.w * 543.3099975585938f; + float _339 = frac(sin(_335 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _362 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _335) * 493013.0f) + 7.177000045776367f) - _339)) + _339); + _363 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _335) * 493013.0f) + 14.298999786376953f) - _339)) + _339); + } else { + _362 = _339; + _363 = _339; + } + if (cb0_100z > 0.0f) { + _385 = (((((_297 * _217) * _334) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_339 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _385 = 1.0f; + } + float _388 = (_296 * _216) * _333; + float _389 = _388 * cb0_100y; + if (cb0_100y > 0.0f) { + float _394 = View_2376 * 0.00016666666488163173f; + float _398 = frac(abs(_394)); + float _403 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_394 >= (-0.0f - _394)), _398, (-0.0f - _398)); + float _409 = (0.5f - frac(sin(dot(float2(_403, _403), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _416 = (((_389 * 0.5f) * _409) + _130); + _417 = ((_409 * _389) + _131); + } else { + _416 = _130; + _417 = _131; + } + float _422 = cb0_096z * (1.0f - (_339 * _339)); + float _427 = (_422 * (TEXCOORD_2.x - _416)) + _416; + float _428 = (_422 * (TEXCOORD_2.y - _417)) + _417; + float4 _439 = t0.Sample(s0, float2(min(max(_427, cb0_053z), cb0_054x), min(max(_428, cb0_053w), cb0_054y))); + float _445 = saturate(cb0_099x); + float _447 = saturate(cb0_099y); + if (_445 > 0.0f) { + float _458 = saturate(((_439.x * 0.29899999499320984f) + (_439.y * 0.5870000123977661f)) + (_439.z * 0.11400000005960464f)); + float _464 = ((_458 * _458) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_458 * 2.0f)); + float _471 = max(sqrt(((_439.x * _439.x) + (_439.y * _439.y)) + (_439.z * _439.z)), 0.014999999664723873f); + float _472 = _439.x / _471; + float _473 = _439.y / _471; + float _474 = _439.z / _471; + float _484 = log2(_464); + float _503 = ((_295 * _215) * _332) * _445; + _514 = (((((lerp(_472, 1.0f, 0.25f)) * (((_447 * 0.17000000178813934f) + 0.029999999329447746f) + _464)) - _439.x) * _503) + _439.x); + _515 = (((((((_447 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_484 * 0.8999999761581421f)) * (lerp(_473, 1.0f, 0.25f))) - _439.y) * _503) + _439.y); + _516 = (((((((_447 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_484 * 0.949999988079071f)) * (lerp(_474, 1.0f, 0.25f))) - _439.z) * _503) + _439.z); + } else { + _514 = _439.x; + _515 = _439.y; + _516 = _439.z; + } + float _519 = saturate(cb0_100x); + float _520 = _388 * _519; + if (_519 > 0.0f) { + float _531 = (sin(((_117 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _545 = ((((_531 * _514) - _514) * _520) + _514); + _546 = ((((_531 * _515) - _515) * _520) + _515); + _547 = ((((_531 * _516) - _516) * _520) + _516); + } else { + _545 = _514; + _546 = _515; + _547 = _516; + } + float4 _572 = t1.Sample(s1, float2(min(max(((cb0_068z * _427) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _428) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_572); + [branch] + if (!(cb0_085z == 0)) { + bool _601 = (cb0_086x != 0); + float4 _604 = t2.Sample(s2, float2(select(_601, _427, min(max(((cb0_076z * _427) + cb0_077x), cb0_075z), cb0_076x)), select(_601, _428, min(max(((cb0_076w * _428) + cb0_077y), cb0_075w), cb0_076y)))); + _612 = (_604.x + _572.x); + _613 = (_604.y + _572.y); + _614 = (_604.z + _572.z); + } else { + _612 = _572.x; + _613 = _572.y; + _614 = _572.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _618 = t3.Sample(s3, float2(_427, _428)); + _626 = (_618.x + _612); + _627 = (_618.y + _613); + _628 = (_618.z + _614); + } else { + _626 = _612; + _627 = _613; + _628 = _614; + } + float _653 = TEXCOORD_1.z + -1.0f; + float _655 = TEXCOORD_1.w + -1.0f; + float _658 = ((_653 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _660 = ((_655 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _667 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_658, _660), float2(_658, _660))) + 1.0f); + float _668 = _667 * _667; + float _669 = cb0_091z + 1.0f; + float _697 = ((_653 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _699 = ((_655 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _706 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_697, _699), float2(_697, _699))) + 1.0f); + float _707 = _706 * _706; + float _708 = cb0_094z + 1.0f; + float _720 = (((_626 + ((_545 * TEXCOORD_1.x) * cb0_087x)) * _385) * ((_668 * (_669 - cb0_090x)) + cb0_090x)) * ((_707 * (_708 - cb0_093x)) + cb0_093x); + float _723 = (((_627 + ((_546 * TEXCOORD_1.x) * cb0_087y)) * _385) * ((_668 * (_669 - cb0_090y)) + cb0_090y)) * ((_707 * (_708 - cb0_093y)) + cb0_093y); + float _726 = (((_628 + ((_547 * TEXCOORD_1.x) * cb0_087z)) * _385) * ((_668 * (_669 - cb0_090z)) + cb0_090z)) * ((_707 * (_708 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_720, _723, _726)); + [branch] + if (WUWA_TM_IS(1)) { + _759 = ((((_720 * 1.3600000143051147f) + 0.04699999839067459f) * _720) / ((((_720 * 0.9599999785423279f) + 0.5600000023841858f) * _720) + 0.14000000059604645f)); + _760 = ((((_723 * 1.3600000143051147f) + 0.04699999839067459f) * _723) / ((((_723 * 0.9599999785423279f) + 0.5600000023841858f) * _723) + 0.14000000059604645f)); + _761 = ((((_726 * 1.3600000143051147f) + 0.04699999839067459f) * _726) / ((((_726 * 0.9599999785423279f) + 0.5600000023841858f) * _726) + 0.14000000059604645f)); + } else { + _759 = _720; + _760 = _723; + _761 = _726; + } + [branch] + if (WUWA_TM_IS(2)) { + float _771 = 1.0049500465393066f - (0.16398000717163086f / (_759 + -0.19505000114440918f)); + float _772 = 1.0049500465393066f - (0.16398000717163086f / (_760 + -0.19505000114440918f)); + float _773 = 1.0049500465393066f - (0.16398000717163086f / (_761 + -0.19505000114440918f)); + _793 = (((_759 - _771) * select((_759 > 0.6000000238418579f), 0.0f, 1.0f)) + _771); + _794 = (((_760 - _772) * select((_760 > 0.6000000238418579f), 0.0f, 1.0f)) + _772); + _795 = (((_761 - _773) * select((_761 > 0.6000000238418579f), 0.0f, 1.0f)) + _773); + } else { + _793 = _759; + _794 = _760; + _795 = _761; + } + [branch] + if (WUWA_TM_IS(3)) { + float _801 = cb0_037y * _793; + float _802 = cb0_037y * _794; + float _803 = cb0_037y * _795; + float _806 = cb0_037z * cb0_037w; + float _816 = cb0_038y * cb0_038x; + float _827 = cb0_038z * cb0_038x; + float _834 = cb0_038y / cb0_038z; + _842 = (((((_806 + _801) * _793) + _816) / (_827 + ((_801 + cb0_037z) * _793))) - _834); + _843 = (((((_806 + _802) * _794) + _816) / (_827 + ((_802 + cb0_037z) * _794))) - _834); + _844 = (((((_806 + _803) * _795) + _816) / (_827 + ((_803 + cb0_037z) * _795))) - _834); + } else { + _842 = _793; + _843 = _794; + _844 = _795; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _854 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _859 = (_854 * _842); + _860 = (_854 * _843); + _861 = (_854 * _844); + } else { + _859 = _842; + _860 = _843; + _861 = _844; + } + } else { + _859 = _842; + _860 = _843; + _861 = _844; + } + APPLY_EXTENDED_TONEMAP(_859, _860, _861); + float _882 = (saturate((log2(_859 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _883 = (saturate((log2(_860 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _884 = (saturate((log2(_861 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _885 = t7.Sample(s7, float3(_882, _883, _884)); + [branch] + if (!(cb0_108w == 0)) { + float4 _909 = t6.Sample(s6, float2(min(max(((cb0_084z * _427) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _428) + cb0_085y), cb0_083w), cb0_084y))); + float _919 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_909.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _920 = t8.Sample(s8, float3(_882, _883, _884)); + _934 = (lerp(_920.x, _885.x, _919)); + _935 = (lerp(_920.y, _885.y, _919)); + _936 = (lerp(_920.z, _885.z, _919)); + } else { + _934 = _885.x; + _935 = _885.y; + _936 = _885.z; + } + float _937 = _936 * 1.0499999523162842f; + float _938 = _935 * 1.0499999523162842f; + float _939 = _934 * 1.0499999523162842f; + float _947 = ((_339 * 0.00390625f) + -0.001953125f) + _939; + float _948 = ((_362 * 0.00390625f) + -0.001953125f) + _938; + float _949 = ((_363 * 0.00390625f) + -0.001953125f) + _937; + [branch] + if (!(cb0_107w == 0)) { + float _961 = (pow(_947, 0.012683313339948654f)); + float _962 = (pow(_948, 0.012683313339948654f)); + float _963 = (pow(_949, 0.012683313339948654f)); + float _996 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_961 + -0.8359375f)) / (18.8515625f - (_961 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _997 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_962 + -0.8359375f)) / (18.8515625f - (_962 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _998 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_963 + -0.8359375f)) / (18.8515625f - (_963 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1024 = min((_996 * 12.920000076293945f), ((exp2(log2(max(_996, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1025 = min((_997 * 12.920000076293945f), ((exp2(log2(max(_997, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1026 = min((_998 * 12.920000076293945f), ((exp2(log2(max(_998, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1024 = _947; + _1025 = _948; + _1026 = _949; + } + SV_Target.x = _1024; + SV_Target.y = _1025; + SV_Target.z = _1026; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_939, _938, _937), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x1C02E578.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x1C02E578.ps_6_0.hlsl new file mode 100644 index 000000000..04c011720 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x1C02E578.ps_6_0.hlsl @@ -0,0 +1,1127 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096x : packoffset(c096.x); + float cb0_096y : packoffset(c096.y); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _34 = cb0_065x * cb0_064w; + float _35 = TEXCOORD_3.x * 0.5f; + float _36 = TEXCOORD_3.y * 0.5f; + float _107; + float _108; + float _116; + float _117; + float _215; + float _216; + float _217; + float _239; + float _246; + float _253; + float _260; + float _295; + float _296; + float _297; + float _332; + float _333; + float _334; + float _362; + float _363; + float _385; + float _416; + float _417; + float _505; + float _506; + float _600; + float _601; + float _673; + float _674; + float _675; + float _704; + float _705; + float _706; + float _771; + float _772; + float _773; + float _785; + float _786; + float _787; + float _930; + float _931; + float _932; + float _964; + float _965; + float _966; + float _1013; + float _1014; + float _1015; + float _1030; + float _1031; + float _1032; + float _1105; + float _1106; + float _1107; + float _1195; + float _1196; + float _1197; + if (!(!(cb0_102x != 0.0f))) { + float _41 = cb0_102x * 2.0f; + do { + if (_41 > 0.0f) { + float _45 = abs(_41) * 0.5f; + float _46 = tan(_45); + float _47 = _34 * TEXCOORD_3.x; + float _57 = rsqrt(dot(float2(_47, TEXCOORD_3.y), float2(_47, TEXCOORD_3.y))); + float _61 = rsqrt(dot(float2(_34, 1.0f), float2(_34, 1.0f))); + float _66 = tan((sqrt((_47 * _47) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_34 * _34) + 1.0f)) * _45); + _107 = (((_66 * ((_57 * _47) / (_61 * _34))) / _46) * 0.5f); + _108 = (((_66 * ((_57 * TEXCOORD_3.y) / _61)) / _46) * 0.5f); + } else { + if (_41 < 0.0f) { + float _80 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _85 = (((_80 * _80) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _80; + float _87 = atan(_35 / _36); + bool _90 = (_36 < 0.0f); + bool _91 = (_36 == 0.0f); + bool _92 = (_35 >= 0.0f); + bool _93 = (_35 < 0.0f); + float _101 = select((_92 && _91), 1.5707963705062866f, select((_93 && _91), -1.5707963705062866f, select((_93 && _90), (_87 + -3.1415927410125732f), select((_92 && _90), (_87 + 3.1415927410125732f), _87)))); + _107 = (sin(_101) * _85); + _108 = (cos(_101) * _85); + } else { + _107 = _35; + _108 = _36; + } + } + _116 = (((_107 + 0.5f) * 2.0f) + -1.0f); + _117 = (((_108 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _116 = TEXCOORD_3.x; + _117 = TEXCOORD_3.y; + } + float _130 = ((cb0_048z * _116) + cb0_049x) * cb0_048x; + float _131 = ((cb0_048w * _117) + cb0_049y) * cb0_048y; + float4 _132 = t5.SampleLevel(s5, float2(_130, _131), 0.0f); + float _144 = ((View_1040.x * _132.x) + View_1040.y) + (1.0f / ((View_1040.z * _132.x) - View_1040.w)); + float4 _145 = t4.Sample(s4, float2(_130, _131)); + float _153 = 1.0f / ((View_1040.w + _144) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _198 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _203 = saturate(((sqrt((_117 * _117) + (_116 * _116)) - cb0_098y) - _198) / (-0.0f - _198)); + float _207 = (_203 * _203) * (3.0f - (_203 * 2.0f)); + _215 = (1.0f - (_207 * max(cb0_097y, cb0_102y))); + _216 = (1.0f - (_207 * max(cb0_097y, cb0_103y))); + _217 = (1.0f - (_207 * max(cb0_097y, cb0_104y))); + } else { + _215 = 1.0f; + _216 = 1.0f; + _217 = 1.0f; + } + bool _223 = !(cb0_097z == 0.0f); + bool _224 = !(cb0_102z == 0.0f); + bool _226 = !(cb0_103z == 0.0f); + bool _228 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_223 || _224)) || _226)) || _228)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_223) { + _239 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _239 = cb0_097z; + } + do { + if (_224) { + _246 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _246 = cb0_102z; + } + do { + if (_226) { + _253 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _253 = cb0_103z; + } + do { + if (_228) { + _260 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _260 = cb0_104z; + } + float _261 = max(_239, _246); + float _262 = max(_239, _253); + float _263 = max(_239, _260); + float _279 = saturate((_144 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + float _280 = saturate((_144 - (_262 * 1000.0f)) / ((_262 * 9999.990234375f) + 0.009999999776482582f)); + float _281 = saturate((_144 - (_263 * 1000.0f)) / ((_263 * 9999.990234375f) + 0.009999999776482582f)); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + _296 = ((_280 * _280) * (3.0f - (_280 * 2.0f))); + _297 = ((_281 * _281) * (3.0f - (_281 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _295 = 1.0f; + _296 = 1.0f; + _297 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _318 = saturate(select((((_153 - _145.x) + ((((View_448[3].z) - _153) + ((View_448[2].z) * _144)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_145.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _332 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _333 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _334 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _332 = 1.0f; + _333 = 1.0f; + _334 = 1.0f; + } + float _335 = TEXCOORD_2.w * 543.3099975585938f; + float _339 = frac(sin(_335 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _362 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _335) * 493013.0f) + 7.177000045776367f) - _339)) + _339); + _363 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _335) * 493013.0f) + 14.298999786376953f) - _339)) + _339); + } else { + _362 = _339; + _363 = _339; + } + if (cb0_100z > 0.0f) { + _385 = (((((_297 * _217) * _334) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_339 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _385 = 1.0f; + } + float _388 = (_296 * _216) * _333; + float _389 = _388 * cb0_100y; + if (cb0_100y > 0.0f) { + float _394 = View_2376 * 0.00016666666488163173f; + float _398 = frac(abs(_394)); + float _403 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_394 >= (-0.0f - _394)), _398, (-0.0f - _398)); + float _409 = (0.5f - frac(sin(dot(float2(_403, _403), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _416 = (((_389 * 0.5f) * _409) + _130); + _417 = ((_409 * _389) + _131); + } else { + _416 = _130; + _417 = _131; + } + float _422 = cb0_096z * (1.0f - (_339 * _339)); + float _427 = (_422 * (TEXCOORD_2.x - _416)) + _416; + float _428 = (_422 * (TEXCOORD_2.y - _417)) + _417; + float _443 = _427 - (((cb0_048z * _116) + cb0_049x) * cb0_048x); + float _444 = _428 - (((cb0_048w * _117) + cb0_049y) * cb0_048y); + float _454 = cb0_118z * cb0_117x; + float _455 = cb0_118z * cb0_117y; + bool _456 = (cb0_118x == 0.0f); + float _466 = (cb0_114z * _116) + cb0_114x; + float _467 = (cb0_114w * _117) + cb0_114y; + float _478 = float((int)(((int)(uint)((bool)(_466 > 0.0f))) - ((int)(uint)((bool)(_466 < 0.0f))))); + float _479 = float((int)(((int)(uint)((bool)(_467 > 0.0f))) - ((int)(uint)((bool)(_467 < 0.0f))))); + float _484 = saturate(abs(_466) - cb0_117z); + float _485 = saturate(abs(_467) - cb0_117z); + float _495 = _467 - ((_485 * _454) * _479); + float _497 = _467 - ((_485 * _455) * _479); + bool _498 = (cb0_118x > 0.0f); + if (_498) { + _505 = (_495 - (cb0_118w * 0.4000000059604645f)); + _506 = (_497 - (cb0_118w * 0.20000000298023224f)); + } else { + _505 = _495; + _506 = _497; + } + float4 _542 = t0.Sample(s0, float2(min(max(_427, cb0_053z), cb0_054x), min(max(_428, cb0_053w), cb0_054y))); + float4 _558 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_466 - ((_484 * select(_456, _454, cb0_117x)) * _478))) + cb0_115x)) + cb0_049x) * cb0_048x) + _443), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _505) + cb0_115y)) + cb0_049y) * cb0_048y) + _444), cb0_053w), cb0_054y))); + float4 _572 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_466 - ((_484 * select(_456, _455, cb0_117y)) * _478))) + cb0_115x)) + cb0_049x) * cb0_048x) + _443), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _506) + cb0_115y)) + cb0_049y) * cb0_048y) + _444), cb0_053w), cb0_054y))); + if (_498) { + float _582 = saturate(((((_542.y * 0.5870000123977661f) - cb0_118y) + (_542.x * 0.29899999499320984f)) + (_542.z * 0.11400000005960464f)) * 10.0f); + float _586 = (_582 * _582) * (3.0f - (_582 * 2.0f)); + _600 = ((((_542.x - _558.x) + (_586 * (_558.x - _542.x))) * cb0_118x) + _558.x); + _601 = ((((_542.y - _572.y) + (_586 * (_572.y - _542.y))) * cb0_118x) + _572.y); + } else { + _600 = _558.x; + _601 = _572.y; + } + float _604 = saturate(cb0_099x); + float _606 = saturate(cb0_099y); + if (_604 > 0.0f) { + float _617 = saturate(((_600 * 0.29899999499320984f) + (_542.z * 0.11400000005960464f)) + (_601 * 0.5870000123977661f)); + float _623 = ((_617 * _617) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_617 * 2.0f)); + float _630 = max(sqrt(((_600 * _600) + (_542.z * _542.z)) + (_601 * _601)), 0.014999999664723873f); + float _631 = _600 / _630; + float _632 = _601 / _630; + float _633 = _542.z / _630; + float _643 = log2(_623); + float _662 = ((_295 * _215) * _332) * _604; + _673 = (((((lerp(_631, 1.0f, 0.25f)) * (((_606 * 0.17000000178813934f) + 0.029999999329447746f) + _623)) - _600) * _662) + _600); + _674 = (((((((_606 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_643 * 0.8999999761581421f)) * (lerp(_632, 1.0f, 0.25f))) - _601) * _662) + _601); + _675 = (((((((_606 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_643 * 0.949999988079071f)) * (lerp(_633, 1.0f, 0.25f))) - _542.z) * _662) + _542.z); + } else { + _673 = _600; + _674 = _601; + _675 = _542.z; + } + float _678 = saturate(cb0_100x); + float _679 = _388 * _678; + if (_678 > 0.0f) { + float _690 = (sin(((_117 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _704 = ((((_690 * _673) - _673) * _679) + _673); + _705 = ((((_690 * _674) - _674) * _679) + _674); + _706 = ((((_690 * _675) - _675) * _679) + _675); + } else { + _704 = _673; + _705 = _674; + _706 = _675; + } + float4 _731 = t1.Sample(s1, float2(min(max(((cb0_068z * _427) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _428) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_731); + [branch] + if (!(cb0_085z == 0)) { + bool _760 = (cb0_086x != 0); + float4 _763 = t2.Sample(s2, float2(select(_760, _427, min(max(((cb0_076z * _427) + cb0_077x), cb0_075z), cb0_076x)), select(_760, _428, min(max(((cb0_076w * _428) + cb0_077y), cb0_075w), cb0_076y)))); + _771 = (_763.x + _731.x); + _772 = (_763.y + _731.y); + _773 = (_763.z + _731.z); + } else { + _771 = _731.x; + _772 = _731.y; + _773 = _731.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _777 = t3.Sample(s3, float2(_427, _428)); + _785 = (_777.x + _771); + _786 = (_777.y + _772); + _787 = (_777.z + _773); + } else { + _785 = _771; + _786 = _772; + _787 = _773; + } + float _812 = TEXCOORD_1.z + -1.0f; + float _814 = TEXCOORD_1.w + -1.0f; + float _817 = ((_812 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _819 = ((_814 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _826 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_817, _819), float2(_817, _819))) + 1.0f); + float _827 = _826 * _826; + float _828 = cb0_091z + 1.0f; + float _856 = ((_812 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _858 = ((_814 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _865 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_856, _858), float2(_856, _858))) + 1.0f); + float _866 = _865 * _865; + float _867 = cb0_094z + 1.0f; + float _889 = ((((_785 + ((_704 * TEXCOORD_1.x) * cb0_087x)) * _385) * ((_827 * (_828 - cb0_090x)) + cb0_090x)) * ((_866 * (_867 - cb0_093x)) + cb0_093x)) * ((cb0_096x * _339) + cb0_096y); + float _893 = ((((_786 + ((_705 * TEXCOORD_1.x) * cb0_087y)) * _385) * ((_827 * (_828 - cb0_090y)) + cb0_090y)) * ((_866 * (_867 - cb0_093y)) + cb0_093y)) * ((cb0_096x * _362) + cb0_096y); + float _897 = ((((_787 + ((_706 * TEXCOORD_1.x) * cb0_087z)) * _385) * ((_827 * (_828 - cb0_090z)) + cb0_090z)) * ((_866 * (_867 - cb0_093z)) + cb0_093z)) * ((cb0_096x * _363) + cb0_096y); + + CAPTURE_UNTONEMAPPED(float3(_889, _893, _897)); + [branch] + if (WUWA_TM_IS(1)) { + _930 = ((((_889 * 1.3600000143051147f) + 0.04699999839067459f) * _889) / ((((_889 * 0.9599999785423279f) + 0.5600000023841858f) * _889) + 0.14000000059604645f)); + _931 = ((((_893 * 1.3600000143051147f) + 0.04699999839067459f) * _893) / ((((_893 * 0.9599999785423279f) + 0.5600000023841858f) * _893) + 0.14000000059604645f)); + _932 = ((((_897 * 1.3600000143051147f) + 0.04699999839067459f) * _897) / ((((_897 * 0.9599999785423279f) + 0.5600000023841858f) * _897) + 0.14000000059604645f)); + } else { + _930 = _889; + _931 = _893; + _932 = _897; + } + [branch] + if (WUWA_TM_IS(2)) { + float _942 = 1.0049500465393066f - (0.16398000717163086f / (_930 + -0.19505000114440918f)); + float _943 = 1.0049500465393066f - (0.16398000717163086f / (_931 + -0.19505000114440918f)); + float _944 = 1.0049500465393066f - (0.16398000717163086f / (_932 + -0.19505000114440918f)); + _964 = (((_930 - _942) * select((_930 > 0.6000000238418579f), 0.0f, 1.0f)) + _942); + _965 = (((_931 - _943) * select((_931 > 0.6000000238418579f), 0.0f, 1.0f)) + _943); + _966 = (((_932 - _944) * select((_932 > 0.6000000238418579f), 0.0f, 1.0f)) + _944); + } else { + _964 = _930; + _965 = _931; + _966 = _932; + } + [branch] + if (WUWA_TM_IS(3)) { + float _972 = cb0_037y * _964; + float _973 = cb0_037y * _965; + float _974 = cb0_037y * _966; + float _977 = cb0_037z * cb0_037w; + float _987 = cb0_038y * cb0_038x; + float _998 = cb0_038z * cb0_038x; + float _1005 = cb0_038y / cb0_038z; + _1013 = (((((_977 + _972) * _964) + _987) / (_998 + ((_972 + cb0_037z) * _964))) - _1005); + _1014 = (((((_977 + _973) * _965) + _987) / (_998 + ((_973 + cb0_037z) * _965))) - _1005); + _1015 = (((((_977 + _974) * _966) + _987) / (_998 + ((_974 + cb0_037z) * _966))) - _1005); + } else { + _1013 = _964; + _1014 = _965; + _1015 = _966; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _1025 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _1030 = (_1025 * _1013); + _1031 = (_1025 * _1014); + _1032 = (_1025 * _1015); + } else { + _1030 = _1013; + _1031 = _1014; + _1032 = _1015; + } + } else { + _1030 = _1013; + _1031 = _1014; + _1032 = _1015; + } + APPLY_EXTENDED_TONEMAP(_1030, _1031, _1032); + float _1053 = (saturate((log2(_1030 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1054 = (saturate((log2(_1031 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1055 = (saturate((log2(_1032 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _1056 = t7.Sample(s7, float3(_1053, _1054, _1055)); + [branch] + if (!(cb0_108w == 0)) { + float4 _1080 = t6.Sample(s6, float2(min(max(((cb0_084z * _427) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _428) + cb0_085y), cb0_083w), cb0_084y))); + float _1090 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_1080.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _1091 = t8.Sample(s8, float3(_1053, _1054, _1055)); + _1105 = (lerp(_1091.x, _1056.x, _1090)); + _1106 = (lerp(_1091.y, _1056.y, _1090)); + _1107 = (lerp(_1091.z, _1056.z, _1090)); + } else { + _1105 = _1056.x; + _1106 = _1056.y; + _1107 = _1056.z; + } + float _1108 = _1107 * 1.0499999523162842f; + float _1109 = _1106 * 1.0499999523162842f; + float _1110 = _1105 * 1.0499999523162842f; + float _1118 = ((_339 * 0.00390625f) + -0.001953125f) + _1110; + float _1119 = ((_362 * 0.00390625f) + -0.001953125f) + _1109; + float _1120 = ((_363 * 0.00390625f) + -0.001953125f) + _1108; + [branch] + if (!(cb0_107w == 0)) { + float _1132 = (pow(_1118, 0.012683313339948654f)); + float _1133 = (pow(_1119, 0.012683313339948654f)); + float _1134 = (pow(_1120, 0.012683313339948654f)); + float _1167 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1132 + -0.8359375f)) / (18.8515625f - (_1132 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1168 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1133 + -0.8359375f)) / (18.8515625f - (_1133 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1169 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1134 + -0.8359375f)) / (18.8515625f - (_1134 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1195 = min((_1167 * 12.920000076293945f), ((exp2(log2(max(_1167, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1196 = min((_1168 * 12.920000076293945f), ((exp2(log2(max(_1168, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1197 = min((_1169 * 12.920000076293945f), ((exp2(log2(max(_1169, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1195 = _1118; + _1196 = _1119; + _1197 = _1120; + } + SV_Target.x = _1195; + SV_Target.y = _1196; + SV_Target.z = _1197; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_1110, _1109, _1108), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x1F3E0F5C.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x1F3E0F5C.ps_6_0.hlsl new file mode 100644 index 000000000..ada139f29 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x1F3E0F5C.ps_6_0.hlsl @@ -0,0 +1,1108 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _32 = cb0_065x * cb0_064w; + float _33 = TEXCOORD_3.x * 0.5f; + float _34 = TEXCOORD_3.y * 0.5f; + float _105; + float _106; + float _114; + float _115; + float _213; + float _214; + float _215; + float _237; + float _244; + float _251; + float _258; + float _293; + float _294; + float _295; + float _330; + float _331; + float _332; + float _360; + float _361; + float _383; + float _414; + float _415; + float _491; + float _492; + float _493; + float _521; + float _522; + float _523; + float _588; + float _589; + float _590; + float _602; + float _603; + float _604; + float _735; + float _736; + float _737; + float _769; + float _770; + float _771; + float _818; + float _819; + float _820; + float _835; + float _836; + float _837; + float _910; + float _911; + float _912; + float _1000; + float _1001; + float _1002; + float _1051; + float _1052; + float _1053; + float _1054; + float _1055; + float _1056; + if (!(!(cb0_102x != 0.0f))) { + float _39 = cb0_102x * 2.0f; + do { + if (_39 > 0.0f) { + float _43 = abs(_39) * 0.5f; + float _44 = tan(_43); + float _45 = _32 * TEXCOORD_3.x; + float _55 = rsqrt(dot(float2(_45, TEXCOORD_3.y), float2(_45, TEXCOORD_3.y))); + float _59 = rsqrt(dot(float2(_32, 1.0f), float2(_32, 1.0f))); + float _64 = tan((sqrt((_45 * _45) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_32 * _32) + 1.0f)) * _43); + _105 = (((_64 * ((_55 * _45) / (_59 * _32))) / _44) * 0.5f); + _106 = (((_64 * ((_55 * TEXCOORD_3.y) / _59)) / _44) * 0.5f); + } else { + if (_39 < 0.0f) { + float _78 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _83 = (((_78 * _78) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _78; + float _85 = atan(_33 / _34); + bool _88 = (_34 < 0.0f); + bool _89 = (_34 == 0.0f); + bool _90 = (_33 >= 0.0f); + bool _91 = (_33 < 0.0f); + float _99 = select((_90 && _89), 1.5707963705062866f, select((_91 && _89), -1.5707963705062866f, select((_91 && _88), (_85 + -3.1415927410125732f), select((_90 && _88), (_85 + 3.1415927410125732f), _85)))); + _105 = (sin(_99) * _83); + _106 = (cos(_99) * _83); + } else { + _105 = _33; + _106 = _34; + } + } + _114 = (((_105 + 0.5f) * 2.0f) + -1.0f); + _115 = (((_106 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _114 = TEXCOORD_3.x; + _115 = TEXCOORD_3.y; + } + float _128 = ((cb0_048z * _114) + cb0_049x) * cb0_048x; + float _129 = ((cb0_048w * _115) + cb0_049y) * cb0_048y; + float4 _130 = t5.SampleLevel(s5, float2(_128, _129), 0.0f); + float _142 = ((View_1040.x * _130.x) + View_1040.y) + (1.0f / ((View_1040.z * _130.x) - View_1040.w)); + float4 _143 = t4.Sample(s4, float2(_128, _129)); + float _151 = 1.0f / ((View_1040.w + _142) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _196 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _201 = saturate(((sqrt((_115 * _115) + (_114 * _114)) - cb0_098y) - _196) / (-0.0f - _196)); + float _205 = (_201 * _201) * (3.0f - (_201 * 2.0f)); + _213 = (1.0f - (_205 * max(cb0_097y, cb0_102y))); + _214 = (1.0f - (_205 * max(cb0_097y, cb0_103y))); + _215 = (1.0f - (_205 * max(cb0_097y, cb0_104y))); + } else { + _213 = 1.0f; + _214 = 1.0f; + _215 = 1.0f; + } + bool _221 = !(cb0_097z == 0.0f); + bool _222 = !(cb0_102z == 0.0f); + bool _224 = !(cb0_103z == 0.0f); + bool _226 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_221 || _222)) || _224)) || _226)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_221) { + _237 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _237 = cb0_097z; + } + do { + if (_222) { + _244 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _244 = cb0_102z; + } + do { + if (_224) { + _251 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _251 = cb0_103z; + } + do { + if (_226) { + _258 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _258 = cb0_104z; + } + float _259 = max(_237, _244); + float _260 = max(_237, _251); + float _261 = max(_237, _258); + float _277 = saturate((_142 - (_259 * 1000.0f)) / ((_259 * 9999.990234375f) + 0.009999999776482582f)); + float _278 = saturate((_142 - (_260 * 1000.0f)) / ((_260 * 9999.990234375f) + 0.009999999776482582f)); + float _279 = saturate((_142 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + _293 = ((_277 * _277) * (3.0f - (_277 * 2.0f))); + _294 = ((_278 * _278) * (3.0f - (_278 * 2.0f))); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _293 = 1.0f; + _294 = 1.0f; + _295 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _316 = saturate(select((((_151 - _143.x) + ((((View_448[3].z) - _151) + ((View_448[2].z) * _142)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_143.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _330 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _331 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _332 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _330 = 1.0f; + _331 = 1.0f; + _332 = 1.0f; + } + float _333 = TEXCOORD_2.w * 543.3099975585938f; + float _337 = frac(sin(_333 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _360 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _333) * 493013.0f) + 7.177000045776367f) - _337)) + _337); + _361 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _333) * 493013.0f) + 14.298999786376953f) - _337)) + _337); + } else { + _360 = _337; + _361 = _337; + } + if (cb0_100z > 0.0f) { + _383 = (((((_295 * _215) * _332) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_337 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _383 = 1.0f; + } + float _386 = (_294 * _214) * _331; + float _387 = _386 * cb0_100y; + if (cb0_100y > 0.0f) { + float _392 = View_2376 * 0.00016666666488163173f; + float _396 = frac(abs(_392)); + float _401 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_392 >= (-0.0f - _392)), _396, (-0.0f - _396)); + float _407 = (0.5f - frac(sin(dot(float2(_401, _401), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _414 = (((_387 * 0.5f) * _407) + _128); + _415 = ((_407 * _387) + _129); + } else { + _414 = _128; + _415 = _129; + } + float4 _416 = t0.Sample(s0, float2(_414, _415)); + float _422 = saturate(cb0_099x); + float _424 = saturate(cb0_099y); + if (_422 > 0.0f) { + float _435 = saturate(((_416.x * 0.29899999499320984f) + (_416.y * 0.5870000123977661f)) + (_416.z * 0.11400000005960464f)); + float _441 = ((_435 * _435) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_435 * 2.0f)); + float _448 = max(sqrt(((_416.x * _416.x) + (_416.y * _416.y)) + (_416.z * _416.z)), 0.014999999664723873f); + float _449 = _416.x / _448; + float _450 = _416.y / _448; + float _451 = _416.z / _448; + float _461 = log2(_441); + float _480 = ((_293 * _213) * _330) * _422; + _491 = (((((lerp(_449, 1.0f, 0.25f)) * (((_424 * 0.17000000178813934f) + 0.029999999329447746f) + _441)) - _416.x) * _480) + _416.x); + _492 = (((((((_424 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_461 * 0.8999999761581421f)) * (lerp(_450, 1.0f, 0.25f))) - _416.y) * _480) + _416.y); + _493 = (((((((_424 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_461 * 0.949999988079071f)) * (lerp(_451, 1.0f, 0.25f))) - _416.z) * _480) + _416.z); + } else { + _491 = _416.x; + _492 = _416.y; + _493 = _416.z; + } + float _495 = saturate(cb0_100x); + float _496 = _386 * _495; + if (_495 > 0.0f) { + float _507 = (sin(((_115 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _521 = ((((_507 * _491) - _491) * _496) + _491); + _522 = ((((_507 * _492) - _492) * _496) + _492); + _523 = ((((_507 * _493) - _493) * _496) + _493); + } else { + _521 = _491; + _522 = _492; + _523 = _493; + } + float4 _548 = t1.Sample(s1, float2(min(max(((cb0_068z * _414) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _415) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_548); + [branch] + if (!(cb0_085z == 0)) { + bool _577 = (cb0_086x != 0); + float4 _580 = t2.Sample(s2, float2(select(_577, _414, min(max(((cb0_076z * _414) + cb0_077x), cb0_075z), cb0_076x)), select(_577, _415, min(max(((cb0_076w * _415) + cb0_077y), cb0_075w), cb0_076y)))); + _588 = (_580.x + _548.x); + _589 = (_580.y + _548.y); + _590 = (_580.z + _548.z); + } else { + _588 = _548.x; + _589 = _548.y; + _590 = _548.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _594 = t3.Sample(s3, float2(_414, _415)); + _602 = (_594.x + _588); + _603 = (_594.y + _589); + _604 = (_594.z + _590); + } else { + _602 = _588; + _603 = _589; + _604 = _590; + } + float _629 = TEXCOORD_1.z + -1.0f; + float _631 = TEXCOORD_1.w + -1.0f; + float _634 = ((_629 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _636 = ((_631 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _643 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_634, _636), float2(_634, _636))) + 1.0f); + float _644 = _643 * _643; + float _645 = cb0_091z + 1.0f; + float _673 = ((_629 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _675 = ((_631 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _682 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_673, _675), float2(_673, _675))) + 1.0f); + float _683 = _682 * _682; + float _684 = cb0_094z + 1.0f; + float _696 = (((_602 + ((_521 * TEXCOORD_1.x) * cb0_087x)) * _383) * ((_644 * (_645 - cb0_090x)) + cb0_090x)) * ((_683 * (_684 - cb0_093x)) + cb0_093x); + float _699 = (((_603 + ((_522 * TEXCOORD_1.x) * cb0_087y)) * _383) * ((_644 * (_645 - cb0_090y)) + cb0_090y)) * ((_683 * (_684 - cb0_093y)) + cb0_093y); + float _702 = (((_604 + ((_523 * TEXCOORD_1.x) * cb0_087z)) * _383) * ((_644 * (_645 - cb0_090z)) + cb0_090z)) * ((_683 * (_684 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_696, _699, _702)); + [branch] + if (WUWA_TM_IS(1)) { + _735 = ((((_696 * 1.3600000143051147f) + 0.04699999839067459f) * _696) / ((((_696 * 0.9599999785423279f) + 0.5600000023841858f) * _696) + 0.14000000059604645f)); + _736 = ((((_699 * 1.3600000143051147f) + 0.04699999839067459f) * _699) / ((((_699 * 0.9599999785423279f) + 0.5600000023841858f) * _699) + 0.14000000059604645f)); + _737 = ((((_702 * 1.3600000143051147f) + 0.04699999839067459f) * _702) / ((((_702 * 0.9599999785423279f) + 0.5600000023841858f) * _702) + 0.14000000059604645f)); + } else { + _735 = _696; + _736 = _699; + _737 = _702; + } + [branch] + if (WUWA_TM_IS(2)) { + float _747 = 1.0049500465393066f - (0.16398000717163086f / (_735 + -0.19505000114440918f)); + float _748 = 1.0049500465393066f - (0.16398000717163086f / (_736 + -0.19505000114440918f)); + float _749 = 1.0049500465393066f - (0.16398000717163086f / (_737 + -0.19505000114440918f)); + _769 = (((_735 - _747) * select((_735 > 0.6000000238418579f), 0.0f, 1.0f)) + _747); + _770 = (((_736 - _748) * select((_736 > 0.6000000238418579f), 0.0f, 1.0f)) + _748); + _771 = (((_737 - _749) * select((_737 > 0.6000000238418579f), 0.0f, 1.0f)) + _749); + } else { + _769 = _735; + _770 = _736; + _771 = _737; + } + [branch] + if (WUWA_TM_IS(3)) { + float _777 = cb0_037y * _769; + float _778 = cb0_037y * _770; + float _779 = cb0_037y * _771; + float _782 = cb0_037z * cb0_037w; + float _792 = cb0_038y * cb0_038x; + float _803 = cb0_038z * cb0_038x; + float _810 = cb0_038y / cb0_038z; + _818 = (((((_782 + _777) * _769) + _792) / (_803 + ((_777 + cb0_037z) * _769))) - _810); + _819 = (((((_782 + _778) * _770) + _792) / (_803 + ((_778 + cb0_037z) * _770))) - _810); + _820 = (((((_782 + _779) * _771) + _792) / (_803 + ((_779 + cb0_037z) * _771))) - _810); + } else { + _818 = _769; + _819 = _770; + _820 = _771; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _830 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _835 = (_830 * _818); + _836 = (_830 * _819); + _837 = (_830 * _820); + } else { + _835 = _818; + _836 = _819; + _837 = _820; + } + } else { + _835 = _818; + _836 = _819; + _837 = _820; + } + APPLY_EXTENDED_TONEMAP(_835, _836, _837); + float _858 = (saturate((log2(_835 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _859 = (saturate((log2(_836 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _860 = (saturate((log2(_837 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _861 = t7.Sample(s7, float3(_858, _859, _860)); + [branch] + if (!(cb0_108w == 0)) { + float4 _885 = t6.Sample(s6, float2(min(max(((cb0_084z * _414) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _415) + cb0_085y), cb0_083w), cb0_084y))); + float _895 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_885.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _896 = t8.Sample(s8, float3(_858, _859, _860)); + _910 = (lerp(_896.x, _861.x, _895)); + _911 = (lerp(_896.y, _861.y, _895)); + _912 = (lerp(_896.z, _861.z, _895)); + } else { + _910 = _861.x; + _911 = _861.y; + _912 = _861.z; + } + float _913 = _912 * 1.0499999523162842f; + float _914 = _911 * 1.0499999523162842f; + float _915 = _910 * 1.0499999523162842f; + float _923 = ((_337 * 0.00390625f) + -0.001953125f) + _915; + float _924 = ((_360 * 0.00390625f) + -0.001953125f) + _914; + float _925 = ((_361 * 0.00390625f) + -0.001953125f) + _913; + [branch] + if (!(cb0_107w == 0)) { + float _937 = (pow(_923, 0.012683313339948654f)); + float _938 = (pow(_924, 0.012683313339948654f)); + float _939 = (pow(_925, 0.012683313339948654f)); + float _972 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_937 + -0.8359375f)) / (18.8515625f - (_937 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _973 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_938 + -0.8359375f)) / (18.8515625f - (_938 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _974 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_939 + -0.8359375f)) / (18.8515625f - (_939 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1000 = min((_972 * 12.920000076293945f), ((exp2(log2(max(_972, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1001 = min((_973 * 12.920000076293945f), ((exp2(log2(max(_973, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1002 = min((_974 * 12.920000076293945f), ((exp2(log2(max(_974, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1000 = _923; + _1001 = _924; + _1002 = _925; + } + GENERATE_INVERSION(_1000, _1001, _1002); + + float _1011 = ((((_1001 * 587.0f) + (_1000 * 299.0f)) + (_1002 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _1018 = saturate(float((int)(((int)(uint)((bool)(_1011 > 0.0f))) - ((int)(uint)((bool)(_1011 < 0.0f)))))); + float _1025 = cb0_110x - _1000; + float _1026 = cb0_110y - _1001; + float _1027 = cb0_110z - _1002; + float _1032 = (WUWA_PEAK_SCALING * cb0_111x) - _1000; + float _1033 = (WUWA_PEAK_SCALING * cb0_111y) - _1001; + float _1034 = (WUWA_PEAK_SCALING * cb0_111z) - _1002; + [branch] + if (cb0_109y > 0.0f) { + _1051 = (_1025 * cb0_109y); + _1052 = (_1026 * cb0_109y); + _1053 = (_1027 * cb0_109y); + _1054 = (_1032 * cb0_109y); + _1055 = (_1033 * cb0_109y); + _1056 = (_1034 * cb0_109y); + } else { + float _1043 = abs(cb0_109y); + _1051 = (_1032 * _1043); + _1052 = (_1033 * _1043); + _1053 = (_1034 * _1043); + _1054 = (_1025 * _1043); + _1055 = (_1026 * _1043); + _1056 = (_1027 * _1043); + } + SV_Target.x = ((cb0_109x * (lerp(_1051, _1054, _1018))) + _1000); + SV_Target.y = ((cb0_109x * (lerp(_1052, _1055, _1018))) + _1001); + SV_Target.z = (((lerp(_1053, _1056, _1018)) * cb0_109x) + _1002); + SV_Target.rgb = wuwa::ApplyDisplayMap(SV_Target.rgb); + SV_Target.w = dot(float3(_915, _914, _913), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x20F51C79.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x20F51C79.ps_6_0.hlsl new file mode 100644 index 000000000..6669f163f --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x20F51C79.ps_6_0.hlsl @@ -0,0 +1,298 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _35 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _36 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _37 = TEXCOORD_2.w * 543.3099975585938f; + float _41 = frac(sin(_37 + TEXCOORD_2.z) * 493013.0f); + float _65; + float _66; + float _135; + float _136; + float _137; + float _149; + float _150; + float _151; + float _279; + float _280; + float _281; + float _313; + float _314; + float _315; + float _362; + float _363; + float _364; + float _379; + float _380; + float _381; + float _454; + float _455; + float _456; + float _544; + float _545; + float _546; + if (cb0_097x > 0.0f) { + _65 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _37) * 493013.0f) + 7.177000045776367f) - _41)) + _41); + _66 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _37) * 493013.0f) + 14.298999786376953f) - _41)) + _41); + } else { + _65 = _41; + _66 = _41; + } + float4 _67 = t0.Sample(s0, float2(_35, _36)); + float4 _95 = t1.Sample(s1, float2(min(max(((cb0_068z * _35) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _36) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_95); + [branch] + if (!(cb0_085z == 0)) { + bool _124 = (cb0_086x != 0); + float4 _127 = t2.Sample(s2, float2(select(_124, _35, min(max(((cb0_076z * _35) + cb0_077x), cb0_075z), cb0_076x)), select(_124, _36, min(max(((cb0_076w * _36) + cb0_077y), cb0_075w), cb0_076y)))); + _135 = (_127.x + _95.x); + _136 = (_127.y + _95.y); + _137 = (_127.z + _95.z); + } else { + _135 = _95.x; + _136 = _95.y; + _137 = _95.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _141 = t3.Sample(s3, float2(_35, _36)); + _149 = (_141.x + _135); + _150 = (_141.y + _136); + _151 = (_141.z + _137); + } else { + _149 = _135; + _150 = _136; + _151 = _137; + } + float _176 = TEXCOORD_1.z + -1.0f; + float _178 = TEXCOORD_1.w + -1.0f; + float _181 = ((_176 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _183 = ((_178 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _190 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_181, _183), float2(_181, _183))) + 1.0f); + float _191 = _190 * _190; + float _192 = cb0_091z + 1.0f; + float _220 = ((_176 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _222 = ((_178 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _229 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_220, _222), float2(_220, _222))) + 1.0f); + float _230 = _229 * _229; + float _231 = cb0_094z + 1.0f; + float _242 = (((_191 * (_192 - cb0_090x)) + cb0_090x) * (_149 + ((_67.x * TEXCOORD_1.x) * cb0_087x))) * ((_230 * (_231 - cb0_093x)) + cb0_093x); + float _244 = (((_191 * (_192 - cb0_090y)) + cb0_090y) * (_150 + ((_67.y * TEXCOORD_1.x) * cb0_087y))) * ((_230 * (_231 - cb0_093y)) + cb0_093y); + float _246 = (((_191 * (_192 - cb0_090z)) + cb0_090z) * (_151 + ((_67.z * TEXCOORD_1.x) * cb0_087z))) * ((_230 * (_231 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_242, _244, _246)); + [branch] + if (WUWA_TM_IS(1)) { + _279 = ((((_242 * 1.3600000143051147f) + 0.04699999839067459f) * _242) / ((((_242 * 0.9599999785423279f) + 0.5600000023841858f) * _242) + 0.14000000059604645f)); + _280 = ((((_244 * 1.3600000143051147f) + 0.04699999839067459f) * _244) / ((((_244 * 0.9599999785423279f) + 0.5600000023841858f) * _244) + 0.14000000059604645f)); + _281 = ((((_246 * 1.3600000143051147f) + 0.04699999839067459f) * _246) / ((((_246 * 0.9599999785423279f) + 0.5600000023841858f) * _246) + 0.14000000059604645f)); + } else { + _279 = _242; + _280 = _244; + _281 = _246; + } + [branch] + if (WUWA_TM_IS(2)) { + float _291 = 1.0049500465393066f - (0.16398000717163086f / (_279 + -0.19505000114440918f)); + float _292 = 1.0049500465393066f - (0.16398000717163086f / (_280 + -0.19505000114440918f)); + float _293 = 1.0049500465393066f - (0.16398000717163086f / (_281 + -0.19505000114440918f)); + _313 = (((_279 - _291) * select((_279 > 0.6000000238418579f), 0.0f, 1.0f)) + _291); + _314 = (((_280 - _292) * select((_280 > 0.6000000238418579f), 0.0f, 1.0f)) + _292); + _315 = (((_281 - _293) * select((_281 > 0.6000000238418579f), 0.0f, 1.0f)) + _293); + } else { + _313 = _279; + _314 = _280; + _315 = _281; + } + [branch] + if (WUWA_TM_IS(3)) { + float _321 = cb0_037y * _313; + float _322 = cb0_037y * _314; + float _323 = cb0_037y * _315; + float _326 = cb0_037z * cb0_037w; + float _336 = cb0_038y * cb0_038x; + float _347 = cb0_038z * cb0_038x; + float _354 = cb0_038y / cb0_038z; + _362 = (((((_326 + _321) * _313) + _336) / (_347 + ((_321 + cb0_037z) * _313))) - _354); + _363 = (((((_326 + _322) * _314) + _336) / (_347 + ((_322 + cb0_037z) * _314))) - _354); + _364 = (((((_326 + _323) * _315) + _336) / (_347 + ((_323 + cb0_037z) * _315))) - _354); + } else { + _362 = _313; + _363 = _314; + _364 = _315; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _374 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _379 = (_374 * _362); + _380 = (_374 * _363); + _381 = (_374 * _364); + } else { + _379 = _362; + _380 = _363; + _381 = _364; + } + } else { + _379 = _362; + _380 = _363; + _381 = _364; + } + APPLY_EXTENDED_TONEMAP(_379, _380, _381); + float _402 = (saturate((log2(_379 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _403 = (saturate((log2(_380 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _404 = (saturate((log2(_381 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _405 = t5.Sample(s5, float3(_402, _403, _404)); + [branch] + if (!(cb0_108w == 0)) { + float4 _429 = t4.Sample(s4, float2(min(max(((cb0_084z * _35) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _36) + cb0_085y), cb0_083w), cb0_084y))); + float _439 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_429.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _440 = t6.Sample(s6, float3(_402, _403, _404)); + _454 = (lerp(_440.x, _405.x, _439)); + _455 = (lerp(_440.y, _405.y, _439)); + _456 = (lerp(_440.z, _405.z, _439)); + } else { + _454 = _405.x; + _455 = _405.y; + _456 = _405.z; + } + float _457 = _456 * 1.0499999523162842f; + float _458 = _455 * 1.0499999523162842f; + float _459 = _454 * 1.0499999523162842f; + float _467 = ((_41 * 0.00390625f) + -0.001953125f) + _459; + float _468 = ((_65 * 0.00390625f) + -0.001953125f) + _458; + float _469 = ((_66 * 0.00390625f) + -0.001953125f) + _457; + [branch] + if (!(cb0_107w == 0)) { + float _481 = (pow(_467, 0.012683313339948654f)); + float _482 = (pow(_468, 0.012683313339948654f)); + float _483 = (pow(_469, 0.012683313339948654f)); + float _516 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_481 + -0.8359375f)) / (18.8515625f - (_481 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _517 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_482 + -0.8359375f)) / (18.8515625f - (_482 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _518 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_483 + -0.8359375f)) / (18.8515625f - (_483 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _544 = min((_516 * 12.920000076293945f), ((exp2(log2(max(_516, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _545 = min((_517 * 12.920000076293945f), ((exp2(log2(max(_517, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _546 = min((_518 * 12.920000076293945f), ((exp2(log2(max(_518, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _544 = _467; + _545 = _468; + _546 = _469; + } + SV_Target.x = _544; + SV_Target.y = _545; + SV_Target.z = _546; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_459, _458, _457), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x27F3D84B.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x27F3D84B.ps_6_0.hlsl new file mode 100644 index 000000000..f8e28ac6e --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x27F3D84B.ps_6_0.hlsl @@ -0,0 +1,389 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _35 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _36 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _37 = TEXCOORD_2.w * 543.3099975585938f; + float _41 = frac(sin(_37 + TEXCOORD_2.z) * 493013.0f); + float _65; + float _66; + float _127; + float _128; + float _196; + float _197; + float _262; + float _263; + float _264; + float _276; + float _277; + float _278; + float _406; + float _407; + float _408; + float _440; + float _441; + float _442; + float _489; + float _490; + float _491; + float _506; + float _507; + float _508; + float _581; + float _582; + float _583; + float _671; + float _672; + float _673; + float _722; + float _723; + float _724; + float _725; + float _726; + float _727; + if (cb0_097x > 0.0f) { + _65 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _37) * 493013.0f) + 7.177000045776367f) - _41)) + _41); + _66 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _37) * 493013.0f) + 14.298999786376953f) - _41)) + _41); + } else { + _65 = _41; + _66 = _41; + } + float _76 = cb0_118z * cb0_117x; + float _77 = cb0_118z * cb0_117y; + bool _78 = (cb0_118x == 0.0f); + float _88 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _89 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _100 = float((int)(((int)(uint)((bool)(_88 > 0.0f))) - ((int)(uint)((bool)(_88 < 0.0f))))); + float _101 = float((int)(((int)(uint)((bool)(_89 > 0.0f))) - ((int)(uint)((bool)(_89 < 0.0f))))); + float _106 = saturate(abs(_88) - cb0_117z); + float _107 = saturate(abs(_89) - cb0_117z); + float _117 = _89 - ((_107 * _76) * _101); + float _119 = _89 - ((_107 * _77) * _101); + bool _120 = (cb0_118x > 0.0f); + if (_120) { + _127 = (_117 - (cb0_118w * 0.4000000059604645f)); + _128 = (_119 - (cb0_118w * 0.20000000298023224f)); + } else { + _127 = _117; + _128 = _119; + } + float4 _162 = t0.Sample(s0, float2(_35, _36)); + float4 _166 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_88 - ((_106 * select(_78, _76, cb0_117x)) * _100))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _127) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _168 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_88 - ((_106 * select(_78, _77, cb0_117y)) * _100))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _128) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_120) { + float _178 = saturate(((((_162.y * 0.5870000123977661f) - cb0_118y) + (_162.x * 0.29899999499320984f)) + (_162.z * 0.11400000005960464f)) * 10.0f); + float _182 = (_178 * _178) * (3.0f - (_178 * 2.0f)); + _196 = ((((_162.x - _166.x) + (_182 * (_166.x - _162.x))) * cb0_118x) + _166.x); + _197 = ((((_162.y - _168.y) + (_182 * (_168.y - _162.y))) * cb0_118x) + _168.y); + } else { + _196 = _166.x; + _197 = _168.y; + } + float4 _222 = t1.Sample(s1, float2(min(max(((cb0_068z * _35) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _36) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_222); + [branch] + if (!(cb0_085z == 0)) { + bool _251 = (cb0_086x != 0); + float4 _254 = t2.Sample(s2, float2(select(_251, _35, min(max(((cb0_076z * _35) + cb0_077x), cb0_075z), cb0_076x)), select(_251, _36, min(max(((cb0_076w * _36) + cb0_077y), cb0_075w), cb0_076y)))); + _262 = (_254.x + _222.x); + _263 = (_254.y + _222.y); + _264 = (_254.z + _222.z); + } else { + _262 = _222.x; + _263 = _222.y; + _264 = _222.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _268 = t3.Sample(s3, float2(_35, _36)); + _276 = (_268.x + _262); + _277 = (_268.y + _263); + _278 = (_268.z + _264); + } else { + _276 = _262; + _277 = _263; + _278 = _264; + } + float _303 = TEXCOORD_1.z + -1.0f; + float _305 = TEXCOORD_1.w + -1.0f; + float _308 = ((_303 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _310 = ((_305 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _317 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_308, _310), float2(_308, _310))) + 1.0f); + float _318 = _317 * _317; + float _319 = cb0_091z + 1.0f; + float _347 = ((_303 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _349 = ((_305 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _356 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_347, _349), float2(_347, _349))) + 1.0f); + float _357 = _356 * _356; + float _358 = cb0_094z + 1.0f; + float _369 = (((_318 * (_319 - cb0_090x)) + cb0_090x) * (_276 + ((_196 * TEXCOORD_1.x) * cb0_087x))) * ((_357 * (_358 - cb0_093x)) + cb0_093x); + float _371 = (((_318 * (_319 - cb0_090y)) + cb0_090y) * (_277 + ((_197 * TEXCOORD_1.x) * cb0_087y))) * ((_357 * (_358 - cb0_093y)) + cb0_093y); + float _373 = (((_318 * (_319 - cb0_090z)) + cb0_090z) * (_278 + ((_162.z * TEXCOORD_1.x) * cb0_087z))) * ((_357 * (_358 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_369, _371, _373)); + [branch] + if (WUWA_TM_IS(1)) { + _406 = ((((_369 * 1.3600000143051147f) + 0.04699999839067459f) * _369) / ((((_369 * 0.9599999785423279f) + 0.5600000023841858f) * _369) + 0.14000000059604645f)); + _407 = ((((_371 * 1.3600000143051147f) + 0.04699999839067459f) * _371) / ((((_371 * 0.9599999785423279f) + 0.5600000023841858f) * _371) + 0.14000000059604645f)); + _408 = ((((_373 * 1.3600000143051147f) + 0.04699999839067459f) * _373) / ((((_373 * 0.9599999785423279f) + 0.5600000023841858f) * _373) + 0.14000000059604645f)); + } else { + _406 = _369; + _407 = _371; + _408 = _373; + } + [branch] + if (WUWA_TM_IS(2)) { + float _418 = 1.0049500465393066f - (0.16398000717163086f / (_406 + -0.19505000114440918f)); + float _419 = 1.0049500465393066f - (0.16398000717163086f / (_407 + -0.19505000114440918f)); + float _420 = 1.0049500465393066f - (0.16398000717163086f / (_408 + -0.19505000114440918f)); + _440 = (((_406 - _418) * select((_406 > 0.6000000238418579f), 0.0f, 1.0f)) + _418); + _441 = (((_407 - _419) * select((_407 > 0.6000000238418579f), 0.0f, 1.0f)) + _419); + _442 = (((_408 - _420) * select((_408 > 0.6000000238418579f), 0.0f, 1.0f)) + _420); + } else { + _440 = _406; + _441 = _407; + _442 = _408; + } + [branch] + if (WUWA_TM_IS(3)) { + float _448 = cb0_037y * _440; + float _449 = cb0_037y * _441; + float _450 = cb0_037y * _442; + float _453 = cb0_037z * cb0_037w; + float _463 = cb0_038y * cb0_038x; + float _474 = cb0_038z * cb0_038x; + float _481 = cb0_038y / cb0_038z; + _489 = (((((_453 + _448) * _440) + _463) / (_474 + ((_448 + cb0_037z) * _440))) - _481); + _490 = (((((_453 + _449) * _441) + _463) / (_474 + ((_449 + cb0_037z) * _441))) - _481); + _491 = (((((_453 + _450) * _442) + _463) / (_474 + ((_450 + cb0_037z) * _442))) - _481); + } else { + _489 = _440; + _490 = _441; + _491 = _442; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _501 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _506 = (_501 * _489); + _507 = (_501 * _490); + _508 = (_501 * _491); + } else { + _506 = _489; + _507 = _490; + _508 = _491; + } + } else { + _506 = _489; + _507 = _490; + _508 = _491; + } + APPLY_EXTENDED_TONEMAP(_506, _507, _508); + float _529 = (saturate((log2(_506 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _530 = (saturate((log2(_507 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _531 = (saturate((log2(_508 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _532 = t5.Sample(s5, float3(_529, _530, _531)); + [branch] + if (!(cb0_108w == 0)) { + float4 _556 = t4.Sample(s4, float2(min(max(((cb0_084z * _35) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _36) + cb0_085y), cb0_083w), cb0_084y))); + float _566 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_556.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _567 = t6.Sample(s6, float3(_529, _530, _531)); + _581 = (lerp(_567.x, _532.x, _566)); + _582 = (lerp(_567.y, _532.y, _566)); + _583 = (lerp(_567.z, _532.z, _566)); + } else { + _581 = _532.x; + _582 = _532.y; + _583 = _532.z; + } + float _584 = _583 * 1.0499999523162842f; + float _585 = _582 * 1.0499999523162842f; + float _586 = _581 * 1.0499999523162842f; + float _594 = ((_41 * 0.00390625f) + -0.001953125f) + _586; + float _595 = ((_65 * 0.00390625f) + -0.001953125f) + _585; + float _596 = ((_66 * 0.00390625f) + -0.001953125f) + _584; + [branch] + if (!(cb0_107w == 0)) { + float _608 = (pow(_594, 0.012683313339948654f)); + float _609 = (pow(_595, 0.012683313339948654f)); + float _610 = (pow(_596, 0.012683313339948654f)); + float _643 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_608 + -0.8359375f)) / (18.8515625f - (_608 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _644 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_609 + -0.8359375f)) / (18.8515625f - (_609 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _645 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_610 + -0.8359375f)) / (18.8515625f - (_610 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _671 = min((_643 * 12.920000076293945f), ((exp2(log2(max(_643, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _672 = min((_644 * 12.920000076293945f), ((exp2(log2(max(_644, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _673 = min((_645 * 12.920000076293945f), ((exp2(log2(max(_645, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _671 = _594; + _672 = _595; + _673 = _596; + } + GENERATE_INVERSION(_671, _672, _673); + + float _682 = ((((_672 * 587.0f) + (_671 * 299.0f)) + (_673 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _689 = saturate(float((int)(((int)(uint)((bool)(_682 > 0.0f))) - ((int)(uint)((bool)(_682 < 0.0f)))))); + float _696 = cb0_110x - _671; + float _697 = cb0_110y - _672; + float _698 = cb0_110z - _673; + float _703 = (WUWA_PEAK_SCALING * cb0_111x) - _671; + float _704 = (WUWA_PEAK_SCALING * cb0_111y) - _672; + float _705 = (WUWA_PEAK_SCALING * cb0_111z) - _673; + [branch] + if (cb0_109y > 0.0f) { + _722 = (_696 * cb0_109y); + _723 = (_697 * cb0_109y); + _724 = (_698 * cb0_109y); + _725 = (_703 * cb0_109y); + _726 = (_704 * cb0_109y); + _727 = (_705 * cb0_109y); + } else { + float _714 = abs(cb0_109y); + _722 = (_703 * _714); + _723 = (_704 * _714); + _724 = (_705 * _714); + _725 = (_696 * _714); + _726 = (_697 * _714); + _727 = (_698 * _714); + } + SV_Target.x = ((cb0_109x * (lerp(_722, _725, _689))) + _671); + SV_Target.y = ((cb0_109x * (lerp(_723, _726, _689))) + _672); + SV_Target.z = (((lerp(_724, _727, _689)) * cb0_109x) + _673); + SV_Target.rgb = wuwa::ApplyDisplayMap(SV_Target.rgb); + SV_Target.w = dot(float3(_586, _585, _584), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x29A3D152.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x29A3D152.ps_6_0.hlsl new file mode 100644 index 000000000..5afbee46d --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x29A3D152.ps_6_0.hlsl @@ -0,0 +1,347 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _158; + float _159; + float _160; + float _172; + float _173; + float _174; + float _302; + float _303; + float _304; + float _336; + float _337; + float _338; + float _385; + float _386; + float _387; + float _402; + float _403; + float _404; + float _477; + float _478; + float _479; + float _567; + float _568; + float _569; + float _618; + float _619; + float _620; + float _621; + float _622; + float _623; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float4 _90 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _118 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_118); + [branch] + if (!(cb0_085z == 0)) { + bool _147 = (cb0_086x != 0); + float4 _150 = t2.Sample(s2, float2(select(_147, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_147, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _158 = (_150.x + _118.x); + _159 = (_150.y + _118.y); + _160 = (_150.z + _118.z); + } else { + _158 = _118.x; + _159 = _118.y; + _160 = _118.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _164 = t3.Sample(s3, float2(_78, _79)); + _172 = (_164.x + _158); + _173 = (_164.y + _159); + _174 = (_164.z + _160); + } else { + _172 = _158; + _173 = _159; + _174 = _160; + } + float _199 = TEXCOORD_1.z + -1.0f; + float _201 = TEXCOORD_1.w + -1.0f; + float _204 = ((_199 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _206 = ((_201 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _213 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_204, _206), float2(_204, _206))) + 1.0f); + float _214 = _213 * _213; + float _215 = cb0_091z + 1.0f; + float _243 = ((_199 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _245 = ((_201 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _252 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_243, _245), float2(_243, _245))) + 1.0f); + float _253 = _252 * _252; + float _254 = cb0_094z + 1.0f; + float _265 = (((_214 * (_215 - cb0_090x)) + cb0_090x) * (_172 + ((_90.x * TEXCOORD_1.x) * cb0_087x))) * ((_253 * (_254 - cb0_093x)) + cb0_093x); + float _267 = (((_214 * (_215 - cb0_090y)) + cb0_090y) * (_173 + ((_90.y * TEXCOORD_1.x) * cb0_087y))) * ((_253 * (_254 - cb0_093y)) + cb0_093y); + float _269 = (((_214 * (_215 - cb0_090z)) + cb0_090z) * (_174 + ((_90.z * TEXCOORD_1.x) * cb0_087z))) * ((_253 * (_254 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_265, _267, _269)); + [branch] + if (WUWA_TM_IS(1)) { + _302 = ((((_265 * 1.3600000143051147f) + 0.04699999839067459f) * _265) / ((((_265 * 0.9599999785423279f) + 0.5600000023841858f) * _265) + 0.14000000059604645f)); + _303 = ((((_267 * 1.3600000143051147f) + 0.04699999839067459f) * _267) / ((((_267 * 0.9599999785423279f) + 0.5600000023841858f) * _267) + 0.14000000059604645f)); + _304 = ((((_269 * 1.3600000143051147f) + 0.04699999839067459f) * _269) / ((((_269 * 0.9599999785423279f) + 0.5600000023841858f) * _269) + 0.14000000059604645f)); + } else { + _302 = _265; + _303 = _267; + _304 = _269; + } + [branch] + if (WUWA_TM_IS(2)) { + float _314 = 1.0049500465393066f - (0.16398000717163086f / (_302 + -0.19505000114440918f)); + float _315 = 1.0049500465393066f - (0.16398000717163086f / (_303 + -0.19505000114440918f)); + float _316 = 1.0049500465393066f - (0.16398000717163086f / (_304 + -0.19505000114440918f)); + _336 = (((_302 - _314) * select((_302 > 0.6000000238418579f), 0.0f, 1.0f)) + _314); + _337 = (((_303 - _315) * select((_303 > 0.6000000238418579f), 0.0f, 1.0f)) + _315); + _338 = (((_304 - _316) * select((_304 > 0.6000000238418579f), 0.0f, 1.0f)) + _316); + } else { + _336 = _302; + _337 = _303; + _338 = _304; + } + [branch] + if (WUWA_TM_IS(3)) { + float _344 = cb0_037y * _336; + float _345 = cb0_037y * _337; + float _346 = cb0_037y * _338; + float _349 = cb0_037z * cb0_037w; + float _359 = cb0_038y * cb0_038x; + float _370 = cb0_038z * cb0_038x; + float _377 = cb0_038y / cb0_038z; + _385 = (((((_349 + _344) * _336) + _359) / (_370 + ((_344 + cb0_037z) * _336))) - _377); + _386 = (((((_349 + _345) * _337) + _359) / (_370 + ((_345 + cb0_037z) * _337))) - _377); + _387 = (((((_349 + _346) * _338) + _359) / (_370 + ((_346 + cb0_037z) * _338))) - _377); + } else { + _385 = _336; + _386 = _337; + _387 = _338; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _397 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _402 = (_397 * _385); + _403 = (_397 * _386); + _404 = (_397 * _387); + } else { + _402 = _385; + _403 = _386; + _404 = _387; + } + } else { + _402 = _385; + _403 = _386; + _404 = _387; + } + APPLY_EXTENDED_TONEMAP(_402, _403, _404); + float _425 = (saturate((log2(_402 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _426 = (saturate((log2(_403 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _427 = (saturate((log2(_404 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _428 = t5.Sample(s5, float3(_425, _426, _427)); + [branch] + if (!(cb0_108w == 0)) { + float4 _452 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _462 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_452.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _463 = t6.Sample(s6, float3(_425, _426, _427)); + _477 = (lerp(_463.x, _428.x, _462)); + _478 = (lerp(_463.y, _428.y, _462)); + _479 = (lerp(_463.z, _428.z, _462)); + } else { + _477 = _428.x; + _478 = _428.y; + _479 = _428.z; + } + float _480 = _479 * 1.0499999523162842f; + float _481 = _478 * 1.0499999523162842f; + float _482 = _477 * 1.0499999523162842f; + float _490 = ((_43 * 0.00390625f) + -0.001953125f) + _482; + float _491 = ((_67 * 0.00390625f) + -0.001953125f) + _481; + float _492 = ((_68 * 0.00390625f) + -0.001953125f) + _480; + [branch] + if (!(cb0_107w == 0)) { + float _504 = (pow(_490, 0.012683313339948654f)); + float _505 = (pow(_491, 0.012683313339948654f)); + float _506 = (pow(_492, 0.012683313339948654f)); + float _539 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_504 + -0.8359375f)) / (18.8515625f - (_504 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _540 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_505 + -0.8359375f)) / (18.8515625f - (_505 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _541 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_506 + -0.8359375f)) / (18.8515625f - (_506 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _567 = min((_539 * 12.920000076293945f), ((exp2(log2(max(_539, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _568 = min((_540 * 12.920000076293945f), ((exp2(log2(max(_540, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _569 = min((_541 * 12.920000076293945f), ((exp2(log2(max(_541, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _567 = _490; + _568 = _491; + _569 = _492; + } + GENERATE_INVERSION(_567, _568, _569); + float _578 = ((((_568 * 587.0f) + (_567 * 299.0f)) + (_569 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _585 = saturate(float((int)(((int)(uint)((bool)(_578 > 0.0f))) - ((int)(uint)((bool)(_578 < 0.0f)))))); + float _592 = cb0_110x - _567; + float _593 = cb0_110y - _568; + float _594 = cb0_110z - _569; + float _599 = WUWA_PEAK_SCALING * cb0_111x - _567; + float _600 = WUWA_PEAK_SCALING * cb0_111y - _568; + float _601 = WUWA_PEAK_SCALING * cb0_111z - _569; + [branch] + if (cb0_109y > 0.0f) { + _618 = (_592 * cb0_109y); + _619 = (_593 * cb0_109y); + _620 = (_594 * cb0_109y); + _621 = (_599 * cb0_109y); + _622 = (_600 * cb0_109y); + _623 = (_601 * cb0_109y); + } else { + float _610 = abs(cb0_109y); + _618 = (_599 * _610); + _619 = (_600 * _610); + _620 = (_601 * _610); + _621 = (_592 * _610); + _622 = (_593 * _610); + _623 = (_594 * _610); + } + SV_Target.x = ((cb0_109x * (lerp(_618, _621, _585))) + _567); + SV_Target.y = ((cb0_109x * (lerp(_619, _622, _585))) + _568); + SV_Target.z = (((lerp(_620, _623, _585)) * cb0_109x) + _569); + SV_Target.xyz = wuwa::ApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_482, _481, _480), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x29DBAE7D.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x29DBAE7D.ps_6_0.hlsl new file mode 100644 index 000000000..4ea55cfd7 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x29DBAE7D.ps_6_0.hlsl @@ -0,0 +1,1154 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture2D t8 : register(t8); + +Texture3D t9 : register(t9); + +Texture3D t10 : register(t10); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +SamplerState s9 : register(s9); + +SamplerState s10 : register(s10); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _39 = cb0_065x * cb0_064w; + float _40 = TEXCOORD_3.x * 0.5f; + float _41 = TEXCOORD_3.y * 0.5f; + float _112; + float _113; + float _121; + float _122; + float _220; + float _221; + float _222; + float _244; + float _251; + float _258; + float _265; + float _300; + float _301; + float _302; + float _337; + float _338; + float _339; + float _367; + float _368; + float _390; + float _421; + float _422; + float _483; + float _484; + float _552; + float _553; + float _625; + float _626; + float _627; + float _656; + float _657; + float _658; + float _717; + float _789; + float _790; + float _791; + float _803; + float _804; + float _805; + float _937; + float _938; + float _939; + float _971; + float _972; + float _973; + float _1020; + float _1021; + float _1022; + float _1037; + float _1038; + float _1039; + float _1112; + float _1113; + float _1114; + float _1202; + float _1203; + float _1204; + if (!(!(cb0_102x != 0.0f))) { + float _46 = cb0_102x * 2.0f; + do { + if (_46 > 0.0f) { + float _50 = abs(_46) * 0.5f; + float _51 = tan(_50); + float _52 = _39 * TEXCOORD_3.x; + float _62 = rsqrt(dot(float2(_52, TEXCOORD_3.y), float2(_52, TEXCOORD_3.y))); + float _66 = rsqrt(dot(float2(_39, 1.0f), float2(_39, 1.0f))); + float _71 = tan((sqrt((_52 * _52) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_39 * _39) + 1.0f)) * _50); + _112 = (((_71 * ((_62 * _52) / (_66 * _39))) / _51) * 0.5f); + _113 = (((_71 * ((_62 * TEXCOORD_3.y) / _66)) / _51) * 0.5f); + } else { + if (_46 < 0.0f) { + float _85 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _90 = (((_85 * _85) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _85; + float _92 = atan(_40 / _41); + bool _95 = (_41 < 0.0f); + bool _96 = (_41 == 0.0f); + bool _97 = (_40 >= 0.0f); + bool _98 = (_40 < 0.0f); + float _106 = select((_97 && _96), 1.5707963705062866f, select((_98 && _96), -1.5707963705062866f, select((_98 && _95), (_92 + -3.1415927410125732f), select((_97 && _95), (_92 + 3.1415927410125732f), _92)))); + _112 = (sin(_106) * _90); + _113 = (cos(_106) * _90); + } else { + _112 = _40; + _113 = _41; + } + } + _121 = (((_112 + 0.5f) * 2.0f) + -1.0f); + _122 = (((_113 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _121 = TEXCOORD_3.x; + _122 = TEXCOORD_3.y; + } + float _135 = ((cb0_048z * _121) + cb0_049x) * cb0_048x; + float _136 = ((cb0_048w * _122) + cb0_049y) * cb0_048y; + float4 _137 = t5.SampleLevel(s5, float2(_135, _136), 0.0f); + float _149 = ((View_1040.x * _137.x) + View_1040.y) + (1.0f / ((View_1040.z * _137.x) - View_1040.w)); + float4 _150 = t4.Sample(s4, float2(_135, _136)); + float _158 = 1.0f / ((View_1040.w + _149) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _203 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _208 = saturate(((sqrt((_122 * _122) + (_121 * _121)) - cb0_098y) - _203) / (-0.0f - _203)); + float _212 = (_208 * _208) * (3.0f - (_208 * 2.0f)); + _220 = (1.0f - (_212 * max(cb0_097y, cb0_102y))); + _221 = (1.0f - (_212 * max(cb0_097y, cb0_103y))); + _222 = (1.0f - (_212 * max(cb0_097y, cb0_104y))); + } else { + _220 = 1.0f; + _221 = 1.0f; + _222 = 1.0f; + } + bool _228 = !(cb0_097z == 0.0f); + bool _229 = !(cb0_102z == 0.0f); + bool _231 = !(cb0_103z == 0.0f); + bool _233 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_228 || _229)) || _231)) || _233)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_228) { + _244 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _244 = cb0_097z; + } + do { + if (_229) { + _251 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _251 = cb0_102z; + } + do { + if (_231) { + _258 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _258 = cb0_103z; + } + do { + if (_233) { + _265 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _265 = cb0_104z; + } + float _266 = max(_244, _251); + float _267 = max(_244, _258); + float _268 = max(_244, _265); + float _284 = saturate((_149 - (_266 * 1000.0f)) / ((_266 * 9999.990234375f) + 0.009999999776482582f)); + float _285 = saturate((_149 - (_267 * 1000.0f)) / ((_267 * 9999.990234375f) + 0.009999999776482582f)); + float _286 = saturate((_149 - (_268 * 1000.0f)) / ((_268 * 9999.990234375f) + 0.009999999776482582f)); + _300 = ((_284 * _284) * (3.0f - (_284 * 2.0f))); + _301 = ((_285 * _285) * (3.0f - (_285 * 2.0f))); + _302 = ((_286 * _286) * (3.0f - (_286 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _300 = 1.0f; + _301 = 1.0f; + _302 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _323 = saturate(select((((_158 - _150.x) + ((((View_448[3].z) - _158) + ((View_448[2].z) * _149)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_150.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _337 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _338 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _339 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _337 = 1.0f; + _338 = 1.0f; + _339 = 1.0f; + } + float _340 = TEXCOORD_2.w * 543.3099975585938f; + float _344 = frac(sin(_340 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _367 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _340) * 493013.0f) + 7.177000045776367f) - _344)) + _344); + _368 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _340) * 493013.0f) + 14.298999786376953f) - _344)) + _344); + } else { + _367 = _344; + _368 = _344; + } + if (cb0_100z > 0.0f) { + _390 = (((((_302 * _222) * _339) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_344 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _390 = 1.0f; + } + float _393 = (_301 * _221) * _338; + float _394 = _393 * cb0_100y; + if (cb0_100y > 0.0f) { + float _399 = View_2376 * 0.00016666666488163173f; + float _403 = frac(abs(_399)); + float _408 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_399 >= (-0.0f - _399)), _403, (-0.0f - _403)); + float _414 = (0.5f - frac(sin(dot(float2(_408, _408), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _421 = (((_394 * 0.5f) * _414) + _135); + _422 = ((_414 * _394) + _136); + } else { + _421 = _135; + _422 = _136; + } + float _432 = cb0_118z * cb0_117x; + float _433 = cb0_118z * cb0_117y; + bool _434 = (cb0_118x == 0.0f); + float _444 = (cb0_114z * _121) + cb0_114x; + float _445 = (cb0_114w * _122) + cb0_114y; + float _456 = float((int)(((int)(uint)((bool)(_444 > 0.0f))) - ((int)(uint)((bool)(_444 < 0.0f))))); + float _457 = float((int)(((int)(uint)((bool)(_445 > 0.0f))) - ((int)(uint)((bool)(_445 < 0.0f))))); + float _462 = saturate(abs(_444) - cb0_117z); + float _463 = saturate(abs(_445) - cb0_117z); + float _473 = _445 - ((_463 * _432) * _457); + float _475 = _445 - ((_463 * _433) * _457); + bool _476 = (cb0_118x > 0.0f); + if (_476) { + _483 = (_473 - (cb0_118w * 0.4000000059604645f)); + _484 = (_475 - (cb0_118w * 0.20000000298023224f)); + } else { + _483 = _473; + _484 = _475; + } + float4 _518 = t0.Sample(s0, float2(_421, _422)); + float4 _522 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_444 - ((_462 * select(_434, _432, cb0_117x)) * _456))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _483) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _524 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_444 - ((_462 * select(_434, _433, cb0_117y)) * _456))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _484) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_476) { + float _534 = saturate(((((_518.y * 0.5870000123977661f) - cb0_118y) + (_518.x * 0.29899999499320984f)) + (_518.z * 0.11400000005960464f)) * 10.0f); + float _538 = (_534 * _534) * (3.0f - (_534 * 2.0f)); + _552 = ((((_518.x - _522.x) + (_538 * (_522.x - _518.x))) * cb0_118x) + _522.x); + _553 = ((((_518.y - _524.y) + (_538 * (_524.y - _518.y))) * cb0_118x) + _524.y); + } else { + _552 = _522.x; + _553 = _524.y; + } + float _556 = saturate(cb0_099x); + float _558 = saturate(cb0_099y); + if (_556 > 0.0f) { + float _569 = saturate(((_552 * 0.29899999499320984f) + (_518.z * 0.11400000005960464f)) + (_553 * 0.5870000123977661f)); + float _575 = ((_569 * _569) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_569 * 2.0f)); + float _582 = max(sqrt(((_552 * _552) + (_518.z * _518.z)) + (_553 * _553)), 0.014999999664723873f); + float _583 = _552 / _582; + float _584 = _553 / _582; + float _585 = _518.z / _582; + float _595 = log2(_575); + float _614 = ((_300 * _220) * _337) * _556; + _625 = (((((lerp(_583, 1.0f, 0.25f)) * (((_558 * 0.17000000178813934f) + 0.029999999329447746f) + _575)) - _552) * _614) + _552); + _626 = (((((((_558 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_595 * 0.8999999761581421f)) * (lerp(_584, 1.0f, 0.25f))) - _553) * _614) + _553); + _627 = (((((((_558 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_595 * 0.949999988079071f)) * (lerp(_585, 1.0f, 0.25f))) - _518.z) * _614) + _518.z); + } else { + _625 = _552; + _626 = _553; + _627 = _518.z; + } + float _630 = saturate(cb0_100x); + float _631 = _393 * _630; + if (_630 > 0.0f) { + float _642 = (sin(((_122 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _656 = ((((_642 * _625) - _625) * _631) + _625); + _657 = ((((_642 * _626) - _626) * _631) + _626); + _658 = ((((_642 * _627) - _627) * _631) + _627); + } else { + _656 = _625; + _657 = _626; + _658 = _627; + } + float _667 = log2(max(dot(float3(_656, _657, _658), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _685 = t7.Sample(s7, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _667) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _689 = t8.Sample(s8, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _692 = select((_685.y < 0.0010000000474974513f), _689.x, (_685.x / _685.y)); + float _695 = log2(TEXCOORD_1.x); + float _697 = (_692 + _695) + ((_689.x - _692) * cb0_046x); + float _702 = _695 + _667; + float _704 = _697 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _705 = (_704 > 0.0f); + if (_705) { + _717 = max(0.0f, (_704 - cb0_047x)); + } else { + _717 = min(0.0f, (cb0_047y + _704)); + } + float4 _749 = t1.Sample(s1, float2(min(max(((cb0_068z * _421) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _422) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_749); + [branch] + if (!(cb0_085z == 0)) { + bool _778 = (cb0_086x != 0); + float4 _781 = t2.Sample(s2, float2(select(_778, _421, min(max(((cb0_076z * _421) + cb0_077x), cb0_075z), cb0_076x)), select(_778, _422, min(max(((cb0_076w * _422) + cb0_077y), cb0_075w), cb0_076y)))); + _789 = (_781.x + _749.x); + _790 = (_781.y + _749.y); + _791 = (_781.z + _749.z); + } else { + _789 = _749.x; + _790 = _749.y; + _791 = _749.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _795 = t3.Sample(s3, float2(_421, _422)); + _803 = (_795.x + _789); + _804 = (_795.y + _790); + _805 = (_795.z + _791); + } else { + _803 = _789; + _804 = _790; + _805 = _791; + } + float _806 = exp2((((_697 - _702) + ((_702 - _697) * cb0_045w)) - _717) + (_717 * select(_705, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _831 = TEXCOORD_1.z + -1.0f; + float _833 = TEXCOORD_1.w + -1.0f; + float _836 = ((_831 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _838 = ((_833 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _845 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_836, _838), float2(_836, _838))) + 1.0f); + float _846 = _845 * _845; + float _847 = cb0_091z + 1.0f; + float _875 = ((_831 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _877 = ((_833 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _884 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_875, _877), float2(_875, _877))) + 1.0f); + float _885 = _884 * _884; + float _886 = cb0_094z + 1.0f; + float _898 = (((_803 + ((_806 * _656) * cb0_087x)) * _390) * ((_846 * (_847 - cb0_090x)) + cb0_090x)) * ((_885 * (_886 - cb0_093x)) + cb0_093x); + float _901 = (((_804 + ((_806 * _657) * cb0_087y)) * _390) * ((_846 * (_847 - cb0_090y)) + cb0_090y)) * ((_885 * (_886 - cb0_093y)) + cb0_093y); + float _904 = (((_805 + ((_806 * _658) * cb0_087z)) * _390) * ((_846 * (_847 - cb0_090z)) + cb0_090z)) * ((_885 * (_886 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_898, _901, _904)); + [branch] + if (WUWA_TM_IS(1)) { + _937 = ((((_898 * 1.3600000143051147f) + 0.04699999839067459f) * _898) / ((((_898 * 0.9599999785423279f) + 0.5600000023841858f) * _898) + 0.14000000059604645f)); + _938 = ((((_901 * 1.3600000143051147f) + 0.04699999839067459f) * _901) / ((((_901 * 0.9599999785423279f) + 0.5600000023841858f) * _901) + 0.14000000059604645f)); + _939 = ((((_904 * 1.3600000143051147f) + 0.04699999839067459f) * _904) / ((((_904 * 0.9599999785423279f) + 0.5600000023841858f) * _904) + 0.14000000059604645f)); + } else { + _937 = _898; + _938 = _901; + _939 = _904; + } + [branch] + if (WUWA_TM_IS(2)) { + float _949 = 1.0049500465393066f - (0.16398000717163086f / (_937 + -0.19505000114440918f)); + float _950 = 1.0049500465393066f - (0.16398000717163086f / (_938 + -0.19505000114440918f)); + float _951 = 1.0049500465393066f - (0.16398000717163086f / (_939 + -0.19505000114440918f)); + _971 = (((_937 - _949) * select((_937 > 0.6000000238418579f), 0.0f, 1.0f)) + _949); + _972 = (((_938 - _950) * select((_938 > 0.6000000238418579f), 0.0f, 1.0f)) + _950); + _973 = (((_939 - _951) * select((_939 > 0.6000000238418579f), 0.0f, 1.0f)) + _951); + } else { + _971 = _937; + _972 = _938; + _973 = _939; + } + [branch] + if (WUWA_TM_IS(3)) { + float _979 = cb0_037y * _971; + float _980 = cb0_037y * _972; + float _981 = cb0_037y * _973; + float _984 = cb0_037z * cb0_037w; + float _994 = cb0_038y * cb0_038x; + float _1005 = cb0_038z * cb0_038x; + float _1012 = cb0_038y / cb0_038z; + _1020 = (((((_984 + _979) * _971) + _994) / (_1005 + ((_979 + cb0_037z) * _971))) - _1012); + _1021 = (((((_984 + _980) * _972) + _994) / (_1005 + ((_980 + cb0_037z) * _972))) - _1012); + _1022 = (((((_984 + _981) * _973) + _994) / (_1005 + ((_981 + cb0_037z) * _973))) - _1012); + } else { + _1020 = _971; + _1021 = _972; + _1022 = _973; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _1032 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _1037 = (_1032 * _1020); + _1038 = (_1032 * _1021); + _1039 = (_1032 * _1022); + } else { + _1037 = _1020; + _1038 = _1021; + _1039 = _1022; + } + } else { + _1037 = _1020; + _1038 = _1021; + _1039 = _1022; + } + APPLY_EXTENDED_TONEMAP(_1037, _1038, _1039); + float _1060 = (saturate((log2(_1037 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1061 = (saturate((log2(_1038 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1062 = (saturate((log2(_1039 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _1063 = t9.Sample(s9, float3(_1060, _1061, _1062)); + [branch] + if (!(cb0_108w == 0)) { + float4 _1087 = t6.Sample(s6, float2(min(max(((cb0_084z * _421) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _422) + cb0_085y), cb0_083w), cb0_084y))); + float _1097 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_1087.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _1098 = t10.Sample(s10, float3(_1060, _1061, _1062)); + _1112 = (lerp(_1098.x, _1063.x, _1097)); + _1113 = (lerp(_1098.y, _1063.y, _1097)); + _1114 = (lerp(_1098.z, _1063.z, _1097)); + } else { + _1112 = _1063.x; + _1113 = _1063.y; + _1114 = _1063.z; + } + float _1115 = _1114 * 1.0499999523162842f; + float _1116 = _1113 * 1.0499999523162842f; + float _1117 = _1112 * 1.0499999523162842f; + float _1125 = ((_344 * 0.00390625f) + -0.001953125f) + _1117; + float _1126 = ((_367 * 0.00390625f) + -0.001953125f) + _1116; + float _1127 = ((_368 * 0.00390625f) + -0.001953125f) + _1115; + [branch] + if (!(cb0_107w == 0)) { + float _1139 = (pow(_1125, 0.012683313339948654f)); + float _1140 = (pow(_1126, 0.012683313339948654f)); + float _1141 = (pow(_1127, 0.012683313339948654f)); + float _1174 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1139 + -0.8359375f)) / (18.8515625f - (_1139 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1175 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1140 + -0.8359375f)) / (18.8515625f - (_1140 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1176 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1141 + -0.8359375f)) / (18.8515625f - (_1141 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1202 = min((_1174 * 12.920000076293945f), ((exp2(log2(max(_1174, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1203 = min((_1175 * 12.920000076293945f), ((exp2(log2(max(_1175, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1204 = min((_1176 * 12.920000076293945f), ((exp2(log2(max(_1176, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1202 = _1125; + _1203 = _1126; + _1204 = _1127; + } + SV_Target.x = _1202; + SV_Target.y = _1203; + SV_Target.z = _1204; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_1117, _1116, _1115), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x30388A6C.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x30388A6C.ps_6_0.hlsl new file mode 100644 index 000000000..168272443 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x30388A6C.ps_6_0.hlsl @@ -0,0 +1,1125 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _34 = cb0_065x * cb0_064w; + float _35 = TEXCOORD_3.x * 0.5f; + float _36 = TEXCOORD_3.y * 0.5f; + float _107; + float _108; + float _116; + float _117; + float _215; + float _216; + float _217; + float _239; + float _246; + float _253; + float _260; + float _295; + float _296; + float _297; + float _332; + float _333; + float _334; + float _362; + float _363; + float _385; + float _416; + float _417; + float _505; + float _506; + float _600; + float _601; + float _673; + float _674; + float _675; + float _704; + float _705; + float _706; + float _771; + float _772; + float _773; + float _785; + float _786; + float _787; + float _918; + float _919; + float _920; + float _952; + float _953; + float _954; + float _1001; + float _1002; + float _1003; + float _1018; + float _1019; + float _1020; + float _1093; + float _1094; + float _1095; + float _1183; + float _1184; + float _1185; + if (!(!(cb0_102x != 0.0f))) { + float _41 = cb0_102x * 2.0f; + do { + if (_41 > 0.0f) { + float _45 = abs(_41) * 0.5f; + float _46 = tan(_45); + float _47 = _34 * TEXCOORD_3.x; + float _57 = rsqrt(dot(float2(_47, TEXCOORD_3.y), float2(_47, TEXCOORD_3.y))); + float _61 = rsqrt(dot(float2(_34, 1.0f), float2(_34, 1.0f))); + float _66 = tan((sqrt((_47 * _47) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_34 * _34) + 1.0f)) * _45); + _107 = (((_66 * ((_57 * _47) / (_61 * _34))) / _46) * 0.5f); + _108 = (((_66 * ((_57 * TEXCOORD_3.y) / _61)) / _46) * 0.5f); + } else { + if (_41 < 0.0f) { + float _80 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _85 = (((_80 * _80) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _80; + float _87 = atan(_35 / _36); + bool _90 = (_36 < 0.0f); + bool _91 = (_36 == 0.0f); + bool _92 = (_35 >= 0.0f); + bool _93 = (_35 < 0.0f); + float _101 = select((_92 && _91), 1.5707963705062866f, select((_93 && _91), -1.5707963705062866f, select((_93 && _90), (_87 + -3.1415927410125732f), select((_92 && _90), (_87 + 3.1415927410125732f), _87)))); + _107 = (sin(_101) * _85); + _108 = (cos(_101) * _85); + } else { + _107 = _35; + _108 = _36; + } + } + _116 = (((_107 + 0.5f) * 2.0f) + -1.0f); + _117 = (((_108 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _116 = TEXCOORD_3.x; + _117 = TEXCOORD_3.y; + } + float _130 = ((cb0_048z * _116) + cb0_049x) * cb0_048x; + float _131 = ((cb0_048w * _117) + cb0_049y) * cb0_048y; + float4 _132 = t5.SampleLevel(s5, float2(_130, _131), 0.0f); + float _144 = ((View_1040.x * _132.x) + View_1040.y) + (1.0f / ((View_1040.z * _132.x) - View_1040.w)); + float4 _145 = t4.Sample(s4, float2(_130, _131)); + float _153 = 1.0f / ((View_1040.w + _144) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _198 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _203 = saturate(((sqrt((_117 * _117) + (_116 * _116)) - cb0_098y) - _198) / (-0.0f - _198)); + float _207 = (_203 * _203) * (3.0f - (_203 * 2.0f)); + _215 = (1.0f - (_207 * max(cb0_097y, cb0_102y))); + _216 = (1.0f - (_207 * max(cb0_097y, cb0_103y))); + _217 = (1.0f - (_207 * max(cb0_097y, cb0_104y))); + } else { + _215 = 1.0f; + _216 = 1.0f; + _217 = 1.0f; + } + bool _223 = !(cb0_097z == 0.0f); + bool _224 = !(cb0_102z == 0.0f); + bool _226 = !(cb0_103z == 0.0f); + bool _228 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_223 || _224)) || _226)) || _228)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_223) { + _239 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _239 = cb0_097z; + } + do { + if (_224) { + _246 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _246 = cb0_102z; + } + do { + if (_226) { + _253 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _253 = cb0_103z; + } + do { + if (_228) { + _260 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _260 = cb0_104z; + } + float _261 = max(_239, _246); + float _262 = max(_239, _253); + float _263 = max(_239, _260); + float _279 = saturate((_144 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + float _280 = saturate((_144 - (_262 * 1000.0f)) / ((_262 * 9999.990234375f) + 0.009999999776482582f)); + float _281 = saturate((_144 - (_263 * 1000.0f)) / ((_263 * 9999.990234375f) + 0.009999999776482582f)); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + _296 = ((_280 * _280) * (3.0f - (_280 * 2.0f))); + _297 = ((_281 * _281) * (3.0f - (_281 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _295 = 1.0f; + _296 = 1.0f; + _297 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _318 = saturate(select((((_153 - _145.x) + ((((View_448[3].z) - _153) + ((View_448[2].z) * _144)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_145.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _332 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _333 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _334 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _332 = 1.0f; + _333 = 1.0f; + _334 = 1.0f; + } + float _335 = TEXCOORD_2.w * 543.3099975585938f; + float _339 = frac(sin(_335 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _362 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _335) * 493013.0f) + 7.177000045776367f) - _339)) + _339); + _363 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _335) * 493013.0f) + 14.298999786376953f) - _339)) + _339); + } else { + _362 = _339; + _363 = _339; + } + if (cb0_100z > 0.0f) { + _385 = (((((_297 * _217) * _334) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_339 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _385 = 1.0f; + } + float _388 = (_296 * _216) * _333; + float _389 = _388 * cb0_100y; + if (cb0_100y > 0.0f) { + float _394 = View_2376 * 0.00016666666488163173f; + float _398 = frac(abs(_394)); + float _403 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_394 >= (-0.0f - _394)), _398, (-0.0f - _398)); + float _409 = (0.5f - frac(sin(dot(float2(_403, _403), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _416 = (((_389 * 0.5f) * _409) + _130); + _417 = ((_409 * _389) + _131); + } else { + _416 = _130; + _417 = _131; + } + float _422 = cb0_096z * (1.0f - (_339 * _339)); + float _427 = (_422 * (TEXCOORD_2.x - _416)) + _416; + float _428 = (_422 * (TEXCOORD_2.y - _417)) + _417; + float _443 = _427 - (((cb0_048z * _116) + cb0_049x) * cb0_048x); + float _444 = _428 - (((cb0_048w * _117) + cb0_049y) * cb0_048y); + float _454 = cb0_118z * cb0_117x; + float _455 = cb0_118z * cb0_117y; + bool _456 = (cb0_118x == 0.0f); + float _466 = (cb0_114z * _116) + cb0_114x; + float _467 = (cb0_114w * _117) + cb0_114y; + float _478 = float((int)(((int)(uint)((bool)(_466 > 0.0f))) - ((int)(uint)((bool)(_466 < 0.0f))))); + float _479 = float((int)(((int)(uint)((bool)(_467 > 0.0f))) - ((int)(uint)((bool)(_467 < 0.0f))))); + float _484 = saturate(abs(_466) - cb0_117z); + float _485 = saturate(abs(_467) - cb0_117z); + float _495 = _467 - ((_485 * _454) * _479); + float _497 = _467 - ((_485 * _455) * _479); + bool _498 = (cb0_118x > 0.0f); + if (_498) { + _505 = (_495 - (cb0_118w * 0.4000000059604645f)); + _506 = (_497 - (cb0_118w * 0.20000000298023224f)); + } else { + _505 = _495; + _506 = _497; + } + float4 _542 = t0.Sample(s0, float2(min(max(_427, cb0_053z), cb0_054x), min(max(_428, cb0_053w), cb0_054y))); + float4 _558 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_466 - ((_484 * select(_456, _454, cb0_117x)) * _478))) + cb0_115x)) + cb0_049x) * cb0_048x) + _443), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _505) + cb0_115y)) + cb0_049y) * cb0_048y) + _444), cb0_053w), cb0_054y))); + float4 _572 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_466 - ((_484 * select(_456, _455, cb0_117y)) * _478))) + cb0_115x)) + cb0_049x) * cb0_048x) + _443), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _506) + cb0_115y)) + cb0_049y) * cb0_048y) + _444), cb0_053w), cb0_054y))); + if (_498) { + float _582 = saturate(((((_542.y * 0.5870000123977661f) - cb0_118y) + (_542.x * 0.29899999499320984f)) + (_542.z * 0.11400000005960464f)) * 10.0f); + float _586 = (_582 * _582) * (3.0f - (_582 * 2.0f)); + _600 = ((((_542.x - _558.x) + (_586 * (_558.x - _542.x))) * cb0_118x) + _558.x); + _601 = ((((_542.y - _572.y) + (_586 * (_572.y - _542.y))) * cb0_118x) + _572.y); + } else { + _600 = _558.x; + _601 = _572.y; + } + float _604 = saturate(cb0_099x); + float _606 = saturate(cb0_099y); + if (_604 > 0.0f) { + float _617 = saturate(((_600 * 0.29899999499320984f) + (_542.z * 0.11400000005960464f)) + (_601 * 0.5870000123977661f)); + float _623 = ((_617 * _617) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_617 * 2.0f)); + float _630 = max(sqrt(((_600 * _600) + (_542.z * _542.z)) + (_601 * _601)), 0.014999999664723873f); + float _631 = _600 / _630; + float _632 = _601 / _630; + float _633 = _542.z / _630; + float _643 = log2(_623); + float _662 = ((_295 * _215) * _332) * _604; + _673 = (((((lerp(_631, 1.0f, 0.25f)) * (((_606 * 0.17000000178813934f) + 0.029999999329447746f) + _623)) - _600) * _662) + _600); + _674 = (((((((_606 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_643 * 0.8999999761581421f)) * (lerp(_632, 1.0f, 0.25f))) - _601) * _662) + _601); + _675 = (((((((_606 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_643 * 0.949999988079071f)) * (lerp(_633, 1.0f, 0.25f))) - _542.z) * _662) + _542.z); + } else { + _673 = _600; + _674 = _601; + _675 = _542.z; + } + float _678 = saturate(cb0_100x); + float _679 = _388 * _678; + if (_678 > 0.0f) { + float _690 = (sin(((_117 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _704 = ((((_690 * _673) - _673) * _679) + _673); + _705 = ((((_690 * _674) - _674) * _679) + _674); + _706 = ((((_690 * _675) - _675) * _679) + _675); + } else { + _704 = _673; + _705 = _674; + _706 = _675; + } + float4 _731 = t1.Sample(s1, float2(min(max(((cb0_068z * _427) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _428) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_731); + [branch] + if (!(cb0_085z == 0)) { + bool _760 = (cb0_086x != 0); + float4 _763 = t2.Sample(s2, float2(select(_760, _427, min(max(((cb0_076z * _427) + cb0_077x), cb0_075z), cb0_076x)), select(_760, _428, min(max(((cb0_076w * _428) + cb0_077y), cb0_075w), cb0_076y)))); + _771 = (_763.x + _731.x); + _772 = (_763.y + _731.y); + _773 = (_763.z + _731.z); + } else { + _771 = _731.x; + _772 = _731.y; + _773 = _731.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _777 = t3.Sample(s3, float2(_427, _428)); + _785 = (_777.x + _771); + _786 = (_777.y + _772); + _787 = (_777.z + _773); + } else { + _785 = _771; + _786 = _772; + _787 = _773; + } + float _812 = TEXCOORD_1.z + -1.0f; + float _814 = TEXCOORD_1.w + -1.0f; + float _817 = ((_812 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _819 = ((_814 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _826 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_817, _819), float2(_817, _819))) + 1.0f); + float _827 = _826 * _826; + float _828 = cb0_091z + 1.0f; + float _856 = ((_812 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _858 = ((_814 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _865 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_856, _858), float2(_856, _858))) + 1.0f); + float _866 = _865 * _865; + float _867 = cb0_094z + 1.0f; + float _879 = (((_785 + ((_704 * TEXCOORD_1.x) * cb0_087x)) * _385) * ((_827 * (_828 - cb0_090x)) + cb0_090x)) * ((_866 * (_867 - cb0_093x)) + cb0_093x); + float _882 = (((_786 + ((_705 * TEXCOORD_1.x) * cb0_087y)) * _385) * ((_827 * (_828 - cb0_090y)) + cb0_090y)) * ((_866 * (_867 - cb0_093y)) + cb0_093y); + float _885 = (((_787 + ((_706 * TEXCOORD_1.x) * cb0_087z)) * _385) * ((_827 * (_828 - cb0_090z)) + cb0_090z)) * ((_866 * (_867 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_879, _882, _885)); + [branch] + if (WUWA_TM_IS(1)) { + _918 = ((((_879 * 1.3600000143051147f) + 0.04699999839067459f) * _879) / ((((_879 * 0.9599999785423279f) + 0.5600000023841858f) * _879) + 0.14000000059604645f)); + _919 = ((((_882 * 1.3600000143051147f) + 0.04699999839067459f) * _882) / ((((_882 * 0.9599999785423279f) + 0.5600000023841858f) * _882) + 0.14000000059604645f)); + _920 = ((((_885 * 1.3600000143051147f) + 0.04699999839067459f) * _885) / ((((_885 * 0.9599999785423279f) + 0.5600000023841858f) * _885) + 0.14000000059604645f)); + } else { + _918 = _879; + _919 = _882; + _920 = _885; + } + [branch] + if (WUWA_TM_IS(2)) { + float _930 = 1.0049500465393066f - (0.16398000717163086f / (_918 + -0.19505000114440918f)); + float _931 = 1.0049500465393066f - (0.16398000717163086f / (_919 + -0.19505000114440918f)); + float _932 = 1.0049500465393066f - (0.16398000717163086f / (_920 + -0.19505000114440918f)); + _952 = (((_918 - _930) * select((_918 > 0.6000000238418579f), 0.0f, 1.0f)) + _930); + _953 = (((_919 - _931) * select((_919 > 0.6000000238418579f), 0.0f, 1.0f)) + _931); + _954 = (((_920 - _932) * select((_920 > 0.6000000238418579f), 0.0f, 1.0f)) + _932); + } else { + _952 = _918; + _953 = _919; + _954 = _920; + } + [branch] + if (WUWA_TM_IS(3)) { + float _960 = cb0_037y * _952; + float _961 = cb0_037y * _953; + float _962 = cb0_037y * _954; + float _965 = cb0_037z * cb0_037w; + float _975 = cb0_038y * cb0_038x; + float _986 = cb0_038z * cb0_038x; + float _993 = cb0_038y / cb0_038z; + _1001 = (((((_965 + _960) * _952) + _975) / (_986 + ((_960 + cb0_037z) * _952))) - _993); + _1002 = (((((_965 + _961) * _953) + _975) / (_986 + ((_961 + cb0_037z) * _953))) - _993); + _1003 = (((((_965 + _962) * _954) + _975) / (_986 + ((_962 + cb0_037z) * _954))) - _993); + } else { + _1001 = _952; + _1002 = _953; + _1003 = _954; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _1013 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _1018 = (_1013 * _1001); + _1019 = (_1013 * _1002); + _1020 = (_1013 * _1003); + } else { + _1018 = _1001; + _1019 = _1002; + _1020 = _1003; + } + } else { + _1018 = _1001; + _1019 = _1002; + _1020 = _1003; + } + APPLY_EXTENDED_TONEMAP(_1018, _1019, _1020); + float _1041 = (saturate((log2(_1018 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1042 = (saturate((log2(_1019 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _1043 = (saturate((log2(_1020 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _1044 = t7.Sample(s7, float3(_1041, _1042, _1043)); + [branch] + if (!(cb0_108w == 0)) { + float4 _1068 = t6.Sample(s6, float2(min(max(((cb0_084z * _427) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _428) + cb0_085y), cb0_083w), cb0_084y))); + float _1078 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_1068.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _1079 = t8.Sample(s8, float3(_1041, _1042, _1043)); + _1093 = (lerp(_1079.x, _1044.x, _1078)); + _1094 = (lerp(_1079.y, _1044.y, _1078)); + _1095 = (lerp(_1079.z, _1044.z, _1078)); + } else { + _1093 = _1044.x; + _1094 = _1044.y; + _1095 = _1044.z; + } + float _1096 = _1095 * 1.0499999523162842f; + float _1097 = _1094 * 1.0499999523162842f; + float _1098 = _1093 * 1.0499999523162842f; + float _1106 = ((_339 * 0.00390625f) + -0.001953125f) + _1098; + float _1107 = ((_362 * 0.00390625f) + -0.001953125f) + _1097; + float _1108 = ((_363 * 0.00390625f) + -0.001953125f) + _1096; + [branch] + if (!(cb0_107w == 0)) { + float _1120 = (pow(_1106, 0.012683313339948654f)); + float _1121 = (pow(_1107, 0.012683313339948654f)); + float _1122 = (pow(_1108, 0.012683313339948654f)); + float _1155 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1120 + -0.8359375f)) / (18.8515625f - (_1120 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1156 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1121 + -0.8359375f)) / (18.8515625f - (_1121 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1157 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1122 + -0.8359375f)) / (18.8515625f - (_1122 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1183 = min((_1155 * 12.920000076293945f), ((exp2(log2(max(_1155, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1184 = min((_1156 * 12.920000076293945f), ((exp2(log2(max(_1156, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1185 = min((_1157 * 12.920000076293945f), ((exp2(log2(max(_1157, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1183 = _1106; + _1184 = _1107; + _1185 = _1108; + } + SV_Target.x = _1183; + SV_Target.y = _1184; + SV_Target.z = _1185; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_1098, _1097, _1096), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x41579D47.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x41579D47.ps_6_0.hlsl new file mode 100644 index 000000000..ad27dc5f0 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x41579D47.ps_6_0.hlsl @@ -0,0 +1,427 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _42 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _43 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _44 = TEXCOORD_2.w * 543.3099975585938f; + float _48 = frac(sin(_44 + TEXCOORD_2.z) * 493013.0f); + float _72; + float _73; + float _134; + float _135; + float _203; + float _204; + float _263; + float _335; + float _336; + float _337; + float _349; + float _350; + float _351; + float _480; + float _481; + float _482; + float _514; + float _515; + float _516; + float _563; + float _564; + float _565; + float _580; + float _581; + float _582; + float _655; + float _656; + float _657; + float _745; + float _746; + float _747; + float _796; + float _797; + float _798; + float _799; + float _800; + float _801; + if (cb0_097x > 0.0f) { + _72 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _44) * 493013.0f) + 7.177000045776367f) - _48)) + _48); + _73 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _44) * 493013.0f) + 14.298999786376953f) - _48)) + _48); + } else { + _72 = _48; + _73 = _48; + } + float _83 = cb0_118z * cb0_117x; + float _84 = cb0_118z * cb0_117y; + bool _85 = (cb0_118x == 0.0f); + float _95 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _96 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _107 = float((int)(((int)(uint)((bool)(_95 > 0.0f))) - ((int)(uint)((bool)(_95 < 0.0f))))); + float _108 = float((int)(((int)(uint)((bool)(_96 > 0.0f))) - ((int)(uint)((bool)(_96 < 0.0f))))); + float _113 = saturate(abs(_95) - cb0_117z); + float _114 = saturate(abs(_96) - cb0_117z); + float _124 = _96 - ((_114 * _83) * _108); + float _126 = _96 - ((_114 * _84) * _108); + bool _127 = (cb0_118x > 0.0f); + if (_127) { + _134 = (_124 - (cb0_118w * 0.4000000059604645f)); + _135 = (_126 - (cb0_118w * 0.20000000298023224f)); + } else { + _134 = _124; + _135 = _126; + } + float4 _169 = t0.Sample(s0, float2(_42, _43)); + float4 _173 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_95 - ((_113 * select(_85, _83, cb0_117x)) * _107))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _134) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _175 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_95 - ((_113 * select(_85, _84, cb0_117y)) * _107))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _135) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_127) { + float _185 = saturate(((((_169.y * 0.5870000123977661f) - cb0_118y) + (_169.x * 0.29899999499320984f)) + (_169.z * 0.11400000005960464f)) * 10.0f); + float _189 = (_185 * _185) * (3.0f - (_185 * 2.0f)); + _203 = ((((_169.x - _173.x) + (_189 * (_173.x - _169.x))) * cb0_118x) + _173.x); + _204 = ((((_169.y - _175.y) + (_189 * (_175.y - _169.y))) * cb0_118x) + _175.y); + } else { + _203 = _173.x; + _204 = _175.y; + } + float _213 = log2(max(dot(float3(_203, _204, _169.z), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _231 = t5.Sample(s5, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _213) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _235 = t6.Sample(s6, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _238 = select((_231.y < 0.0010000000474974513f), _235.x, (_231.x / _231.y)); + float _241 = log2(TEXCOORD_1.x); + float _243 = (_238 + _241) + ((_235.x - _238) * cb0_046x); + float _248 = _241 + _213; + float _250 = _243 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _251 = (_250 > 0.0f); + if (_251) { + _263 = max(0.0f, (_250 - cb0_047x)); + } else { + _263 = min(0.0f, (cb0_047y + _250)); + } + float4 _295 = t1.Sample(s1, float2(min(max(((cb0_068z * _42) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _43) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_295); + [branch] + if (!(cb0_085z == 0)) { + bool _324 = (cb0_086x != 0); + float4 _327 = t2.Sample(s2, float2(select(_324, _42, min(max(((cb0_076z * _42) + cb0_077x), cb0_075z), cb0_076x)), select(_324, _43, min(max(((cb0_076w * _43) + cb0_077y), cb0_075w), cb0_076y)))); + _335 = (_327.x + _295.x); + _336 = (_327.y + _295.y); + _337 = (_327.z + _295.z); + } else { + _335 = _295.x; + _336 = _295.y; + _337 = _295.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _341 = t3.Sample(s3, float2(_42, _43)); + _349 = (_341.x + _335); + _350 = (_341.y + _336); + _351 = (_341.z + _337); + } else { + _349 = _335; + _350 = _336; + _351 = _337; + } + float _352 = exp2((((_243 - _248) + ((_248 - _243) * cb0_045w)) - _263) + (_263 * select(_251, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _377 = TEXCOORD_1.z + -1.0f; + float _379 = TEXCOORD_1.w + -1.0f; + float _382 = ((_377 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _384 = ((_379 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _391 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_382, _384), float2(_382, _384))) + 1.0f); + float _392 = _391 * _391; + float _393 = cb0_091z + 1.0f; + float _421 = ((_377 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _423 = ((_379 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _430 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_421, _423), float2(_421, _423))) + 1.0f); + float _431 = _430 * _430; + float _432 = cb0_094z + 1.0f; + float _443 = (((_392 * (_393 - cb0_090x)) + cb0_090x) * (_349 + ((_352 * _203) * cb0_087x))) * ((_431 * (_432 - cb0_093x)) + cb0_093x); + float _445 = (((_392 * (_393 - cb0_090y)) + cb0_090y) * (_350 + ((_352 * _204) * cb0_087y))) * ((_431 * (_432 - cb0_093y)) + cb0_093y); + float _447 = (((_392 * (_393 - cb0_090z)) + cb0_090z) * (_351 + ((_352 * _169.z) * cb0_087z))) * ((_431 * (_432 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_443, _445, _447)); + [branch] + if (WUWA_TM_IS(1)) { + _480 = ((((_443 * 1.3600000143051147f) + 0.04699999839067459f) * _443) / ((((_443 * 0.9599999785423279f) + 0.5600000023841858f) * _443) + 0.14000000059604645f)); + _481 = ((((_445 * 1.3600000143051147f) + 0.04699999839067459f) * _445) / ((((_445 * 0.9599999785423279f) + 0.5600000023841858f) * _445) + 0.14000000059604645f)); + _482 = ((((_447 * 1.3600000143051147f) + 0.04699999839067459f) * _447) / ((((_447 * 0.9599999785423279f) + 0.5600000023841858f) * _447) + 0.14000000059604645f)); + } else { + _480 = _443; + _481 = _445; + _482 = _447; + } + [branch] + if (WUWA_TM_IS(2)) { + float _492 = 1.0049500465393066f - (0.16398000717163086f / (_480 + -0.19505000114440918f)); + float _493 = 1.0049500465393066f - (0.16398000717163086f / (_481 + -0.19505000114440918f)); + float _494 = 1.0049500465393066f - (0.16398000717163086f / (_482 + -0.19505000114440918f)); + _514 = (((_480 - _492) * select((_480 > 0.6000000238418579f), 0.0f, 1.0f)) + _492); + _515 = (((_481 - _493) * select((_481 > 0.6000000238418579f), 0.0f, 1.0f)) + _493); + _516 = (((_482 - _494) * select((_482 > 0.6000000238418579f), 0.0f, 1.0f)) + _494); + } else { + _514 = _480; + _515 = _481; + _516 = _482; + } + [branch] + if (WUWA_TM_IS(3)) { + float _522 = cb0_037y * _514; + float _523 = cb0_037y * _515; + float _524 = cb0_037y * _516; + float _527 = cb0_037z * cb0_037w; + float _537 = cb0_038y * cb0_038x; + float _548 = cb0_038z * cb0_038x; + float _555 = cb0_038y / cb0_038z; + _563 = (((((_527 + _522) * _514) + _537) / (_548 + ((_522 + cb0_037z) * _514))) - _555); + _564 = (((((_527 + _523) * _515) + _537) / (_548 + ((_523 + cb0_037z) * _515))) - _555); + _565 = (((((_527 + _524) * _516) + _537) / (_548 + ((_524 + cb0_037z) * _516))) - _555); + } else { + _563 = _514; + _564 = _515; + _565 = _516; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _575 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _580 = (_575 * _563); + _581 = (_575 * _564); + _582 = (_575 * _565); + } else { + _580 = _563; + _581 = _564; + _582 = _565; + } + } else { + _580 = _563; + _581 = _564; + _582 = _565; + } + APPLY_EXTENDED_TONEMAP(_580, _581, _582); + float _603 = (saturate((log2(_580 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _604 = (saturate((log2(_581 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _605 = (saturate((log2(_582 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _606 = t7.Sample(s7, float3(_603, _604, _605)); + [branch] + if (!(cb0_108w == 0)) { + float4 _630 = t4.Sample(s4, float2(min(max(((cb0_084z * _42) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _43) + cb0_085y), cb0_083w), cb0_084y))); + float _640 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_630.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _641 = t8.Sample(s8, float3(_603, _604, _605)); + _655 = (lerp(_641.x, _606.x, _640)); + _656 = (lerp(_641.y, _606.y, _640)); + _657 = (lerp(_641.z, _606.z, _640)); + } else { + _655 = _606.x; + _656 = _606.y; + _657 = _606.z; + } + float _658 = _657 * 1.0499999523162842f; + float _659 = _656 * 1.0499999523162842f; + float _660 = _655 * 1.0499999523162842f; + float _668 = ((_48 * 0.00390625f) + -0.001953125f) + _660; + float _669 = ((_72 * 0.00390625f) + -0.001953125f) + _659; + float _670 = ((_73 * 0.00390625f) + -0.001953125f) + _658; + [branch] + if (!(cb0_107w == 0)) { + float _682 = (pow(_668, 0.012683313339948654f)); + float _683 = (pow(_669, 0.012683313339948654f)); + float _684 = (pow(_670, 0.012683313339948654f)); + float _717 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_682 + -0.8359375f)) / (18.8515625f - (_682 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _718 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_683 + -0.8359375f)) / (18.8515625f - (_683 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _719 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_684 + -0.8359375f)) / (18.8515625f - (_684 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _745 = min((_717 * 12.920000076293945f), ((exp2(log2(max(_717, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _746 = min((_718 * 12.920000076293945f), ((exp2(log2(max(_718, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _747 = min((_719 * 12.920000076293945f), ((exp2(log2(max(_719, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _745 = _668; + _746 = _669; + _747 = _670; + } + GENERATE_INVERSION(_745, _746, _747); + float _756 = ((((_746 * 587.0f) + (_745 * 299.0f)) + (_747 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _763 = saturate(float((int)(((int)(uint)((bool)(_756 > 0.0f))) - ((int)(uint)((bool)(_756 < 0.0f)))))); + float _770 = cb0_110x - _745; + float _771 = cb0_110y - _746; + float _772 = cb0_110z - _747; + float _777 = WUWA_PEAK_SCALING * cb0_111x - _745; + float _778 = WUWA_PEAK_SCALING * cb0_111y - _746; + float _779 = WUWA_PEAK_SCALING * cb0_111z - _747; + [branch] + if (cb0_109y > 0.0f) { + _796 = (_770 * cb0_109y); + _797 = (_771 * cb0_109y); + _798 = (_772 * cb0_109y); + _799 = (_777 * cb0_109y); + _800 = (_778 * cb0_109y); + _801 = (_779 * cb0_109y); + } else { + float _788 = abs(cb0_109y); + _796 = (_777 * _788); + _797 = (_778 * _788); + _798 = (_779 * _788); + _799 = (_770 * _788); + _800 = (_771 * _788); + _801 = (_772 * _788); + } + SV_Target.x = ((cb0_109x * (lerp(_796, _799, _763))) + _745); + SV_Target.y = ((cb0_109x * (lerp(_797, _800, _763))) + _746); + SV_Target.z = (((lerp(_798, _801, _763)) * cb0_109x) + _747); + SV_Target.xyz = wuwa::ApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_660, _659, _658), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x4A2B7CEE.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x4A2B7CEE.ps_6_0.hlsl new file mode 100644 index 000000000..301f456f2 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x4A2B7CEE.ps_6_0.hlsl @@ -0,0 +1,1066 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _32 = cb0_065x * cb0_064w; + float _33 = TEXCOORD_3.x * 0.5f; + float _34 = TEXCOORD_3.y * 0.5f; + float _105; + float _106; + float _114; + float _115; + float _213; + float _214; + float _215; + float _237; + float _244; + float _251; + float _258; + float _293; + float _294; + float _295; + float _330; + float _331; + float _332; + float _360; + float _361; + float _383; + float _414; + float _415; + float _491; + float _492; + float _493; + float _521; + float _522; + float _523; + float _588; + float _589; + float _590; + float _602; + float _603; + float _604; + float _735; + float _736; + float _737; + float _769; + float _770; + float _771; + float _818; + float _819; + float _820; + float _835; + float _836; + float _837; + float _910; + float _911; + float _912; + float _1000; + float _1001; + float _1002; + if (!(!(cb0_102x != 0.0f))) { + float _39 = cb0_102x * 2.0f; + do { + if (_39 > 0.0f) { + float _43 = abs(_39) * 0.5f; + float _44 = tan(_43); + float _45 = _32 * TEXCOORD_3.x; + float _55 = rsqrt(dot(float2(_45, TEXCOORD_3.y), float2(_45, TEXCOORD_3.y))); + float _59 = rsqrt(dot(float2(_32, 1.0f), float2(_32, 1.0f))); + float _64 = tan((sqrt((_45 * _45) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_32 * _32) + 1.0f)) * _43); + _105 = (((_64 * ((_55 * _45) / (_59 * _32))) / _44) * 0.5f); + _106 = (((_64 * ((_55 * TEXCOORD_3.y) / _59)) / _44) * 0.5f); + } else { + if (_39 < 0.0f) { + float _78 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _83 = (((_78 * _78) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _78; + float _85 = atan(_33 / _34); + bool _88 = (_34 < 0.0f); + bool _89 = (_34 == 0.0f); + bool _90 = (_33 >= 0.0f); + bool _91 = (_33 < 0.0f); + float _99 = select((_90 && _89), 1.5707963705062866f, select((_91 && _89), -1.5707963705062866f, select((_91 && _88), (_85 + -3.1415927410125732f), select((_90 && _88), (_85 + 3.1415927410125732f), _85)))); + _105 = (sin(_99) * _83); + _106 = (cos(_99) * _83); + } else { + _105 = _33; + _106 = _34; + } + } + _114 = (((_105 + 0.5f) * 2.0f) + -1.0f); + _115 = (((_106 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _114 = TEXCOORD_3.x; + _115 = TEXCOORD_3.y; + } + float _128 = ((cb0_048z * _114) + cb0_049x) * cb0_048x; + float _129 = ((cb0_048w * _115) + cb0_049y) * cb0_048y; + float4 _130 = t5.SampleLevel(s5, float2(_128, _129), 0.0f); + float _142 = ((View_1040.x * _130.x) + View_1040.y) + (1.0f / ((View_1040.z * _130.x) - View_1040.w)); + float4 _143 = t4.Sample(s4, float2(_128, _129)); + float _151 = 1.0f / ((View_1040.w + _142) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _196 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _201 = saturate(((sqrt((_115 * _115) + (_114 * _114)) - cb0_098y) - _196) / (-0.0f - _196)); + float _205 = (_201 * _201) * (3.0f - (_201 * 2.0f)); + _213 = (1.0f - (_205 * max(cb0_097y, cb0_102y))); + _214 = (1.0f - (_205 * max(cb0_097y, cb0_103y))); + _215 = (1.0f - (_205 * max(cb0_097y, cb0_104y))); + } else { + _213 = 1.0f; + _214 = 1.0f; + _215 = 1.0f; + } + bool _221 = !(cb0_097z == 0.0f); + bool _222 = !(cb0_102z == 0.0f); + bool _224 = !(cb0_103z == 0.0f); + bool _226 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_221 || _222)) || _224)) || _226)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_221) { + _237 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _237 = cb0_097z; + } + do { + if (_222) { + _244 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _244 = cb0_102z; + } + do { + if (_224) { + _251 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _251 = cb0_103z; + } + do { + if (_226) { + _258 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _258 = cb0_104z; + } + float _259 = max(_237, _244); + float _260 = max(_237, _251); + float _261 = max(_237, _258); + float _277 = saturate((_142 - (_259 * 1000.0f)) / ((_259 * 9999.990234375f) + 0.009999999776482582f)); + float _278 = saturate((_142 - (_260 * 1000.0f)) / ((_260 * 9999.990234375f) + 0.009999999776482582f)); + float _279 = saturate((_142 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + _293 = ((_277 * _277) * (3.0f - (_277 * 2.0f))); + _294 = ((_278 * _278) * (3.0f - (_278 * 2.0f))); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _293 = 1.0f; + _294 = 1.0f; + _295 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _316 = saturate(select((((_151 - _143.x) + ((((View_448[3].z) - _151) + ((View_448[2].z) * _142)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_143.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _330 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _331 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _332 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _330 = 1.0f; + _331 = 1.0f; + _332 = 1.0f; + } + float _333 = TEXCOORD_2.w * 543.3099975585938f; + float _337 = frac(sin(_333 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _360 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _333) * 493013.0f) + 7.177000045776367f) - _337)) + _337); + _361 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _333) * 493013.0f) + 14.298999786376953f) - _337)) + _337); + } else { + _360 = _337; + _361 = _337; + } + if (cb0_100z > 0.0f) { + _383 = (((((_295 * _215) * _332) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_337 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _383 = 1.0f; + } + float _386 = (_294 * _214) * _331; + float _387 = _386 * cb0_100y; + if (cb0_100y > 0.0f) { + float _392 = View_2376 * 0.00016666666488163173f; + float _396 = frac(abs(_392)); + float _401 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_392 >= (-0.0f - _392)), _396, (-0.0f - _396)); + float _407 = (0.5f - frac(sin(dot(float2(_401, _401), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _414 = (((_387 * 0.5f) * _407) + _128); + _415 = ((_407 * _387) + _129); + } else { + _414 = _128; + _415 = _129; + } + float4 _416 = t0.Sample(s0, float2(_414, _415)); + float _422 = saturate(cb0_099x); + float _424 = saturate(cb0_099y); + if (_422 > 0.0f) { + float _435 = saturate(((_416.x * 0.29899999499320984f) + (_416.y * 0.5870000123977661f)) + (_416.z * 0.11400000005960464f)); + float _441 = ((_435 * _435) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_435 * 2.0f)); + float _448 = max(sqrt(((_416.x * _416.x) + (_416.y * _416.y)) + (_416.z * _416.z)), 0.014999999664723873f); + float _449 = _416.x / _448; + float _450 = _416.y / _448; + float _451 = _416.z / _448; + float _461 = log2(_441); + float _480 = ((_293 * _213) * _330) * _422; + _491 = (((((lerp(_449, 1.0f, 0.25f)) * (((_424 * 0.17000000178813934f) + 0.029999999329447746f) + _441)) - _416.x) * _480) + _416.x); + _492 = (((((((_424 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_461 * 0.8999999761581421f)) * (lerp(_450, 1.0f, 0.25f))) - _416.y) * _480) + _416.y); + _493 = (((((((_424 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_461 * 0.949999988079071f)) * (lerp(_451, 1.0f, 0.25f))) - _416.z) * _480) + _416.z); + } else { + _491 = _416.x; + _492 = _416.y; + _493 = _416.z; + } + float _495 = saturate(cb0_100x); + float _496 = _386 * _495; + if (_495 > 0.0f) { + float _507 = (sin(((_115 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _521 = ((((_507 * _491) - _491) * _496) + _491); + _522 = ((((_507 * _492) - _492) * _496) + _492); + _523 = ((((_507 * _493) - _493) * _496) + _493); + } else { + _521 = _491; + _522 = _492; + _523 = _493; + } + float4 _548 = t1.Sample(s1, float2(min(max(((cb0_068z * _414) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _415) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_548); + [branch] + if (!(cb0_085z == 0)) { + bool _577 = (cb0_086x != 0); + float4 _580 = t2.Sample(s2, float2(select(_577, _414, min(max(((cb0_076z * _414) + cb0_077x), cb0_075z), cb0_076x)), select(_577, _415, min(max(((cb0_076w * _415) + cb0_077y), cb0_075w), cb0_076y)))); + _588 = (_580.x + _548.x); + _589 = (_580.y + _548.y); + _590 = (_580.z + _548.z); + } else { + _588 = _548.x; + _589 = _548.y; + _590 = _548.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _594 = t3.Sample(s3, float2(_414, _415)); + _602 = (_594.x + _588); + _603 = (_594.y + _589); + _604 = (_594.z + _590); + } else { + _602 = _588; + _603 = _589; + _604 = _590; + } + float _629 = TEXCOORD_1.z + -1.0f; + float _631 = TEXCOORD_1.w + -1.0f; + float _634 = ((_629 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _636 = ((_631 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _643 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_634, _636), float2(_634, _636))) + 1.0f); + float _644 = _643 * _643; + float _645 = cb0_091z + 1.0f; + float _673 = ((_629 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _675 = ((_631 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _682 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_673, _675), float2(_673, _675))) + 1.0f); + float _683 = _682 * _682; + float _684 = cb0_094z + 1.0f; + float _696 = (((_602 + ((_521 * TEXCOORD_1.x) * cb0_087x)) * _383) * ((_644 * (_645 - cb0_090x)) + cb0_090x)) * ((_683 * (_684 - cb0_093x)) + cb0_093x); + float _699 = (((_603 + ((_522 * TEXCOORD_1.x) * cb0_087y)) * _383) * ((_644 * (_645 - cb0_090y)) + cb0_090y)) * ((_683 * (_684 - cb0_093y)) + cb0_093y); + float _702 = (((_604 + ((_523 * TEXCOORD_1.x) * cb0_087z)) * _383) * ((_644 * (_645 - cb0_090z)) + cb0_090z)) * ((_683 * (_684 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_696, _699, _702)); + [branch] + if (WUWA_TM_IS(1)) { + _735 = ((((_696 * 1.3600000143051147f) + 0.04699999839067459f) * _696) / ((((_696 * 0.9599999785423279f) + 0.5600000023841858f) * _696) + 0.14000000059604645f)); + _736 = ((((_699 * 1.3600000143051147f) + 0.04699999839067459f) * _699) / ((((_699 * 0.9599999785423279f) + 0.5600000023841858f) * _699) + 0.14000000059604645f)); + _737 = ((((_702 * 1.3600000143051147f) + 0.04699999839067459f) * _702) / ((((_702 * 0.9599999785423279f) + 0.5600000023841858f) * _702) + 0.14000000059604645f)); + } else { + _735 = _696; + _736 = _699; + _737 = _702; + } + [branch] + if (WUWA_TM_IS(2)) { + float _747 = 1.0049500465393066f - (0.16398000717163086f / (_735 + -0.19505000114440918f)); + float _748 = 1.0049500465393066f - (0.16398000717163086f / (_736 + -0.19505000114440918f)); + float _749 = 1.0049500465393066f - (0.16398000717163086f / (_737 + -0.19505000114440918f)); + _769 = (((_735 - _747) * select((_735 > 0.6000000238418579f), 0.0f, 1.0f)) + _747); + _770 = (((_736 - _748) * select((_736 > 0.6000000238418579f), 0.0f, 1.0f)) + _748); + _771 = (((_737 - _749) * select((_737 > 0.6000000238418579f), 0.0f, 1.0f)) + _749); + } else { + _769 = _735; + _770 = _736; + _771 = _737; + } + [branch] + if (WUWA_TM_IS(3)) { + float _777 = cb0_037y * _769; + float _778 = cb0_037y * _770; + float _779 = cb0_037y * _771; + float _782 = cb0_037z * cb0_037w; + float _792 = cb0_038y * cb0_038x; + float _803 = cb0_038z * cb0_038x; + float _810 = cb0_038y / cb0_038z; + _818 = (((((_782 + _777) * _769) + _792) / (_803 + ((_777 + cb0_037z) * _769))) - _810); + _819 = (((((_782 + _778) * _770) + _792) / (_803 + ((_778 + cb0_037z) * _770))) - _810); + _820 = (((((_782 + _779) * _771) + _792) / (_803 + ((_779 + cb0_037z) * _771))) - _810); + } else { + _818 = _769; + _819 = _770; + _820 = _771; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _830 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _835 = (_830 * _818); + _836 = (_830 * _819); + _837 = (_830 * _820); + } else { + _835 = _818; + _836 = _819; + _837 = _820; + } + } else { + _835 = _818; + _836 = _819; + _837 = _820; + } + APPLY_EXTENDED_TONEMAP(_835, _836, _837); + float _858 = (saturate((log2(_835 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _859 = (saturate((log2(_836 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _860 = (saturate((log2(_837 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _861 = t7.Sample(s7, float3(_858, _859, _860)); + [branch] + if (!(cb0_108w == 0)) { + float4 _885 = t6.Sample(s6, float2(min(max(((cb0_084z * _414) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _415) + cb0_085y), cb0_083w), cb0_084y))); + float _895 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_885.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _896 = t8.Sample(s8, float3(_858, _859, _860)); + _910 = (lerp(_896.x, _861.x, _895)); + _911 = (lerp(_896.y, _861.y, _895)); + _912 = (lerp(_896.z, _861.z, _895)); + } else { + _910 = _861.x; + _911 = _861.y; + _912 = _861.z; + } + float _913 = _912 * 1.0499999523162842f; + float _914 = _911 * 1.0499999523162842f; + float _915 = _910 * 1.0499999523162842f; + float _923 = ((_337 * 0.00390625f) + -0.001953125f) + _915; + float _924 = ((_360 * 0.00390625f) + -0.001953125f) + _914; + float _925 = ((_361 * 0.00390625f) + -0.001953125f) + _913; + [branch] + if (!(cb0_107w == 0)) { + float _937 = (pow(_923, 0.012683313339948654f)); + float _938 = (pow(_924, 0.012683313339948654f)); + float _939 = (pow(_925, 0.012683313339948654f)); + float _972 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_937 + -0.8359375f)) / (18.8515625f - (_937 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _973 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_938 + -0.8359375f)) / (18.8515625f - (_938 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _974 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_939 + -0.8359375f)) / (18.8515625f - (_939 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1000 = min((_972 * 12.920000076293945f), ((exp2(log2(max(_972, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1001 = min((_973 * 12.920000076293945f), ((exp2(log2(max(_973, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1002 = min((_974 * 12.920000076293945f), ((exp2(log2(max(_974, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1000 = _923; + _1001 = _924; + _1002 = _925; + } + SV_Target.x = _1000; + SV_Target.y = _1001; + SV_Target.z = _1002; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_915, _914, _913), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x53F8DE9B.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x53F8DE9B.ps_6_0.hlsl new file mode 100644 index 000000000..be9d3216d --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x53F8DE9B.ps_6_0.hlsl @@ -0,0 +1,357 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _156; + float _157; + float _251; + float _252; + float _317; + float _318; + float _319; + float _331; + float _332; + float _333; + float _461; + float _462; + float _463; + float _495; + float _496; + float _497; + float _544; + float _545; + float _546; + float _561; + float _562; + float _563; + float _636; + float _637; + float _638; + float _726; + float _727; + float _728; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float _94 = _78 - (((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x); + float _95 = _79 - (((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y); + float _105 = cb0_118z * cb0_117x; + float _106 = cb0_118z * cb0_117y; + bool _107 = (cb0_118x == 0.0f); + float _117 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _118 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _129 = float((int)(((int)(uint)((bool)(_117 > 0.0f))) - ((int)(uint)((bool)(_117 < 0.0f))))); + float _130 = float((int)(((int)(uint)((bool)(_118 > 0.0f))) - ((int)(uint)((bool)(_118 < 0.0f))))); + float _135 = saturate(abs(_117) - cb0_117z); + float _136 = saturate(abs(_118) - cb0_117z); + float _146 = _118 - ((_136 * _105) * _130); + float _148 = _118 - ((_136 * _106) * _130); + bool _149 = (cb0_118x > 0.0f); + if (_149) { + _156 = (_146 - (cb0_118w * 0.4000000059604645f)); + _157 = (_148 - (cb0_118w * 0.20000000298023224f)); + } else { + _156 = _146; + _157 = _148; + } + float4 _193 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _209 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _105, cb0_117x)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _156) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + float4 _223 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _106, cb0_117y)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _157) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + if (_149) { + float _233 = saturate(((((_193.y * 0.5870000123977661f) - cb0_118y) + (_193.x * 0.29899999499320984f)) + (_193.z * 0.11400000005960464f)) * 10.0f); + float _237 = (_233 * _233) * (3.0f - (_233 * 2.0f)); + _251 = ((((_193.x - _209.x) + (_237 * (_209.x - _193.x))) * cb0_118x) + _209.x); + _252 = ((((_193.y - _223.y) + (_237 * (_223.y - _193.y))) * cb0_118x) + _223.y); + } else { + _251 = _209.x; + _252 = _223.y; + } + float4 _277 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_277); + [branch] + if (!(cb0_085z == 0)) { + bool _306 = (cb0_086x != 0); + float4 _309 = t2.Sample(s2, float2(select(_306, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_306, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _317 = (_309.x + _277.x); + _318 = (_309.y + _277.y); + _319 = (_309.z + _277.z); + } else { + _317 = _277.x; + _318 = _277.y; + _319 = _277.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _323 = t3.Sample(s3, float2(_78, _79)); + _331 = (_323.x + _317); + _332 = (_323.y + _318); + _333 = (_323.z + _319); + } else { + _331 = _317; + _332 = _318; + _333 = _319; + } + float _358 = TEXCOORD_1.z + -1.0f; + float _360 = TEXCOORD_1.w + -1.0f; + float _363 = ((_358 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _365 = ((_360 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _372 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_363, _365), float2(_363, _365))) + 1.0f); + float _373 = _372 * _372; + float _374 = cb0_091z + 1.0f; + float _402 = ((_358 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _404 = ((_360 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _411 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_402, _404), float2(_402, _404))) + 1.0f); + float _412 = _411 * _411; + float _413 = cb0_094z + 1.0f; + float _424 = (((_373 * (_374 - cb0_090x)) + cb0_090x) * (_331 + ((_251 * TEXCOORD_1.x) * cb0_087x))) * ((_412 * (_413 - cb0_093x)) + cb0_093x); + float _426 = (((_373 * (_374 - cb0_090y)) + cb0_090y) * (_332 + ((_252 * TEXCOORD_1.x) * cb0_087y))) * ((_412 * (_413 - cb0_093y)) + cb0_093y); + float _428 = (((_373 * (_374 - cb0_090z)) + cb0_090z) * (_333 + ((_193.z * TEXCOORD_1.x) * cb0_087z))) * ((_412 * (_413 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_424, _426, _428)); + [branch] + if (WUWA_TM_IS(1)) { + _461 = ((((_424 * 1.3600000143051147f) + 0.04699999839067459f) * _424) / ((((_424 * 0.9599999785423279f) + 0.5600000023841858f) * _424) + 0.14000000059604645f)); + _462 = ((((_426 * 1.3600000143051147f) + 0.04699999839067459f) * _426) / ((((_426 * 0.9599999785423279f) + 0.5600000023841858f) * _426) + 0.14000000059604645f)); + _463 = ((((_428 * 1.3600000143051147f) + 0.04699999839067459f) * _428) / ((((_428 * 0.9599999785423279f) + 0.5600000023841858f) * _428) + 0.14000000059604645f)); + } else { + _461 = _424; + _462 = _426; + _463 = _428; + } + [branch] + if (WUWA_TM_IS(2)) { + float _473 = 1.0049500465393066f - (0.16398000717163086f / (_461 + -0.19505000114440918f)); + float _474 = 1.0049500465393066f - (0.16398000717163086f / (_462 + -0.19505000114440918f)); + float _475 = 1.0049500465393066f - (0.16398000717163086f / (_463 + -0.19505000114440918f)); + _495 = (((_461 - _473) * select((_461 > 0.6000000238418579f), 0.0f, 1.0f)) + _473); + _496 = (((_462 - _474) * select((_462 > 0.6000000238418579f), 0.0f, 1.0f)) + _474); + _497 = (((_463 - _475) * select((_463 > 0.6000000238418579f), 0.0f, 1.0f)) + _475); + } else { + _495 = _461; + _496 = _462; + _497 = _463; + } + [branch] + if (WUWA_TM_IS(3)) { + float _503 = cb0_037y * _495; + float _504 = cb0_037y * _496; + float _505 = cb0_037y * _497; + float _508 = cb0_037z * cb0_037w; + float _518 = cb0_038y * cb0_038x; + float _529 = cb0_038z * cb0_038x; + float _536 = cb0_038y / cb0_038z; + _544 = (((((_508 + _503) * _495) + _518) / (_529 + ((_503 + cb0_037z) * _495))) - _536); + _545 = (((((_508 + _504) * _496) + _518) / (_529 + ((_504 + cb0_037z) * _496))) - _536); + _546 = (((((_508 + _505) * _497) + _518) / (_529 + ((_505 + cb0_037z) * _497))) - _536); + } else { + _544 = _495; + _545 = _496; + _546 = _497; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _556 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _561 = (_556 * _544); + _562 = (_556 * _545); + _563 = (_556 * _546); + } else { + _561 = _544; + _562 = _545; + _563 = _546; + } + } else { + _561 = _544; + _562 = _545; + _563 = _546; + } + APPLY_EXTENDED_TONEMAP(_561, _562, _563); + float _584 = (saturate((log2(_561 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _585 = (saturate((log2(_562 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _586 = (saturate((log2(_563 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _587 = t5.Sample(s5, float3(_584, _585, _586)); + [branch] + if (!(cb0_108w == 0)) { + float4 _611 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _621 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_611.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _622 = t6.Sample(s6, float3(_584, _585, _586)); + _636 = (lerp(_622.x, _587.x, _621)); + _637 = (lerp(_622.y, _587.y, _621)); + _638 = (lerp(_622.z, _587.z, _621)); + } else { + _636 = _587.x; + _637 = _587.y; + _638 = _587.z; + } + float _639 = _638 * 1.0499999523162842f; + float _640 = _637 * 1.0499999523162842f; + float _641 = _636 * 1.0499999523162842f; + float _649 = ((_43 * 0.00390625f) + -0.001953125f) + _641; + float _650 = ((_67 * 0.00390625f) + -0.001953125f) + _640; + float _651 = ((_68 * 0.00390625f) + -0.001953125f) + _639; + [branch] + if (!(cb0_107w == 0)) { + float _663 = (pow(_649, 0.012683313339948654f)); + float _664 = (pow(_650, 0.012683313339948654f)); + float _665 = (pow(_651, 0.012683313339948654f)); + float _698 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_663 + -0.8359375f)) / (18.8515625f - (_663 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _699 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_664 + -0.8359375f)) / (18.8515625f - (_664 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _700 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_665 + -0.8359375f)) / (18.8515625f - (_665 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _726 = min((_698 * 12.920000076293945f), ((exp2(log2(max(_698, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _727 = min((_699 * 12.920000076293945f), ((exp2(log2(max(_699, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _728 = min((_700 * 12.920000076293945f), ((exp2(log2(max(_700, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _726 = _649; + _727 = _650; + _728 = _651; + } + SV_Target.x = _726; + SV_Target.y = _727; + SV_Target.z = _728; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_641, _640, _639), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x5700563F.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x5700563F.ps_6_0.hlsl new file mode 100644 index 000000000..728eb3a28 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x5700563F.ps_6_0.hlsl @@ -0,0 +1,1156 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _32 = cb0_065x * cb0_064w; + float _33 = TEXCOORD_3.x * 0.5f; + float _34 = TEXCOORD_3.y * 0.5f; + float _105; + float _106; + float _114; + float _115; + float _213; + float _214; + float _215; + float _237; + float _244; + float _251; + float _258; + float _293; + float _294; + float _295; + float _330; + float _331; + float _332; + float _360; + float _361; + float _383; + float _414; + float _415; + float _476; + float _477; + float _545; + float _546; + float _618; + float _619; + float _620; + float _649; + float _650; + float _651; + float _716; + float _717; + float _718; + float _730; + float _731; + float _732; + float _863; + float _864; + float _865; + float _897; + float _898; + float _899; + float _946; + float _947; + float _948; + float _963; + float _964; + float _965; + float _1038; + float _1039; + float _1040; + float _1128; + float _1129; + float _1130; + float _1179; + float _1180; + float _1181; + float _1182; + float _1183; + float _1184; + if (!(!(cb0_102x != 0.0f))) { + float _39 = cb0_102x * 2.0f; + do { + if (_39 > 0.0f) { + float _43 = abs(_39) * 0.5f; + float _44 = tan(_43); + float _45 = _32 * TEXCOORD_3.x; + float _55 = rsqrt(dot(float2(_45, TEXCOORD_3.y), float2(_45, TEXCOORD_3.y))); + float _59 = rsqrt(dot(float2(_32, 1.0f), float2(_32, 1.0f))); + float _64 = tan((sqrt((_45 * _45) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_32 * _32) + 1.0f)) * _43); + _105 = (((_64 * ((_55 * _45) / (_59 * _32))) / _44) * 0.5f); + _106 = (((_64 * ((_55 * TEXCOORD_3.y) / _59)) / _44) * 0.5f); + } else { + if (_39 < 0.0f) { + float _78 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _83 = (((_78 * _78) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _78; + float _85 = atan(_33 / _34); + bool _88 = (_34 < 0.0f); + bool _89 = (_34 == 0.0f); + bool _90 = (_33 >= 0.0f); + bool _91 = (_33 < 0.0f); + float _99 = select((_90 && _89), 1.5707963705062866f, select((_91 && _89), -1.5707963705062866f, select((_91 && _88), (_85 + -3.1415927410125732f), select((_90 && _88), (_85 + 3.1415927410125732f), _85)))); + _105 = (sin(_99) * _83); + _106 = (cos(_99) * _83); + } else { + _105 = _33; + _106 = _34; + } + } + _114 = (((_105 + 0.5f) * 2.0f) + -1.0f); + _115 = (((_106 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _114 = TEXCOORD_3.x; + _115 = TEXCOORD_3.y; + } + float _128 = ((cb0_048z * _114) + cb0_049x) * cb0_048x; + float _129 = ((cb0_048w * _115) + cb0_049y) * cb0_048y; + float4 _130 = t5.SampleLevel(s5, float2(_128, _129), 0.0f); + float _142 = ((View_1040.x * _130.x) + View_1040.y) + (1.0f / ((View_1040.z * _130.x) - View_1040.w)); + float4 _143 = t4.Sample(s4, float2(_128, _129)); + float _151 = 1.0f / ((View_1040.w + _142) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _196 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _201 = saturate(((sqrt((_115 * _115) + (_114 * _114)) - cb0_098y) - _196) / (-0.0f - _196)); + float _205 = (_201 * _201) * (3.0f - (_201 * 2.0f)); + _213 = (1.0f - (_205 * max(cb0_097y, cb0_102y))); + _214 = (1.0f - (_205 * max(cb0_097y, cb0_103y))); + _215 = (1.0f - (_205 * max(cb0_097y, cb0_104y))); + } else { + _213 = 1.0f; + _214 = 1.0f; + _215 = 1.0f; + } + bool _221 = !(cb0_097z == 0.0f); + bool _222 = !(cb0_102z == 0.0f); + bool _224 = !(cb0_103z == 0.0f); + bool _226 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_221 || _222)) || _224)) || _226)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_221) { + _237 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _237 = cb0_097z; + } + do { + if (_222) { + _244 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _244 = cb0_102z; + } + do { + if (_224) { + _251 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _251 = cb0_103z; + } + do { + if (_226) { + _258 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _258 = cb0_104z; + } + float _259 = max(_237, _244); + float _260 = max(_237, _251); + float _261 = max(_237, _258); + float _277 = saturate((_142 - (_259 * 1000.0f)) / ((_259 * 9999.990234375f) + 0.009999999776482582f)); + float _278 = saturate((_142 - (_260 * 1000.0f)) / ((_260 * 9999.990234375f) + 0.009999999776482582f)); + float _279 = saturate((_142 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + _293 = ((_277 * _277) * (3.0f - (_277 * 2.0f))); + _294 = ((_278 * _278) * (3.0f - (_278 * 2.0f))); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _293 = 1.0f; + _294 = 1.0f; + _295 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _316 = saturate(select((((_151 - _143.x) + ((((View_448[3].z) - _151) + ((View_448[2].z) * _142)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_143.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _330 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _331 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _332 = max(_316, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _330 = 1.0f; + _331 = 1.0f; + _332 = 1.0f; + } + float _333 = TEXCOORD_2.w * 543.3099975585938f; + float _337 = frac(sin(_333 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _360 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _333) * 493013.0f) + 7.177000045776367f) - _337)) + _337); + _361 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _333) * 493013.0f) + 14.298999786376953f) - _337)) + _337); + } else { + _360 = _337; + _361 = _337; + } + if (cb0_100z > 0.0f) { + _383 = (((((_295 * _215) * _332) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_337 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _383 = 1.0f; + } + float _386 = (_294 * _214) * _331; + float _387 = _386 * cb0_100y; + if (cb0_100y > 0.0f) { + float _392 = View_2376 * 0.00016666666488163173f; + float _396 = frac(abs(_392)); + float _401 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_392 >= (-0.0f - _392)), _396, (-0.0f - _396)); + float _407 = (0.5f - frac(sin(dot(float2(_401, _401), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _414 = (((_387 * 0.5f) * _407) + _128); + _415 = ((_407 * _387) + _129); + } else { + _414 = _128; + _415 = _129; + } + float _425 = cb0_118z * cb0_117x; + float _426 = cb0_118z * cb0_117y; + bool _427 = (cb0_118x == 0.0f); + float _437 = (cb0_114z * _114) + cb0_114x; + float _438 = (cb0_114w * _115) + cb0_114y; + float _449 = float((int)(((int)(uint)((bool)(_437 > 0.0f))) - ((int)(uint)((bool)(_437 < 0.0f))))); + float _450 = float((int)(((int)(uint)((bool)(_438 > 0.0f))) - ((int)(uint)((bool)(_438 < 0.0f))))); + float _455 = saturate(abs(_437) - cb0_117z); + float _456 = saturate(abs(_438) - cb0_117z); + float _466 = _438 - ((_456 * _425) * _450); + float _468 = _438 - ((_456 * _426) * _450); + bool _469 = (cb0_118x > 0.0f); + if (_469) { + _476 = (_466 - (cb0_118w * 0.4000000059604645f)); + _477 = (_468 - (cb0_118w * 0.20000000298023224f)); + } else { + _476 = _466; + _477 = _468; + } + float4 _511 = t0.Sample(s0, float2(_414, _415)); + float4 _515 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_437 - ((_455 * select(_427, _425, cb0_117x)) * _449))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _476) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _517 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_437 - ((_455 * select(_427, _426, cb0_117y)) * _449))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _477) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_469) { + float _527 = saturate(((((_511.y * 0.5870000123977661f) - cb0_118y) + (_511.x * 0.29899999499320984f)) + (_511.z * 0.11400000005960464f)) * 10.0f); + float _531 = (_527 * _527) * (3.0f - (_527 * 2.0f)); + _545 = ((((_511.x - _515.x) + (_531 * (_515.x - _511.x))) * cb0_118x) + _515.x); + _546 = ((((_511.y - _517.y) + (_531 * (_517.y - _511.y))) * cb0_118x) + _517.y); + } else { + _545 = _515.x; + _546 = _517.y; + } + float _549 = saturate(cb0_099x); + float _551 = saturate(cb0_099y); + if (_549 > 0.0f) { + float _562 = saturate(((_545 * 0.29899999499320984f) + (_511.z * 0.11400000005960464f)) + (_546 * 0.5870000123977661f)); + float _568 = ((_562 * _562) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_562 * 2.0f)); + float _575 = max(sqrt(((_545 * _545) + (_511.z * _511.z)) + (_546 * _546)), 0.014999999664723873f); + float _576 = _545 / _575; + float _577 = _546 / _575; + float _578 = _511.z / _575; + float _588 = log2(_568); + float _607 = ((_293 * _213) * _330) * _549; + _618 = (((((lerp(_576, 1.0f, 0.25f)) * (((_551 * 0.17000000178813934f) + 0.029999999329447746f) + _568)) - _545) * _607) + _545); + _619 = (((((((_551 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_588 * 0.8999999761581421f)) * (lerp(_577, 1.0f, 0.25f))) - _546) * _607) + _546); + _620 = (((((((_551 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_588 * 0.949999988079071f)) * (lerp(_578, 1.0f, 0.25f))) - _511.z) * _607) + _511.z); + } else { + _618 = _545; + _619 = _546; + _620 = _511.z; + } + float _623 = saturate(cb0_100x); + float _624 = _386 * _623; + if (_623 > 0.0f) { + float _635 = (sin(((_115 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _649 = ((((_635 * _618) - _618) * _624) + _618); + _650 = ((((_635 * _619) - _619) * _624) + _619); + _651 = ((((_635 * _620) - _620) * _624) + _620); + } else { + _649 = _618; + _650 = _619; + _651 = _620; + } + float4 _676 = t1.Sample(s1, float2(min(max(((cb0_068z * _414) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _415) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_676); + [branch] + if (!(cb0_085z == 0)) { + bool _705 = (cb0_086x != 0); + float4 _708 = t2.Sample(s2, float2(select(_705, _414, min(max(((cb0_076z * _414) + cb0_077x), cb0_075z), cb0_076x)), select(_705, _415, min(max(((cb0_076w * _415) + cb0_077y), cb0_075w), cb0_076y)))); + _716 = (_708.x + _676.x); + _717 = (_708.y + _676.y); + _718 = (_708.z + _676.z); + } else { + _716 = _676.x; + _717 = _676.y; + _718 = _676.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _722 = t3.Sample(s3, float2(_414, _415)); + _730 = (_722.x + _716); + _731 = (_722.y + _717); + _732 = (_722.z + _718); + } else { + _730 = _716; + _731 = _717; + _732 = _718; + } + float _757 = TEXCOORD_1.z + -1.0f; + float _759 = TEXCOORD_1.w + -1.0f; + float _762 = ((_757 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _764 = ((_759 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _771 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_762, _764), float2(_762, _764))) + 1.0f); + float _772 = _771 * _771; + float _773 = cb0_091z + 1.0f; + float _801 = ((_757 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _803 = ((_759 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _810 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_801, _803), float2(_801, _803))) + 1.0f); + float _811 = _810 * _810; + float _812 = cb0_094z + 1.0f; + float _824 = (((_730 + ((_649 * TEXCOORD_1.x) * cb0_087x)) * _383) * ((_772 * (_773 - cb0_090x)) + cb0_090x)) * ((_811 * (_812 - cb0_093x)) + cb0_093x); + float _827 = (((_731 + ((_650 * TEXCOORD_1.x) * cb0_087y)) * _383) * ((_772 * (_773 - cb0_090y)) + cb0_090y)) * ((_811 * (_812 - cb0_093y)) + cb0_093y); + float _830 = (((_732 + ((_651 * TEXCOORD_1.x) * cb0_087z)) * _383) * ((_772 * (_773 - cb0_090z)) + cb0_090z)) * ((_811 * (_812 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_824, _827, _830)); + [branch] + if (WUWA_TM_IS(1)) { + _863 = ((((_824 * 1.3600000143051147f) + 0.04699999839067459f) * _824) / ((((_824 * 0.9599999785423279f) + 0.5600000023841858f) * _824) + 0.14000000059604645f)); + _864 = ((((_827 * 1.3600000143051147f) + 0.04699999839067459f) * _827) / ((((_827 * 0.9599999785423279f) + 0.5600000023841858f) * _827) + 0.14000000059604645f)); + _865 = ((((_830 * 1.3600000143051147f) + 0.04699999839067459f) * _830) / ((((_830 * 0.9599999785423279f) + 0.5600000023841858f) * _830) + 0.14000000059604645f)); + } else { + _863 = _824; + _864 = _827; + _865 = _830; + } + [branch] + if (WUWA_TM_IS(2)) { + float _875 = 1.0049500465393066f - (0.16398000717163086f / (_863 + -0.19505000114440918f)); + float _876 = 1.0049500465393066f - (0.16398000717163086f / (_864 + -0.19505000114440918f)); + float _877 = 1.0049500465393066f - (0.16398000717163086f / (_865 + -0.19505000114440918f)); + _897 = (((_863 - _875) * select((_863 > 0.6000000238418579f), 0.0f, 1.0f)) + _875); + _898 = (((_864 - _876) * select((_864 > 0.6000000238418579f), 0.0f, 1.0f)) + _876); + _899 = (((_865 - _877) * select((_865 > 0.6000000238418579f), 0.0f, 1.0f)) + _877); + } else { + _897 = _863; + _898 = _864; + _899 = _865; + } + [branch] + if (WUWA_TM_IS(3)) { + float _905 = cb0_037y * _897; + float _906 = cb0_037y * _898; + float _907 = cb0_037y * _899; + float _910 = cb0_037z * cb0_037w; + float _920 = cb0_038y * cb0_038x; + float _931 = cb0_038z * cb0_038x; + float _938 = cb0_038y / cb0_038z; + _946 = (((((_910 + _905) * _897) + _920) / (_931 + ((_905 + cb0_037z) * _897))) - _938); + _947 = (((((_910 + _906) * _898) + _920) / (_931 + ((_906 + cb0_037z) * _898))) - _938); + _948 = (((((_910 + _907) * _899) + _920) / (_931 + ((_907 + cb0_037z) * _899))) - _938); + } else { + _946 = _897; + _947 = _898; + _948 = _899; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _958 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _963 = (_958 * _946); + _964 = (_958 * _947); + _965 = (_958 * _948); + } else { + _963 = _946; + _964 = _947; + _965 = _948; + } + } else { + _963 = _946; + _964 = _947; + _965 = _948; + } + APPLY_EXTENDED_TONEMAP(_963, _964, _965); + float _986 = (saturate((log2(_963 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _987 = (saturate((log2(_964 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _988 = (saturate((log2(_965 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _989 = t7.Sample(s7, float3(_986, _987, _988)); + [branch] + if (!(cb0_108w == 0)) { + float4 _1013 = t6.Sample(s6, float2(min(max(((cb0_084z * _414) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _415) + cb0_085y), cb0_083w), cb0_084y))); + float _1023 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_1013.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _1024 = t8.Sample(s8, float3(_986, _987, _988)); + _1038 = (lerp(_1024.x, _989.x, _1023)); + _1039 = (lerp(_1024.y, _989.y, _1023)); + _1040 = (lerp(_1024.z, _989.z, _1023)); + } else { + _1038 = _989.x; + _1039 = _989.y; + _1040 = _989.z; + } + float _1041 = _1040 * 1.0499999523162842f; + float _1042 = _1039 * 1.0499999523162842f; + float _1043 = _1038 * 1.0499999523162842f; + float _1051 = ((_337 * 0.00390625f) + -0.001953125f) + _1043; + float _1052 = ((_360 * 0.00390625f) + -0.001953125f) + _1042; + float _1053 = ((_361 * 0.00390625f) + -0.001953125f) + _1041; + [branch] + if (!(cb0_107w == 0)) { + float _1065 = (pow(_1051, 0.012683313339948654f)); + float _1066 = (pow(_1052, 0.012683313339948654f)); + float _1067 = (pow(_1053, 0.012683313339948654f)); + float _1100 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1065 + -0.8359375f)) / (18.8515625f - (_1065 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1101 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1066 + -0.8359375f)) / (18.8515625f - (_1066 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1102 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1067 + -0.8359375f)) / (18.8515625f - (_1067 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1128 = min((_1100 * 12.920000076293945f), ((exp2(log2(max(_1100, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1129 = min((_1101 * 12.920000076293945f), ((exp2(log2(max(_1101, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1130 = min((_1102 * 12.920000076293945f), ((exp2(log2(max(_1102, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1128 = _1051; + _1129 = _1052; + _1130 = _1053; + } + GENERATE_INVERSION(_1128, _1129, _1130); + float _1139 = ((((_1129 * 587.0f) + (_1128 * 299.0f)) + (_1130 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _1146 = saturate(float((int)(((int)(uint)((bool)(_1139 > 0.0f))) - ((int)(uint)((bool)(_1139 < 0.0f)))))); + float _1153 = cb0_110x - _1128; + float _1154 = cb0_110y - _1129; + float _1155 = cb0_110z - _1130; + float _1160 = WUWA_PEAK_SCALING * cb0_111x - _1128; + float _1161 = WUWA_PEAK_SCALING * cb0_111y - _1129; + float _1162 = WUWA_PEAK_SCALING * cb0_111z - _1130; + [branch] + if (cb0_109y > 0.0f) { + _1179 = (_1153 * cb0_109y); + _1180 = (_1154 * cb0_109y); + _1181 = (_1155 * cb0_109y); + _1182 = (_1160 * cb0_109y); + _1183 = (_1161 * cb0_109y); + _1184 = (_1162 * cb0_109y); + } else { + float _1171 = abs(cb0_109y); + _1179 = (_1160 * _1171); + _1180 = (_1161 * _1171); + _1181 = (_1162 * _1171); + _1182 = (_1153 * _1171); + _1183 = (_1154 * _1171); + _1184 = (_1155 * _1171); + } + SV_Target.x = ((cb0_109x * (lerp(_1179, _1182, _1146))) + _1128); + SV_Target.y = ((cb0_109x * (lerp(_1180, _1183, _1146))) + _1129); + SV_Target.z = (((lerp(_1181, _1184, _1146)) * cb0_109x) + _1130); + SV_Target.xyz = wuwa::ApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_1043, _1042, _1041), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x59908A16.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x59908A16.ps_6_0.hlsl new file mode 100644 index 000000000..eea60ccf5 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x59908A16.ps_6_0.hlsl @@ -0,0 +1,308 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096x : packoffset(c096.x); + float cb0_096y : packoffset(c096.y); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _158; + float _159; + float _160; + float _172; + float _173; + float _174; + float _314; + float _315; + float _316; + float _348; + float _349; + float _350; + float _397; + float _398; + float _399; + float _414; + float _415; + float _416; + float _489; + float _490; + float _491; + float _579; + float _580; + float _581; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float4 _90 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _118 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_118); + [branch] + if (!(cb0_085z == 0)) { + bool _147 = (cb0_086x != 0); + float4 _150 = t2.Sample(s2, float2(select(_147, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_147, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _158 = (_150.x + _118.x); + _159 = (_150.y + _118.y); + _160 = (_150.z + _118.z); + } else { + _158 = _118.x; + _159 = _118.y; + _160 = _118.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _164 = t3.Sample(s3, float2(_78, _79)); + _172 = (_164.x + _158); + _173 = (_164.y + _159); + _174 = (_164.z + _160); + } else { + _172 = _158; + _173 = _159; + _174 = _160; + } + float _199 = TEXCOORD_1.z + -1.0f; + float _201 = TEXCOORD_1.w + -1.0f; + float _204 = ((_199 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _206 = ((_201 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _213 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_204, _206), float2(_204, _206))) + 1.0f); + float _214 = _213 * _213; + float _215 = cb0_091z + 1.0f; + float _243 = ((_199 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _245 = ((_201 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _252 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_243, _245), float2(_243, _245))) + 1.0f); + float _253 = _252 * _252; + float _254 = cb0_094z + 1.0f; + float _275 = ((((_214 * (_215 - cb0_090x)) + cb0_090x) * (_172 + ((_90.x * TEXCOORD_1.x) * cb0_087x))) * ((_253 * (_254 - cb0_093x)) + cb0_093x)) * ((cb0_096x * _43) + cb0_096y); + float _278 = ((((_214 * (_215 - cb0_090y)) + cb0_090y) * (_173 + ((_90.y * TEXCOORD_1.x) * cb0_087y))) * ((_253 * (_254 - cb0_093y)) + cb0_093y)) * ((cb0_096x * _67) + cb0_096y); + float _281 = ((((_214 * (_215 - cb0_090z)) + cb0_090z) * (_174 + ((_90.z * TEXCOORD_1.x) * cb0_087z))) * ((_253 * (_254 - cb0_093z)) + cb0_093z)) * ((cb0_096x * _68) + cb0_096y); + + CAPTURE_UNTONEMAPPED(float3(_275, _278, _281)); + [branch] + if (WUWA_TM_IS(1)) { + _314 = ((((_275 * 1.3600000143051147f) + 0.04699999839067459f) * _275) / ((((_275 * 0.9599999785423279f) + 0.5600000023841858f) * _275) + 0.14000000059604645f)); + _315 = ((((_278 * 1.3600000143051147f) + 0.04699999839067459f) * _278) / ((((_278 * 0.9599999785423279f) + 0.5600000023841858f) * _278) + 0.14000000059604645f)); + _316 = ((((_281 * 1.3600000143051147f) + 0.04699999839067459f) * _281) / ((((_281 * 0.9599999785423279f) + 0.5600000023841858f) * _281) + 0.14000000059604645f)); + } else { + _314 = _275; + _315 = _278; + _316 = _281; + } + [branch] + if (WUWA_TM_IS(2)) { + float _326 = 1.0049500465393066f - (0.16398000717163086f / (_314 + -0.19505000114440918f)); + float _327 = 1.0049500465393066f - (0.16398000717163086f / (_315 + -0.19505000114440918f)); + float _328 = 1.0049500465393066f - (0.16398000717163086f / (_316 + -0.19505000114440918f)); + _348 = (((_314 - _326) * select((_314 > 0.6000000238418579f), 0.0f, 1.0f)) + _326); + _349 = (((_315 - _327) * select((_315 > 0.6000000238418579f), 0.0f, 1.0f)) + _327); + _350 = (((_316 - _328) * select((_316 > 0.6000000238418579f), 0.0f, 1.0f)) + _328); + } else { + _348 = _314; + _349 = _315; + _350 = _316; + } + [branch] + if (WUWA_TM_IS(3)) { + float _356 = cb0_037y * _348; + float _357 = cb0_037y * _349; + float _358 = cb0_037y * _350; + float _361 = cb0_037z * cb0_037w; + float _371 = cb0_038y * cb0_038x; + float _382 = cb0_038z * cb0_038x; + float _389 = cb0_038y / cb0_038z; + _397 = (((((_361 + _356) * _348) + _371) / (_382 + ((_356 + cb0_037z) * _348))) - _389); + _398 = (((((_361 + _357) * _349) + _371) / (_382 + ((_357 + cb0_037z) * _349))) - _389); + _399 = (((((_361 + _358) * _350) + _371) / (_382 + ((_358 + cb0_037z) * _350))) - _389); + } else { + _397 = _348; + _398 = _349; + _399 = _350; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _409 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _414 = (_409 * _397); + _415 = (_409 * _398); + _416 = (_409 * _399); + } else { + _414 = _397; + _415 = _398; + _416 = _399; + } + } else { + _414 = _397; + _415 = _398; + _416 = _399; + } + APPLY_EXTENDED_TONEMAP(_414, _415, _416); + float _437 = (saturate((log2(_414 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _438 = (saturate((log2(_415 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _439 = (saturate((log2(_416 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _440 = t5.Sample(s5, float3(_437, _438, _439)); + [branch] + if (!(cb0_108w == 0)) { + float4 _464 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _474 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_464.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _475 = t6.Sample(s6, float3(_437, _438, _439)); + _489 = (lerp(_475.x, _440.x, _474)); + _490 = (lerp(_475.y, _440.y, _474)); + _491 = (lerp(_475.z, _440.z, _474)); + } else { + _489 = _440.x; + _490 = _440.y; + _491 = _440.z; + } + float _492 = _491 * 1.0499999523162842f; + float _493 = _490 * 1.0499999523162842f; + float _494 = _489 * 1.0499999523162842f; + float _502 = ((_43 * 0.00390625f) + -0.001953125f) + _494; + float _503 = ((_67 * 0.00390625f) + -0.001953125f) + _493; + float _504 = ((_68 * 0.00390625f) + -0.001953125f) + _492; + [branch] + if (!(cb0_107w == 0)) { + float _516 = (pow(_502, 0.012683313339948654f)); + float _517 = (pow(_503, 0.012683313339948654f)); + float _518 = (pow(_504, 0.012683313339948654f)); + float _551 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_516 + -0.8359375f)) / (18.8515625f - (_516 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _552 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_517 + -0.8359375f)) / (18.8515625f - (_517 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _553 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_518 + -0.8359375f)) / (18.8515625f - (_518 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _579 = min((_551 * 12.920000076293945f), ((exp2(log2(max(_551, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _580 = min((_552 * 12.920000076293945f), ((exp2(log2(max(_552, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _581 = min((_553 * 12.920000076293945f), ((exp2(log2(max(_553, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _579 = _502; + _580 = _503; + _581 = _504; + } + SV_Target.x = _579; + SV_Target.y = _580; + SV_Target.z = _581; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_494, _493, _492), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x5C09179C.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x5C09179C.ps_6_0.hlsl new file mode 100644 index 000000000..63cb2471b --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x5C09179C.ps_6_0.hlsl @@ -0,0 +1,386 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _42 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _43 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _44 = TEXCOORD_2.w * 543.3099975585938f; + float _48 = frac(sin(_44 + TEXCOORD_2.z) * 493013.0f); + float _72; + float _73; + float _134; + float _135; + float _203; + float _204; + float _263; + float _335; + float _336; + float _337; + float _349; + float _350; + float _351; + float _480; + float _481; + float _482; + float _514; + float _515; + float _516; + float _563; + float _564; + float _565; + float _580; + float _581; + float _582; + float _655; + float _656; + float _657; + float _745; + float _746; + float _747; + if (cb0_097x > 0.0f) { + _72 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _44) * 493013.0f) + 7.177000045776367f) - _48)) + _48); + _73 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _44) * 493013.0f) + 14.298999786376953f) - _48)) + _48); + } else { + _72 = _48; + _73 = _48; + } + float _83 = cb0_118z * cb0_117x; + float _84 = cb0_118z * cb0_117y; + bool _85 = (cb0_118x == 0.0f); + float _95 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _96 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _107 = float((int)(((int)(uint)((bool)(_95 > 0.0f))) - ((int)(uint)((bool)(_95 < 0.0f))))); + float _108 = float((int)(((int)(uint)((bool)(_96 > 0.0f))) - ((int)(uint)((bool)(_96 < 0.0f))))); + float _113 = saturate(abs(_95) - cb0_117z); + float _114 = saturate(abs(_96) - cb0_117z); + float _124 = _96 - ((_114 * _83) * _108); + float _126 = _96 - ((_114 * _84) * _108); + bool _127 = (cb0_118x > 0.0f); + if (_127) { + _134 = (_124 - (cb0_118w * 0.4000000059604645f)); + _135 = (_126 - (cb0_118w * 0.20000000298023224f)); + } else { + _134 = _124; + _135 = _126; + } + float4 _169 = t0.Sample(s0, float2(_42, _43)); + float4 _173 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_95 - ((_113 * select(_85, _83, cb0_117x)) * _107))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _134) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _175 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_95 - ((_113 * select(_85, _84, cb0_117y)) * _107))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _135) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_127) { + float _185 = saturate(((((_169.y * 0.5870000123977661f) - cb0_118y) + (_169.x * 0.29899999499320984f)) + (_169.z * 0.11400000005960464f)) * 10.0f); + float _189 = (_185 * _185) * (3.0f - (_185 * 2.0f)); + _203 = ((((_169.x - _173.x) + (_189 * (_173.x - _169.x))) * cb0_118x) + _173.x); + _204 = ((((_169.y - _175.y) + (_189 * (_175.y - _169.y))) * cb0_118x) + _175.y); + } else { + _203 = _173.x; + _204 = _175.y; + } + float _213 = log2(max(dot(float3(_203, _204, _169.z), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _231 = t5.Sample(s5, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _213) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _235 = t6.Sample(s6, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _238 = select((_231.y < 0.0010000000474974513f), _235.x, (_231.x / _231.y)); + float _241 = log2(TEXCOORD_1.x); + float _243 = (_238 + _241) + ((_235.x - _238) * cb0_046x); + float _248 = _241 + _213; + float _250 = _243 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _251 = (_250 > 0.0f); + if (_251) { + _263 = max(0.0f, (_250 - cb0_047x)); + } else { + _263 = min(0.0f, (cb0_047y + _250)); + } + float4 _295 = t1.Sample(s1, float2(min(max(((cb0_068z * _42) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _43) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_295); + [branch] + if (!(cb0_085z == 0)) { + bool _324 = (cb0_086x != 0); + float4 _327 = t2.Sample(s2, float2(select(_324, _42, min(max(((cb0_076z * _42) + cb0_077x), cb0_075z), cb0_076x)), select(_324, _43, min(max(((cb0_076w * _43) + cb0_077y), cb0_075w), cb0_076y)))); + _335 = (_327.x + _295.x); + _336 = (_327.y + _295.y); + _337 = (_327.z + _295.z); + } else { + _335 = _295.x; + _336 = _295.y; + _337 = _295.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _341 = t3.Sample(s3, float2(_42, _43)); + _349 = (_341.x + _335); + _350 = (_341.y + _336); + _351 = (_341.z + _337); + } else { + _349 = _335; + _350 = _336; + _351 = _337; + } + float _352 = exp2((((_243 - _248) + ((_248 - _243) * cb0_045w)) - _263) + (_263 * select(_251, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _377 = TEXCOORD_1.z + -1.0f; + float _379 = TEXCOORD_1.w + -1.0f; + float _382 = ((_377 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _384 = ((_379 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _391 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_382, _384), float2(_382, _384))) + 1.0f); + float _392 = _391 * _391; + float _393 = cb0_091z + 1.0f; + float _421 = ((_377 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _423 = ((_379 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _430 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_421, _423), float2(_421, _423))) + 1.0f); + float _431 = _430 * _430; + float _432 = cb0_094z + 1.0f; + float _443 = (((_392 * (_393 - cb0_090x)) + cb0_090x) * (_349 + ((_352 * _203) * cb0_087x))) * ((_431 * (_432 - cb0_093x)) + cb0_093x); + float _445 = (((_392 * (_393 - cb0_090y)) + cb0_090y) * (_350 + ((_352 * _204) * cb0_087y))) * ((_431 * (_432 - cb0_093y)) + cb0_093y); + float _447 = (((_392 * (_393 - cb0_090z)) + cb0_090z) * (_351 + ((_352 * _169.z) * cb0_087z))) * ((_431 * (_432 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_443, _445, _447)); + [branch] + if (WUWA_TM_IS(1)) { + _480 = ((((_443 * 1.3600000143051147f) + 0.04699999839067459f) * _443) / ((((_443 * 0.9599999785423279f) + 0.5600000023841858f) * _443) + 0.14000000059604645f)); + _481 = ((((_445 * 1.3600000143051147f) + 0.04699999839067459f) * _445) / ((((_445 * 0.9599999785423279f) + 0.5600000023841858f) * _445) + 0.14000000059604645f)); + _482 = ((((_447 * 1.3600000143051147f) + 0.04699999839067459f) * _447) / ((((_447 * 0.9599999785423279f) + 0.5600000023841858f) * _447) + 0.14000000059604645f)); + } else { + _480 = _443; + _481 = _445; + _482 = _447; + } + [branch] + if (WUWA_TM_IS(2)) { + float _492 = 1.0049500465393066f - (0.16398000717163086f / (_480 + -0.19505000114440918f)); + float _493 = 1.0049500465393066f - (0.16398000717163086f / (_481 + -0.19505000114440918f)); + float _494 = 1.0049500465393066f - (0.16398000717163086f / (_482 + -0.19505000114440918f)); + _514 = (((_480 - _492) * select((_480 > 0.6000000238418579f), 0.0f, 1.0f)) + _492); + _515 = (((_481 - _493) * select((_481 > 0.6000000238418579f), 0.0f, 1.0f)) + _493); + _516 = (((_482 - _494) * select((_482 > 0.6000000238418579f), 0.0f, 1.0f)) + _494); + } else { + _514 = _480; + _515 = _481; + _516 = _482; + } + [branch] + if (WUWA_TM_IS(3)) { + float _522 = cb0_037y * _514; + float _523 = cb0_037y * _515; + float _524 = cb0_037y * _516; + float _527 = cb0_037z * cb0_037w; + float _537 = cb0_038y * cb0_038x; + float _548 = cb0_038z * cb0_038x; + float _555 = cb0_038y / cb0_038z; + _563 = (((((_527 + _522) * _514) + _537) / (_548 + ((_522 + cb0_037z) * _514))) - _555); + _564 = (((((_527 + _523) * _515) + _537) / (_548 + ((_523 + cb0_037z) * _515))) - _555); + _565 = (((((_527 + _524) * _516) + _537) / (_548 + ((_524 + cb0_037z) * _516))) - _555); + } else { + _563 = _514; + _564 = _515; + _565 = _516; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _575 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _580 = (_575 * _563); + _581 = (_575 * _564); + _582 = (_575 * _565); + } else { + _580 = _563; + _581 = _564; + _582 = _565; + } + } else { + _580 = _563; + _581 = _564; + _582 = _565; + } + APPLY_EXTENDED_TONEMAP(_580, _581, _582); + float _603 = (saturate((log2(_580 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _604 = (saturate((log2(_581 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _605 = (saturate((log2(_582 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _606 = t7.Sample(s7, float3(_603, _604, _605)); + [branch] + if (!(cb0_108w == 0)) { + float4 _630 = t4.Sample(s4, float2(min(max(((cb0_084z * _42) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _43) + cb0_085y), cb0_083w), cb0_084y))); + float _640 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_630.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _641 = t8.Sample(s8, float3(_603, _604, _605)); + _655 = (lerp(_641.x, _606.x, _640)); + _656 = (lerp(_641.y, _606.y, _640)); + _657 = (lerp(_641.z, _606.z, _640)); + } else { + _655 = _606.x; + _656 = _606.y; + _657 = _606.z; + } + float _658 = _657 * 1.0499999523162842f; + float _659 = _656 * 1.0499999523162842f; + float _660 = _655 * 1.0499999523162842f; + float _668 = ((_48 * 0.00390625f) + -0.001953125f) + _660; + float _669 = ((_72 * 0.00390625f) + -0.001953125f) + _659; + float _670 = ((_73 * 0.00390625f) + -0.001953125f) + _658; + [branch] + if (!(cb0_107w == 0)) { + float _682 = (pow(_668, 0.012683313339948654f)); + float _683 = (pow(_669, 0.012683313339948654f)); + float _684 = (pow(_670, 0.012683313339948654f)); + float _717 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_682 + -0.8359375f)) / (18.8515625f - (_682 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _718 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_683 + -0.8359375f)) / (18.8515625f - (_683 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _719 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_684 + -0.8359375f)) / (18.8515625f - (_684 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _745 = min((_717 * 12.920000076293945f), ((exp2(log2(max(_717, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _746 = min((_718 * 12.920000076293945f), ((exp2(log2(max(_718, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _747 = min((_719 * 12.920000076293945f), ((exp2(log2(max(_719, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _745 = _668; + _746 = _669; + _747 = _670; + } + SV_Target.x = _745; + SV_Target.y = _746; + SV_Target.z = _747; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_660, _659, _658), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x5E7F2811.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x5E7F2811.ps_6_0.hlsl new file mode 100644 index 000000000..d14fed244 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x5E7F2811.ps_6_0.hlsl @@ -0,0 +1,398 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_109x : packoffset(c109.x); + float cb0_109y : packoffset(c109.y); + float cb0_109z : packoffset(c109.z); + float cb0_110x : packoffset(c110.x); + float cb0_110y : packoffset(c110.y); + float cb0_110z : packoffset(c110.z); + float cb0_111x : packoffset(c111.x); + float cb0_111y : packoffset(c111.y); + float cb0_111z : packoffset(c111.z); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _156; + float _157; + float _251; + float _252; + float _317; + float _318; + float _319; + float _331; + float _332; + float _333; + float _461; + float _462; + float _463; + float _495; + float _496; + float _497; + float _544; + float _545; + float _546; + float _561; + float _562; + float _563; + float _636; + float _637; + float _638; + float _726; + float _727; + float _728; + float _777; + float _778; + float _779; + float _780; + float _781; + float _782; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float _94 = _78 - (((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x); + float _95 = _79 - (((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y); + float _105 = cb0_118z * cb0_117x; + float _106 = cb0_118z * cb0_117y; + bool _107 = (cb0_118x == 0.0f); + float _117 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _118 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _129 = float((int)(((int)(uint)((bool)(_117 > 0.0f))) - ((int)(uint)((bool)(_117 < 0.0f))))); + float _130 = float((int)(((int)(uint)((bool)(_118 > 0.0f))) - ((int)(uint)((bool)(_118 < 0.0f))))); + float _135 = saturate(abs(_117) - cb0_117z); + float _136 = saturate(abs(_118) - cb0_117z); + float _146 = _118 - ((_136 * _105) * _130); + float _148 = _118 - ((_136 * _106) * _130); + bool _149 = (cb0_118x > 0.0f); + if (_149) { + _156 = (_146 - (cb0_118w * 0.4000000059604645f)); + _157 = (_148 - (cb0_118w * 0.20000000298023224f)); + } else { + _156 = _146; + _157 = _148; + } + float4 _193 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _209 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _105, cb0_117x)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _156) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + float4 _223 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _106, cb0_117y)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _157) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + if (_149) { + float _233 = saturate(((((_193.y * 0.5870000123977661f) - cb0_118y) + (_193.x * 0.29899999499320984f)) + (_193.z * 0.11400000005960464f)) * 10.0f); + float _237 = (_233 * _233) * (3.0f - (_233 * 2.0f)); + _251 = ((((_193.x - _209.x) + (_237 * (_209.x - _193.x))) * cb0_118x) + _209.x); + _252 = ((((_193.y - _223.y) + (_237 * (_223.y - _193.y))) * cb0_118x) + _223.y); + } else { + _251 = _209.x; + _252 = _223.y; + } + float4 _277 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_277); + [branch] + if (!(cb0_085z == 0)) { + bool _306 = (cb0_086x != 0); + float4 _309 = t2.Sample(s2, float2(select(_306, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_306, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _317 = (_309.x + _277.x); + _318 = (_309.y + _277.y); + _319 = (_309.z + _277.z); + } else { + _317 = _277.x; + _318 = _277.y; + _319 = _277.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _323 = t3.Sample(s3, float2(_78, _79)); + _331 = (_323.x + _317); + _332 = (_323.y + _318); + _333 = (_323.z + _319); + } else { + _331 = _317; + _332 = _318; + _333 = _319; + } + float _358 = TEXCOORD_1.z + -1.0f; + float _360 = TEXCOORD_1.w + -1.0f; + float _363 = ((_358 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _365 = ((_360 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _372 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_363, _365), float2(_363, _365))) + 1.0f); + float _373 = _372 * _372; + float _374 = cb0_091z + 1.0f; + float _402 = ((_358 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _404 = ((_360 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _411 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_402, _404), float2(_402, _404))) + 1.0f); + float _412 = _411 * _411; + float _413 = cb0_094z + 1.0f; + float _424 = (((_373 * (_374 - cb0_090x)) + cb0_090x) * (_331 + ((_251 * TEXCOORD_1.x) * cb0_087x))) * ((_412 * (_413 - cb0_093x)) + cb0_093x); + float _426 = (((_373 * (_374 - cb0_090y)) + cb0_090y) * (_332 + ((_252 * TEXCOORD_1.x) * cb0_087y))) * ((_412 * (_413 - cb0_093y)) + cb0_093y); + float _428 = (((_373 * (_374 - cb0_090z)) + cb0_090z) * (_333 + ((_193.z * TEXCOORD_1.x) * cb0_087z))) * ((_412 * (_413 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_424, _426, _428)); + [branch] + if (WUWA_TM_IS(1)) { + _461 = ((((_424 * 1.3600000143051147f) + 0.04699999839067459f) * _424) / ((((_424 * 0.9599999785423279f) + 0.5600000023841858f) * _424) + 0.14000000059604645f)); + _462 = ((((_426 * 1.3600000143051147f) + 0.04699999839067459f) * _426) / ((((_426 * 0.9599999785423279f) + 0.5600000023841858f) * _426) + 0.14000000059604645f)); + _463 = ((((_428 * 1.3600000143051147f) + 0.04699999839067459f) * _428) / ((((_428 * 0.9599999785423279f) + 0.5600000023841858f) * _428) + 0.14000000059604645f)); + } else { + _461 = _424; + _462 = _426; + _463 = _428; + } + [branch] + if (WUWA_TM_IS(2)) { + float _473 = 1.0049500465393066f - (0.16398000717163086f / (_461 + -0.19505000114440918f)); + float _474 = 1.0049500465393066f - (0.16398000717163086f / (_462 + -0.19505000114440918f)); + float _475 = 1.0049500465393066f - (0.16398000717163086f / (_463 + -0.19505000114440918f)); + _495 = (((_461 - _473) * select((_461 > 0.6000000238418579f), 0.0f, 1.0f)) + _473); + _496 = (((_462 - _474) * select((_462 > 0.6000000238418579f), 0.0f, 1.0f)) + _474); + _497 = (((_463 - _475) * select((_463 > 0.6000000238418579f), 0.0f, 1.0f)) + _475); + } else { + _495 = _461; + _496 = _462; + _497 = _463; + } + [branch] + if (WUWA_TM_IS(3)) { + float _503 = cb0_037y * _495; + float _504 = cb0_037y * _496; + float _505 = cb0_037y * _497; + float _508 = cb0_037z * cb0_037w; + float _518 = cb0_038y * cb0_038x; + float _529 = cb0_038z * cb0_038x; + float _536 = cb0_038y / cb0_038z; + _544 = (((((_508 + _503) * _495) + _518) / (_529 + ((_503 + cb0_037z) * _495))) - _536); + _545 = (((((_508 + _504) * _496) + _518) / (_529 + ((_504 + cb0_037z) * _496))) - _536); + _546 = (((((_508 + _505) * _497) + _518) / (_529 + ((_505 + cb0_037z) * _497))) - _536); + } else { + _544 = _495; + _545 = _496; + _546 = _497; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _556 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _561 = (_556 * _544); + _562 = (_556 * _545); + _563 = (_556 * _546); + } else { + _561 = _544; + _562 = _545; + _563 = _546; + } + } else { + _561 = _544; + _562 = _545; + _563 = _546; + } + APPLY_EXTENDED_TONEMAP(_561, _562, _563); + float _584 = (saturate((log2(_561 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _585 = (saturate((log2(_562 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _586 = (saturate((log2(_563 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _587 = t5.Sample(s5, float3(_584, _585, _586)); + [branch] + if (!(cb0_108w == 0)) { + float4 _611 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _621 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_611.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _622 = t6.Sample(s6, float3(_584, _585, _586)); + _636 = (lerp(_622.x, _587.x, _621)); + _637 = (lerp(_622.y, _587.y, _621)); + _638 = (lerp(_622.z, _587.z, _621)); + } else { + _636 = _587.x; + _637 = _587.y; + _638 = _587.z; + } + float _639 = _638 * 1.0499999523162842f; + float _640 = _637 * 1.0499999523162842f; + float _641 = _636 * 1.0499999523162842f; + float _649 = ((_43 * 0.00390625f) + -0.001953125f) + _641; + float _650 = ((_67 * 0.00390625f) + -0.001953125f) + _640; + float _651 = ((_68 * 0.00390625f) + -0.001953125f) + _639; + [branch] + if (!(cb0_107w == 0)) { + float _663 = (pow(_649, 0.012683313339948654f)); + float _664 = (pow(_650, 0.012683313339948654f)); + float _665 = (pow(_651, 0.012683313339948654f)); + float _698 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_663 + -0.8359375f)) / (18.8515625f - (_663 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _699 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_664 + -0.8359375f)) / (18.8515625f - (_664 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _700 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_665 + -0.8359375f)) / (18.8515625f - (_665 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _726 = min((_698 * 12.920000076293945f), ((exp2(log2(max(_698, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _727 = min((_699 * 12.920000076293945f), ((exp2(log2(max(_699, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _728 = min((_700 * 12.920000076293945f), ((exp2(log2(max(_700, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _726 = _649; + _727 = _650; + _728 = _651; + } + GENERATE_INVERSION(_726, _727, _728); + float _737 = ((((_727 * 587.0f) + (_726 * 299.0f)) + (_728 * 114.0f)) * 0.0010000000474974513f) - cb0_109z; + float _744 = saturate(float((int)(((int)(uint)((bool)(_737 > 0.0f))) - ((int)(uint)((bool)(_737 < 0.0f)))))); + float _751 = cb0_110x - _726; + float _752 = cb0_110y - _727; + float _753 = cb0_110z - _728; + float _758 = WUWA_PEAK_SCALING * cb0_111x - _726; + float _759 = WUWA_PEAK_SCALING * cb0_111y - _727; + float _760 = WUWA_PEAK_SCALING * cb0_111z - _728; + [branch] + if (cb0_109y > 0.0f) { + _777 = (_751 * cb0_109y); + _778 = (_752 * cb0_109y); + _779 = (_753 * cb0_109y); + _780 = (_758 * cb0_109y); + _781 = (_759 * cb0_109y); + _782 = (_760 * cb0_109y); + } else { + float _769 = abs(cb0_109y); + _777 = (_758 * _769); + _778 = (_759 * _769); + _779 = (_760 * _769); + _780 = (_751 * _769); + _781 = (_752 * _769); + _782 = (_753 * _769); + } + SV_Target.x = ((cb0_109x * (lerp(_777, _780, _744))) + _726); + SV_Target.y = ((cb0_109x * (lerp(_778, _781, _744))) + _727); + SV_Target.z = (((lerp(_779, _782, _744)) * cb0_109x) + _728); + SV_Target.xyz = wuwa::ApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_641, _640, _639), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x6CE012CE.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x6CE012CE.ps_6_0.hlsl new file mode 100644 index 000000000..087ca50cc --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x6CE012CE.ps_6_0.hlsl @@ -0,0 +1,1076 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096x : packoffset(c096.x); + float cb0_096y : packoffset(c096.y); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _34 = cb0_065x * cb0_064w; + float _35 = TEXCOORD_3.x * 0.5f; + float _36 = TEXCOORD_3.y * 0.5f; + float _107; + float _108; + float _116; + float _117; + float _215; + float _216; + float _217; + float _239; + float _246; + float _253; + float _260; + float _295; + float _296; + float _297; + float _332; + float _333; + float _334; + float _362; + float _363; + float _385; + float _416; + float _417; + float _514; + float _515; + float _516; + float _545; + float _546; + float _547; + float _612; + float _613; + float _614; + float _626; + float _627; + float _628; + float _771; + float _772; + float _773; + float _805; + float _806; + float _807; + float _854; + float _855; + float _856; + float _871; + float _872; + float _873; + float _946; + float _947; + float _948; + float _1036; + float _1037; + float _1038; + if (!(!(cb0_102x != 0.0f))) { + float _41 = cb0_102x * 2.0f; + do { + if (_41 > 0.0f) { + float _45 = abs(_41) * 0.5f; + float _46 = tan(_45); + float _47 = _34 * TEXCOORD_3.x; + float _57 = rsqrt(dot(float2(_47, TEXCOORD_3.y), float2(_47, TEXCOORD_3.y))); + float _61 = rsqrt(dot(float2(_34, 1.0f), float2(_34, 1.0f))); + float _66 = tan((sqrt((_47 * _47) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_34 * _34) + 1.0f)) * _45); + _107 = (((_66 * ((_57 * _47) / (_61 * _34))) / _46) * 0.5f); + _108 = (((_66 * ((_57 * TEXCOORD_3.y) / _61)) / _46) * 0.5f); + } else { + if (_41 < 0.0f) { + float _80 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _85 = (((_80 * _80) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _80; + float _87 = atan(_35 / _36); + bool _90 = (_36 < 0.0f); + bool _91 = (_36 == 0.0f); + bool _92 = (_35 >= 0.0f); + bool _93 = (_35 < 0.0f); + float _101 = select((_92 && _91), 1.5707963705062866f, select((_93 && _91), -1.5707963705062866f, select((_93 && _90), (_87 + -3.1415927410125732f), select((_92 && _90), (_87 + 3.1415927410125732f), _87)))); + _107 = (sin(_101) * _85); + _108 = (cos(_101) * _85); + } else { + _107 = _35; + _108 = _36; + } + } + _116 = (((_107 + 0.5f) * 2.0f) + -1.0f); + _117 = (((_108 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _116 = TEXCOORD_3.x; + _117 = TEXCOORD_3.y; + } + float _130 = ((cb0_048z * _116) + cb0_049x) * cb0_048x; + float _131 = ((cb0_048w * _117) + cb0_049y) * cb0_048y; + float4 _132 = t5.SampleLevel(s5, float2(_130, _131), 0.0f); + float _144 = ((View_1040.x * _132.x) + View_1040.y) + (1.0f / ((View_1040.z * _132.x) - View_1040.w)); + float4 _145 = t4.Sample(s4, float2(_130, _131)); + float _153 = 1.0f / ((View_1040.w + _144) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _198 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _203 = saturate(((sqrt((_117 * _117) + (_116 * _116)) - cb0_098y) - _198) / (-0.0f - _198)); + float _207 = (_203 * _203) * (3.0f - (_203 * 2.0f)); + _215 = (1.0f - (_207 * max(cb0_097y, cb0_102y))); + _216 = (1.0f - (_207 * max(cb0_097y, cb0_103y))); + _217 = (1.0f - (_207 * max(cb0_097y, cb0_104y))); + } else { + _215 = 1.0f; + _216 = 1.0f; + _217 = 1.0f; + } + bool _223 = !(cb0_097z == 0.0f); + bool _224 = !(cb0_102z == 0.0f); + bool _226 = !(cb0_103z == 0.0f); + bool _228 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_223 || _224)) || _226)) || _228)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_223) { + _239 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _239 = cb0_097z; + } + do { + if (_224) { + _246 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _246 = cb0_102z; + } + do { + if (_226) { + _253 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _253 = cb0_103z; + } + do { + if (_228) { + _260 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _260 = cb0_104z; + } + float _261 = max(_239, _246); + float _262 = max(_239, _253); + float _263 = max(_239, _260); + float _279 = saturate((_144 - (_261 * 1000.0f)) / ((_261 * 9999.990234375f) + 0.009999999776482582f)); + float _280 = saturate((_144 - (_262 * 1000.0f)) / ((_262 * 9999.990234375f) + 0.009999999776482582f)); + float _281 = saturate((_144 - (_263 * 1000.0f)) / ((_263 * 9999.990234375f) + 0.009999999776482582f)); + _295 = ((_279 * _279) * (3.0f - (_279 * 2.0f))); + _296 = ((_280 * _280) * (3.0f - (_280 * 2.0f))); + _297 = ((_281 * _281) * (3.0f - (_281 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _295 = 1.0f; + _296 = 1.0f; + _297 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _318 = saturate(select((((_153 - _145.x) + ((((View_448[3].z) - _153) + ((View_448[2].z) * _144)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_145.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _332 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _333 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _334 = max(_318, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _332 = 1.0f; + _333 = 1.0f; + _334 = 1.0f; + } + float _335 = TEXCOORD_2.w * 543.3099975585938f; + float _339 = frac(sin(_335 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _362 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _335) * 493013.0f) + 7.177000045776367f) - _339)) + _339); + _363 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _335) * 493013.0f) + 14.298999786376953f) - _339)) + _339); + } else { + _362 = _339; + _363 = _339; + } + if (cb0_100z > 0.0f) { + _385 = (((((_297 * _217) * _334) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_339 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _385 = 1.0f; + } + float _388 = (_296 * _216) * _333; + float _389 = _388 * cb0_100y; + if (cb0_100y > 0.0f) { + float _394 = View_2376 * 0.00016666666488163173f; + float _398 = frac(abs(_394)); + float _403 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_394 >= (-0.0f - _394)), _398, (-0.0f - _398)); + float _409 = (0.5f - frac(sin(dot(float2(_403, _403), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _416 = (((_389 * 0.5f) * _409) + _130); + _417 = ((_409 * _389) + _131); + } else { + _416 = _130; + _417 = _131; + } + float _422 = cb0_096z * (1.0f - (_339 * _339)); + float _427 = (_422 * (TEXCOORD_2.x - _416)) + _416; + float _428 = (_422 * (TEXCOORD_2.y - _417)) + _417; + float4 _439 = t0.Sample(s0, float2(min(max(_427, cb0_053z), cb0_054x), min(max(_428, cb0_053w), cb0_054y))); + float _445 = saturate(cb0_099x); + float _447 = saturate(cb0_099y); + if (_445 > 0.0f) { + float _458 = saturate(((_439.x * 0.29899999499320984f) + (_439.y * 0.5870000123977661f)) + (_439.z * 0.11400000005960464f)); + float _464 = ((_458 * _458) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_458 * 2.0f)); + float _471 = max(sqrt(((_439.x * _439.x) + (_439.y * _439.y)) + (_439.z * _439.z)), 0.014999999664723873f); + float _472 = _439.x / _471; + float _473 = _439.y / _471; + float _474 = _439.z / _471; + float _484 = log2(_464); + float _503 = ((_295 * _215) * _332) * _445; + _514 = (((((lerp(_472, 1.0f, 0.25f)) * (((_447 * 0.17000000178813934f) + 0.029999999329447746f) + _464)) - _439.x) * _503) + _439.x); + _515 = (((((((_447 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_484 * 0.8999999761581421f)) * (lerp(_473, 1.0f, 0.25f))) - _439.y) * _503) + _439.y); + _516 = (((((((_447 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_484 * 0.949999988079071f)) * (lerp(_474, 1.0f, 0.25f))) - _439.z) * _503) + _439.z); + } else { + _514 = _439.x; + _515 = _439.y; + _516 = _439.z; + } + float _519 = saturate(cb0_100x); + float _520 = _388 * _519; + if (_519 > 0.0f) { + float _531 = (sin(((_117 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _545 = ((((_531 * _514) - _514) * _520) + _514); + _546 = ((((_531 * _515) - _515) * _520) + _515); + _547 = ((((_531 * _516) - _516) * _520) + _516); + } else { + _545 = _514; + _546 = _515; + _547 = _516; + } + float4 _572 = t1.Sample(s1, float2(min(max(((cb0_068z * _427) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _428) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_572); + [branch] + if (!(cb0_085z == 0)) { + bool _601 = (cb0_086x != 0); + float4 _604 = t2.Sample(s2, float2(select(_601, _427, min(max(((cb0_076z * _427) + cb0_077x), cb0_075z), cb0_076x)), select(_601, _428, min(max(((cb0_076w * _428) + cb0_077y), cb0_075w), cb0_076y)))); + _612 = (_604.x + _572.x); + _613 = (_604.y + _572.y); + _614 = (_604.z + _572.z); + } else { + _612 = _572.x; + _613 = _572.y; + _614 = _572.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _618 = t3.Sample(s3, float2(_427, _428)); + _626 = (_618.x + _612); + _627 = (_618.y + _613); + _628 = (_618.z + _614); + } else { + _626 = _612; + _627 = _613; + _628 = _614; + } + float _653 = TEXCOORD_1.z + -1.0f; + float _655 = TEXCOORD_1.w + -1.0f; + float _658 = ((_653 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _660 = ((_655 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _667 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_658, _660), float2(_658, _660))) + 1.0f); + float _668 = _667 * _667; + float _669 = cb0_091z + 1.0f; + float _697 = ((_653 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _699 = ((_655 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _706 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_697, _699), float2(_697, _699))) + 1.0f); + float _707 = _706 * _706; + float _708 = cb0_094z + 1.0f; + float _730 = ((((_626 + ((_545 * TEXCOORD_1.x) * cb0_087x)) * _385) * ((_668 * (_669 - cb0_090x)) + cb0_090x)) * ((_707 * (_708 - cb0_093x)) + cb0_093x)) * ((cb0_096x * _339) + cb0_096y); + float _734 = ((((_627 + ((_546 * TEXCOORD_1.x) * cb0_087y)) * _385) * ((_668 * (_669 - cb0_090y)) + cb0_090y)) * ((_707 * (_708 - cb0_093y)) + cb0_093y)) * ((cb0_096x * _362) + cb0_096y); + float _738 = ((((_628 + ((_547 * TEXCOORD_1.x) * cb0_087z)) * _385) * ((_668 * (_669 - cb0_090z)) + cb0_090z)) * ((_707 * (_708 - cb0_093z)) + cb0_093z)) * ((cb0_096x * _363) + cb0_096y); + + CAPTURE_UNTONEMAPPED(float3(_730, _734, _738)); + [branch] + if (WUWA_TM_IS(1)) { + _771 = ((((_730 * 1.3600000143051147f) + 0.04699999839067459f) * _730) / ((((_730 * 0.9599999785423279f) + 0.5600000023841858f) * _730) + 0.14000000059604645f)); + _772 = ((((_734 * 1.3600000143051147f) + 0.04699999839067459f) * _734) / ((((_734 * 0.9599999785423279f) + 0.5600000023841858f) * _734) + 0.14000000059604645f)); + _773 = ((((_738 * 1.3600000143051147f) + 0.04699999839067459f) * _738) / ((((_738 * 0.9599999785423279f) + 0.5600000023841858f) * _738) + 0.14000000059604645f)); + } else { + _771 = _730; + _772 = _734; + _773 = _738; + } + [branch] + if (WUWA_TM_IS(2)) { + float _783 = 1.0049500465393066f - (0.16398000717163086f / (_771 + -0.19505000114440918f)); + float _784 = 1.0049500465393066f - (0.16398000717163086f / (_772 + -0.19505000114440918f)); + float _785 = 1.0049500465393066f - (0.16398000717163086f / (_773 + -0.19505000114440918f)); + _805 = (((_771 - _783) * select((_771 > 0.6000000238418579f), 0.0f, 1.0f)) + _783); + _806 = (((_772 - _784) * select((_772 > 0.6000000238418579f), 0.0f, 1.0f)) + _784); + _807 = (((_773 - _785) * select((_773 > 0.6000000238418579f), 0.0f, 1.0f)) + _785); + } else { + _805 = _771; + _806 = _772; + _807 = _773; + } + [branch] + if (WUWA_TM_IS(3)) { + float _813 = cb0_037y * _805; + float _814 = cb0_037y * _806; + float _815 = cb0_037y * _807; + float _818 = cb0_037z * cb0_037w; + float _828 = cb0_038y * cb0_038x; + float _839 = cb0_038z * cb0_038x; + float _846 = cb0_038y / cb0_038z; + _854 = (((((_818 + _813) * _805) + _828) / (_839 + ((_813 + cb0_037z) * _805))) - _846); + _855 = (((((_818 + _814) * _806) + _828) / (_839 + ((_814 + cb0_037z) * _806))) - _846); + _856 = (((((_818 + _815) * _807) + _828) / (_839 + ((_815 + cb0_037z) * _807))) - _846); + } else { + _854 = _805; + _855 = _806; + _856 = _807; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _866 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _871 = (_866 * _854); + _872 = (_866 * _855); + _873 = (_866 * _856); + } else { + _871 = _854; + _872 = _855; + _873 = _856; + } + } else { + _871 = _854; + _872 = _855; + _873 = _856; + } + APPLY_EXTENDED_TONEMAP(_871, _872, _873); + float _894 = (saturate((log2(_871 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _895 = (saturate((log2(_872 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _896 = (saturate((log2(_873 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _897 = t7.Sample(s7, float3(_894, _895, _896)); + [branch] + if (!(cb0_108w == 0)) { + float4 _921 = t6.Sample(s6, float2(min(max(((cb0_084z * _427) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _428) + cb0_085y), cb0_083w), cb0_084y))); + float _931 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_921.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _932 = t8.Sample(s8, float3(_894, _895, _896)); + _946 = (lerp(_932.x, _897.x, _931)); + _947 = (lerp(_932.y, _897.y, _931)); + _948 = (lerp(_932.z, _897.z, _931)); + } else { + _946 = _897.x; + _947 = _897.y; + _948 = _897.z; + } + float _949 = _948 * 1.0499999523162842f; + float _950 = _947 * 1.0499999523162842f; + float _951 = _946 * 1.0499999523162842f; + float _959 = ((_339 * 0.00390625f) + -0.001953125f) + _951; + float _960 = ((_362 * 0.00390625f) + -0.001953125f) + _950; + float _961 = ((_363 * 0.00390625f) + -0.001953125f) + _949; + [branch] + if (!(cb0_107w == 0)) { + float _973 = (pow(_959, 0.012683313339948654f)); + float _974 = (pow(_960, 0.012683313339948654f)); + float _975 = (pow(_961, 0.012683313339948654f)); + float _1008 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_973 + -0.8359375f)) / (18.8515625f - (_973 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1009 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_974 + -0.8359375f)) / (18.8515625f - (_974 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1010 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_975 + -0.8359375f)) / (18.8515625f - (_975 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1036 = min((_1008 * 12.920000076293945f), ((exp2(log2(max(_1008, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1037 = min((_1009 * 12.920000076293945f), ((exp2(log2(max(_1009, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1038 = min((_1010 * 12.920000076293945f), ((exp2(log2(max(_1010, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1036 = _959; + _1037 = _960; + _1038 = _961; + } + SV_Target.x = _1036; + SV_Target.y = _1037; + SV_Target.z = _1038; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_951, _950, _949), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x7533121F.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x7533121F.ps_6_0.hlsl new file mode 100644 index 000000000..5333018b5 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x7533121F.ps_6_0.hlsl @@ -0,0 +1,337 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _42 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _43 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _44 = TEXCOORD_2.w * 543.3099975585938f; + float _48 = frac(sin(_44 + TEXCOORD_2.z) * 493013.0f); + float _72; + float _73; + float _136; + float _208; + float _209; + float _210; + float _222; + float _223; + float _224; + float _353; + float _354; + float _355; + float _387; + float _388; + float _389; + float _436; + float _437; + float _438; + float _453; + float _454; + float _455; + float _528; + float _529; + float _530; + float _618; + float _619; + float _620; + if (cb0_097x > 0.0f) { + _72 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _44) * 493013.0f) + 7.177000045776367f) - _48)) + _48); + _73 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _44) * 493013.0f) + 14.298999786376953f) - _48)) + _48); + } else { + _72 = _48; + _73 = _48; + } + float4 _74 = t0.Sample(s0, float2(_42, _43)); + float _86 = log2(max(dot(float3(_74.x, _74.y, _74.z), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _104 = t5.Sample(s5, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _86) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _108 = t6.Sample(s6, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _111 = select((_104.y < 0.0010000000474974513f), _108.x, (_104.x / _104.y)); + float _114 = log2(TEXCOORD_1.x); + float _116 = (_111 + _114) + ((_108.x - _111) * cb0_046x); + float _121 = _114 + _86; + float _123 = _116 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _124 = (_123 > 0.0f); + if (_124) { + _136 = max(0.0f, (_123 - cb0_047x)); + } else { + _136 = min(0.0f, (cb0_047y + _123)); + } + float4 _168 = t1.Sample(s1, float2(min(max(((cb0_068z * _42) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _43) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_168); + [branch] + if (!(cb0_085z == 0)) { + bool _197 = (cb0_086x != 0); + float4 _200 = t2.Sample(s2, float2(select(_197, _42, min(max(((cb0_076z * _42) + cb0_077x), cb0_075z), cb0_076x)), select(_197, _43, min(max(((cb0_076w * _43) + cb0_077y), cb0_075w), cb0_076y)))); + _208 = (_200.x + _168.x); + _209 = (_200.y + _168.y); + _210 = (_200.z + _168.z); + } else { + _208 = _168.x; + _209 = _168.y; + _210 = _168.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _214 = t3.Sample(s3, float2(_42, _43)); + _222 = (_214.x + _208); + _223 = (_214.y + _209); + _224 = (_214.z + _210); + } else { + _222 = _208; + _223 = _209; + _224 = _210; + } + float _225 = exp2((((_116 - _121) + ((_121 - _116) * cb0_045w)) - _136) + (_136 * select(_124, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _250 = TEXCOORD_1.z + -1.0f; + float _252 = TEXCOORD_1.w + -1.0f; + float _255 = ((_250 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _257 = ((_252 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _264 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_255, _257), float2(_255, _257))) + 1.0f); + float _265 = _264 * _264; + float _266 = cb0_091z + 1.0f; + float _294 = ((_250 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _296 = ((_252 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _303 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_294, _296), float2(_294, _296))) + 1.0f); + float _304 = _303 * _303; + float _305 = cb0_094z + 1.0f; + float _316 = (((_265 * (_266 - cb0_090x)) + cb0_090x) * (_222 + ((_225 * _74.x) * cb0_087x))) * ((_304 * (_305 - cb0_093x)) + cb0_093x); + float _318 = (((_265 * (_266 - cb0_090y)) + cb0_090y) * (_223 + ((_225 * _74.y) * cb0_087y))) * ((_304 * (_305 - cb0_093y)) + cb0_093y); + float _320 = (((_265 * (_266 - cb0_090z)) + cb0_090z) * (_224 + ((_225 * _74.z) * cb0_087z))) * ((_304 * (_305 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_316, _318, _320)); + [branch] + if (WUWA_TM_IS(1)) { + _353 = ((((_316 * 1.3600000143051147f) + 0.04699999839067459f) * _316) / ((((_316 * 0.9599999785423279f) + 0.5600000023841858f) * _316) + 0.14000000059604645f)); + _354 = ((((_318 * 1.3600000143051147f) + 0.04699999839067459f) * _318) / ((((_318 * 0.9599999785423279f) + 0.5600000023841858f) * _318) + 0.14000000059604645f)); + _355 = ((((_320 * 1.3600000143051147f) + 0.04699999839067459f) * _320) / ((((_320 * 0.9599999785423279f) + 0.5600000023841858f) * _320) + 0.14000000059604645f)); + } else { + _353 = _316; + _354 = _318; + _355 = _320; + } + [branch] + if (WUWA_TM_IS(2)) { + float _365 = 1.0049500465393066f - (0.16398000717163086f / (_353 + -0.19505000114440918f)); + float _366 = 1.0049500465393066f - (0.16398000717163086f / (_354 + -0.19505000114440918f)); + float _367 = 1.0049500465393066f - (0.16398000717163086f / (_355 + -0.19505000114440918f)); + _387 = (((_353 - _365) * select((_353 > 0.6000000238418579f), 0.0f, 1.0f)) + _365); + _388 = (((_354 - _366) * select((_354 > 0.6000000238418579f), 0.0f, 1.0f)) + _366); + _389 = (((_355 - _367) * select((_355 > 0.6000000238418579f), 0.0f, 1.0f)) + _367); + } else { + _387 = _353; + _388 = _354; + _389 = _355; + } + [branch] + if (WUWA_TM_IS(3)) { + float _395 = cb0_037y * _387; + float _396 = cb0_037y * _388; + float _397 = cb0_037y * _389; + float _400 = cb0_037z * cb0_037w; + float _410 = cb0_038y * cb0_038x; + float _421 = cb0_038z * cb0_038x; + float _428 = cb0_038y / cb0_038z; + _436 = (((((_400 + _395) * _387) + _410) / (_421 + ((_395 + cb0_037z) * _387))) - _428); + _437 = (((((_400 + _396) * _388) + _410) / (_421 + ((_396 + cb0_037z) * _388))) - _428); + _438 = (((((_400 + _397) * _389) + _410) / (_421 + ((_397 + cb0_037z) * _389))) - _428); + } else { + _436 = _387; + _437 = _388; + _438 = _389; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _448 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _453 = (_448 * _436); + _454 = (_448 * _437); + _455 = (_448 * _438); + } else { + _453 = _436; + _454 = _437; + _455 = _438; + } + } else { + _453 = _436; + _454 = _437; + _455 = _438; + } + APPLY_EXTENDED_TONEMAP(_453, _454, _455); + float _476 = (saturate((log2(_453 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _477 = (saturate((log2(_454 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _478 = (saturate((log2(_455 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _479 = t7.Sample(s7, float3(_476, _477, _478)); + [branch] + if (!(cb0_108w == 0)) { + float4 _503 = t4.Sample(s4, float2(min(max(((cb0_084z * _42) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _43) + cb0_085y), cb0_083w), cb0_084y))); + float _513 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_503.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _514 = t8.Sample(s8, float3(_476, _477, _478)); + _528 = (lerp(_514.x, _479.x, _513)); + _529 = (lerp(_514.y, _479.y, _513)); + _530 = (lerp(_514.z, _479.z, _513)); + } else { + _528 = _479.x; + _529 = _479.y; + _530 = _479.z; + } + float _531 = _530 * 1.0499999523162842f; + float _532 = _529 * 1.0499999523162842f; + float _533 = _528 * 1.0499999523162842f; + float _541 = ((_48 * 0.00390625f) + -0.001953125f) + _533; + float _542 = ((_72 * 0.00390625f) + -0.001953125f) + _532; + float _543 = ((_73 * 0.00390625f) + -0.001953125f) + _531; + [branch] + if (!(cb0_107w == 0)) { + float _555 = (pow(_541, 0.012683313339948654f)); + float _556 = (pow(_542, 0.012683313339948654f)); + float _557 = (pow(_543, 0.012683313339948654f)); + float _590 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_555 + -0.8359375f)) / (18.8515625f - (_555 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _591 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_556 + -0.8359375f)) / (18.8515625f - (_556 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _592 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_557 + -0.8359375f)) / (18.8515625f - (_557 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _618 = min((_590 * 12.920000076293945f), ((exp2(log2(max(_590, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _619 = min((_591 * 12.920000076293945f), ((exp2(log2(max(_591, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _620 = min((_592 * 12.920000076293945f), ((exp2(log2(max(_592, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _618 = _541; + _619 = _542; + _620 = _543; + } + SV_Target.x = _618; + SV_Target.y = _619; + SV_Target.z = _620; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_533, _532, _531), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x8AF8AB3A.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x8AF8AB3A.ps_6_0.hlsl new file mode 100644 index 000000000..581f169ea --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x8AF8AB3A.ps_6_0.hlsl @@ -0,0 +1,1105 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture2D t8 : register(t8); + +Texture3D t9 : register(t9); + +Texture3D t10 : register(t10); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_064w : packoffset(c064.w); + float cb0_065x : packoffset(c065.x); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_097x : packoffset(c097.x); + float cb0_097y : packoffset(c097.y); + float cb0_097z : packoffset(c097.z); + float cb0_098x : packoffset(c098.x); + float cb0_098y : packoffset(c098.y); + float cb0_098z : packoffset(c098.z); + float cb0_099x : packoffset(c099.x); + float cb0_099y : packoffset(c099.y); + float cb0_099z : packoffset(c099.z); + float cb0_100x : packoffset(c100.x); + float cb0_100y : packoffset(c100.y); + float cb0_100z : packoffset(c100.z); + float cb0_102x : packoffset(c102.x); + float cb0_102y : packoffset(c102.y); + float cb0_102z : packoffset(c102.z); + float cb0_103x : packoffset(c103.x); + float cb0_103y : packoffset(c103.y); + float cb0_103z : packoffset(c103.z); + float cb0_104x : packoffset(c104.x); + float cb0_104y : packoffset(c104.y); + float cb0_104z : packoffset(c104.z); + float cb0_105x : packoffset(c105.x); + float cb0_105y : packoffset(c105.y); + float cb0_105z : packoffset(c105.z); + float cb0_106x : packoffset(c106.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +cbuffer cb1 : register(b1) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +SamplerState s9 : register(s9); + +SamplerState s10 : register(s10); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _39 = cb0_065x * cb0_064w; + float _40 = TEXCOORD_3.x * 0.5f; + float _41 = TEXCOORD_3.y * 0.5f; + float _112; + float _113; + float _121; + float _122; + float _220; + float _221; + float _222; + float _244; + float _251; + float _258; + float _265; + float _300; + float _301; + float _302; + float _337; + float _338; + float _339; + float _367; + float _368; + float _390; + float _421; + float _422; + float _498; + float _499; + float _500; + float _528; + float _529; + float _530; + float _589; + float _661; + float _662; + float _663; + float _675; + float _676; + float _677; + float _809; + float _810; + float _811; + float _843; + float _844; + float _845; + float _892; + float _893; + float _894; + float _909; + float _910; + float _911; + float _984; + float _985; + float _986; + float _1074; + float _1075; + float _1076; + if (!(!(cb0_102x != 0.0f))) { + float _46 = cb0_102x * 2.0f; + do { + if (_46 > 0.0f) { + float _50 = abs(_46) * 0.5f; + float _51 = tan(_50); + float _52 = _39 * TEXCOORD_3.x; + float _62 = rsqrt(dot(float2(_52, TEXCOORD_3.y), float2(_52, TEXCOORD_3.y))); + float _66 = rsqrt(dot(float2(_39, 1.0f), float2(_39, 1.0f))); + float _71 = tan((sqrt((_52 * _52) + (TEXCOORD_3.y * TEXCOORD_3.y)) / sqrt((_39 * _39) + 1.0f)) * _50); + _112 = (((_71 * ((_62 * _52) / (_66 * _39))) / _51) * 0.5f); + _113 = (((_71 * ((_62 * TEXCOORD_3.y) / _66)) / _51) * 0.5f); + } else { + if (_46 < 0.0f) { + float _85 = sqrt(((TEXCOORD_3.y * TEXCOORD_3.y) + (TEXCOORD_3.x * TEXCOORD_3.x)) * 0.25f); + float _90 = (((_85 * _85) * (cb0_102x * 0.699999988079071f)) + 1.0f) * _85; + float _92 = atan(_40 / _41); + bool _95 = (_41 < 0.0f); + bool _96 = (_41 == 0.0f); + bool _97 = (_40 >= 0.0f); + bool _98 = (_40 < 0.0f); + float _106 = select((_97 && _96), 1.5707963705062866f, select((_98 && _96), -1.5707963705062866f, select((_98 && _95), (_92 + -3.1415927410125732f), select((_97 && _95), (_92 + 3.1415927410125732f), _92)))); + _112 = (sin(_106) * _90); + _113 = (cos(_106) * _90); + } else { + _112 = _40; + _113 = _41; + } + } + _121 = (((_112 + 0.5f) * 2.0f) + -1.0f); + _122 = (((_113 + 0.5f) * 2.0f) + -1.0f); + } while (false); + } else { + _121 = TEXCOORD_3.x; + _122 = TEXCOORD_3.y; + } + float _135 = ((cb0_048z * _121) + cb0_049x) * cb0_048x; + float _136 = ((cb0_048w * _122) + cb0_049y) * cb0_048y; + float4 _137 = t5.SampleLevel(s5, float2(_135, _136), 0.0f); + float _149 = ((View_1040.x * _137.x) + View_1040.y) + (1.0f / ((View_1040.z * _137.x) - View_1040.w)); + float4 _150 = t4.Sample(s4, float2(_135, _136)); + float _158 = 1.0f / ((View_1040.w + _149) * View_1040.z); + if (((bool)(!(cb0_097y == 0.0f))) || ((bool)(((bool)(((bool)(((bool)(((bool)(!(cb0_098y == 0.0f))) || ((bool)(!(cb0_102y == 0.0f))))) || ((bool)(!(cb0_103y == 0.0f))))) || ((bool)(!(cb0_104y == 0.0f))))) || ((bool)(!(cb0_105y == 0.0f)))))) { + float _203 = 1.5f - (saturate(cb0_098z) * 1.4900000095367432f); + float _208 = saturate(((sqrt((_122 * _122) + (_121 * _121)) - cb0_098y) - _203) / (-0.0f - _203)); + float _212 = (_208 * _208) * (3.0f - (_208 * 2.0f)); + _220 = (1.0f - (_212 * max(cb0_097y, cb0_102y))); + _221 = (1.0f - (_212 * max(cb0_097y, cb0_103y))); + _222 = (1.0f - (_212 * max(cb0_097y, cb0_104y))); + } else { + _220 = 1.0f; + _221 = 1.0f; + _222 = 1.0f; + } + bool _228 = !(cb0_097z == 0.0f); + bool _229 = !(cb0_102z == 0.0f); + bool _231 = !(cb0_103z == 0.0f); + bool _233 = !(cb0_104z == 0.0f); + if (((bool)(((bool)(((bool)(_228 || _229)) || _231)) || _233)) || ((bool)(!(cb0_105z == 0.0f)))) { + do { + if (_228) { + _244 = exp2(log2(saturate(cb0_097z)) * 3.0f); + } else { + _244 = cb0_097z; + } + do { + if (_229) { + _251 = exp2(log2(saturate(cb0_102z)) * 3.0f); + } else { + _251 = cb0_102z; + } + do { + if (_231) { + _258 = exp2(log2(saturate(cb0_103z)) * 3.0f); + } else { + _258 = cb0_103z; + } + do { + if (_233) { + _265 = exp2(log2(saturate(cb0_104z)) * 3.0f); + } else { + _265 = cb0_104z; + } + float _266 = max(_244, _251); + float _267 = max(_244, _258); + float _268 = max(_244, _265); + float _284 = saturate((_149 - (_266 * 1000.0f)) / ((_266 * 9999.990234375f) + 0.009999999776482582f)); + float _285 = saturate((_149 - (_267 * 1000.0f)) / ((_267 * 9999.990234375f) + 0.009999999776482582f)); + float _286 = saturate((_149 - (_268 * 1000.0f)) / ((_268 * 9999.990234375f) + 0.009999999776482582f)); + _300 = ((_284 * _284) * (3.0f - (_284 * 2.0f))); + _301 = ((_285 * _285) * (3.0f - (_285 * 2.0f))); + _302 = ((_286 * _286) * (3.0f - (_286 * 2.0f))); + } while (false); + } while (false); + } while (false); + } while (false); + } else { + _300 = 1.0f; + _301 = 1.0f; + _302 = 1.0f; + } + if (((bool)(((bool)(((bool)(((bool)(!(cb0_098x == 0.0f))) || ((bool)(!(cb0_103x == 0.0f))))) || ((bool)(!(cb0_104x == 0.0f))))) || ((bool)(!(cb0_105x == 0.0f))))) || ((bool)(!(cb0_106x == 0.0f)))) { + float _323 = saturate(select((((_158 - _150.x) + ((((View_448[3].z) - _158) + ((View_448[2].z) * _149)) * select(((View_448[3].w) < 1.0f), 0.0f, 1.0f))) > 0.0005000000237487257f), 1.0f, 0.0f) + select((_150.x > 0.0005000000237487257f), 0.0f, 1.0f)); + _337 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_103x)))); + _338 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_104x)))); + _339 = max(_323, (1.0f - saturate(max(cb0_098x, cb0_105x)))); + } else { + _337 = 1.0f; + _338 = 1.0f; + _339 = 1.0f; + } + float _340 = TEXCOORD_2.w * 543.3099975585938f; + float _344 = frac(sin(_340 + TEXCOORD_2.z) * 493013.0f); + if (cb0_097x > 0.0f) { + _367 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _340) * 493013.0f) + 7.177000045776367f) - _344)) + _344); + _368 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _340) * 493013.0f) + 14.298999786376953f) - _344)) + _344); + } else { + _367 = _344; + _368 = _344; + } + if (cb0_100z > 0.0f) { + _390 = (((((_302 * _222) * _339) * cb0_100z) * ((sin((((TEXCOORD_3.y * 10.0f) + 10.0f) + (_344 * 0.0020000000949949026f)) + (View_2376 * 4.0f)) * 0.5f) + 0.5f)) + 1.0f); + } else { + _390 = 1.0f; + } + float _393 = (_301 * _221) * _338; + float _394 = _393 * cb0_100y; + if (cb0_100y > 0.0f) { + float _399 = View_2376 * 0.00016666666488163173f; + float _403 = frac(abs(_399)); + float _408 = ((TEXCOORD_3.y * 111000.0f) + 111000.0f) * select((_399 >= (-0.0f - _399)), _403, (-0.0f - _403)); + float _414 = (0.5f - frac(sin(dot(float2(_408, _408), float2(12.989800453186035f, 78.23300170898438f))) * 43758.546875f)) * 0.014999999664723873f; + _421 = (((_394 * 0.5f) * _414) + _135); + _422 = ((_414 * _394) + _136); + } else { + _421 = _135; + _422 = _136; + } + float4 _423 = t0.Sample(s0, float2(_421, _422)); + float _429 = saturate(cb0_099x); + float _431 = saturate(cb0_099y); + if (_429 > 0.0f) { + float _442 = saturate(((_423.x * 0.29899999499320984f) + (_423.y * 0.5870000123977661f)) + (_423.z * 0.11400000005960464f)); + float _448 = ((_442 * _442) * (saturate(1.0f - cb0_099z) * 2.0f)) * (3.0f - (_442 * 2.0f)); + float _455 = max(sqrt(((_423.x * _423.x) + (_423.y * _423.y)) + (_423.z * _423.z)), 0.014999999664723873f); + float _456 = _423.x / _455; + float _457 = _423.y / _455; + float _458 = _423.z / _455; + float _468 = log2(_448); + float _487 = ((_300 * _220) * _337) * _429; + _498 = (((((lerp(_456, 1.0f, 0.25f)) * (((_431 * 0.17000000178813934f) + 0.029999999329447746f) + _448)) - _423.x) * _487) + _423.x); + _499 = (((((((_431 * 0.18000000715255737f) + 0.05000000074505806f) + exp2(_468 * 0.8999999761581421f)) * (lerp(_457, 1.0f, 0.25f))) - _423.y) * _487) + _423.y); + _500 = (((((((_431 * 0.17999999225139618f) + 0.07999999821186066f) + exp2(_468 * 0.949999988079071f)) * (lerp(_458, 1.0f, 0.25f))) - _423.z) * _487) + _423.z); + } else { + _498 = _423.x; + _499 = _423.y; + _500 = _423.z; + } + float _502 = saturate(cb0_100x); + float _503 = _393 * _502; + if (_502 > 0.0f) { + float _514 = (sin(((_122 * 640.0f) + 640.0f) - (View_2376 * 10.0f)) * 0.5f) + 1.0f; + _528 = ((((_514 * _498) - _498) * _503) + _498); + _529 = ((((_514 * _499) - _499) * _503) + _499); + _530 = ((((_514 * _500) - _500) * _503) + _500); + } else { + _528 = _498; + _529 = _499; + _530 = _500; + } + float _539 = log2(max(dot(float3(_528, _529, _530), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _557 = t7.Sample(s7, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _539) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _561 = t8.Sample(s8, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _564 = select((_557.y < 0.0010000000474974513f), _561.x, (_557.x / _557.y)); + float _567 = log2(TEXCOORD_1.x); + float _569 = (_564 + _567) + ((_561.x - _564) * cb0_046x); + float _574 = _567 + _539; + float _576 = _569 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _577 = (_576 > 0.0f); + if (_577) { + _589 = max(0.0f, (_576 - cb0_047x)); + } else { + _589 = min(0.0f, (cb0_047y + _576)); + } + float4 _621 = t1.Sample(s1, float2(min(max(((cb0_068z * _421) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _422) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_621); + [branch] + if (!(cb0_085z == 0)) { + bool _650 = (cb0_086x != 0); + float4 _653 = t2.Sample(s2, float2(select(_650, _421, min(max(((cb0_076z * _421) + cb0_077x), cb0_075z), cb0_076x)), select(_650, _422, min(max(((cb0_076w * _422) + cb0_077y), cb0_075w), cb0_076y)))); + _661 = (_653.x + _621.x); + _662 = (_653.y + _621.y); + _663 = (_653.z + _621.z); + } else { + _661 = _621.x; + _662 = _621.y; + _663 = _621.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _667 = t3.Sample(s3, float2(_421, _422)); + _675 = (_667.x + _661); + _676 = (_667.y + _662); + _677 = (_667.z + _663); + } else { + _675 = _661; + _676 = _662; + _677 = _663; + } + float _678 = exp2((((_569 - _574) + ((_574 - _569) * cb0_045w)) - _589) + (_589 * select(_577, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _703 = TEXCOORD_1.z + -1.0f; + float _705 = TEXCOORD_1.w + -1.0f; + float _708 = ((_703 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _710 = ((_705 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _717 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_708, _710), float2(_708, _710))) + 1.0f); + float _718 = _717 * _717; + float _719 = cb0_091z + 1.0f; + float _747 = ((_703 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _749 = ((_705 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _756 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_747, _749), float2(_747, _749))) + 1.0f); + float _757 = _756 * _756; + float _758 = cb0_094z + 1.0f; + float _770 = (((_675 + ((_678 * _528) * cb0_087x)) * _390) * ((_718 * (_719 - cb0_090x)) + cb0_090x)) * ((_757 * (_758 - cb0_093x)) + cb0_093x); + float _773 = (((_676 + ((_678 * _529) * cb0_087y)) * _390) * ((_718 * (_719 - cb0_090y)) + cb0_090y)) * ((_757 * (_758 - cb0_093y)) + cb0_093y); + float _776 = (((_677 + ((_678 * _530) * cb0_087z)) * _390) * ((_718 * (_719 - cb0_090z)) + cb0_090z)) * ((_757 * (_758 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_770, _773, _776)); + [branch] + if (WUWA_TM_IS(1)) { + _809 = ((((_770 * 1.3600000143051147f) + 0.04699999839067459f) * _770) / ((((_770 * 0.9599999785423279f) + 0.5600000023841858f) * _770) + 0.14000000059604645f)); + _810 = ((((_773 * 1.3600000143051147f) + 0.04699999839067459f) * _773) / ((((_773 * 0.9599999785423279f) + 0.5600000023841858f) * _773) + 0.14000000059604645f)); + _811 = ((((_776 * 1.3600000143051147f) + 0.04699999839067459f) * _776) / ((((_776 * 0.9599999785423279f) + 0.5600000023841858f) * _776) + 0.14000000059604645f)); + } else { + _809 = _770; + _810 = _773; + _811 = _776; + } + [branch] + if (WUWA_TM_IS(2)) { + float _821 = 1.0049500465393066f - (0.16398000717163086f / (_809 + -0.19505000114440918f)); + float _822 = 1.0049500465393066f - (0.16398000717163086f / (_810 + -0.19505000114440918f)); + float _823 = 1.0049500465393066f - (0.16398000717163086f / (_811 + -0.19505000114440918f)); + _843 = (((_809 - _821) * select((_809 > 0.6000000238418579f), 0.0f, 1.0f)) + _821); + _844 = (((_810 - _822) * select((_810 > 0.6000000238418579f), 0.0f, 1.0f)) + _822); + _845 = (((_811 - _823) * select((_811 > 0.6000000238418579f), 0.0f, 1.0f)) + _823); + } else { + _843 = _809; + _844 = _810; + _845 = _811; + } + [branch] + if (WUWA_TM_IS(3)) { + float _851 = cb0_037y * _843; + float _852 = cb0_037y * _844; + float _853 = cb0_037y * _845; + float _856 = cb0_037z * cb0_037w; + float _866 = cb0_038y * cb0_038x; + float _877 = cb0_038z * cb0_038x; + float _884 = cb0_038y / cb0_038z; + _892 = (((((_856 + _851) * _843) + _866) / (_877 + ((_851 + cb0_037z) * _843))) - _884); + _893 = (((((_856 + _852) * _844) + _866) / (_877 + ((_852 + cb0_037z) * _844))) - _884); + _894 = (((((_856 + _853) * _845) + _866) / (_877 + ((_853 + cb0_037z) * _845))) - _884); + } else { + _892 = _843; + _893 = _844; + _894 = _845; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _904 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _909 = (_904 * _892); + _910 = (_904 * _893); + _911 = (_904 * _894); + } else { + _909 = _892; + _910 = _893; + _911 = _894; + } + } else { + _909 = _892; + _910 = _893; + _911 = _894; + } + APPLY_EXTENDED_TONEMAP(_909, _910, _911); + float _932 = (saturate((log2(_909 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _933 = (saturate((log2(_910 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _934 = (saturate((log2(_911 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _935 = t9.Sample(s9, float3(_932, _933, _934)); + [branch] + if (!(cb0_108w == 0)) { + float4 _959 = t6.Sample(s6, float2(min(max(((cb0_084z * _421) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _422) + cb0_085y), cb0_083w), cb0_084y))); + float _969 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_959.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _970 = t10.Sample(s10, float3(_932, _933, _934)); + _984 = (lerp(_970.x, _935.x, _969)); + _985 = (lerp(_970.y, _935.y, _969)); + _986 = (lerp(_970.z, _935.z, _969)); + } else { + _984 = _935.x; + _985 = _935.y; + _986 = _935.z; + } + float _987 = _986 * 1.0499999523162842f; + float _988 = _985 * 1.0499999523162842f; + float _989 = _984 * 1.0499999523162842f; + float _997 = ((_344 * 0.00390625f) + -0.001953125f) + _989; + float _998 = ((_367 * 0.00390625f) + -0.001953125f) + _988; + float _999 = ((_368 * 0.00390625f) + -0.001953125f) + _987; + [branch] + if (!(cb0_107w == 0)) { + float _1011 = (pow(_997, 0.012683313339948654f)); + float _1012 = (pow(_998, 0.012683313339948654f)); + float _1013 = (pow(_999, 0.012683313339948654f)); + float _1046 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1011 + -0.8359375f)) / (18.8515625f - (_1011 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1047 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1012 + -0.8359375f)) / (18.8515625f - (_1012 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _1048 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_1013 + -0.8359375f)) / (18.8515625f - (_1013 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _1074 = min((_1046 * 12.920000076293945f), ((exp2(log2(max(_1046, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1075 = min((_1047 * 12.920000076293945f), ((exp2(log2(max(_1047, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _1076 = min((_1048 * 12.920000076293945f), ((exp2(log2(max(_1048, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _1074 = _997; + _1075 = _998; + _1076 = _999; + } + SV_Target.x = _1074; + SV_Target.y = _1075; + SV_Target.z = _1076; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_989, _988, _987), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0x9A0D50E5.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0x9A0D50E5.ps_6_0.hlsl new file mode 100644 index 000000000..37f3dfb2b --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0x9A0D50E5.ps_6_0.hlsl @@ -0,0 +1,359 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096x : packoffset(c096.x); + float cb0_096y : packoffset(c096.y); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _156; + float _157; + float _251; + float _252; + float _317; + float _318; + float _319; + float _331; + float _332; + float _333; + float _473; + float _474; + float _475; + float _507; + float _508; + float _509; + float _556; + float _557; + float _558; + float _573; + float _574; + float _575; + float _648; + float _649; + float _650; + float _738; + float _739; + float _740; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float _94 = _78 - (((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x); + float _95 = _79 - (((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y); + float _105 = cb0_118z * cb0_117x; + float _106 = cb0_118z * cb0_117y; + bool _107 = (cb0_118x == 0.0f); + float _117 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _118 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _129 = float((int)(((int)(uint)((bool)(_117 > 0.0f))) - ((int)(uint)((bool)(_117 < 0.0f))))); + float _130 = float((int)(((int)(uint)((bool)(_118 > 0.0f))) - ((int)(uint)((bool)(_118 < 0.0f))))); + float _135 = saturate(abs(_117) - cb0_117z); + float _136 = saturate(abs(_118) - cb0_117z); + float _146 = _118 - ((_136 * _105) * _130); + float _148 = _118 - ((_136 * _106) * _130); + bool _149 = (cb0_118x > 0.0f); + if (_149) { + _156 = (_146 - (cb0_118w * 0.4000000059604645f)); + _157 = (_148 - (cb0_118w * 0.20000000298023224f)); + } else { + _156 = _146; + _157 = _148; + } + float4 _193 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _209 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _105, cb0_117x)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _156) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + float4 _223 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_117 - ((_135 * select(_107, _106, cb0_117y)) * _129))) + cb0_115x)) + cb0_049x) * cb0_048x) + _94), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _157) + cb0_115y)) + cb0_049y) * cb0_048y) + _95), cb0_053w), cb0_054y))); + if (_149) { + float _233 = saturate(((((_193.y * 0.5870000123977661f) - cb0_118y) + (_193.x * 0.29899999499320984f)) + (_193.z * 0.11400000005960464f)) * 10.0f); + float _237 = (_233 * _233) * (3.0f - (_233 * 2.0f)); + _251 = ((((_193.x - _209.x) + (_237 * (_209.x - _193.x))) * cb0_118x) + _209.x); + _252 = ((((_193.y - _223.y) + (_237 * (_223.y - _193.y))) * cb0_118x) + _223.y); + } else { + _251 = _209.x; + _252 = _223.y; + } + float4 _277 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_277); + [branch] + if (!(cb0_085z == 0)) { + bool _306 = (cb0_086x != 0); + float4 _309 = t2.Sample(s2, float2(select(_306, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_306, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _317 = (_309.x + _277.x); + _318 = (_309.y + _277.y); + _319 = (_309.z + _277.z); + } else { + _317 = _277.x; + _318 = _277.y; + _319 = _277.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _323 = t3.Sample(s3, float2(_78, _79)); + _331 = (_323.x + _317); + _332 = (_323.y + _318); + _333 = (_323.z + _319); + } else { + _331 = _317; + _332 = _318; + _333 = _319; + } + float _358 = TEXCOORD_1.z + -1.0f; + float _360 = TEXCOORD_1.w + -1.0f; + float _363 = ((_358 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _365 = ((_360 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _372 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_363, _365), float2(_363, _365))) + 1.0f); + float _373 = _372 * _372; + float _374 = cb0_091z + 1.0f; + float _402 = ((_358 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _404 = ((_360 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _411 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_402, _404), float2(_402, _404))) + 1.0f); + float _412 = _411 * _411; + float _413 = cb0_094z + 1.0f; + float _434 = ((((_373 * (_374 - cb0_090x)) + cb0_090x) * (_331 + ((_251 * TEXCOORD_1.x) * cb0_087x))) * ((_412 * (_413 - cb0_093x)) + cb0_093x)) * ((cb0_096x * _43) + cb0_096y); + float _437 = ((((_373 * (_374 - cb0_090y)) + cb0_090y) * (_332 + ((_252 * TEXCOORD_1.x) * cb0_087y))) * ((_412 * (_413 - cb0_093y)) + cb0_093y)) * ((cb0_096x * _67) + cb0_096y); + float _440 = ((((_373 * (_374 - cb0_090z)) + cb0_090z) * (_333 + ((_193.z * TEXCOORD_1.x) * cb0_087z))) * ((_412 * (_413 - cb0_093z)) + cb0_093z)) * ((cb0_096x * _68) + cb0_096y); + + CAPTURE_UNTONEMAPPED(float3(_434, _437, _440)); + [branch] + if (WUWA_TM_IS(1)) { + _473 = ((((_434 * 1.3600000143051147f) + 0.04699999839067459f) * _434) / ((((_434 * 0.9599999785423279f) + 0.5600000023841858f) * _434) + 0.14000000059604645f)); + _474 = ((((_437 * 1.3600000143051147f) + 0.04699999839067459f) * _437) / ((((_437 * 0.9599999785423279f) + 0.5600000023841858f) * _437) + 0.14000000059604645f)); + _475 = ((((_440 * 1.3600000143051147f) + 0.04699999839067459f) * _440) / ((((_440 * 0.9599999785423279f) + 0.5600000023841858f) * _440) + 0.14000000059604645f)); + } else { + _473 = _434; + _474 = _437; + _475 = _440; + } + [branch] + if (WUWA_TM_IS(2)) { + float _485 = 1.0049500465393066f - (0.16398000717163086f / (_473 + -0.19505000114440918f)); + float _486 = 1.0049500465393066f - (0.16398000717163086f / (_474 + -0.19505000114440918f)); + float _487 = 1.0049500465393066f - (0.16398000717163086f / (_475 + -0.19505000114440918f)); + _507 = (((_473 - _485) * select((_473 > 0.6000000238418579f), 0.0f, 1.0f)) + _485); + _508 = (((_474 - _486) * select((_474 > 0.6000000238418579f), 0.0f, 1.0f)) + _486); + _509 = (((_475 - _487) * select((_475 > 0.6000000238418579f), 0.0f, 1.0f)) + _487); + } else { + _507 = _473; + _508 = _474; + _509 = _475; + } + [branch] + if (WUWA_TM_IS(3)) { + float _515 = cb0_037y * _507; + float _516 = cb0_037y * _508; + float _517 = cb0_037y * _509; + float _520 = cb0_037z * cb0_037w; + float _530 = cb0_038y * cb0_038x; + float _541 = cb0_038z * cb0_038x; + float _548 = cb0_038y / cb0_038z; + _556 = (((((_520 + _515) * _507) + _530) / (_541 + ((_515 + cb0_037z) * _507))) - _548); + _557 = (((((_520 + _516) * _508) + _530) / (_541 + ((_516 + cb0_037z) * _508))) - _548); + _558 = (((((_520 + _517) * _509) + _530) / (_541 + ((_517 + cb0_037z) * _509))) - _548); + } else { + _556 = _507; + _557 = _508; + _558 = _509; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _568 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _573 = (_568 * _556); + _574 = (_568 * _557); + _575 = (_568 * _558); + } else { + _573 = _556; + _574 = _557; + _575 = _558; + } + } else { + _573 = _556; + _574 = _557; + _575 = _558; + } + APPLY_EXTENDED_TONEMAP(_573, _574, _575); + float _596 = (saturate((log2(_573 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _597 = (saturate((log2(_574 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _598 = (saturate((log2(_575 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _599 = t5.Sample(s5, float3(_596, _597, _598)); + [branch] + if (!(cb0_108w == 0)) { + float4 _623 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _633 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_623.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _634 = t6.Sample(s6, float3(_596, _597, _598)); + _648 = (lerp(_634.x, _599.x, _633)); + _649 = (lerp(_634.y, _599.y, _633)); + _650 = (lerp(_634.z, _599.z, _633)); + } else { + _648 = _599.x; + _649 = _599.y; + _650 = _599.z; + } + float _651 = _650 * 1.0499999523162842f; + float _652 = _649 * 1.0499999523162842f; + float _653 = _648 * 1.0499999523162842f; + float _661 = ((_43 * 0.00390625f) + -0.001953125f) + _653; + float _662 = ((_67 * 0.00390625f) + -0.001953125f) + _652; + float _663 = ((_68 * 0.00390625f) + -0.001953125f) + _651; + [branch] + if (!(cb0_107w == 0)) { + float _675 = (pow(_661, 0.012683313339948654f)); + float _676 = (pow(_662, 0.012683313339948654f)); + float _677 = (pow(_663, 0.012683313339948654f)); + float _710 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_675 + -0.8359375f)) / (18.8515625f - (_675 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _711 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_676 + -0.8359375f)) / (18.8515625f - (_676 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _712 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_677 + -0.8359375f)) / (18.8515625f - (_677 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _738 = min((_710 * 12.920000076293945f), ((exp2(log2(max(_710, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _739 = min((_711 * 12.920000076293945f), ((exp2(log2(max(_711, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _740 = min((_712 * 12.920000076293945f), ((exp2(log2(max(_712, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _738 = _661; + _739 = _662; + _740 = _663; + } + SV_Target.x = _738; + SV_Target.y = _739; + SV_Target.z = _740; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_653, _652, _651), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0xA7D8613D.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0xA7D8613D.ps_6_0.hlsl new file mode 100644 index 000000000..4bf516cbf --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0xA7D8613D.ps_6_0.hlsl @@ -0,0 +1,345 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _44 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _45 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _46 = TEXCOORD_2.w * 543.3099975585938f; + float _50 = frac(sin(_46 + TEXCOORD_2.z) * 493013.0f); + float _74; + float _75; + float _159; + float _231; + float _232; + float _233; + float _245; + float _246; + float _247; + float _376; + float _377; + float _378; + float _410; + float _411; + float _412; + float _459; + float _460; + float _461; + float _476; + float _477; + float _478; + float _551; + float _552; + float _553; + float _641; + float _642; + float _643; + if (cb0_097x > 0.0f) { + _74 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _46) * 493013.0f) + 7.177000045776367f) - _50)) + _50); + _75 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _46) * 493013.0f) + 14.298999786376953f) - _50)) + _50); + } else { + _74 = _50; + _75 = _50; + } + float _80 = cb0_096z * (1.0f - (_50 * _50)); + float _85 = (_80 * (TEXCOORD_2.x - _44)) + _44; + float _86 = (_80 * (TEXCOORD_2.y - _45)) + _45; + float4 _97 = t0.Sample(s0, float2(min(max(_85, cb0_053z), cb0_054x), min(max(_86, cb0_053w), cb0_054y))); + float _109 = log2(max(dot(float3(_97.x, _97.y, _97.z), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _127 = t5.Sample(s5, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _109) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _131 = t6.Sample(s6, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _134 = select((_127.y < 0.0010000000474974513f), _131.x, (_127.x / _127.y)); + float _137 = log2(TEXCOORD_1.x); + float _139 = (_134 + _137) + ((_131.x - _134) * cb0_046x); + float _144 = _137 + _109; + float _146 = _139 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _147 = (_146 > 0.0f); + if (_147) { + _159 = max(0.0f, (_146 - cb0_047x)); + } else { + _159 = min(0.0f, (cb0_047y + _146)); + } + float4 _191 = t1.Sample(s1, float2(min(max(((cb0_068z * _85) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _86) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_191); + [branch] + if (!(cb0_085z == 0)) { + bool _220 = (cb0_086x != 0); + float4 _223 = t2.Sample(s2, float2(select(_220, _85, min(max(((cb0_076z * _85) + cb0_077x), cb0_075z), cb0_076x)), select(_220, _86, min(max(((cb0_076w * _86) + cb0_077y), cb0_075w), cb0_076y)))); + _231 = (_223.x + _191.x); + _232 = (_223.y + _191.y); + _233 = (_223.z + _191.z); + } else { + _231 = _191.x; + _232 = _191.y; + _233 = _191.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _237 = t3.Sample(s3, float2(_85, _86)); + _245 = (_237.x + _231); + _246 = (_237.y + _232); + _247 = (_237.z + _233); + } else { + _245 = _231; + _246 = _232; + _247 = _233; + } + float _248 = exp2((((_139 - _144) + ((_144 - _139) * cb0_045w)) - _159) + (_159 * select(_147, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _273 = TEXCOORD_1.z + -1.0f; + float _275 = TEXCOORD_1.w + -1.0f; + float _278 = ((_273 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _280 = ((_275 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _287 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_278, _280), float2(_278, _280))) + 1.0f); + float _288 = _287 * _287; + float _289 = cb0_091z + 1.0f; + float _317 = ((_273 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _319 = ((_275 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _326 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_317, _319), float2(_317, _319))) + 1.0f); + float _327 = _326 * _326; + float _328 = cb0_094z + 1.0f; + float _339 = (((_288 * (_289 - cb0_090x)) + cb0_090x) * (_245 + ((_248 * _97.x) * cb0_087x))) * ((_327 * (_328 - cb0_093x)) + cb0_093x); + float _341 = (((_288 * (_289 - cb0_090y)) + cb0_090y) * (_246 + ((_248 * _97.y) * cb0_087y))) * ((_327 * (_328 - cb0_093y)) + cb0_093y); + float _343 = (((_288 * (_289 - cb0_090z)) + cb0_090z) * (_247 + ((_248 * _97.z) * cb0_087z))) * ((_327 * (_328 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_339, _341, _343)); + [branch] + if (WUWA_TM_IS(1)) { + _376 = ((((_339 * 1.3600000143051147f) + 0.04699999839067459f) * _339) / ((((_339 * 0.9599999785423279f) + 0.5600000023841858f) * _339) + 0.14000000059604645f)); + _377 = ((((_341 * 1.3600000143051147f) + 0.04699999839067459f) * _341) / ((((_341 * 0.9599999785423279f) + 0.5600000023841858f) * _341) + 0.14000000059604645f)); + _378 = ((((_343 * 1.3600000143051147f) + 0.04699999839067459f) * _343) / ((((_343 * 0.9599999785423279f) + 0.5600000023841858f) * _343) + 0.14000000059604645f)); + } else { + _376 = _339; + _377 = _341; + _378 = _343; + } + [branch] + if (WUWA_TM_IS(2)) { + float _388 = 1.0049500465393066f - (0.16398000717163086f / (_376 + -0.19505000114440918f)); + float _389 = 1.0049500465393066f - (0.16398000717163086f / (_377 + -0.19505000114440918f)); + float _390 = 1.0049500465393066f - (0.16398000717163086f / (_378 + -0.19505000114440918f)); + _410 = (((_376 - _388) * select((_376 > 0.6000000238418579f), 0.0f, 1.0f)) + _388); + _411 = (((_377 - _389) * select((_377 > 0.6000000238418579f), 0.0f, 1.0f)) + _389); + _412 = (((_378 - _390) * select((_378 > 0.6000000238418579f), 0.0f, 1.0f)) + _390); + } else { + _410 = _376; + _411 = _377; + _412 = _378; + } + [branch] + if (WUWA_TM_IS(3)) { + float _418 = cb0_037y * _410; + float _419 = cb0_037y * _411; + float _420 = cb0_037y * _412; + float _423 = cb0_037z * cb0_037w; + float _433 = cb0_038y * cb0_038x; + float _444 = cb0_038z * cb0_038x; + float _451 = cb0_038y / cb0_038z; + _459 = (((((_423 + _418) * _410) + _433) / (_444 + ((_418 + cb0_037z) * _410))) - _451); + _460 = (((((_423 + _419) * _411) + _433) / (_444 + ((_419 + cb0_037z) * _411))) - _451); + _461 = (((((_423 + _420) * _412) + _433) / (_444 + ((_420 + cb0_037z) * _412))) - _451); + } else { + _459 = _410; + _460 = _411; + _461 = _412; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _471 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _476 = (_471 * _459); + _477 = (_471 * _460); + _478 = (_471 * _461); + } else { + _476 = _459; + _477 = _460; + _478 = _461; + } + } else { + _476 = _459; + _477 = _460; + _478 = _461; + } + APPLY_EXTENDED_TONEMAP(_476, _477, _478); + float _499 = (saturate((log2(_476 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _500 = (saturate((log2(_477 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _501 = (saturate((log2(_478 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _502 = t7.Sample(s7, float3(_499, _500, _501)); + [branch] + if (!(cb0_108w == 0)) { + float4 _526 = t4.Sample(s4, float2(min(max(((cb0_084z * _85) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _86) + cb0_085y), cb0_083w), cb0_084y))); + float _536 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_526.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _537 = t8.Sample(s8, float3(_499, _500, _501)); + _551 = (lerp(_537.x, _502.x, _536)); + _552 = (lerp(_537.y, _502.y, _536)); + _553 = (lerp(_537.z, _502.z, _536)); + } else { + _551 = _502.x; + _552 = _502.y; + _553 = _502.z; + } + float _554 = _553 * 1.0499999523162842f; + float _555 = _552 * 1.0499999523162842f; + float _556 = _551 * 1.0499999523162842f; + float _564 = ((_50 * 0.00390625f) + -0.001953125f) + _556; + float _565 = ((_74 * 0.00390625f) + -0.001953125f) + _555; + float _566 = ((_75 * 0.00390625f) + -0.001953125f) + _554; + [branch] + if (!(cb0_107w == 0)) { + float _578 = (pow(_564, 0.012683313339948654f)); + float _579 = (pow(_565, 0.012683313339948654f)); + float _580 = (pow(_566, 0.012683313339948654f)); + float _613 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_578 + -0.8359375f)) / (18.8515625f - (_578 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _614 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_579 + -0.8359375f)) / (18.8515625f - (_579 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _615 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_580 + -0.8359375f)) / (18.8515625f - (_580 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _641 = min((_613 * 12.920000076293945f), ((exp2(log2(max(_613, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _642 = min((_614 * 12.920000076293945f), ((exp2(log2(max(_614, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _643 = min((_615 * 12.920000076293945f), ((exp2(log2(max(_615, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _641 = _564; + _642 = _565; + _643 = _566; + } + SV_Target.x = _641; + SV_Target.y = _642; + SV_Target.z = _643; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_556, _555, _554), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0xD92737B1.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0xD92737B1.ps_6_0.hlsl new file mode 100644 index 000000000..de4a2217c --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0xD92737B1.ps_6_0.hlsl @@ -0,0 +1,306 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _37 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _38 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _39 = TEXCOORD_2.w * 543.3099975585938f; + float _43 = frac(sin(_39 + TEXCOORD_2.z) * 493013.0f); + float _67; + float _68; + float _158; + float _159; + float _160; + float _172; + float _173; + float _174; + float _302; + float _303; + float _304; + float _336; + float _337; + float _338; + float _385; + float _386; + float _387; + float _402; + float _403; + float _404; + float _477; + float _478; + float _479; + float _567; + float _568; + float _569; + if (cb0_097x > 0.0f) { + _67 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _39) * 493013.0f) + 7.177000045776367f) - _43)) + _43); + _68 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _39) * 493013.0f) + 14.298999786376953f) - _43)) + _43); + } else { + _67 = _43; + _68 = _43; + } + float _73 = cb0_096z * (1.0f - (_43 * _43)); + float _78 = (_73 * (TEXCOORD_2.x - _37)) + _37; + float _79 = (_73 * (TEXCOORD_2.y - _38)) + _38; + float4 _90 = t0.Sample(s0, float2(min(max(_78, cb0_053z), cb0_054x), min(max(_79, cb0_053w), cb0_054y))); + float4 _118 = t1.Sample(s1, float2(min(max(((cb0_068z * _78) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _79) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_118); + [branch] + if (!(cb0_085z == 0)) { + bool _147 = (cb0_086x != 0); + float4 _150 = t2.Sample(s2, float2(select(_147, _78, min(max(((cb0_076z * _78) + cb0_077x), cb0_075z), cb0_076x)), select(_147, _79, min(max(((cb0_076w * _79) + cb0_077y), cb0_075w), cb0_076y)))); + _158 = (_150.x + _118.x); + _159 = (_150.y + _118.y); + _160 = (_150.z + _118.z); + } else { + _158 = _118.x; + _159 = _118.y; + _160 = _118.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _164 = t3.Sample(s3, float2(_78, _79)); + _172 = (_164.x + _158); + _173 = (_164.y + _159); + _174 = (_164.z + _160); + } else { + _172 = _158; + _173 = _159; + _174 = _160; + } + float _199 = TEXCOORD_1.z + -1.0f; + float _201 = TEXCOORD_1.w + -1.0f; + float _204 = ((_199 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _206 = ((_201 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _213 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_204, _206), float2(_204, _206))) + 1.0f); + float _214 = _213 * _213; + float _215 = cb0_091z + 1.0f; + float _243 = ((_199 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _245 = ((_201 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _252 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_243, _245), float2(_243, _245))) + 1.0f); + float _253 = _252 * _252; + float _254 = cb0_094z + 1.0f; + float _265 = (((_214 * (_215 - cb0_090x)) + cb0_090x) * (_172 + ((_90.x * TEXCOORD_1.x) * cb0_087x))) * ((_253 * (_254 - cb0_093x)) + cb0_093x); + float _267 = (((_214 * (_215 - cb0_090y)) + cb0_090y) * (_173 + ((_90.y * TEXCOORD_1.x) * cb0_087y))) * ((_253 * (_254 - cb0_093y)) + cb0_093y); + float _269 = (((_214 * (_215 - cb0_090z)) + cb0_090z) * (_174 + ((_90.z * TEXCOORD_1.x) * cb0_087z))) * ((_253 * (_254 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_265, _267, _269)); + [branch] + if (WUWA_TM_IS(1)) { + _302 = ((((_265 * 1.3600000143051147f) + 0.04699999839067459f) * _265) / ((((_265 * 0.9599999785423279f) + 0.5600000023841858f) * _265) + 0.14000000059604645f)); + _303 = ((((_267 * 1.3600000143051147f) + 0.04699999839067459f) * _267) / ((((_267 * 0.9599999785423279f) + 0.5600000023841858f) * _267) + 0.14000000059604645f)); + _304 = ((((_269 * 1.3600000143051147f) + 0.04699999839067459f) * _269) / ((((_269 * 0.9599999785423279f) + 0.5600000023841858f) * _269) + 0.14000000059604645f)); + } else { + _302 = _265; + _303 = _267; + _304 = _269; + } + [branch] + if (WUWA_TM_IS(2)) { + float _314 = 1.0049500465393066f - (0.16398000717163086f / (_302 + -0.19505000114440918f)); + float _315 = 1.0049500465393066f - (0.16398000717163086f / (_303 + -0.19505000114440918f)); + float _316 = 1.0049500465393066f - (0.16398000717163086f / (_304 + -0.19505000114440918f)); + _336 = (((_302 - _314) * select((_302 > 0.6000000238418579f), 0.0f, 1.0f)) + _314); + _337 = (((_303 - _315) * select((_303 > 0.6000000238418579f), 0.0f, 1.0f)) + _315); + _338 = (((_304 - _316) * select((_304 > 0.6000000238418579f), 0.0f, 1.0f)) + _316); + } else { + _336 = _302; + _337 = _303; + _338 = _304; + } + [branch] + if (WUWA_TM_IS(3)) { + float _344 = cb0_037y * _336; + float _345 = cb0_037y * _337; + float _346 = cb0_037y * _338; + float _349 = cb0_037z * cb0_037w; + float _359 = cb0_038y * cb0_038x; + float _370 = cb0_038z * cb0_038x; + float _377 = cb0_038y / cb0_038z; + _385 = (((((_349 + _344) * _336) + _359) / (_370 + ((_344 + cb0_037z) * _336))) - _377); + _386 = (((((_349 + _345) * _337) + _359) / (_370 + ((_345 + cb0_037z) * _337))) - _377); + _387 = (((((_349 + _346) * _338) + _359) / (_370 + ((_346 + cb0_037z) * _338))) - _377); + } else { + _385 = _336; + _386 = _337; + _387 = _338; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _397 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _402 = (_397 * _385); + _403 = (_397 * _386); + _404 = (_397 * _387); + } else { + _402 = _385; + _403 = _386; + _404 = _387; + } + } else { + _402 = _385; + _403 = _386; + _404 = _387; + } + APPLY_EXTENDED_TONEMAP(_402, _403, _404); + float _425 = (saturate((log2(_402 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _426 = (saturate((log2(_403 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _427 = (saturate((log2(_404 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _428 = t5.Sample(s5, float3(_425, _426, _427)); + [branch] + if (!(cb0_108w == 0)) { + float4 _452 = t4.Sample(s4, float2(min(max(((cb0_084z * _78) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _79) + cb0_085y), cb0_083w), cb0_084y))); + float _462 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_452.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _463 = t6.Sample(s6, float3(_425, _426, _427)); + _477 = (lerp(_463.x, _428.x, _462)); + _478 = (lerp(_463.y, _428.y, _462)); + _479 = (lerp(_463.z, _428.z, _462)); + } else { + _477 = _428.x; + _478 = _428.y; + _479 = _428.z; + } + float _480 = _479 * 1.0499999523162842f; + float _481 = _478 * 1.0499999523162842f; + float _482 = _477 * 1.0499999523162842f; + float _490 = ((_43 * 0.00390625f) + -0.001953125f) + _482; + float _491 = ((_67 * 0.00390625f) + -0.001953125f) + _481; + float _492 = ((_68 * 0.00390625f) + -0.001953125f) + _480; + [branch] + if (!(cb0_107w == 0)) { + float _504 = (pow(_490, 0.012683313339948654f)); + float _505 = (pow(_491, 0.012683313339948654f)); + float _506 = (pow(_492, 0.012683313339948654f)); + float _539 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_504 + -0.8359375f)) / (18.8515625f - (_504 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _540 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_505 + -0.8359375f)) / (18.8515625f - (_505 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _541 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_506 + -0.8359375f)) / (18.8515625f - (_506 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _567 = min((_539 * 12.920000076293945f), ((exp2(log2(max(_539, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _568 = min((_540 * 12.920000076293945f), ((exp2(log2(max(_540, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _569 = min((_541 * 12.920000076293945f), ((exp2(log2(max(_541, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _567 = _490; + _568 = _491; + _569 = _492; + } + SV_Target.x = _567; + SV_Target.y = _568; + SV_Target.z = _569; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_482, _481, _480), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/output/output_0xE11876A9.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/output/output_0xE11876A9.ps_6_0.hlsl new file mode 100644 index 000000000..752643dd7 --- /dev/null +++ b/src/games/wutheringwaves/3_2/output/output_0xE11876A9.ps_6_0.hlsl @@ -0,0 +1,396 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture3D t7 : register(t7); + +Texture3D t8 : register(t8); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_041z : packoffset(c041.z); + float cb0_041w : packoffset(c041.w); + float cb0_042x : packoffset(c042.x); + float cb0_043x : packoffset(c043.x); + float cb0_043y : packoffset(c043.y); + float cb0_043z : packoffset(c043.z); + float cb0_045y : packoffset(c045.y); + float cb0_045z : packoffset(c045.z); + float cb0_045w : packoffset(c045.w); + float cb0_046x : packoffset(c046.x); + float cb0_046y : packoffset(c046.y); + float cb0_046z : packoffset(c046.z); + float cb0_046w : packoffset(c046.w); + float cb0_047x : packoffset(c047.x); + float cb0_047y : packoffset(c047.y); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_053z : packoffset(c053.z); + float cb0_053w : packoffset(c053.w); + float cb0_054x : packoffset(c054.x); + float cb0_054y : packoffset(c054.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_096z : packoffset(c096.z); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _44 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _45 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _46 = TEXCOORD_2.w * 543.3099975585938f; + float _50 = frac(sin(_46 + TEXCOORD_2.z) * 493013.0f); + float _74; + float _75; + float _163; + float _164; + float _258; + float _259; + float _318; + float _390; + float _391; + float _392; + float _404; + float _405; + float _406; + float _535; + float _536; + float _537; + float _569; + float _570; + float _571; + float _618; + float _619; + float _620; + float _635; + float _636; + float _637; + float _710; + float _711; + float _712; + float _800; + float _801; + float _802; + if (cb0_097x > 0.0f) { + _74 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _46) * 493013.0f) + 7.177000045776367f) - _50)) + _50); + _75 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _46) * 493013.0f) + 14.298999786376953f) - _50)) + _50); + } else { + _74 = _50; + _75 = _50; + } + float _80 = cb0_096z * (1.0f - (_50 * _50)); + float _85 = (_80 * (TEXCOORD_2.x - _44)) + _44; + float _86 = (_80 * (TEXCOORD_2.y - _45)) + _45; + float _101 = _85 - (((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x); + float _102 = _86 - (((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y); + float _112 = cb0_118z * cb0_117x; + float _113 = cb0_118z * cb0_117y; + bool _114 = (cb0_118x == 0.0f); + float _124 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _125 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _136 = float((int)(((int)(uint)((bool)(_124 > 0.0f))) - ((int)(uint)((bool)(_124 < 0.0f))))); + float _137 = float((int)(((int)(uint)((bool)(_125 > 0.0f))) - ((int)(uint)((bool)(_125 < 0.0f))))); + float _142 = saturate(abs(_124) - cb0_117z); + float _143 = saturate(abs(_125) - cb0_117z); + float _153 = _125 - ((_143 * _112) * _137); + float _155 = _125 - ((_143 * _113) * _137); + bool _156 = (cb0_118x > 0.0f); + if (_156) { + _163 = (_153 - (cb0_118w * 0.4000000059604645f)); + _164 = (_155 - (cb0_118w * 0.20000000298023224f)); + } else { + _163 = _153; + _164 = _155; + } + float4 _200 = t0.Sample(s0, float2(min(max(_85, cb0_053z), cb0_054x), min(max(_86, cb0_053w), cb0_054y))); + float4 _216 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_124 - ((_142 * select(_114, _112, cb0_117x)) * _136))) + cb0_115x)) + cb0_049x) * cb0_048x) + _101), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _163) + cb0_115y)) + cb0_049y) * cb0_048y) + _102), cb0_053w), cb0_054y))); + float4 _230 = t0.Sample(s0, float2(min(max(((((cb0_048z * ((cb0_115z * (_124 - ((_142 * select(_114, _113, cb0_117y)) * _136))) + cb0_115x)) + cb0_049x) * cb0_048x) + _101), cb0_053z), cb0_054x), min(max(((((cb0_048w * ((cb0_115w * _164) + cb0_115y)) + cb0_049y) * cb0_048y) + _102), cb0_053w), cb0_054y))); + if (_156) { + float _240 = saturate(((((_200.y * 0.5870000123977661f) - cb0_118y) + (_200.x * 0.29899999499320984f)) + (_200.z * 0.11400000005960464f)) * 10.0f); + float _244 = (_240 * _240) * (3.0f - (_240 * 2.0f)); + _258 = ((((_200.x - _216.x) + (_244 * (_216.x - _200.x))) * cb0_118x) + _216.x); + _259 = ((((_200.y - _230.y) + (_244 * (_230.y - _200.y))) * cb0_118x) + _230.y); + } else { + _258 = _216.x; + _259 = _230.y; + } + float _268 = log2(max(dot(float3(_258, _259, _200.z), float3(cb0_043x, cb0_043y, cb0_043z)), cb0_042x)); + float4 _286 = t5.Sample(s5, float3((cb0_046z * TEXCOORD_4.x), (cb0_046w * TEXCOORD_4.y), ((((cb0_041z * _268) + cb0_041w) * 0.96875f) + 0.015625f))); + float4 _290 = t6.Sample(s6, float2(TEXCOORD_4.x, TEXCOORD_4.y)); + float _293 = select((_286.y < 0.0010000000474974513f), _290.x, (_286.x / _286.y)); + float _296 = log2(TEXCOORD_1.x); + float _298 = (_293 + _296) + ((_290.x - _293) * cb0_046x); + float _303 = _296 + _268; + float _305 = _298 - log2((TEXCOORD_1.y * 0.18000000715255737f) * cb0_046y); + bool _306 = (_305 > 0.0f); + if (_306) { + _318 = max(0.0f, (_305 - cb0_047x)); + } else { + _318 = min(0.0f, (cb0_047y + _305)); + } + float4 _350 = t1.Sample(s1, float2(min(max(((cb0_068z * _85) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _86) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_350); + [branch] + if (!(cb0_085z == 0)) { + bool _379 = (cb0_086x != 0); + float4 _382 = t2.Sample(s2, float2(select(_379, _85, min(max(((cb0_076z * _85) + cb0_077x), cb0_075z), cb0_076x)), select(_379, _86, min(max(((cb0_076w * _86) + cb0_077y), cb0_075w), cb0_076y)))); + _390 = (_382.x + _350.x); + _391 = (_382.y + _350.y); + _392 = (_382.z + _350.z); + } else { + _390 = _350.x; + _391 = _350.y; + _392 = _350.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _396 = t3.Sample(s3, float2(_85, _86)); + _404 = (_396.x + _390); + _405 = (_396.y + _391); + _406 = (_396.z + _392); + } else { + _404 = _390; + _405 = _391; + _406 = _392; + } + float _407 = exp2((((_298 - _303) + ((_303 - _298) * cb0_045w)) - _318) + (_318 * select(_306, cb0_045y, cb0_045z))) * TEXCOORD_1.x; + float _432 = TEXCOORD_1.z + -1.0f; + float _434 = TEXCOORD_1.w + -1.0f; + float _437 = ((_432 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _439 = ((_434 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _446 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_437, _439), float2(_437, _439))) + 1.0f); + float _447 = _446 * _446; + float _448 = cb0_091z + 1.0f; + float _476 = ((_432 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _478 = ((_434 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _485 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_476, _478), float2(_476, _478))) + 1.0f); + float _486 = _485 * _485; + float _487 = cb0_094z + 1.0f; + float _498 = (((_447 * (_448 - cb0_090x)) + cb0_090x) * (_404 + ((_407 * _258) * cb0_087x))) * ((_486 * (_487 - cb0_093x)) + cb0_093x); + float _500 = (((_447 * (_448 - cb0_090y)) + cb0_090y) * (_405 + ((_407 * _259) * cb0_087y))) * ((_486 * (_487 - cb0_093y)) + cb0_093y); + float _502 = (((_447 * (_448 - cb0_090z)) + cb0_090z) * (_406 + ((_407 * _200.z) * cb0_087z))) * ((_486 * (_487 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_498, _500, _502)); + [branch] + if (WUWA_TM_IS(1)) { + _535 = ((((_498 * 1.3600000143051147f) + 0.04699999839067459f) * _498) / ((((_498 * 0.9599999785423279f) + 0.5600000023841858f) * _498) + 0.14000000059604645f)); + _536 = ((((_500 * 1.3600000143051147f) + 0.04699999839067459f) * _500) / ((((_500 * 0.9599999785423279f) + 0.5600000023841858f) * _500) + 0.14000000059604645f)); + _537 = ((((_502 * 1.3600000143051147f) + 0.04699999839067459f) * _502) / ((((_502 * 0.9599999785423279f) + 0.5600000023841858f) * _502) + 0.14000000059604645f)); + } else { + _535 = _498; + _536 = _500; + _537 = _502; + } + [branch] + if (WUWA_TM_IS(2)) { + float _547 = 1.0049500465393066f - (0.16398000717163086f / (_535 + -0.19505000114440918f)); + float _548 = 1.0049500465393066f - (0.16398000717163086f / (_536 + -0.19505000114440918f)); + float _549 = 1.0049500465393066f - (0.16398000717163086f / (_537 + -0.19505000114440918f)); + _569 = (((_535 - _547) * select((_535 > 0.6000000238418579f), 0.0f, 1.0f)) + _547); + _570 = (((_536 - _548) * select((_536 > 0.6000000238418579f), 0.0f, 1.0f)) + _548); + _571 = (((_537 - _549) * select((_537 > 0.6000000238418579f), 0.0f, 1.0f)) + _549); + } else { + _569 = _535; + _570 = _536; + _571 = _537; + } + [branch] + if (WUWA_TM_IS(3)) { + float _577 = cb0_037y * _569; + float _578 = cb0_037y * _570; + float _579 = cb0_037y * _571; + float _582 = cb0_037z * cb0_037w; + float _592 = cb0_038y * cb0_038x; + float _603 = cb0_038z * cb0_038x; + float _610 = cb0_038y / cb0_038z; + _618 = (((((_582 + _577) * _569) + _592) / (_603 + ((_577 + cb0_037z) * _569))) - _610); + _619 = (((((_582 + _578) * _570) + _592) / (_603 + ((_578 + cb0_037z) * _570))) - _610); + _620 = (((((_582 + _579) * _571) + _592) / (_603 + ((_579 + cb0_037z) * _571))) - _610); + } else { + _618 = _569; + _619 = _570; + _620 = _571; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _630 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _635 = (_630 * _618); + _636 = (_630 * _619); + _637 = (_630 * _620); + } else { + _635 = _618; + _636 = _619; + _637 = _620; + } + } else { + _635 = _618; + _636 = _619; + _637 = _620; + } + APPLY_EXTENDED_TONEMAP(_635, _636, _637); + float _658 = (saturate((log2(_635 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _659 = (saturate((log2(_636 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _660 = (saturate((log2(_637 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float4 _661 = t7.Sample(s7, float3(_658, _659, _660)); + [branch] + if (!(cb0_108w == 0)) { + float4 _685 = t4.Sample(s4, float2(min(max(((cb0_084z * _85) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _86) + cb0_085y), cb0_083w), cb0_084y))); + float _695 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_685.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _696 = t8.Sample(s8, float3(_658, _659, _660)); + _710 = (lerp(_696.x, _661.x, _695)); + _711 = (lerp(_696.y, _661.y, _695)); + _712 = (lerp(_696.z, _661.z, _695)); + } else { + _710 = _661.x; + _711 = _661.y; + _712 = _661.z; + } + float _713 = _712 * 1.0499999523162842f; + float _714 = _711 * 1.0499999523162842f; + float _715 = _710 * 1.0499999523162842f; + float _723 = ((_50 * 0.00390625f) + -0.001953125f) + _715; + float _724 = ((_74 * 0.00390625f) + -0.001953125f) + _714; + float _725 = ((_75 * 0.00390625f) + -0.001953125f) + _713; + [branch] + if (!(cb0_107w == 0)) { + float _737 = (pow(_723, 0.012683313339948654f)); + float _738 = (pow(_724, 0.012683313339948654f)); + float _739 = (pow(_725, 0.012683313339948654f)); + float _772 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_737 + -0.8359375f)) / (18.8515625f - (_737 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _773 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_738 + -0.8359375f)) / (18.8515625f - (_738 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _774 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_739 + -0.8359375f)) / (18.8515625f - (_739 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _800 = min((_772 * 12.920000076293945f), ((exp2(log2(max(_772, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _801 = min((_773 * 12.920000076293945f), ((exp2(log2(max(_773, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _802 = min((_774 * 12.920000076293945f), ((exp2(log2(max(_774, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _800 = _723; + _801 = _724; + _802 = _725; + } + SV_Target.x = _800; + SV_Target.y = _801; + SV_Target.z = _802; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_715, _714, _713), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/test/0x30B550C9.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/test/0x30B550C9.ps_6_0.hlsl new file mode 100644 index 000000000..402ee458f --- /dev/null +++ b/src/games/wutheringwaves/3_2/test/0x30B550C9.ps_6_0.hlsl @@ -0,0 +1,1364 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + int NiagaraMeshVF_000 : packoffset(c000.x); + float NiagaraMeshVF_004 : packoffset(c000.y); + float NiagaraMeshVF_008 : packoffset(c000.z); + float NiagaraMeshVF_012 : packoffset(c000.w); + float3 NiagaraMeshVF_016 : packoffset(c001.x); + float NiagaraMeshVF_028 : packoffset(c001.w); + float4 NiagaraMeshVF_032 : packoffset(c002.x); + int NiagaraMeshVF_048 : packoffset(c003.x); + int NiagaraMeshVF_052 : packoffset(c003.y); + int NiagaraMeshVF_056 : packoffset(c003.z); + int NiagaraMeshVF_060 : packoffset(c003.w); + float NiagaraMeshVF_064 : packoffset(c004.x); + int NiagaraMeshVF_068 : packoffset(c004.y); + int NiagaraMeshVF_072 : packoffset(c004.z); + int NiagaraMeshVF_076 : packoffset(c004.w); + int NiagaraMeshVF_080 : packoffset(c005.x); + int NiagaraMeshVF_084 : packoffset(c005.y); + int NiagaraMeshVF_088 : packoffset(c005.z); + int NiagaraMeshVF_092 : packoffset(c005.w); + int NiagaraMeshVF_096 : packoffset(c006.x); + int NiagaraMeshVF_100 : packoffset(c006.y); + int NiagaraMeshVF_104 : packoffset(c006.z); + int NiagaraMeshVF_108 : packoffset(c006.w); + int NiagaraMeshVF_112 : packoffset(c007.x); + int NiagaraMeshVF_116 : packoffset(c007.y); + int NiagaraMeshVF_120 : packoffset(c007.z); + int NiagaraMeshVF_124 : packoffset(c007.w); + int NiagaraMeshVF_128 : packoffset(c008.x); + int NiagaraMeshVF_132 : packoffset(c008.y); + int NiagaraMeshVF_136 : packoffset(c008.z); + float NiagaraMeshVF_140 : packoffset(c008.w); + float4 NiagaraMeshVF_144 : packoffset(c009.x); + float3 NiagaraMeshVF_160 : packoffset(c010.x); + float NiagaraMeshVF_172 : packoffset(c010.w); + float4 NiagaraMeshVF_176 : packoffset(c011.x); + float4 NiagaraMeshVF_192 : packoffset(c012.x); + float3 NiagaraMeshVF_208 : packoffset(c013.x); + float NiagaraMeshVF_220 : packoffset(c013.w); + float4 NiagaraMeshVF_224 : packoffset(c014.x); + float4 NiagaraMeshVF_240 : packoffset(c015.x); + float4 NiagaraMeshVF_256 : packoffset(c016.x); + float4 NiagaraMeshVF_272 : packoffset(c017.x); + float NiagaraMeshVF_288 : packoffset(c018.x); + float NiagaraMeshVF_292 : packoffset(c018.y); + float NiagaraMeshVF_296 : packoffset(c018.z); + float NiagaraMeshVF_300 : packoffset(c018.w); + float NiagaraMeshVF_304 : packoffset(c019.x); + float NiagaraMeshVF_308 : packoffset(c019.y); + float NiagaraMeshVF_312 : packoffset(c019.z); + float NiagaraMeshVF_316 : packoffset(c019.w); + float3 NiagaraMeshVF_320 : packoffset(c020.x); + float NiagaraMeshVF_332 : packoffset(c020.w); + int NiagaraMeshVF_336 : packoffset(c021.x); + float NiagaraMeshVF_340 : packoffset(c021.y); + float NiagaraMeshVF_344 : packoffset(c021.z); + float NiagaraMeshVF_348 : packoffset(c021.w); + float3 NiagaraMeshVF_352 : packoffset(c022.x); + int NiagaraMeshVF_364 : packoffset(c022.w); + int NiagaraMeshVF_368 : packoffset(c023.x); + float NiagaraMeshVF_372 : packoffset(c023.y); + int NiagaraMeshVF_376 : packoffset(c023.z); +}; + +cbuffer cb4 : register(b4) { + float4 Material_000[43] : packoffset(c000.x); + float4 Material_688[14] : packoffset(c043.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 TEXCOORD : TEXCOORD, + nointerpolation float4 COLOR_1 : COLOR1, + nointerpolation float4 COLOR_2 : COLOR2, + nointerpolation float4 PARTICLE_VELOCITY : PARTICLE_VELOCITY, + nointerpolation float NIAGARA_LOCAL_TIME : NIAGARA_LOCAL_TIME, + nointerpolation uint NIAGARA_EFFECT_TYPE : NIAGARA_EFFECT_TYPE, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _68 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _72 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _68) - View_1120.x; + float _73 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _68) - View_1120.y; + float _74 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _68) - View_1120.z; + float _75 = TEXCOORD_9.x - View_1120.x; + float _76 = TEXCOORD_9.y - View_1120.y; + float _77 = TEXCOORD_9.z - View_1120.z; + float _80 = TEXCOORD.w - TEXCOORD.x; + float _81 = TEXCOORD.z - TEXCOORD.y; + float _84 = ((Material_688[0].z) * _80) + TEXCOORD.x; + float _85 = ((Material_688[0].z) * _81) + TEXCOORD.y; + float _94 = (SV_Position.x - View_2144.x) * View_2160.z; + float _95 = (SV_Position.y - View_2144.y) * View_2160.w; + float _102 = (_84 + -0.5f) + ((_94 - _84) * (Material_688[0].w)); + float _104 = (_85 + -0.5f) + ((_95 - _85) * (Material_688[0].w)); + float _123 = NIAGARA_LOCAL_TIME * 0.00027777778450399637f; + float _127 = frac(abs(_123)); + float _130 = select((_123 >= (-0.0f - _123)), _127, (-0.0f - _127)) * 3600.0f; + float _135 = ((((Material_688[4].z) - _130) * (Material_688[4].y)) + _130) * (Material_688[4].w); + bool _137 = ((NiagaraMeshVF_068 & 1) != 0); + float _143 = (_135 + select(_137, COLOR_2.x, 0.0f)) - (_135 * (Material_688[5].x)); + float _157 = (((Material_000[14].x) + ((Material_000[12].x) * (dot(float2(_102, _104), float2((Material_000[6].x), (Material_000[6].y))) + 0.5f))) + (Material_000[16].x)) + (_143 * (Material_000[13].x)); + float _160 = (((Material_000[14].y) + ((Material_000[12].y) * (dot(float2(_102, _104), float2((Material_000[7].x), (Material_000[7].y))) + 0.5f))) + (Material_000[16].y)) + (_143 * (Material_000[13].y)); + float4 _176 = t0.SampleBias(s0, float2(((_157 + (Material_000[17].x)) + ((saturate(_157) - _157) * (Material_688[5].x))), ((_160 + (Material_000[17].y)) + ((saturate(_160) - _160) * (Material_688[5].x)))), View_2388, int2(0, 0)); + float _186 = dot(float4(_176.x, _176.y, _176.z, _176.w), float4((Material_000[19].x), (Material_000[19].y), (Material_000[19].z), (Material_000[19].w))); + float _195 = ((Material_688[6].x) * (_186 - _176.x)) + _176.x; + float _196 = ((Material_688[6].x) * (_186 - _176.y)) + _176.y; + float _197 = ((Material_688[6].x) * (_186 - _176.z)) + _176.z; + float _215 = (Material_688[6].z) * select((_195 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_195) * (Material_688[6].y))); + float _216 = (Material_688[6].z) * select((_196 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_196) * (Material_688[6].y))); + float _217 = (Material_688[6].z) * select((_197 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_197) * (Material_688[6].y))); + float _246 = ((Material_000[22].x) * COLOR_1.x) * ((((Material_688[7].y) + _215) + ((((Material_688[6].w) * _195) - _215) * (Material_688[7].x))) + (Material_688[7].z)); + float _248 = ((Material_000[22].y) * COLOR_1.y) * ((((Material_688[7].y) + _216) + ((((Material_688[6].w) * _196) - _216) * (Material_688[7].x))) + (Material_688[7].z)); + float _250 = ((Material_000[22].z) * COLOR_1.z) * ((((Material_688[7].y) + _217) + ((((Material_688[6].w) * _197) - _217) * (Material_688[7].x))) + (Material_688[7].z)); + float _260 = _94 - (Primitive_432[0].w); + float _261 = (1.0f - _95) - (Primitive_432[1].x); + float _273 = ((Material_688[8].z) * _80) + TEXCOORD.x; + float _274 = ((Material_688[8].z) * _81) + TEXCOORD.y; + float _281 = (_273 + -0.5f) + ((_94 - _273) * (Material_688[8].w)); + float _283 = (_274 + -0.5f) + ((_95 - _274) * (Material_688[8].w)); + float _304 = (_135 + select(_137, COLOR_2.y, 0.0f)) - (_135 * (Material_688[12].y)); + float _318 = (((Material_000[36].x) + ((Material_000[34].x) * (dot(float2(_281, _283), float2((Material_000[28].x), (Material_000[28].y))) + 0.5f))) + (_304 * (Material_000[35].x))) + (Material_000[38].x); + float _321 = (((Material_000[36].y) + ((Material_000[34].y) * (dot(float2(_281, _283), float2((Material_000[29].x), (Material_000[29].y))) + 0.5f))) + (_304 * (Material_000[35].y))) + (Material_000[38].y); + float4 _336 = t1.SampleLevel(s1, float2((((Material_000[39].x) + _318) + ((saturate(_318) - _318) * (Material_688[12].y))), (((Material_000[39].y) + _321) + ((saturate(_321) - _321) * (Material_688[12].y)))), (View_2388 + -1.0f)); + float _346 = dot(float4(_336.x, _336.y, _336.z, _336.w), float4((Material_000[41].x), (Material_000[41].y), (Material_000[41].z), (Material_000[41].w))); + float _357 = (((dot(float4(_176.x, _176.y, _176.z, _176.w), float4((Material_000[24].x), (Material_000[24].y), (Material_000[24].z), (Material_000[24].w))) * COLOR_1.w) * (Material_688[7].w)) * (Material_688[13].x)) * (((Material_688[12].w) * ((_346 * -2.0f) + 1.0f)) + _346); + float _443; + float _444; + float _445; + float _520; + float _521; + float _522; + float _523; + float _558; + float _559; + float _560; + float _617; + float _618; + float _619; + float _670; + float _671; + float _672; + float _762; + float _763; + float _764; + if ((Primitive_432[0].x) > 0.5f) { + _443 = max(((exp2(log2(max(_246, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _444 = max(((exp2(log2(max(_248, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _445 = max(((exp2(log2(max(_250, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _443 = _246; + _444 = _248; + _445 = _250; + } + float _464 = (((Primitive_432[7].w) * ((Primitive_432[6].w) + -1.0f)) + 1.0f) * _443; + float _465 = (((Primitive_432[7].w) * ((Primitive_432[7].x) + -1.0f)) + 1.0f) * _444; + float _466 = (((Primitive_432[7].w) * ((Primitive_432[7].y) + -1.0f)) + 1.0f) * _445; + float _482 = saturate((((Primitive_432[7].w) * ((Primitive_432[7].z) + -1.0f)) + 1.0f) * select(((bool)((Primitive_432[8].y) >= 0.5f) && (bool)(abs((Primitive_432[8].y) + -0.5f) > 9.999999747378752e-06f)), select(((bool)(_261 > (Primitive_432[1].z)) || ((bool)((bool)(_260 > (Primitive_432[1].y)) || ((bool)((bool)(_260 < (-0.0f - (Primitive_432[1].y))) || (bool)(_261 < (-0.0f - (Primitive_432[1].z)))))))), 0.0f, _357), select(((Primitive_432[0].y) > 0.5f), (((1.0f - saturate((abs((((((Primitive_432[3].w) * _75) - (Primitive_432[0].w)) + (Primitive_432[4].z)) + ((Primitive_432[4].w) * _76)) + ((Primitive_432[5].w) * _77)) - (Primitive_432[1].y)) / (Primitive_432[1].w))) * _357) * (1.0f - saturate((abs((((((Primitive_432[4].x) * _75) - (Primitive_432[1].x)) + ((Primitive_432[5].x) * _76)) + (Primitive_432[5].z)) + ((Primitive_432[6].x) * _77)) - (Primitive_432[1].z)) / (Primitive_432[2].x)))), _357))); + float _483 = max(((((Material_000[42].x) - _464) * (Material_688[13].y)) + _464), 0.0f); + float _484 = max(((((Material_000[42].y) - _465) * (Material_688[13].y)) + _465), 0.0f); + float _485 = max(((((Material_000[42].z) - _466) * (Material_688[13].y)) + _466), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_74 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_72 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_73 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _517 = float((bool)(bool)(frac(dot(float3(_72, _73, _74), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _520 = 1.0f; + _521 = (1.0f - _517); + _522 = 1.0f; + _523 = _517; + } else { + _520 = _482; + _521 = _483; + _522 = _484; + _523 = _485; + } + } else { + _520 = _482; + _521 = _483; + _522 = _484; + _523 = _485; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _547 = 1.0f / TranslucentBasePass_4356; + _558 = exp2(log2(1.0f - exp2((_521 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _547); + _559 = exp2(log2(1.0f - exp2((_522 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _547); + _560 = exp2(log2(1.0f - exp2((_523 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _547); + } else { + _558 = _521; + _559 = _522; + _560 = _523; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _564 = TranslucentBasePass_4372 * _558; + float _565 = TranslucentBasePass_4372 * _559; + float _566 = TranslucentBasePass_4372 * _560; + float _568 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _569 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _606 = 1.0f / TranslucentBasePass_4356; + _617 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_568 * _564) + 0.04699999839067459f) * _564) / ((((_569 * _564) + 0.5600000023841858f) * _564) + 0.14000000059604645f)))) * _606); + _618 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_568 * _565) + 0.04699999839067459f) * _565) / ((((_569 * _565) + 0.5600000023841858f) * _565) + 0.14000000059604645f)))) * _606); + _619 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_568 * _566) + 0.04699999839067459f) * _566) / ((((_569 * _566) + 0.5600000023841858f) * _566) + 0.14000000059604645f)))) * _606); + } else { + _617 = _558; + _618 = _559; + _619 = _560; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _624 = TranslucentBasePass_4384 * _617; + float _625 = TranslucentBasePass_4384 * _618; + float _626 = TranslucentBasePass_4384 * _619; + float _632 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _636 = (_632 / (_624 + -0.19505000114440918f)) + 1.0049500465393066f; + float _637 = (_632 / (_625 + -0.19505000114440918f)) + 1.0049500465393066f; + float _638 = (_632 / (_626 + -0.19505000114440918f)) + 1.0049500465393066f; + float _659 = 1.0f / TranslucentBasePass_4356; + _670 = exp2(log2(saturate(((_624 - _636) * select((TranslucentBasePass_4388 < _624), 0.0f, 1.0f)) + _636)) * _659); + _671 = exp2(log2(saturate(((_625 - _637) * select((TranslucentBasePass_4388 < _625), 0.0f, 1.0f)) + _637)) * _659); + _672 = exp2(log2(saturate(((_626 - _638) * select((TranslucentBasePass_4388 < _626), 0.0f, 1.0f)) + _638)) * _659); + } else { + _670 = _617; + _671 = _618; + _672 = _619; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _677 = TranslucentBasePass_4396 * _670; + float _678 = TranslucentBasePass_4396 * _671; + float _679 = TranslucentBasePass_4396 * _672; + float _714 = exp2(log2(abs(_677)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_677 > 0.0f))) - ((int)(uint)((bool)(_677 < 0.0f))))); + float _715 = exp2(log2(abs(_678)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_678 > 0.0f))) - ((int)(uint)((bool)(_678 < 0.0f))))); + float _716 = exp2(log2(abs(_679)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_679 > 0.0f))) - ((int)(uint)((bool)(_679 < 0.0f))))); + float _717 = TranslucentBasePass_4400 * 5.340000152587891f; + float _718 = _714 * _717; + float _719 = _715 * _717; + float _720 = _716 * _717; + float _742 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _751 = 1.0f / TranslucentBasePass_4356; + _762 = exp2(log2(saturate(_742 + ((((_718 + 2.609099864959717f) * _714) + 0.0013464000076055527f) / (((_718 + 1.1699999570846558f) * _714) + 3.0624001026153564f)))) * _751); + _763 = exp2(log2(saturate(_742 + ((((_719 + 2.609099864959717f) * _715) + 0.0013464000076055527f) / (((_719 + 1.1699999570846558f) * _715) + 3.0624001026153564f)))) * _751); + _764 = exp2(log2(saturate(_742 + ((((_720 + 2.609099864959717f) * _716) + 0.0013464000076055527f) / (((_720 + 1.1699999570846558f) * _716) + 3.0624001026153564f)))) * _751); + } else { + _762 = _670; + _763 = _671; + _764 = _672; + } + } while (false); + } while (false); + } while (false); + } else { + _762 = _521; + _763 = _522; + _764 = _523; + } + SV_Target.x = (-0.0f - min((-0.0f - _762), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _763), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _764), 0.0f)); + SV_Target.w = _520; + SV_Target.w *= HUD_OPACITY; + + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/test/0x5888D332.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/test/0x5888D332.ps_6_0.hlsl new file mode 100644 index 000000000..84467c78f --- /dev/null +++ b/src/games/wutheringwaves/3_2/test/0x5888D332.ps_6_0.hlsl @@ -0,0 +1,361 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture3D t5 : register(t5); + +Texture3D t6 : register(t6); + +cbuffer cb0 : register(b0) { + float cb0_037y : packoffset(c037.y); + float cb0_037z : packoffset(c037.z); + float cb0_037w : packoffset(c037.w); + float cb0_038x : packoffset(c038.x); + float cb0_038y : packoffset(c038.y); + float cb0_038z : packoffset(c038.z); + float cb0_048x : packoffset(c048.x); + float cb0_048y : packoffset(c048.y); + float cb0_048z : packoffset(c048.z); + float cb0_048w : packoffset(c048.w); + float cb0_049x : packoffset(c049.x); + float cb0_049y : packoffset(c049.y); + float cb0_060z : packoffset(c060.z); + float cb0_060w : packoffset(c060.w); + float cb0_061x : packoffset(c061.x); + float cb0_061y : packoffset(c061.y); + float cb0_068z : packoffset(c068.z); + float cb0_068w : packoffset(c068.w); + float cb0_069x : packoffset(c069.x); + float cb0_069y : packoffset(c069.y); + float cb0_075z : packoffset(c075.z); + float cb0_075w : packoffset(c075.w); + float cb0_076x : packoffset(c076.x); + float cb0_076y : packoffset(c076.y); + float cb0_076z : packoffset(c076.z); + float cb0_076w : packoffset(c076.w); + float cb0_077x : packoffset(c077.x); + float cb0_077y : packoffset(c077.y); + float cb0_083z : packoffset(c083.z); + float cb0_083w : packoffset(c083.w); + float cb0_084x : packoffset(c084.x); + float cb0_084y : packoffset(c084.y); + float cb0_084z : packoffset(c084.z); + float cb0_084w : packoffset(c084.w); + float cb0_085x : packoffset(c085.x); + float cb0_085y : packoffset(c085.y); + int cb0_085z : packoffset(c085.z); + int cb0_085w : packoffset(c085.w); + int cb0_086x : packoffset(c086.x); + float cb0_087x : packoffset(c087.x); + float cb0_087y : packoffset(c087.y); + float cb0_087z : packoffset(c087.z); + float cb0_089x : packoffset(c089.x); + float cb0_089z : packoffset(c089.z); + float cb0_089w : packoffset(c089.w); + float cb0_090x : packoffset(c090.x); + float cb0_090y : packoffset(c090.y); + float cb0_090z : packoffset(c090.z); + float cb0_090w : packoffset(c090.w); + float cb0_091x : packoffset(c091.x); + float cb0_091y : packoffset(c091.y); + float cb0_091z : packoffset(c091.z); + float cb0_092x : packoffset(c092.x); + float cb0_092z : packoffset(c092.z); + float cb0_092w : packoffset(c092.w); + float cb0_093x : packoffset(c093.x); + float cb0_093y : packoffset(c093.y); + float cb0_093z : packoffset(c093.z); + float cb0_093w : packoffset(c093.w); + float cb0_094x : packoffset(c094.x); + float cb0_094y : packoffset(c094.y); + float cb0_094z : packoffset(c094.z); + float cb0_094w : packoffset(c094.w); + float cb0_095x : packoffset(c095.x); + float cb0_095y : packoffset(c095.y); + float cb0_095z : packoffset(c095.z); + float cb0_095w : packoffset(c095.w); + float cb0_096x : packoffset(c096.x); + float cb0_096y : packoffset(c096.y); + float cb0_096z : packoffset(c096.z); + float cb0_096w : packoffset(c096.w); + float cb0_097x : packoffset(c097.x); + int cb0_106w : packoffset(c106.w); + float cb0_107x : packoffset(c107.x); + float cb0_107z : packoffset(c107.z); + int cb0_107w : packoffset(c107.w); + int cb0_108x : packoffset(c108.x); + int cb0_108y : packoffset(c108.y); + int cb0_108z : packoffset(c108.z); + int cb0_108w : packoffset(c108.w); + float cb0_114x : packoffset(c114.x); + float cb0_114y : packoffset(c114.y); + float cb0_114z : packoffset(c114.z); + float cb0_114w : packoffset(c114.w); + float cb0_115x : packoffset(c115.x); + float cb0_115y : packoffset(c115.y); + float cb0_115z : packoffset(c115.z); + float cb0_115w : packoffset(c115.w); + float cb0_117x : packoffset(c117.x); + float cb0_117y : packoffset(c117.y); + float cb0_117z : packoffset(c117.z); + float cb0_118x : packoffset(c118.x); + float cb0_118y : packoffset(c118.y); + float cb0_118z : packoffset(c118.z); + float cb0_118w : packoffset(c118.w); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +float4 main( + noperspective float2 TEXCOORD : TEXCOORD, + noperspective float2 TEXCOORD_3 : TEXCOORD3, + noperspective float4 TEXCOORD_1 : TEXCOORD1, + noperspective float4 TEXCOORD_2 : TEXCOORD2, + noperspective float2 TEXCOORD_4 : TEXCOORD4, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _35 = ((cb0_048z * TEXCOORD_3.x) + cb0_049x) * cb0_048x; + float _36 = ((cb0_048w * TEXCOORD_3.y) + cb0_049y) * cb0_048y; + float _37 = TEXCOORD_2.w * 543.3099975585938f; + float _41 = frac(sin(_37 + TEXCOORD_2.z) * 493013.0f); + float _65; + float _66; + float _127; + float _128; + float _196; + float _197; + float _262; + float _263; + float _264; + float _276; + float _277; + float _278; + float _406; + float _407; + float _408; + float _440; + float _441; + float _442; + float _489; + float _490; + float _491; + float _506; + float _507; + float _508; + float _581; + float _582; + float _583; + float _671; + float _672; + float _673; + if (cb0_097x > 0.0f) { + _65 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 33.9900016784668f) + _37) * 493013.0f) + 7.177000045776367f) - _41)) + _41); + _66 = ((cb0_097x * (frac((sin((TEXCOORD_2.z + 66.98999786376953f) + _37) * 493013.0f) + 14.298999786376953f) - _41)) + _41); + } else { + _65 = _41; + _66 = _41; + } + float _76 = cb0_118z * cb0_117x; + float _77 = cb0_118z * cb0_117y; + bool _78 = (cb0_118x == 0.0f); + float _88 = (cb0_114z * TEXCOORD_3.x) + cb0_114x; + float _89 = (cb0_114w * TEXCOORD_3.y) + cb0_114y; + float _100 = float((int)(((int)(uint)((bool)(_88 > 0.0f))) - ((int)(uint)((bool)(_88 < 0.0f))))); + float _101 = float((int)(((int)(uint)((bool)(_89 > 0.0f))) - ((int)(uint)((bool)(_89 < 0.0f))))); + float _106 = saturate(abs(_88) - cb0_117z); + float _107 = saturate(abs(_89) - cb0_117z); + float _117 = _89 - ((_107 * _76) * _101); + float _119 = _89 - ((_107 * _77) * _101); + bool _120 = (cb0_118x > 0.0f); + if (_120) { + _127 = (_117 - (cb0_118w * 0.4000000059604645f)); + _128 = (_119 - (cb0_118w * 0.20000000298023224f)); + } else { + _127 = _117; + _128 = _119; + } + float4 _162 = t0.Sample(s0, float2(_35, _36)); + float4 _166 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_88 - ((_106 * select(_78, _76, cb0_117x)) * _100))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _127) + cb0_115y)) + cb0_049y) * cb0_048y))); + float4 _168 = t0.Sample(s0, float2((((cb0_048z * ((cb0_115z * (_88 - ((_106 * select(_78, _77, cb0_117y)) * _100))) + cb0_115x)) + cb0_049x) * cb0_048x), (((cb0_048w * ((cb0_115w * _128) + cb0_115y)) + cb0_049y) * cb0_048y))); + if (_120) { + float _178 = saturate(((((_162.y * 0.5870000123977661f) - cb0_118y) + (_162.x * 0.29899999499320984f)) + (_162.z * 0.11400000005960464f)) * 10.0f); + float _182 = (_178 * _178) * (3.0f - (_178 * 2.0f)); + _196 = ((((_162.x - _166.x) + (_182 * (_166.x - _162.x))) * cb0_118x) + _166.x); + _197 = ((((_162.y - _168.y) + (_182 * (_168.y - _162.y))) * cb0_118x) + _168.y); + } else { + _196 = _166.x; + _197 = _168.y; + } + float4 _222 = t1.Sample(s1, float2(min(max(((cb0_068z * _35) + cb0_069x), cb0_060z), cb0_061x), min(max(((cb0_068w * _36) + cb0_069y), cb0_060w), cb0_061y))); + APPLY_BLOOM(_222); + [branch] + if (!(cb0_085z == 0)) { + bool _251 = (cb0_086x != 0); + float4 _254 = t2.Sample(s2, float2(select(_251, _35, min(max(((cb0_076z * _35) + cb0_077x), cb0_075z), cb0_076x)), select(_251, _36, min(max(((cb0_076w * _36) + cb0_077y), cb0_075w), cb0_076y)))); + _262 = (_254.x + _222.x); + _263 = (_254.y + _222.y); + _264 = (_254.z + _222.z); + } else { + _262 = _222.x; + _263 = _222.y; + _264 = _222.z; + } + [branch] + if (!(cb0_085w == 0)) { + float4 _268 = t3.Sample(s3, float2(_35, _36)); + _276 = (_268.x + _262); + _277 = (_268.y + _263); + _278 = (_268.z + _264); + } else { + _276 = _262; + _277 = _263; + _278 = _264; + } + float _303 = TEXCOORD_1.z + -1.0f; + float _305 = TEXCOORD_1.w + -1.0f; + float _308 = ((_303 + (cb0_091x * 2.0f)) * cb0_089z) * cb0_089x; + float _310 = ((_305 + (cb0_091y * 2.0f)) * cb0_089w) * cb0_089x; + float _317 = 1.0f / ((((saturate(cb0_090w) * 9.0f) + 1.0f) * dot(float2(_308, _310), float2(_308, _310))) + 1.0f); + float _318 = _317 * _317; + float _319 = cb0_091z + 1.0f; + float _347 = ((_303 + (cb0_094x * 2.0f)) * cb0_092z) * cb0_092x; + float _349 = ((_305 + (cb0_094y * 2.0f)) * cb0_092w) * cb0_092x; + float _356 = 1.0f / ((((saturate(cb0_093w) * 9.0f) + 1.0f) * dot(float2(_347, _349), float2(_347, _349))) + 1.0f); + float _357 = _356 * _356; + float _358 = cb0_094z + 1.0f; + float _369 = (((_318 * (_319 - cb0_090x)) + cb0_090x) * (_276 + ((_196 * TEXCOORD_1.x) * cb0_087x))) * ((_357 * (_358 - cb0_093x)) + cb0_093x); + float _371 = (((_318 * (_319 - cb0_090y)) + cb0_090y) * (_277 + ((_197 * TEXCOORD_1.x) * cb0_087y))) * ((_357 * (_358 - cb0_093y)) + cb0_093y); + float _373 = (((_318 * (_319 - cb0_090z)) + cb0_090z) * (_278 + ((_162.z * TEXCOORD_1.x) * cb0_087z))) * ((_357 * (_358 - cb0_093z)) + cb0_093z); + + CAPTURE_UNTONEMAPPED(float3(_369, _371, _373)); + + [branch] + if (WUWA_TM_IS(1)) { + _406 = ((((_369 * 1.3600000143051147f) + 0.04699999839067459f) * _369) / ((((_369 * 0.9599999785423279f) + 0.5600000023841858f) * _369) + 0.14000000059604645f)); + _407 = ((((_371 * 1.3600000143051147f) + 0.04699999839067459f) * _371) / ((((_371 * 0.9599999785423279f) + 0.5600000023841858f) * _371) + 0.14000000059604645f)); + _408 = ((((_373 * 1.3600000143051147f) + 0.04699999839067459f) * _373) / ((((_373 * 0.9599999785423279f) + 0.5600000023841858f) * _373) + 0.14000000059604645f)); + } else { + _406 = _369; + _407 = _371; + _408 = _373; + } + [branch] + if (WUWA_TM_IS(2)) { + float _418 = 1.0049500465393066f - (0.16398000717163086f / (_406 + -0.19505000114440918f)); + float _419 = 1.0049500465393066f - (0.16398000717163086f / (_407 + -0.19505000114440918f)); + float _420 = 1.0049500465393066f - (0.16398000717163086f / (_408 + -0.19505000114440918f)); + _440 = (((_406 - _418) * select((_406 > 0.6000000238418579f), 0.0f, 1.0f)) + _418); + _441 = (((_407 - _419) * select((_407 > 0.6000000238418579f), 0.0f, 1.0f)) + _419); + _442 = (((_408 - _420) * select((_408 > 0.6000000238418579f), 0.0f, 1.0f)) + _420); + } else { + _440 = _406; + _441 = _407; + _442 = _408; + } + [branch] + if (WUWA_TM_IS(3)) { + float _448 = cb0_037y * _440; + float _449 = cb0_037y * _441; + float _450 = cb0_037y * _442; + float _453 = cb0_037z * cb0_037w; + float _463 = cb0_038y * cb0_038x; + float _474 = cb0_038z * cb0_038x; + float _481 = cb0_038y / cb0_038z; + _489 = (((((_453 + _448) * _440) + _463) / (_474 + ((_448 + cb0_037z) * _440))) - _481); + _490 = (((((_453 + _449) * _441) + _463) / (_474 + ((_449 + cb0_037z) * _441))) - _481); + _491 = (((((_453 + _450) * _442) + _463) / (_474 + ((_450 + cb0_037z) * _442))) - _481); + } else { + _489 = _440; + _490 = _441; + _491 = _442; + } + [branch] + if (!(cb0_106w == 0)) { + if (!(cb0_107x == 1.0f)) { + float _501 = (cb0_107x * 0.699999988079071f) + 0.30000001192092896f; + _506 = (_501 * _489); + _507 = (_501 * _490); + _508 = (_501 * _491); + } else { + _506 = _489; + _507 = _490; + _508 = _491; + } + } else { + _506 = _489; + _507 = _490; + _508 = _491; + } + + APPLY_EXTENDED_TONEMAP(_506, _507, _508); + + float _529 = (saturate((log2(_506 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _530 = (saturate((log2(_507 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + float _531 = (saturate((log2(_508 + 0.002667719265446067f) * 0.0714285746216774f) + 0.6107269525527954f) * 0.96875f) + 0.015625f; + + float4 _532 = t5.Sample(s5, float3(_529, _530, _531)); + [branch] + if (!(cb0_108w == 0)) { + float4 _556 = t4.Sample(s4, float2(min(max(((cb0_084z * _35) + cb0_085x), cb0_083z), cb0_084x), min(max(((cb0_084w * _36) + cb0_085y), cb0_083w), cb0_084y))); + float _566 = select((((uint)(uint(float((uint)((int)((uint)(uint(round(_556.w * 255.0f))) & 15))))) & -4) == 12), 1.0f, 0.0f); + float4 _567 = t6.Sample(s6, float3(_529, _530, _531)); + _581 = (lerp(_567.x, _532.x, _566)); + _582 = (lerp(_567.y, _532.y, _566)); + _583 = (lerp(_567.z, _532.z, _566)); + } else { + _581 = _532.x; + _582 = _532.y; + _583 = _532.z; + } + + float _584 = _583 * 1.0499999523162842f; + float _585 = _582 * 1.0499999523162842f; + float _586 = _581 * 1.0499999523162842f; + float _594 = ((_41 * 0.00390625f) + -0.001953125f) + _586; + float _595 = ((_65 * 0.00390625f) + -0.001953125f) + _585; + float _596 = ((_66 * 0.00390625f) + -0.001953125f) + _584; + [branch] + if (!(cb0_107w == 0)) { + float _608 = (pow(_594, 0.012683313339948654f)); + float _609 = (pow(_595, 0.012683313339948654f)); + float _610 = (pow(_596, 0.012683313339948654f)); + float _643 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_608 + -0.8359375f)) / (18.8515625f - (_608 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _644 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_609 + -0.8359375f)) / (18.8515625f - (_609 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + float _645 = max(6.103519990574569e-05f, ((exp2(log2(max(0.0f, (_610 + -0.8359375f)) / (18.8515625f - (_610 * 18.6875f))) * 6.277394771575928f) * 10000.0f) / cb0_107z)); + _671 = min((_643 * 12.920000076293945f), ((exp2(log2(max(_643, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _672 = min((_644 * 12.920000076293945f), ((exp2(log2(max(_644, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + _673 = min((_645 * 12.920000076293945f), ((exp2(log2(max(_645, 0.0031306699384003878f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f)); + } else { + _671 = _594; + _672 = _595; + _673 = _596; + } + SV_Target.x = _671; + SV_Target.y = _672; + SV_Target.z = _673; + SV_Target.xyz = wuwa::InvertAndApplyDisplayMap(SV_Target.xyz); + SV_Target.w = dot(float3(_586, _585, _584), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + CLAMP_IF_SDR(SV_Target.w); + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/test/0x94128476.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/test/0x94128476.ps_6_0.hlsl new file mode 100644 index 000000000..e885b802f --- /dev/null +++ b/src/games/wutheringwaves/3_2/test/0x94128476.ps_6_0.hlsl @@ -0,0 +1,1271 @@ +#include "../../common.hlsl" +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[9] : packoffset(c000.x); + float4 Material_144[4] : packoffset(c009.x); +}; + +SamplerState s0 : register(s0); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _58 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _62 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _58) - View_1120.x; + float _63 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _58) - View_1120.y; + float _64 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _58) - View_1120.z; + float _65 = TEXCOORD_9.x - View_1120.x; + float _66 = TEXCOORD_9.y - View_1120.y; + float _67 = TEXCOORD_9.z - View_1120.z; + float _76; + float _77; + float _78; + float _112; + float _113; + float _114; + float _269; + float _270; + float _271; + float _272; + float _307; + float _308; + float _309; + float _366; + float _367; + float _368; + float _419; + float _420; + float _421; + float _511; + float _512; + float _513; + if ((Material_144[0].x) < 0.5f) { + _76 = (COLOR.x * COLOR.x); + _77 = (COLOR.y * COLOR.y); + _78 = (COLOR.z * COLOR.z); + } else { + _76 = COLOR.x; + _77 = COLOR.y; + _78 = COLOR.z; + } + float4 _81 = t0.SampleBias(s0, float2(TEXCOORD.x, TEXCOORD.y), View_2388, int2(0, 0)); + if ((Material_144[0].x) > 0.5f) { + _112 = max(((exp2(log2(max(_81.x, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _113 = max(((exp2(log2(max(_81.y, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _114 = max(((exp2(log2(max(_81.z, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _112 = _81.x; + _113 = _81.y; + _114 = _81.z; + } + float _115 = _112 * _76; + float _116 = _113 * _77; + float _117 = _114 * _78; + float _146 = ((SV_Position.x - View_2144.x) * View_2160.z) - (Material_000[3].x); + float _147 = (1.0f - ((SV_Position.y - View_2144.y) * View_2160.w)) - (Material_000[3].y); + float _148 = _81.w * COLOR.w; + float _177 = mad(_67, (Primitive_096[2].x), mad(_66, (Primitive_096[1].x), ((Primitive_096[0].x) * _65))) + (Primitive_096[3].x); + float _181 = mad(_67, (Primitive_096[2].y), mad(_66, (Primitive_096[1].y), ((Primitive_096[0].y) * _65))) + (Primitive_096[3].y); + float _210 = saturate(((1.0f - saturate(((_181 - (Material_000[4].y)) - (Material_000[3].y)) / (Material_000[8].y))) - saturate((((-0.0f - _181) - (Material_000[4].y)) + (Material_000[3].y)) / (Material_000[8].w))) * ((1.0f - saturate((((-0.0f - _177) - (Material_000[4].x)) + (Material_000[3].x)) / (Material_000[8].x))) - saturate(((_177 - (Material_000[4].x)) - (Material_000[3].x)) / (Material_000[8].z)))); + float _214 = (_210 * _210) * (3.0f - (_210 * 2.0f)); + float _231 = saturate(select(((bool)(abs((Material_144[2].w) + -0.5f) > 9.999999747378752e-06f) && (bool)((Material_144[2].w) >= 0.5f)), select(((bool)(_147 > (Material_000[4].y)) || ((bool)((bool)(_146 > (Material_000[4].x)) || ((bool)((bool)(_146 < (-0.0f - (Material_000[4].x))) || (bool)(_147 < (-0.0f - (Material_000[4].y)))))))), 0.0f, _148), (select(((bool)(abs(Material_144[2].z) > 9.999999747378752e-06f) && (bool)((Material_144[2].z) >= 0.0f)), (1.0f - _214), _214) * _148))); + float _232 = max(((((Material_000[1].x) - _115) * (Material_144[0].y)) + _115), 0.0f); + float _233 = max(((((Material_000[1].y) - _116) * (Material_144[0].y)) + _116), 0.0f); + float _234 = max(((((Material_000[1].z) - _117) * (Material_144[0].y)) + _117), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_64 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_62 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_63 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _266 = float((bool)(bool)(frac(dot(float3(_62, _63, _64), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _269 = 1.0f; + _270 = (1.0f - _266); + _271 = 1.0f; + _272 = _266; + } else { + _269 = _231; + _270 = _232; + _271 = _233; + _272 = _234; + } + } else { + _269 = _231; + _270 = _232; + _271 = _233; + _272 = _234; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _296 = 1.0f / TranslucentBasePass_4356; + _307 = exp2(log2(1.0f - exp2((_270 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _296); + _308 = exp2(log2(1.0f - exp2((_271 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _296); + _309 = exp2(log2(1.0f - exp2((_272 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _296); + } else { + _307 = _270; + _308 = _271; + _309 = _272; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _313 = TranslucentBasePass_4372 * _307; + float _314 = TranslucentBasePass_4372 * _308; + float _315 = TranslucentBasePass_4372 * _309; + float _317 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _318 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _355 = 1.0f / TranslucentBasePass_4356; + _366 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_317 * _313) + 0.04699999839067459f) * _313) / ((((_318 * _313) + 0.5600000023841858f) * _313) + 0.14000000059604645f)))) * _355); + _367 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_317 * _314) + 0.04699999839067459f) * _314) / ((((_318 * _314) + 0.5600000023841858f) * _314) + 0.14000000059604645f)))) * _355); + _368 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_317 * _315) + 0.04699999839067459f) * _315) / ((((_318 * _315) + 0.5600000023841858f) * _315) + 0.14000000059604645f)))) * _355); + } else { + _366 = _307; + _367 = _308; + _368 = _309; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _373 = TranslucentBasePass_4384 * _366; + float _374 = TranslucentBasePass_4384 * _367; + float _375 = TranslucentBasePass_4384 * _368; + float _381 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _385 = (_381 / (_373 + -0.19505000114440918f)) + 1.0049500465393066f; + float _386 = (_381 / (_374 + -0.19505000114440918f)) + 1.0049500465393066f; + float _387 = (_381 / (_375 + -0.19505000114440918f)) + 1.0049500465393066f; + float _408 = 1.0f / TranslucentBasePass_4356; + _419 = exp2(log2(saturate(((_373 - _385) * select((TranslucentBasePass_4388 < _373), 0.0f, 1.0f)) + _385)) * _408); + _420 = exp2(log2(saturate(((_374 - _386) * select((TranslucentBasePass_4388 < _374), 0.0f, 1.0f)) + _386)) * _408); + _421 = exp2(log2(saturate(((_375 - _387) * select((TranslucentBasePass_4388 < _375), 0.0f, 1.0f)) + _387)) * _408); + } else { + _419 = _366; + _420 = _367; + _421 = _368; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _426 = TranslucentBasePass_4396 * _419; + float _427 = TranslucentBasePass_4396 * _420; + float _428 = TranslucentBasePass_4396 * _421; + float _463 = exp2(log2(abs(_426)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_426 > 0.0f))) - ((int)(uint)((bool)(_426 < 0.0f))))); + float _464 = exp2(log2(abs(_427)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_427 > 0.0f))) - ((int)(uint)((bool)(_427 < 0.0f))))); + float _465 = exp2(log2(abs(_428)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_428 > 0.0f))) - ((int)(uint)((bool)(_428 < 0.0f))))); + float _466 = TranslucentBasePass_4400 * 5.340000152587891f; + float _467 = _463 * _466; + float _468 = _464 * _466; + float _469 = _465 * _466; + float _491 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _500 = 1.0f / TranslucentBasePass_4356; + _511 = exp2(log2(saturate(_491 + ((((_467 + 2.609099864959717f) * _463) + 0.0013464000076055527f) / (((_467 + 1.1699999570846558f) * _463) + 3.0624001026153564f)))) * _500); + _512 = exp2(log2(saturate(_491 + ((((_468 + 2.609099864959717f) * _464) + 0.0013464000076055527f) / (((_468 + 1.1699999570846558f) * _464) + 3.0624001026153564f)))) * _500); + _513 = exp2(log2(saturate(_491 + ((((_469 + 2.609099864959717f) * _465) + 0.0013464000076055527f) / (((_469 + 1.1699999570846558f) * _465) + 3.0624001026153564f)))) * _500); + } else { + _511 = _419; + _512 = _420; + _513 = _421; + } + } while (false); + } while (false); + } while (false); + } else { + _511 = _270; + _512 = _271; + _513 = _272; + } + SV_Target.x = (-0.0f - min((-0.0f - _511), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _512), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _513), 0.0f)); + SV_Target.w = _269; + SV_Target.w *= HUD_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UI_0x0FC2DCAC.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UI_0x0FC2DCAC.ps_6_0.hlsl new file mode 100644 index 000000000..dbfaa7595 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UI_0x0FC2DCAC.ps_6_0.hlsl @@ -0,0 +1,1261 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[2] : packoffset(c000.x); + float4 Material_032[1] : packoffset(c002.x); +}; + +SamplerState s0 : register(s0); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _55 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _59 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _55) - View_1120.x; + float _60 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _55) - View_1120.y; + float _61 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _55) - View_1120.z; + float _70; + float _71; + float _72; + float _106; + float _107; + float _108; + float _165; + float _166; + float _167; + float _168; + float _203; + float _204; + float _205; + float _262; + float _263; + float _264; + float _315; + float _316; + float _317; + float _407; + float _408; + float _409; + if ((Material_032[0].x) < 0.5f) { + _70 = (COLOR.x * COLOR.x); + _71 = (COLOR.y * COLOR.y); + _72 = (COLOR.z * COLOR.z); + } else { + _70 = COLOR.x; + _71 = COLOR.y; + _72 = COLOR.z; + } + float4 _75 = t0.SampleBias(s0, float2(TEXCOORD.x, TEXCOORD.y), View_2388, int2(0, 0)); + if ((Material_032[0].x) > 0.5f) { + _106 = max(((exp2(log2(max(_75.x, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _107 = max(((exp2(log2(max(_75.y, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _108 = max(((exp2(log2(max(_75.z, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _106 = _75.x; + _107 = _75.y; + _108 = _75.z; + } + float _109 = _106 * _70; + float _110 = _107 * _71; + float _111 = _108 * _72; + float _127 = saturate(_75.w * COLOR.w); + float _128 = max(((((Material_000[1].x) - _109) * (Material_032[0].y)) + _109), 0.0f); + float _129 = max(((((Material_000[1].y) - _110) * (Material_032[0].y)) + _110), 0.0f); + float _130 = max(((((Material_000[1].z) - _111) * (Material_032[0].y)) + _111), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_61 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_59 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_60 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _162 = float((bool)(bool)(frac(dot(float3(_59, _60, _61), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _165 = 1.0f; + _166 = (1.0f - _162); + _167 = 1.0f; + _168 = _162; + } else { + _165 = _127; + _166 = _128; + _167 = _129; + _168 = _130; + } + } else { + _165 = _127; + _166 = _128; + _167 = _129; + _168 = _130; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _192 = 1.0f / TranslucentBasePass_4356; + _203 = exp2(log2(1.0f - exp2((_166 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _192); + _204 = exp2(log2(1.0f - exp2((_167 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _192); + _205 = exp2(log2(1.0f - exp2((_168 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _192); + } else { + _203 = _166; + _204 = _167; + _205 = _168; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _209 = TranslucentBasePass_4372 * _203; + float _210 = TranslucentBasePass_4372 * _204; + float _211 = TranslucentBasePass_4372 * _205; + float _213 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _214 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _251 = 1.0f / TranslucentBasePass_4356; + _262 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_213 * _209) + 0.04699999839067459f) * _209) / ((((_214 * _209) + 0.5600000023841858f) * _209) + 0.14000000059604645f)))) * _251); + _263 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_213 * _210) + 0.04699999839067459f) * _210) / ((((_214 * _210) + 0.5600000023841858f) * _210) + 0.14000000059604645f)))) * _251); + _264 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_213 * _211) + 0.04699999839067459f) * _211) / ((((_214 * _211) + 0.5600000023841858f) * _211) + 0.14000000059604645f)))) * _251); + } else { + _262 = _203; + _263 = _204; + _264 = _205; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _269 = TranslucentBasePass_4384 * _262; + float _270 = TranslucentBasePass_4384 * _263; + float _271 = TranslucentBasePass_4384 * _264; + float _277 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _281 = (_277 / (_269 + -0.19505000114440918f)) + 1.0049500465393066f; + float _282 = (_277 / (_270 + -0.19505000114440918f)) + 1.0049500465393066f; + float _283 = (_277 / (_271 + -0.19505000114440918f)) + 1.0049500465393066f; + float _304 = 1.0f / TranslucentBasePass_4356; + _315 = exp2(log2(saturate(((_269 - _281) * select((TranslucentBasePass_4388 < _269), 0.0f, 1.0f)) + _281)) * _304); + _316 = exp2(log2(saturate(((_270 - _282) * select((TranslucentBasePass_4388 < _270), 0.0f, 1.0f)) + _282)) * _304); + _317 = exp2(log2(saturate(((_271 - _283) * select((TranslucentBasePass_4388 < _271), 0.0f, 1.0f)) + _283)) * _304); + } else { + _315 = _262; + _316 = _263; + _317 = _264; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _322 = TranslucentBasePass_4396 * _315; + float _323 = TranslucentBasePass_4396 * _316; + float _324 = TranslucentBasePass_4396 * _317; + float _359 = exp2(log2(abs(_322)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_322 > 0.0f))) - ((int)(uint)((bool)(_322 < 0.0f))))); + float _360 = exp2(log2(abs(_323)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_323 > 0.0f))) - ((int)(uint)((bool)(_323 < 0.0f))))); + float _361 = exp2(log2(abs(_324)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_324 > 0.0f))) - ((int)(uint)((bool)(_324 < 0.0f))))); + float _362 = TranslucentBasePass_4400 * 5.340000152587891f; + float _363 = _359 * _362; + float _364 = _360 * _362; + float _365 = _361 * _362; + float _387 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _396 = 1.0f / TranslucentBasePass_4356; + _407 = exp2(log2(saturate(_387 + ((((_363 + 2.609099864959717f) * _359) + 0.0013464000076055527f) / (((_363 + 1.1699999570846558f) * _359) + 3.0624001026153564f)))) * _396); + _408 = exp2(log2(saturate(_387 + ((((_364 + 2.609099864959717f) * _360) + 0.0013464000076055527f) / (((_364 + 1.1699999570846558f) * _360) + 3.0624001026153564f)))) * _396); + _409 = exp2(log2(saturate(_387 + ((((_365 + 2.609099864959717f) * _361) + 0.0013464000076055527f) / (((_365 + 1.1699999570846558f) * _361) + 3.0624001026153564f)))) * _396); + } else { + _407 = _315; + _408 = _316; + _409 = _317; + } + } while (false); + } while (false); + } while (false); + } else { + _407 = _166; + _408 = _167; + _409 = _168; + } + SV_Target.x = (-0.0f - min((-0.0f - _407), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _408), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _409), 0.0f)); + SV_Target.w = _165; + SV_Target.w *= HUD_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UI_0x1CACAD41.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UI_0x1CACAD41.ps_6_0.hlsl new file mode 100644 index 000000000..929d0c37e --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UI_0x1CACAD41.ps_6_0.hlsl @@ -0,0 +1,1380 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +Texture2D t4 : register(t4); + +Texture2D t5 : register(t5); + +Texture2D t6 : register(t6); + +Texture2D t7 : register(t7); + +Texture2D t8 : register(t8); + +Texture2D t9 : register(t9); + +Texture2D t10 : register(t10); + +Texture2D t11 : register(t11); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 MaterialCollection0_000[2] : packoffset(c000.x); +}; + +cbuffer cb4 : register(b4) { + float4 Material_000[36] : packoffset(c000.x); + float4 Material_576[16] : packoffset(c036.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +SamplerState s4 : register(s4); + +SamplerState s5 : register(s5); + +SamplerState s6 : register(s6); + +SamplerState s7 : register(s7); + +SamplerState s8 : register(s8); + +SamplerState s9 : register(s9); + +SamplerState s10 : register(s10); + +SamplerState s11 : register(s11); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _77 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _81 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _77) - View_1120.x; + float _82 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _77) - View_1120.y; + float _83 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _77) - View_1120.z; + float _84 = TEXCOORD_9.x - View_1120.x; + float _85 = TEXCOORD_9.y - View_1120.y; + float _86 = TEXCOORD_9.z - View_1120.z; + float _95 = ((Material_000[3].x) * TEXCOORD.x) + (Material_000[4].x); + float _96 = ((Material_000[3].y) * TEXCOORD.y) + (Material_000[4].y); + float _105 = (SV_Position.x - View_2144.x) * View_2160.z; + float _106 = (SV_Position.y - View_2144.y) * View_2160.w; + float _109 = _105 - _95; + float _110 = _106 - _96; + float _113 = ((Material_576[1].z) * _109) + _95; + float _114 = ((Material_576[1].z) * _110) + _96; + float _122 = (Material_576[2].x) * View_2376; + float _126 = (Material_576[2].y) * sin(_122 * 6.2831854820251465f); + float4 _131 = t0.SampleBias(s0, float2((_126 + (_113 * (Material_576[1].w))), (_126 + (_114 * (Material_576[1].w)))), View_2388, int2(0, 0)); + float4 _158 = t1.SampleBias(s1, float2((((Material_576[2].z) * _113) + _122), (((Material_576[2].z) * _114) + _122)), View_2388, int2(0, 0)); + float _181 = (Material_000[11].x) + _95; + float _182 = (Material_000[11].y) + _96; + float _185 = _105 - _181; + float _186 = _106 - _182; + float _197 = (Material_576[4].w) * View_2376; + float _200 = (Material_576[5].x) + _197; + float4 _205 = t2.SampleBias(s2, float2((_200 + (((_185 * (Material_576[4].y)) + _181) * (Material_576[4].z))), (_200 + (((_186 * (Material_576[4].y)) + _182) * (Material_576[4].z)))), View_2388, int2(0, 0)); + float _219 = sin(_197 * 6.2831854820251465f) * 5.0f; + float4 _224 = t3.SampleBias(s3, float2((((((Material_576[4].y) * _185) + _181) * 2.0f) + _219), (((((Material_576[4].y) * _186) + _182) * 2.0f) + _219)), View_2388, int2(0, 0)); + float _231 = (_224.x * _205.x) * (Material_576[5].y); + float _232 = (_224.x * _205.y) * (Material_576[5].y); + float _233 = (_224.x * _205.z) * (Material_576[5].y); + float _265 = (Material_576[6].x) * View_2376; + float4 _270 = t4.SampleBias(s4, float2((_265 + ((((Material_576[5].z) * _109) + _95) * (Material_576[5].w))), (_265 + ((((Material_576[5].z) * _110) + _96) * (Material_576[5].w)))), View_2388, int2(0, 0)); + float _282 = (frac(((View_2376 * 0.009999999776482582f) * (Material_576[6].y)) + _270.x) * 100.0f) / (Material_576[6].z); + float _286 = frac(abs(_282)); + float _289 = select((_282 >= (-0.0f - _282)), _286, (-0.0f - _286)) * (Material_576[6].z); + float _298 = 1.0f - (abs(_289 - (Material_576[7].x)) / (Material_576[7].x)); + float _305 = select((_298 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_298) * (Material_576[7].y))) * select(((Material_576[6].w) < _289), 0.0f, 1.0f); + float _318 = abs(_105 - (MaterialCollection0_000[0].x)); + float _323 = abs(_106 - (MaterialCollection0_000[0].y)); + float _328 = (Material_576[7].z) * (View_2160.x / View_2160.y); + float _337 = (((((Material_576[7].z) - _318) / (Material_576[7].z)) * select(((Material_576[7].z) < _318), 0.0f, 1.0f)) * select((_328 < _323), 0.0f, 1.0f)) * ((_328 - _323) / _328); + float _343 = select((_337 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_337) * (Material_576[7].w))); + float _359 = select(((Material_576[8].x) < _105), 0.0f, 1.0f) * ((Material_576[8].x) - _105); + float _365 = select((_359 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_359) * (Material_576[8].y))); + float _381 = select((_105 < (Material_576[8].z)), 0.0f, 1.0f) * ((_105 + -1.0f) + (Material_576[8].x)); + float _386 = select((_381 <= 2.980232949312267e-08f), 0.0f, exp2(log2(_381) * (Material_576[8].y))); + float _387 = -0.0f - (MaterialCollection0_000[0].z); + float _394 = (((Material_000[19].x) * _387) * _386) + (((Material_000[19].x) * (MaterialCollection0_000[0].z)) * _365); + float _395 = (((Material_000[19].y) * _387) * _386) + (((Material_000[19].y) * (MaterialCollection0_000[0].z)) * _365); + float _396 = (((Material_000[19].z) * _387) * _386) + (((Material_000[19].z) * (MaterialCollection0_000[0].z)) * _365); + float _412 = ((((select((_231 <= 2.980232949312267e-08f), 0.0f, (_231 * _231)) * (Material_000[13].x)) + ((Material_000[7].x) * select(((_158.x * select((_131.x <= 2.980232949312267e-08f), 0.0f, (exp2(log2(_131.x)) * 2.0f))) < (Material_576[2].w)), 0.0f, 1.0f))) + min(max((((_343 * (Material_000[17].x)) + ((Material_000[15].x) * _305)) + _394), 0.0f), 1.0f)) + _394) + (Material_000[21].x); + float _415 = ((((select((_232 <= 2.980232949312267e-08f), 0.0f, (_232 * _232)) * (Material_000[13].y)) + (select(((_158.x * select((_131.y <= 2.980232949312267e-08f), 0.0f, (exp2(log2(_131.y)) * 2.0f))) < (Material_576[2].w)), 0.0f, 1.0f) * (Material_000[7].y))) + _395) + min(max((((_343 * (Material_000[17].y)) + ((Material_000[15].y) * _305)) + _395), 0.0f), 1.0f)) + (Material_000[21].y); + float _418 = ((((select((_233 <= 2.980232949312267e-08f), 0.0f, (_233 * _233)) * (Material_000[13].z)) + (select(((_158.x * select((_131.z <= 2.980232949312267e-08f), 0.0f, (exp2(log2(_131.z)) * 2.0f))) < (Material_576[2].w)), 0.0f, 1.0f) * (Material_000[7].z))) + _396) + min(max((((_343 * (Material_000[17].z)) + ((Material_000[15].z) * _305)) + _396), 0.0f), 1.0f)) + (Material_000[21].z); + float4 _419 = t5.SampleBias(s5, float2(_95, _96), View_2388, int2(0, 0)); + float4 _423 = t6.SampleBias(s6, float2(_95, _96), View_2388, int2(0, 0)); + float _429 = (Material_576[8].w) * _423.w; + float4 _436 = t7.SampleBias(s7, float2(_95, _96), View_2388, int2(0, 0)); + float _443 = (Material_576[9].x) * _436.x; + float _446 = select((_443 < 0.10000000149011612f), 0.0f, 1.0f) * _443; + float _457 = (View_2376 * 0.10000000149011612f) * (Material_576[9].w); + float4 _462 = t8.SampleBias(s8, float2((_457 + ((Material_576[9].z) * TEXCOORD.x)), (_457 + ((Material_576[9].z) * TEXCOORD.y))), View_2388, int2(0, 0)); + float _468 = ((_462.x + 0.10000002384185791f) * 0.5f) * (Material_576[10].x); + float _473 = (Material_576[9].x) * _436.y; + float _476 = select((_473 < 0.10000000149011612f), 0.0f, 1.0f) * _473; + float _484 = (Material_576[9].x) * _436.z; + float _487 = select((_484 < 0.10000000149011612f), 0.0f, 1.0f) * _484; + float _494 = (Material_576[9].x) * _436.w; + float _497 = select((_494 < 0.10000000149011612f), 0.0f, 1.0f) * _494; + float _511 = (Material_576[11].z) - _105; + float _513 = ((Material_576[11].y) - _106) * (View_2160.z / View_2160.w); + float4 _516 = t3.SampleBias(s3, float2(_105, _106), View_2388, int2(0, 0)); + float _519 = (_516.x * -0.20000000298023224f) - sqrt(dot(float2(_511, _513), float2(_511, _513))); + float4 _531 = t9.SampleBias(s9, float2(_95, _96), View_2388, int2(0, 0)); + float _536 = (Material_576[9].x) * _531.x; + float _539 = select((_536 < 0.10000000149011612f), 0.0f, 1.0f) * _536; + float _546 = (Material_576[9].x) * _531.y; + float _549 = select((_546 < 0.10000000149011612f), 0.0f, 1.0f) * _546; + float _556 = (Material_576[9].x) * _531.z; + float _559 = select((_556 < 0.10000000149011612f), 0.0f, 1.0f) * _556; + float _566 = (Material_576[9].x) * _531.w; + float _569 = select((_566 < 0.10000000149011612f), 0.0f, 1.0f) * _566; + float _588 = saturate(saturate(dot(float4(((((select(((Material_576[9].y) < _539), -0.0f, -2.0f) * _539) + _531.x) * _468) + _539), ((((select(((Material_576[9].y) < _549), -0.0f, -2.0f) * _549) + _531.y) * _468) + _549), ((((select(((Material_576[9].y) < _559), -0.0f, -2.0f) * _559) + _531.z) * _468) + _559), ((((select(((Material_576[9].y) < _569), -0.0f, -2.0f) * _569) + _531.w) * _468) + _569)), float4(((Material_000[31].x) + _519), ((Material_000[31].y) + _519), ((Material_000[31].z) + _519), ((Material_000[31].w) + _519)))) + saturate(dot(float4(((_468 * ((select(((Material_576[9].y) < _446), -0.0f, -2.0f) * _446) + _436.x)) + _446), ((((select(((Material_576[9].y) < _476), -0.0f, -2.0f) * _476) + _436.y) * _468) + _476), ((((select(((Material_576[9].y) < _487), -0.0f, -2.0f) * _487) + _436.z) * _468) + _487), ((((select(((Material_576[9].y) < _497), -0.0f, -2.0f) * _497) + _436.w) * _468) + _497)), float4((_519 + (Material_000[26].x)), (_519 + (Material_000[26].y)), (_519 + (Material_000[26].z)), (_519 + (Material_000[26].w)))))); + float _598 = (_588 * ((_419.x - _412) + (_429 * (_423.x - _419.x)))) + _412; + float _599 = (_588 * ((_419.y - _415) + (_429 * (_423.y - _419.y)))) + _415; + float _600 = (_588 * ((_419.z - _418) + (_429 * (_423.z - _419.z)))) + _418; + float4 _617 = t10.SampleBias(s10, float2(((Material_576[13].x) * (((Material_576[12].w) * View_2376) + abs(((_96 + _95) * 2.0f) + -2.0f))), saturate((Material_576[13].y) + _588)), View_2388, int2(0, 0)); + float _633 = ((((Material_576[13].z) * _617.x) - _598) * _617.w) + _598; + float _634 = ((((Material_576[13].z) * _617.y) - _599) * _617.w) + _599; + float _635 = ((((Material_576[13].z) * _617.z) - _600) * _617.w) + _600; + float _661; + float _662; + float _663; + float _756; + float _757; + float _758; + float _759; + float _794; + float _795; + float _796; + float _853; + float _854; + float _855; + float _906; + float _907; + float _908; + float _998; + float _999; + float _1000; + if ((Material_576[13].w) > 0.5f) { + _661 = max(((exp2(log2(max(_633, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _662 = max(((exp2(log2(max(_634, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _663 = max(((exp2(log2(max(_635, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _661 = _633; + _662 = _634; + _663 = _635; + } + float4 _712 = t11.SampleBias(s11, float2((((mad(_86, (Primitive_096[2].x), mad(_85, (Primitive_096[1].x), ((Primitive_096[0].x) * _84))) + (Primitive_096[3].x)) - (Material_000[34].x)) / (Material_000[35].x)), (1.0f - (((mad(_86, (Primitive_096[2].y), mad(_85, (Primitive_096[1].y), ((Primitive_096[0].y) * _84))) + (Primitive_096[3].y)) - (Material_000[34].y)) / (Material_000[35].y)))), View_2388, int2(0, 0)); + float _718 = saturate(saturate((Material_576[15].y) * _712.x)); + float _719 = max(((((Material_000[32].x) - _661) * (Material_576[14].x)) + _661), 0.0f); + float _720 = max(((((Material_000[32].y) - _662) * (Material_576[14].x)) + _662), 0.0f); + float _721 = max(((((Material_000[32].z) - _663) * (Material_576[14].x)) + _663), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_83 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_81 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_82 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _753 = float((bool)(bool)(frac(dot(float3(_81, _82, _83), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _756 = 1.0f; + _757 = (1.0f - _753); + _758 = 1.0f; + _759 = _753; + } else { + _756 = _718; + _757 = _719; + _758 = _720; + _759 = _721; + } + } else { + _756 = _718; + _757 = _719; + _758 = _720; + _759 = _721; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _783 = 1.0f / TranslucentBasePass_4356; + _794 = exp2(log2(1.0f - exp2((_757 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _783); + _795 = exp2(log2(1.0f - exp2((_758 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _783); + _796 = exp2(log2(1.0f - exp2((_759 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _783); + } else { + _794 = _757; + _795 = _758; + _796 = _759; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _800 = TranslucentBasePass_4372 * _794; + float _801 = TranslucentBasePass_4372 * _795; + float _802 = TranslucentBasePass_4372 * _796; + float _804 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _805 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _842 = 1.0f / TranslucentBasePass_4356; + _853 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_804 * _800) + 0.04699999839067459f) * _800) / ((((_805 * _800) + 0.5600000023841858f) * _800) + 0.14000000059604645f)))) * _842); + _854 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_804 * _801) + 0.04699999839067459f) * _801) / ((((_805 * _801) + 0.5600000023841858f) * _801) + 0.14000000059604645f)))) * _842); + _855 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_804 * _802) + 0.04699999839067459f) * _802) / ((((_805 * _802) + 0.5600000023841858f) * _802) + 0.14000000059604645f)))) * _842); + } else { + _853 = _794; + _854 = _795; + _855 = _796; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _860 = TranslucentBasePass_4384 * _853; + float _861 = TranslucentBasePass_4384 * _854; + float _862 = TranslucentBasePass_4384 * _855; + float _868 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _872 = (_868 / (_860 + -0.19505000114440918f)) + 1.0049500465393066f; + float _873 = (_868 / (_861 + -0.19505000114440918f)) + 1.0049500465393066f; + float _874 = (_868 / (_862 + -0.19505000114440918f)) + 1.0049500465393066f; + float _895 = 1.0f / TranslucentBasePass_4356; + _906 = exp2(log2(saturate(((_860 - _872) * select((TranslucentBasePass_4388 < _860), 0.0f, 1.0f)) + _872)) * _895); + _907 = exp2(log2(saturate(((_861 - _873) * select((TranslucentBasePass_4388 < _861), 0.0f, 1.0f)) + _873)) * _895); + _908 = exp2(log2(saturate(((_862 - _874) * select((TranslucentBasePass_4388 < _862), 0.0f, 1.0f)) + _874)) * _895); + } else { + _906 = _853; + _907 = _854; + _908 = _855; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _913 = TranslucentBasePass_4396 * _906; + float _914 = TranslucentBasePass_4396 * _907; + float _915 = TranslucentBasePass_4396 * _908; + float _950 = exp2(log2(abs(_913)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_913 > 0.0f))) - ((int)(uint)((bool)(_913 < 0.0f))))); + float _951 = exp2(log2(abs(_914)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_914 > 0.0f))) - ((int)(uint)((bool)(_914 < 0.0f))))); + float _952 = exp2(log2(abs(_915)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_915 > 0.0f))) - ((int)(uint)((bool)(_915 < 0.0f))))); + float _953 = TranslucentBasePass_4400 * 5.340000152587891f; + float _954 = _950 * _953; + float _955 = _951 * _953; + float _956 = _952 * _953; + float _978 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _987 = 1.0f / TranslucentBasePass_4356; + _998 = exp2(log2(saturate(_978 + ((((_954 + 2.609099864959717f) * _950) + 0.0013464000076055527f) / (((_954 + 1.1699999570846558f) * _950) + 3.0624001026153564f)))) * _987); + _999 = exp2(log2(saturate(_978 + ((((_955 + 2.609099864959717f) * _951) + 0.0013464000076055527f) / (((_955 + 1.1699999570846558f) * _951) + 3.0624001026153564f)))) * _987); + _1000 = exp2(log2(saturate(_978 + ((((_956 + 2.609099864959717f) * _952) + 0.0013464000076055527f) / (((_956 + 1.1699999570846558f) * _952) + 3.0624001026153564f)))) * _987); + } else { + _998 = _906; + _999 = _907; + _1000 = _908; + } + } while (false); + } while (false); + } while (false); + } else { + _998 = _757; + _999 = _758; + _1000 = _759; + } + SV_Target.x = (-0.0f - min((-0.0f - _998), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _999), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _1000), 0.0f)); + SV_Target.w = _756; + SV_Target.w *= HUD_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UI_0x216949EE.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UI_0x216949EE.ps_6_0.hlsl new file mode 100644 index 000000000..2574b7d97 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UI_0x216949EE.ps_6_0.hlsl @@ -0,0 +1,1276 @@ +#include "../../common.hlsl" +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[16] : packoffset(c000.x); + float4 Material_256[7] : packoffset(c016.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _60 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _64 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _60) - View_1120.x; + float _65 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _60) - View_1120.y; + float _66 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _60) - View_1120.z; + float _67 = TEXCOORD_9.x - View_1120.x; + float _68 = TEXCOORD_9.y - View_1120.y; + float _69 = TEXCOORD_9.z - View_1120.z; + float _78; + float _79; + float _80; + float _147; + float _148; + float _149; + float _286; + float _287; + float _288; + float _289; + float _324; + float _325; + float _326; + float _383; + float _384; + float _385; + float _436; + float _437; + float _438; + float _528; + float _529; + float _530; + if ((Material_256[0].x) < 0.5f) { + _78 = (COLOR.x * COLOR.x); + _79 = (COLOR.y * COLOR.y); + _80 = (COLOR.z * COLOR.z); + } else { + _78 = COLOR.x; + _79 = COLOR.y; + _80 = COLOR.z; + } + float4 _116 = t0.SampleBias(s0, float2((((Material_000[4].x) * min(max(frac(((Material_000[5].x) * ((TEXCOORD.x - (Material_000[3].x)) / (Material_000[4].x))) + (Material_000[6].x)), (Material_256[0].y)), (Material_256[2].z))) + (Material_000[3].x)), (((Material_000[4].y) * min(max(frac(((Material_000[5].y) * ((TEXCOORD.y - (Material_000[3].y)) / (Material_000[4].y))) + (Material_000[6].y)), (Material_256[0].y)), (Material_256[2].z))) + (Material_000[3].y))), View_2388, int2(0, 0)); + if ((Material_256[0].x) > 0.5f) { + _147 = max(((exp2(log2(max(_116.x, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _148 = max(((exp2(log2(max(_116.y, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _149 = max(((exp2(log2(max(_116.z, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _147 = _116.x; + _148 = _116.y; + _149 = _116.z; + } + float _150 = _147 * _78; + float _151 = _148 * _79; + float _152 = _149 * _80; + float _168 = _116.w * COLOR.w; + float _184 = mad(_69, (Primitive_096[2].x), mad(_68, (Primitive_096[1].x), ((Primitive_096[0].x) * _67))) + (Primitive_096[3].x); + float _188 = mad(_69, (Primitive_096[2].y), mad(_68, (Primitive_096[1].y), ((Primitive_096[0].y) * _67))) + (Primitive_096[3].y); + float _211 = saturate((1.0f - saturate((abs(_188 - (Material_000[10].y)) - (Material_000[11].y)) / (Material_000[12].y))) * (1.0f - saturate((abs(_184 - (Material_000[10].x)) - (Material_000[11].x)) / (Material_000[12].x)))); + float _215 = (_211 * _211) * (3.0f - (_211 * 2.0f)); + float _227 = select(((Material_256[4].w) > 0.5f), (select(((bool)(abs(Material_256[4].z) > 9.999999747378752e-06f) && (bool)((Material_256[4].z) >= 0.0f)), (1.0f - _215), _215) * _168), _168); + float4 _241 = t1.SampleBias(s1, float2(((_184 - (Material_000[14].x)) / (Material_000[15].x)), (1.0f - ((_188 - (Material_000[14].y)) / (Material_000[15].y)))), View_2388, int2(0, 0)); + float _248 = saturate(select(((Material_256[6].x) > 0.5f), (_241.x * _227), _227)); + float _249 = max(((((Material_000[7].x) - _150) * (Material_256[2].w)) + _150), 0.0f); + float _250 = max(((((Material_000[7].y) - _151) * (Material_256[2].w)) + _151), 0.0f); + float _251 = max(((((Material_000[7].z) - _152) * (Material_256[2].w)) + _152), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_66 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_64 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_65 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _283 = float((bool)(bool)(frac(dot(float3(_64, _65, _66), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _286 = 1.0f; + _287 = (1.0f - _283); + _288 = 1.0f; + _289 = _283; + } else { + _286 = _248; + _287 = _249; + _288 = _250; + _289 = _251; + } + } else { + _286 = _248; + _287 = _249; + _288 = _250; + _289 = _251; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _313 = 1.0f / TranslucentBasePass_4356; + _324 = exp2(log2(1.0f - exp2((_287 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _313); + _325 = exp2(log2(1.0f - exp2((_288 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _313); + _326 = exp2(log2(1.0f - exp2((_289 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _313); + } else { + _324 = _287; + _325 = _288; + _326 = _289; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _330 = TranslucentBasePass_4372 * _324; + float _331 = TranslucentBasePass_4372 * _325; + float _332 = TranslucentBasePass_4372 * _326; + float _334 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _335 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _372 = 1.0f / TranslucentBasePass_4356; + _383 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_334 * _330) + 0.04699999839067459f) * _330) / ((((_335 * _330) + 0.5600000023841858f) * _330) + 0.14000000059604645f)))) * _372); + _384 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_334 * _331) + 0.04699999839067459f) * _331) / ((((_335 * _331) + 0.5600000023841858f) * _331) + 0.14000000059604645f)))) * _372); + _385 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_334 * _332) + 0.04699999839067459f) * _332) / ((((_335 * _332) + 0.5600000023841858f) * _332) + 0.14000000059604645f)))) * _372); + } else { + _383 = _324; + _384 = _325; + _385 = _326; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _390 = TranslucentBasePass_4384 * _383; + float _391 = TranslucentBasePass_4384 * _384; + float _392 = TranslucentBasePass_4384 * _385; + float _398 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _402 = (_398 / (_390 + -0.19505000114440918f)) + 1.0049500465393066f; + float _403 = (_398 / (_391 + -0.19505000114440918f)) + 1.0049500465393066f; + float _404 = (_398 / (_392 + -0.19505000114440918f)) + 1.0049500465393066f; + float _425 = 1.0f / TranslucentBasePass_4356; + _436 = exp2(log2(saturate(((_390 - _402) * select((TranslucentBasePass_4388 < _390), 0.0f, 1.0f)) + _402)) * _425); + _437 = exp2(log2(saturate(((_391 - _403) * select((TranslucentBasePass_4388 < _391), 0.0f, 1.0f)) + _403)) * _425); + _438 = exp2(log2(saturate(((_392 - _404) * select((TranslucentBasePass_4388 < _392), 0.0f, 1.0f)) + _404)) * _425); + } else { + _436 = _383; + _437 = _384; + _438 = _385; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _443 = TranslucentBasePass_4396 * _436; + float _444 = TranslucentBasePass_4396 * _437; + float _445 = TranslucentBasePass_4396 * _438; + float _480 = exp2(log2(abs(_443)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_443 > 0.0f))) - ((int)(uint)((bool)(_443 < 0.0f))))); + float _481 = exp2(log2(abs(_444)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_444 > 0.0f))) - ((int)(uint)((bool)(_444 < 0.0f))))); + float _482 = exp2(log2(abs(_445)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_445 > 0.0f))) - ((int)(uint)((bool)(_445 < 0.0f))))); + float _483 = TranslucentBasePass_4400 * 5.340000152587891f; + float _484 = _480 * _483; + float _485 = _481 * _483; + float _486 = _482 * _483; + float _508 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _517 = 1.0f / TranslucentBasePass_4356; + _528 = exp2(log2(saturate(_508 + ((((_484 + 2.609099864959717f) * _480) + 0.0013464000076055527f) / (((_484 + 1.1699999570846558f) * _480) + 3.0624001026153564f)))) * _517); + _529 = exp2(log2(saturate(_508 + ((((_485 + 2.609099864959717f) * _481) + 0.0013464000076055527f) / (((_485 + 1.1699999570846558f) * _481) + 3.0624001026153564f)))) * _517); + _530 = exp2(log2(saturate(_508 + ((((_486 + 2.609099864959717f) * _482) + 0.0013464000076055527f) / (((_486 + 1.1699999570846558f) * _482) + 3.0624001026153564f)))) * _517); + } else { + _528 = _436; + _529 = _437; + _530 = _438; + } + } while (false); + } while (false); + } while (false); + } else { + _528 = _287; + _529 = _288; + _530 = _289; + } + SV_Target.x = (-0.0f - min((-0.0f - _528), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _529), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _530), 0.0f)); + SV_Target.w = _286; + SV_Target.w *= HUD_OPACITY; + + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UI_0x31400A18.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UI_0x31400A18.ps_6_0.hlsl new file mode 100644 index 000000000..0168b79d2 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UI_0x31400A18.ps_6_0.hlsl @@ -0,0 +1,1276 @@ +#include "../../common.hlsl" +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[12] : packoffset(c000.x); + float4 Material_192[5] : packoffset(c012.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _60 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _64 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _60) - View_1120.x; + float _65 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _60) - View_1120.y; + float _66 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _60) - View_1120.z; + float _67 = TEXCOORD_9.x - View_1120.x; + float _68 = TEXCOORD_9.y - View_1120.y; + float _69 = TEXCOORD_9.z - View_1120.z; + float _78; + float _79; + float _80; + float _114; + float _115; + float _116; + float _291; + float _292; + float _293; + float _294; + float _329; + float _330; + float _331; + float _388; + float _389; + float _390; + float _441; + float _442; + float _443; + float _533; + float _534; + float _535; + if ((Material_192[0].x) < 0.5f) { + _78 = (COLOR.x * COLOR.x); + _79 = (COLOR.y * COLOR.y); + _80 = (COLOR.z * COLOR.z); + } else { + _78 = COLOR.x; + _79 = COLOR.y; + _80 = COLOR.z; + } + float4 _83 = t0.SampleBias(s0, float2(TEXCOORD.x, TEXCOORD.y), View_2388, int2(0, 0)); + if ((Material_192[0].x) > 0.5f) { + _114 = max(((exp2(log2(max(_83.x, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _115 = max(((exp2(log2(max(_83.y, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _116 = max(((exp2(log2(max(_83.z, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _114 = _83.x; + _115 = _83.y; + _116 = _83.z; + } + float _117 = _114 * _78; + float _118 = _115 * _79; + float _119 = _116 * _80; + float _148 = ((SV_Position.x - View_2144.x) * View_2160.z) - (Material_000[3].x); + float _149 = (1.0f - ((SV_Position.y - View_2144.y) * View_2160.w)) - (Material_000[3].y); + float _150 = _83.w * COLOR.w; + float _179 = mad(_69, (Primitive_096[2].x), mad(_68, (Primitive_096[1].x), ((Primitive_096[0].x) * _67))) + (Primitive_096[3].x); + float _183 = mad(_69, (Primitive_096[2].y), mad(_68, (Primitive_096[1].y), ((Primitive_096[0].y) * _67))) + (Primitive_096[3].y); + float _212 = saturate(((1.0f - saturate(((_183 - (Material_000[4].y)) - (Material_000[3].y)) / (Material_000[8].y))) - saturate((((-0.0f - _183) - (Material_000[4].y)) + (Material_000[3].y)) / (Material_000[8].w))) * ((1.0f - saturate((((-0.0f - _179) - (Material_000[4].x)) + (Material_000[3].x)) / (Material_000[8].x))) - saturate(((_179 - (Material_000[4].x)) - (Material_000[3].x)) / (Material_000[8].z)))); + float _216 = (_212 * _212) * (3.0f - (_212 * 2.0f)); + float4 _246 = t1.SampleBias(s1, float2(((_179 - (Material_000[10].x)) / (Material_000[11].x)), (1.0f - ((_183 - (Material_000[10].y)) / (Material_000[11].y)))), View_2388, int2(0, 0)); + float _253 = saturate(saturate((Material_192[4].x) * _246.x) * select(((bool)(abs((Material_192[2].w) + -0.5f) > 9.999999747378752e-06f) && (bool)((Material_192[2].w) >= 0.5f)), select(((bool)(_149 > (Material_000[4].y)) || ((bool)((bool)(_148 > (Material_000[4].x)) || ((bool)((bool)(_148 < (-0.0f - (Material_000[4].x))) || (bool)(_149 < (-0.0f - (Material_000[4].y)))))))), 0.0f, _150), (select(((bool)(abs(Material_192[2].z) > 9.999999747378752e-06f) && (bool)((Material_192[2].z) >= 0.0f)), (1.0f - _216), _216) * _150))); + float _254 = max(((((Material_000[1].x) - _117) * (Material_192[0].y)) + _117), 0.0f); + float _255 = max(((((Material_000[1].y) - _118) * (Material_192[0].y)) + _118), 0.0f); + float _256 = max(((((Material_000[1].z) - _119) * (Material_192[0].y)) + _119), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_66 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_64 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_65 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _288 = float((bool)(bool)(frac(dot(float3(_64, _65, _66), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _291 = 1.0f; + _292 = (1.0f - _288); + _293 = 1.0f; + _294 = _288; + } else { + _291 = _253; + _292 = _254; + _293 = _255; + _294 = _256; + } + } else { + _291 = _253; + _292 = _254; + _293 = _255; + _294 = _256; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _318 = 1.0f / TranslucentBasePass_4356; + _329 = exp2(log2(1.0f - exp2((_292 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + _330 = exp2(log2(1.0f - exp2((_293 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + _331 = exp2(log2(1.0f - exp2((_294 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + } else { + _329 = _292; + _330 = _293; + _331 = _294; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _335 = TranslucentBasePass_4372 * _329; + float _336 = TranslucentBasePass_4372 * _330; + float _337 = TranslucentBasePass_4372 * _331; + float _339 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _340 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _377 = 1.0f / TranslucentBasePass_4356; + _388 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _335) + 0.04699999839067459f) * _335) / ((((_340 * _335) + 0.5600000023841858f) * _335) + 0.14000000059604645f)))) * _377); + _389 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _336) + 0.04699999839067459f) * _336) / ((((_340 * _336) + 0.5600000023841858f) * _336) + 0.14000000059604645f)))) * _377); + _390 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _337) + 0.04699999839067459f) * _337) / ((((_340 * _337) + 0.5600000023841858f) * _337) + 0.14000000059604645f)))) * _377); + } else { + _388 = _329; + _389 = _330; + _390 = _331; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _395 = TranslucentBasePass_4384 * _388; + float _396 = TranslucentBasePass_4384 * _389; + float _397 = TranslucentBasePass_4384 * _390; + float _403 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _407 = (_403 / (_395 + -0.19505000114440918f)) + 1.0049500465393066f; + float _408 = (_403 / (_396 + -0.19505000114440918f)) + 1.0049500465393066f; + float _409 = (_403 / (_397 + -0.19505000114440918f)) + 1.0049500465393066f; + float _430 = 1.0f / TranslucentBasePass_4356; + _441 = exp2(log2(saturate(((_395 - _407) * select((TranslucentBasePass_4388 < _395), 0.0f, 1.0f)) + _407)) * _430); + _442 = exp2(log2(saturate(((_396 - _408) * select((TranslucentBasePass_4388 < _396), 0.0f, 1.0f)) + _408)) * _430); + _443 = exp2(log2(saturate(((_397 - _409) * select((TranslucentBasePass_4388 < _397), 0.0f, 1.0f)) + _409)) * _430); + } else { + _441 = _388; + _442 = _389; + _443 = _390; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _448 = TranslucentBasePass_4396 * _441; + float _449 = TranslucentBasePass_4396 * _442; + float _450 = TranslucentBasePass_4396 * _443; + float _485 = exp2(log2(abs(_448)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_448 > 0.0f))) - ((int)(uint)((bool)(_448 < 0.0f))))); + float _486 = exp2(log2(abs(_449)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_449 > 0.0f))) - ((int)(uint)((bool)(_449 < 0.0f))))); + float _487 = exp2(log2(abs(_450)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_450 > 0.0f))) - ((int)(uint)((bool)(_450 < 0.0f))))); + float _488 = TranslucentBasePass_4400 * 5.340000152587891f; + float _489 = _485 * _488; + float _490 = _486 * _488; + float _491 = _487 * _488; + float _513 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _522 = 1.0f / TranslucentBasePass_4356; + _533 = exp2(log2(saturate(_513 + ((((_489 + 2.609099864959717f) * _485) + 0.0013464000076055527f) / (((_489 + 1.1699999570846558f) * _485) + 3.0624001026153564f)))) * _522); + _534 = exp2(log2(saturate(_513 + ((((_490 + 2.609099864959717f) * _486) + 0.0013464000076055527f) / (((_490 + 1.1699999570846558f) * _486) + 3.0624001026153564f)))) * _522); + _535 = exp2(log2(saturate(_513 + ((((_491 + 2.609099864959717f) * _487) + 0.0013464000076055527f) / (((_491 + 1.1699999570846558f) * _487) + 3.0624001026153564f)))) * _522); + } else { + _533 = _441; + _534 = _442; + _535 = _443; + } + } while (false); + } while (false); + } while (false); + } else { + _533 = _292; + _534 = _293; + _535 = _294; + } + SV_Target.x = (-0.0f - min((-0.0f - _533), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _534), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _535), 0.0f)); + SV_Target.w = _291; + SV_Target.w *= HUD_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UI_0x68EC2FEF.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UI_0x68EC2FEF.ps_6_0.hlsl new file mode 100644 index 000000000..6a4a95c7a --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UI_0x68EC2FEF.ps_6_0.hlsl @@ -0,0 +1,1341 @@ +#include "../../common.hlsl" +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + int NiagaraMeshVF_000 : packoffset(c000.x); + float NiagaraMeshVF_004 : packoffset(c000.y); + float NiagaraMeshVF_008 : packoffset(c000.z); + float NiagaraMeshVF_012 : packoffset(c000.w); + float3 NiagaraMeshVF_016 : packoffset(c001.x); + float NiagaraMeshVF_028 : packoffset(c001.w); + float4 NiagaraMeshVF_032 : packoffset(c002.x); + int NiagaraMeshVF_048 : packoffset(c003.x); + int NiagaraMeshVF_052 : packoffset(c003.y); + int NiagaraMeshVF_056 : packoffset(c003.z); + int NiagaraMeshVF_060 : packoffset(c003.w); + float NiagaraMeshVF_064 : packoffset(c004.x); + int NiagaraMeshVF_068 : packoffset(c004.y); + int NiagaraMeshVF_072 : packoffset(c004.z); + int NiagaraMeshVF_076 : packoffset(c004.w); + int NiagaraMeshVF_080 : packoffset(c005.x); + int NiagaraMeshVF_084 : packoffset(c005.y); + int NiagaraMeshVF_088 : packoffset(c005.z); + int NiagaraMeshVF_092 : packoffset(c005.w); + int NiagaraMeshVF_096 : packoffset(c006.x); + int NiagaraMeshVF_100 : packoffset(c006.y); + int NiagaraMeshVF_104 : packoffset(c006.z); + int NiagaraMeshVF_108 : packoffset(c006.w); + int NiagaraMeshVF_112 : packoffset(c007.x); + int NiagaraMeshVF_116 : packoffset(c007.y); + int NiagaraMeshVF_120 : packoffset(c007.z); + int NiagaraMeshVF_124 : packoffset(c007.w); + int NiagaraMeshVF_128 : packoffset(c008.x); + int NiagaraMeshVF_132 : packoffset(c008.y); + int NiagaraMeshVF_136 : packoffset(c008.z); + float NiagaraMeshVF_140 : packoffset(c008.w); + float4 NiagaraMeshVF_144 : packoffset(c009.x); + float3 NiagaraMeshVF_160 : packoffset(c010.x); + float NiagaraMeshVF_172 : packoffset(c010.w); + float4 NiagaraMeshVF_176 : packoffset(c011.x); + float4 NiagaraMeshVF_192 : packoffset(c012.x); + float3 NiagaraMeshVF_208 : packoffset(c013.x); + float NiagaraMeshVF_220 : packoffset(c013.w); + float4 NiagaraMeshVF_224 : packoffset(c014.x); + float4 NiagaraMeshVF_240 : packoffset(c015.x); + float4 NiagaraMeshVF_256 : packoffset(c016.x); + float4 NiagaraMeshVF_272 : packoffset(c017.x); + float NiagaraMeshVF_288 : packoffset(c018.x); + float NiagaraMeshVF_292 : packoffset(c018.y); + float NiagaraMeshVF_296 : packoffset(c018.z); + float NiagaraMeshVF_300 : packoffset(c018.w); + float NiagaraMeshVF_304 : packoffset(c019.x); + float NiagaraMeshVF_308 : packoffset(c019.y); + float NiagaraMeshVF_312 : packoffset(c019.z); + float NiagaraMeshVF_316 : packoffset(c019.w); + float3 NiagaraMeshVF_320 : packoffset(c020.x); + float NiagaraMeshVF_332 : packoffset(c020.w); + int NiagaraMeshVF_336 : packoffset(c021.x); + float NiagaraMeshVF_340 : packoffset(c021.y); + float NiagaraMeshVF_344 : packoffset(c021.z); + float NiagaraMeshVF_348 : packoffset(c021.w); + float3 NiagaraMeshVF_352 : packoffset(c022.x); + int NiagaraMeshVF_364 : packoffset(c022.w); + int NiagaraMeshVF_368 : packoffset(c023.x); + float NiagaraMeshVF_372 : packoffset(c023.y); + int NiagaraMeshVF_376 : packoffset(c023.z); +}; + +cbuffer cb4 : register(b4) { + float4 Material_000[22] : packoffset(c000.x); + float4 Material_352[8] : packoffset(c022.x); +}; + +SamplerState s0 : register(s0); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 TEXCOORD : TEXCOORD, + nointerpolation float4 COLOR_1 : COLOR1, + nointerpolation float4 COLOR_2 : COLOR2, + nointerpolation float4 PARTICLE_VELOCITY : PARTICLE_VELOCITY, + nointerpolation float NIAGARA_LOCAL_TIME : NIAGARA_LOCAL_TIME, + nointerpolation uint NIAGARA_EFFECT_TYPE : NIAGARA_EFFECT_TYPE, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position +) : SV_Target { + float4 SV_Target; + float _65 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _69 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _65) - View_1120.x; + float _70 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _65) - View_1120.y; + float _71 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _65) - View_1120.z; + float _72 = TEXCOORD_9.x - View_1120.x; + float _73 = TEXCOORD_9.y - View_1120.y; + float _74 = TEXCOORD_9.z - View_1120.z; + float _77 = (Material_352[0].x) + 1.0f; + float _83 = (_77 * COLOR_1.x) * (Material_000[3].x); + float _85 = (_77 * COLOR_1.y) * (Material_000[3].y); + float _87 = (_77 * COLOR_1.z) * (Material_000[3].z); + float _98 = (SV_Position.x - View_2144.x) * View_2160.z; + float _99 = (SV_Position.y - View_2144.y) * View_2160.w; + float _107 = _98 - (Primitive_432[0].w); + float _108 = (1.0f - _99) - (Primitive_432[1].x); + float _115 = ((Material_352[1].x) * (TEXCOORD.w - TEXCOORD.x)) + TEXCOORD.x; + float _116 = ((Material_352[1].x) * (TEXCOORD.z - TEXCOORD.y)) + TEXCOORD.y; + float _123 = (_115 + -0.5f) + ((_98 - _115) * (Material_352[1].y)); + float _125 = (_116 + -0.5f) + ((_99 - _116) * (Material_352[1].y)); + float _145 = NIAGARA_LOCAL_TIME * 0.00027777778450399637f; + float _149 = frac(abs(_145)); + float _152 = select((_145 >= (-0.0f - _145)), _149, (-0.0f - _149)) * 3600.0f; + float _157 = ((((Material_352[5].x) - _152) * (Material_352[4].w)) + _152) * (Material_352[5].y); + float _164 = (_157 + select(((NiagaraMeshVF_068 & 1) != 0), COLOR_2.y, 0.0f)) - (_157 * (Material_352[5].z)); + float _178 = (((Material_000[15].x) + ((Material_000[13].x) * (dot(float2(_123, _125), float2((Material_000[7].x), (Material_000[7].y))) + 0.5f))) + (Material_000[17].x)) + (_164 * (Material_000[14].x)); + float _181 = (((Material_000[15].y) + ((Material_000[13].y) * (dot(float2(_123, _125), float2((Material_000[8].x), (Material_000[8].y))) + 0.5f))) + (Material_000[17].y)) + (_164 * (Material_000[14].y)); + float4 _198 = t0.SampleLevel(s0, float2(((_178 + (Material_000[18].x)) + ((saturate(_178) - _178) * (Material_352[5].z))), ((_181 + (Material_000[18].y)) + ((saturate(_181) - _181) * (Material_352[5].z)))), (View_2388 + -1.0f)); + float _208 = dot(float4(_198.x, _198.y, _198.z, _198.w), float4((Material_000[20].x), (Material_000[20].y), (Material_000[20].z), (Material_000[20].w))); + float _219 = (((Material_352[6].y) * COLOR_1.w) * (((Material_352[6].x) * ((_208 * -2.0f) + 1.0f)) + _208)) * (Material_352[6].z); + float _305; + float _306; + float _307; + float _382; + float _383; + float _384; + float _385; + float _420; + float _421; + float _422; + float _479; + float _480; + float _481; + float _532; + float _533; + float _534; + float _624; + float _625; + float _626; + if ((Primitive_432[0].x) > 0.5f) { + _305 = max(((exp2(log2(max(_83, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _306 = max(((exp2(log2(max(_85, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _307 = max(((exp2(log2(max(_87, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _305 = _83; + _306 = _85; + _307 = _87; + } + float _326 = (((Primitive_432[7].w) * ((Primitive_432[6].w) + -1.0f)) + 1.0f) * _305; + float _327 = (((Primitive_432[7].w) * ((Primitive_432[7].x) + -1.0f)) + 1.0f) * _306; + float _328 = (((Primitive_432[7].w) * ((Primitive_432[7].y) + -1.0f)) + 1.0f) * _307; + float _344 = saturate((((Primitive_432[7].w) * ((Primitive_432[7].z) + -1.0f)) + 1.0f) * select(((bool)((Primitive_432[8].y) >= 0.5f) && (bool)(abs((Primitive_432[8].y) + -0.5f) > 9.999999747378752e-06f)), select(((bool)(_108 > (Primitive_432[1].z)) || ((bool)((bool)(_107 > (Primitive_432[1].y)) || ((bool)((bool)(_107 < (-0.0f - (Primitive_432[1].y))) || (bool)(_108 < (-0.0f - (Primitive_432[1].z)))))))), 0.0f, _219), select(((Primitive_432[0].y) > 0.5f), (((1.0f - saturate((abs((((((Primitive_432[3].w) * _72) - (Primitive_432[0].w)) + (Primitive_432[4].z)) + ((Primitive_432[4].w) * _73)) + ((Primitive_432[5].w) * _74)) - (Primitive_432[1].y)) / (Primitive_432[1].w))) * _219) * (1.0f - saturate((abs((((((Primitive_432[4].x) * _72) - (Primitive_432[1].x)) + ((Primitive_432[5].x) * _73)) + (Primitive_432[5].z)) + ((Primitive_432[6].x) * _74)) - (Primitive_432[1].z)) / (Primitive_432[2].x)))), _219))); + float _345 = max(((((Material_000[21].x) - _326) * (Material_352[6].w)) + _326), 0.0f); + float _346 = max(((((Material_000[21].y) - _327) * (Material_352[6].w)) + _327), 0.0f); + float _347 = max(((((Material_000[21].z) - _328) * (Material_352[6].w)) + _328), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_71 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_69 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_70 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _379 = float((bool)(bool)(frac(dot(float3(_69, _70, _71), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _382 = 1.0f; + _383 = (1.0f - _379); + _384 = 1.0f; + _385 = _379; + } else { + _382 = _344; + _383 = _345; + _384 = _346; + _385 = _347; + } + } else { + _382 = _344; + _383 = _345; + _384 = _346; + _385 = _347; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _409 = 1.0f / TranslucentBasePass_4356; + _420 = exp2(log2(1.0f - exp2((_383 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _409); + _421 = exp2(log2(1.0f - exp2((_384 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _409); + _422 = exp2(log2(1.0f - exp2((_385 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _409); + } else { + _420 = _383; + _421 = _384; + _422 = _385; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _426 = TranslucentBasePass_4372 * _420; + float _427 = TranslucentBasePass_4372 * _421; + float _428 = TranslucentBasePass_4372 * _422; + float _430 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _431 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _468 = 1.0f / TranslucentBasePass_4356; + _479 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_430 * _426) + 0.04699999839067459f) * _426) / ((((_431 * _426) + 0.5600000023841858f) * _426) + 0.14000000059604645f)))) * _468); + _480 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_430 * _427) + 0.04699999839067459f) * _427) / ((((_431 * _427) + 0.5600000023841858f) * _427) + 0.14000000059604645f)))) * _468); + _481 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_430 * _428) + 0.04699999839067459f) * _428) / ((((_431 * _428) + 0.5600000023841858f) * _428) + 0.14000000059604645f)))) * _468); + } else { + _479 = _420; + _480 = _421; + _481 = _422; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _486 = TranslucentBasePass_4384 * _479; + float _487 = TranslucentBasePass_4384 * _480; + float _488 = TranslucentBasePass_4384 * _481; + float _494 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _498 = (_494 / (_486 + -0.19505000114440918f)) + 1.0049500465393066f; + float _499 = (_494 / (_487 + -0.19505000114440918f)) + 1.0049500465393066f; + float _500 = (_494 / (_488 + -0.19505000114440918f)) + 1.0049500465393066f; + float _521 = 1.0f / TranslucentBasePass_4356; + _532 = exp2(log2(saturate(((_486 - _498) * select((TranslucentBasePass_4388 < _486), 0.0f, 1.0f)) + _498)) * _521); + _533 = exp2(log2(saturate(((_487 - _499) * select((TranslucentBasePass_4388 < _487), 0.0f, 1.0f)) + _499)) * _521); + _534 = exp2(log2(saturate(((_488 - _500) * select((TranslucentBasePass_4388 < _488), 0.0f, 1.0f)) + _500)) * _521); + } else { + _532 = _479; + _533 = _480; + _534 = _481; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _539 = TranslucentBasePass_4396 * _532; + float _540 = TranslucentBasePass_4396 * _533; + float _541 = TranslucentBasePass_4396 * _534; + float _576 = exp2(log2(abs(_539)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_539 > 0.0f))) - ((int)(uint)((bool)(_539 < 0.0f))))); + float _577 = exp2(log2(abs(_540)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_540 > 0.0f))) - ((int)(uint)((bool)(_540 < 0.0f))))); + float _578 = exp2(log2(abs(_541)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_541 > 0.0f))) - ((int)(uint)((bool)(_541 < 0.0f))))); + float _579 = TranslucentBasePass_4400 * 5.340000152587891f; + float _580 = _576 * _579; + float _581 = _577 * _579; + float _582 = _578 * _579; + float _604 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _613 = 1.0f / TranslucentBasePass_4356; + _624 = exp2(log2(saturate(_604 + ((((_580 + 2.609099864959717f) * _576) + 0.0013464000076055527f) / (((_580 + 1.1699999570846558f) * _576) + 3.0624001026153564f)))) * _613); + _625 = exp2(log2(saturate(_604 + ((((_581 + 2.609099864959717f) * _577) + 0.0013464000076055527f) / (((_581 + 1.1699999570846558f) * _577) + 3.0624001026153564f)))) * _613); + _626 = exp2(log2(saturate(_604 + ((((_582 + 2.609099864959717f) * _578) + 0.0013464000076055527f) / (((_582 + 1.1699999570846558f) * _578) + 3.0624001026153564f)))) * _613); + } else { + _624 = _532; + _625 = _533; + _626 = _534; + } + } while (false); + } while (false); + } while (false); + } else { + _624 = _383; + _625 = _384; + _626 = _385; + } + SV_Target.x = (-0.0f - min((-0.0f - _624), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _625), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _626), 0.0f)); + SV_Target.w = _382; + SV_Target.w *= HUD_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/UImap_0xF98E2AD5.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/UImap_0xF98E2AD5.ps_6_0.hlsl new file mode 100644 index 000000000..c68b66cf3 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/UImap_0xF98E2AD5.ps_6_0.hlsl @@ -0,0 +1,1216 @@ +#include "../../common.hlsl" + +Texture3D t0 : register(t0); + +Texture2D t1 : register(t1); + +Texture2D t2 : register(t2); + +Texture2D t3 : register(t3); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[8] : packoffset(c000.x); + float4 Material_128[4] : packoffset(c008.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +SamplerState s2 : register(s2); + +SamplerState s3 : register(s3); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _84 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _88 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _84) - View_1120.x; + float _89 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _84) - View_1120.y; + float _90 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _84) - View_1120.z; + float _91 = TEXCOORD_9.x - View_1120.x; + float _92 = TEXCOORD_9.y - View_1120.y; + float _93 = TEXCOORD_9.z - View_1120.z; + float _102 = ((Material_000[2].x) * TEXCOORD.x) + (Material_000[3].x); + float _103 = ((Material_000[2].y) * TEXCOORD.y) + (Material_000[3].y); + float4 _106 = t1.SampleBias(s1, float2(_102, _103), View_2388, int2(0, 0)); + float4 _111 = t2.SampleBias(s2, float2(_102, _103), View_2388, int2(0, 0)); + float _118 = (Material_128[1].x) * _111.w; + float _128 = ((_118 * (_111.x - _106.x)) + _106.x) * COLOR.x; + float _129 = ((_118 * (_111.y - _106.y)) + _106.y) * COLOR.y; + float _130 = ((_118 * (_111.z - _106.z)) + _106.z) * COLOR.z; + float _160; + float _161; + float _162; + float _274; + float _275; + float _276; + float _277; + float _315; + float _316; + float _317; + float _318; + float _368; + float _369; + float _370; + if ((Material_128[1].y) > 0.5f) { + _160 = max(((exp2(log2(max(_128, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _161 = max(((exp2(log2(max(_129, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _162 = max(((exp2(log2(max(_130, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _160 = _128; + _161 = _129; + _162 = _130; + } + float4 _210 = t3.SampleBias(s3, float2((((mad(_93, (Primitive_096[2].x), mad(_92, (Primitive_096[1].x), ((Primitive_096[0].x) * _91))) + (Primitive_096[3].x)) - (Material_000[6].x)) / (Material_000[7].x)), (1.0f - (((mad(_93, (Primitive_096[2].y), mad(_92, (Primitive_096[1].y), ((Primitive_096[0].y) * _91))) + (Primitive_096[3].y)) - (Material_000[6].y)) / (Material_000[7].y)))), View_2388, int2(0, 0)); + float _217 = saturate((((_118 * (_111.w - _106.w)) + _106.w) * COLOR.w) * saturate((Material_128[2].w) * _210.x)); + if (TranslucentBasePass_3196 > 0.0f) { + float _225 = mad(_90, (View_064[2].w), mad(_89, (View_064[1].w), (_88 * (View_064[0].w)))) + (View_064[3].w); + float4 _261 = t0.SampleLevel(s0, float3(min((((((mad(_90, (View_064[2].x), mad(_89, (View_064[1].x), (_88 * (View_064[0].x)))) + (View_064[3].x)) / _225) * 0.5f) + 0.5f) * View_3968.x), View_3976.x), min(((0.5f - (((mad(_90, (View_064[2].y), mad(_89, (View_064[1].y), (_88 * (View_064[0].y)))) + (View_064[3].y)) / _225) * 0.5f)) * View_3968.y), View_3976.y), min(((log2((View_3888.x * _225) + View_3888.y) * View_3888.z) * View_3872.z), 1.0f)), 0.0f); + _274 = ((_261.w * TEXCOORD_7.x) + _261.x); + _275 = ((_261.w * TEXCOORD_7.y) + _261.y); + _276 = ((_261.w * TEXCOORD_7.z) + _261.z); + _277 = (_261.w * TEXCOORD_7.w); + } else { + _274 = TEXCOORD_7.x; + _275 = TEXCOORD_7.y; + _276 = TEXCOORD_7.z; + _277 = TEXCOORD_7.w; + } + float _278 = max(((((Material_000[4].x) - _160) * (Material_128[1].z)) + _160), 0.0f); + float _279 = max(((((Material_000[4].y) - _161) * (Material_128[1].z)) + _161), 0.0f); + float _280 = max(((((Material_000[4].z) - _162) * (Material_128[1].z)) + _162), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_90 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_88 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_89 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _312 = float((bool)(bool)(frac(dot(float3(_88, _89, _90), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _315 = 1.0f; + _316 = (1.0f - _312); + _317 = 1.0f; + _318 = _312; + } else { + _315 = _217; + _316 = _278; + _317 = _279; + _318 = _280; + } + } else { + _315 = _217; + _316 = _278; + _317 = _279; + _318 = _280; + } + float _322 = (_316 * _277) + _274; + float _323 = (_317 * _277) + _275; + float _324 = (_318 * _277) + _276; + float _327 = dot(float3(_322, _323, _324), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + float _341 = (lerp(_322, _327, View_4460)) * View_4432.x; + float _342 = (lerp(_323, _327, View_4460)) * View_4432.y; + float _343 = (lerp(_324, _327, View_4460)) * View_4432.z; + if (Primitive_684 == 0) { + float _350 = dot(float3(_341, _342, _343), float3(0.29899999499320984f, 0.5870000123977661f, 0.11400000005960464f)); + _368 = ((lerp(_341, _350, View_4496)) * View_4480.x); + _369 = ((lerp(_342, _350, View_4496)) * View_4480.y); + _370 = ((lerp(_343, _350, View_4496)) * View_4480.z); + } else { + _368 = _341; + _369 = _342; + _370 = _343; + } + SV_Target.x = (-0.0f - min((-0.0f - _368), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _369), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _370), 0.0f)); + SV_Target.w = _315; + SV_Target.w *= HUD_OPACITY; + + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/status_0x17B93191.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/status_0x17B93191.ps_6_0.hlsl new file mode 100644 index 000000000..d6ed6d898 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/status_0x17B93191.ps_6_0.hlsl @@ -0,0 +1,1287 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[2] : packoffset(c000.x); + float4 Material_032[1] : packoffset(c002.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _59 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _63 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _59) - View_1120.x; + float _64 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _59) - View_1120.y; + float _65 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _59) - View_1120.z; + float _74; + float _75; + float _76; + float _127; + float _128; + float _129; + float _187; + float _188; + float _189; + float _190; + float _225; + float _226; + float _227; + float _284; + float _285; + float _286; + float _337; + float _338; + float _339; + float _429; + float _430; + float _431; + if ((Material_032[0].x) < 0.5f) { + _74 = (COLOR.x * COLOR.x); + _75 = (COLOR.y * COLOR.y); + _76 = (COLOR.z * COLOR.z); + } else { + _74 = COLOR.x; + _75 = COLOR.y; + _76 = COLOR.z; + } + float4 _79 = t0.SampleBias(s0, float2(TEXCOORD.x, TEXCOORD.y), View_2388, int2(0, 0)); + float _82 = max(_79.x, _79.y); + float _83 = ceil(_82); + float _87 = ceil(TEXCOORD.z); + float4 _92 = t1.SampleBias(s1, float2((TEXCOORD.z + -1.0f), (TEXCOORD.w + -1.0f)), View_2388, int2(0, 0)); + float _97 = _92.x * _87; + float _98 = _92.y * _87; + float _99 = _92.z * _87; + if ((Material_032[0].x) > 0.5f) { + _127 = max(((exp2(log2(max(_97, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _128 = max(((exp2(log2(max(_98, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _129 = max(((exp2(log2(max(_99, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _127 = _97; + _128 = _98; + _129 = _99; + } + float _130 = _127 + (_83 * _74); + float _131 = _128 + (_83 * _75); + float _132 = _129 + (_83 * _76); + float _149 = saturate(((_92.w * _87) + _82) * COLOR.w); + float _150 = max(((((Material_000[1].x) - _130) * (Material_032[0].y)) + _130), 0.0f); + float _151 = max(((((Material_000[1].y) - _131) * (Material_032[0].y)) + _131), 0.0f); + float _152 = max(((((Material_000[1].z) - _132) * (Material_032[0].y)) + _132), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_65 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_63 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_64 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _184 = float((bool)(bool)(frac(dot(float3(_63, _64, _65), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _187 = 1.0f; + _188 = (1.0f - _184); + _189 = 1.0f; + _190 = _184; + } else { + _187 = _149; + _188 = _150; + _189 = _151; + _190 = _152; + } + } else { + _187 = _149; + _188 = _150; + _189 = _151; + _190 = _152; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _214 = 1.0f / TranslucentBasePass_4356; + _225 = exp2(log2(1.0f - exp2((_188 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _214); + _226 = exp2(log2(1.0f - exp2((_189 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _214); + _227 = exp2(log2(1.0f - exp2((_190 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _214); + } else { + _225 = _188; + _226 = _189; + _227 = _190; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _231 = TranslucentBasePass_4372 * _225; + float _232 = TranslucentBasePass_4372 * _226; + float _233 = TranslucentBasePass_4372 * _227; + float _235 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _236 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _273 = 1.0f / TranslucentBasePass_4356; + _284 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_235 * _231) + 0.04699999839067459f) * _231) / ((((_236 * _231) + 0.5600000023841858f) * _231) + 0.14000000059604645f)))) * _273); + _285 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_235 * _232) + 0.04699999839067459f) * _232) / ((((_236 * _232) + 0.5600000023841858f) * _232) + 0.14000000059604645f)))) * _273); + _286 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_235 * _233) + 0.04699999839067459f) * _233) / ((((_236 * _233) + 0.5600000023841858f) * _233) + 0.14000000059604645f)))) * _273); + } else { + _284 = _225; + _285 = _226; + _286 = _227; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _291 = TranslucentBasePass_4384 * _284; + float _292 = TranslucentBasePass_4384 * _285; + float _293 = TranslucentBasePass_4384 * _286; + float _299 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _303 = (_299 / (_291 + -0.19505000114440918f)) + 1.0049500465393066f; + float _304 = (_299 / (_292 + -0.19505000114440918f)) + 1.0049500465393066f; + float _305 = (_299 / (_293 + -0.19505000114440918f)) + 1.0049500465393066f; + float _326 = 1.0f / TranslucentBasePass_4356; + _337 = exp2(log2(saturate(((_291 - _303) * select((TranslucentBasePass_4388 < _291), 0.0f, 1.0f)) + _303)) * _326); + _338 = exp2(log2(saturate(((_292 - _304) * select((TranslucentBasePass_4388 < _292), 0.0f, 1.0f)) + _304)) * _326); + _339 = exp2(log2(saturate(((_293 - _305) * select((TranslucentBasePass_4388 < _293), 0.0f, 1.0f)) + _305)) * _326); + } else { + _337 = _284; + _338 = _285; + _339 = _286; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _344 = TranslucentBasePass_4396 * _337; + float _345 = TranslucentBasePass_4396 * _338; + float _346 = TranslucentBasePass_4396 * _339; + float _381 = exp2(log2(abs(_344)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_344 > 0.0f))) - ((int)(uint)((bool)(_344 < 0.0f))))); + float _382 = exp2(log2(abs(_345)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_345 > 0.0f))) - ((int)(uint)((bool)(_345 < 0.0f))))); + float _383 = exp2(log2(abs(_346)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_346 > 0.0f))) - ((int)(uint)((bool)(_346 < 0.0f))))); + float _384 = TranslucentBasePass_4400 * 5.340000152587891f; + float _385 = _381 * _384; + float _386 = _382 * _384; + float _387 = _383 * _384; + float _409 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _418 = 1.0f / TranslucentBasePass_4356; + _429 = exp2(log2(saturate(_409 + ((((_385 + 2.609099864959717f) * _381) + 0.0013464000076055527f) / (((_385 + 1.1699999570846558f) * _381) + 3.0624001026153564f)))) * _418); + _430 = exp2(log2(saturate(_409 + ((((_386 + 2.609099864959717f) * _382) + 0.0013464000076055527f) / (((_386 + 1.1699999570846558f) * _382) + 3.0624001026153564f)))) * _418); + _431 = exp2(log2(saturate(_409 + ((((_387 + 2.609099864959717f) * _383) + 0.0013464000076055527f) / (((_387 + 1.1699999570846558f) * _383) + 3.0624001026153564f)))) * _418); + } else { + _429 = _337; + _430 = _338; + _431 = _339; + } + } while (false); + } while (false); + } while (false); + } else { + _429 = _188; + _430 = _189; + _431 = _190; + } + SV_Target.x = (-0.0f - min((-0.0f - _429), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _430), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _431), 0.0f)); + SV_Target.w = _187; + + float2 local = float2( + (SV_Position.x - View_2144.x) * View_2160.z, + (SV_Position.y - View_2144.y) * View_2160.w + ); + + bool isLocation = (local.x <= 0.25f) && (local.y >= 0.975f); + bool isUuid = (local.x >= 0.85f) && (local.y >= 0.95f); + bool isPing = (local.x >= 0.925f) && (local.y <= 0.1f); + + if (isLocation || isUuid || isPing) { + SV_Target.w *= STATUS_TEXT_OPACITY; + } else { + SV_Target.w *= TEXT_OPACITY; + } + + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/text_0x48AFCA5C.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/text_0x48AFCA5C.ps_6_0.hlsl new file mode 100644 index 000000000..0b0c9dfa4 --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/text_0x48AFCA5C.ps_6_0.hlsl @@ -0,0 +1,1283 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +Texture2D t1 : register(t1); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[9] : packoffset(c000.x); + float4 Material_144[4] : packoffset(c009.x); +}; + +SamplerState s0 : register(s0); + +SamplerState s1 : register(s1); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + linear float3 TEXCOORD_9 : TEXCOORD9, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _62 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _66 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _62) - View_1120.x; + float _67 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _62) - View_1120.y; + float _68 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _62) - View_1120.z; + float _69 = TEXCOORD_9.x - View_1120.x; + float _70 = TEXCOORD_9.y - View_1120.y; + float _71 = TEXCOORD_9.z - View_1120.z; + float _80; + float _81; + float _82; + float _133; + float _134; + float _135; + float _291; + float _292; + float _293; + float _294; + float _329; + float _330; + float _331; + float _388; + float _389; + float _390; + float _441; + float _442; + float _443; + float _533; + float _534; + float _535; + if ((Material_144[0].x) < 0.5f) { + _80 = (COLOR.x * COLOR.x); + _81 = (COLOR.y * COLOR.y); + _82 = (COLOR.z * COLOR.z); + } else { + _80 = COLOR.x; + _81 = COLOR.y; + _82 = COLOR.z; + } + float4 _85 = t0.SampleBias(s0, float2(TEXCOORD.x, TEXCOORD.y), View_2388, int2(0, 0)); + float _88 = max(_85.x, _85.y); + float _89 = ceil(_88); + float _93 = ceil(TEXCOORD.z); + float4 _98 = t1.SampleBias(s1, float2((TEXCOORD.z + -1.0f), (TEXCOORD.w + -1.0f)), View_2388, int2(0, 0)); + float _103 = _98.x * _93; + float _104 = _98.y * _93; + float _105 = _98.z * _93; + if ((Material_144[0].x) > 0.5f) { + _133 = max(((exp2(log2(max(_103, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _134 = max(((exp2(log2(max(_104, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _135 = max(((exp2(log2(max(_105, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _133 = _103; + _134 = _104; + _135 = _105; + } + float _136 = _133 + (_89 * _80); + float _137 = _134 + (_89 * _81); + float _138 = _135 + (_89 * _82); + float _167 = ((SV_Position.x - View_2144.x) * View_2160.z) - (Material_000[3].x); + float _168 = (1.0f - ((SV_Position.y - View_2144.y) * View_2160.w)) - (Material_000[3].y); + float _170 = ((_98.w * _93) + _88) * COLOR.w; + float _199 = mad(_71, (Primitive_096[2].x), mad(_70, (Primitive_096[1].x), ((Primitive_096[0].x) * _69))) + (Primitive_096[3].x); + float _203 = mad(_71, (Primitive_096[2].y), mad(_70, (Primitive_096[1].y), ((Primitive_096[0].y) * _69))) + (Primitive_096[3].y); + float _232 = saturate(((1.0f - saturate(((_203 - (Material_000[4].y)) - (Material_000[3].y)) / (Material_000[8].y))) - saturate((((-0.0f - _203) - (Material_000[4].y)) + (Material_000[3].y)) / (Material_000[8].w))) * ((1.0f - saturate((((-0.0f - _199) - (Material_000[4].x)) + (Material_000[3].x)) / (Material_000[8].x))) - saturate(((_199 - (Material_000[4].x)) - (Material_000[3].x)) / (Material_000[8].z)))); + float _236 = (_232 * _232) * (3.0f - (_232 * 2.0f)); + float _253 = saturate(select(((bool)(abs((Material_144[2].w) + -0.5f) > 9.999999747378752e-06f) && (bool)((Material_144[2].w) >= 0.5f)), select(((bool)(_168 > (Material_000[4].y)) || ((bool)((bool)(_167 > (Material_000[4].x)) || ((bool)((bool)(_167 < (-0.0f - (Material_000[4].x))) || (bool)(_168 < (-0.0f - (Material_000[4].y)))))))), 0.0f, _170), (select(((bool)(abs(Material_144[2].z) > 9.999999747378752e-06f) && (bool)((Material_144[2].z) >= 0.0f)), (1.0f - _236), _236) * _170))); + float _254 = max(((((Material_000[1].x) - _136) * (Material_144[0].y)) + _136), 0.0f); + float _255 = max(((((Material_000[1].y) - _137) * (Material_144[0].y)) + _137), 0.0f); + float _256 = max(((((Material_000[1].z) - _138) * (Material_144[0].y)) + _138), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_68 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_66 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_67 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _288 = float((bool)(bool)(frac(dot(float3(_66, _67, _68), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _291 = 1.0f; + _292 = (1.0f - _288); + _293 = 1.0f; + _294 = _288; + } else { + _291 = _253; + _292 = _254; + _293 = _255; + _294 = _256; + } + } else { + _291 = _253; + _292 = _254; + _293 = _255; + _294 = _256; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _318 = 1.0f / TranslucentBasePass_4356; + _329 = exp2(log2(1.0f - exp2((_292 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + _330 = exp2(log2(1.0f - exp2((_293 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + _331 = exp2(log2(1.0f - exp2((_294 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _318); + } else { + _329 = _292; + _330 = _293; + _331 = _294; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _335 = TranslucentBasePass_4372 * _329; + float _336 = TranslucentBasePass_4372 * _330; + float _337 = TranslucentBasePass_4372 * _331; + float _339 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _340 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _377 = 1.0f / TranslucentBasePass_4356; + _388 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _335) + 0.04699999839067459f) * _335) / ((((_340 * _335) + 0.5600000023841858f) * _335) + 0.14000000059604645f)))) * _377); + _389 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _336) + 0.04699999839067459f) * _336) / ((((_340 * _336) + 0.5600000023841858f) * _336) + 0.14000000059604645f)))) * _377); + _390 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_339 * _337) + 0.04699999839067459f) * _337) / ((((_340 * _337) + 0.5600000023841858f) * _337) + 0.14000000059604645f)))) * _377); + } else { + _388 = _329; + _389 = _330; + _390 = _331; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _395 = TranslucentBasePass_4384 * _388; + float _396 = TranslucentBasePass_4384 * _389; + float _397 = TranslucentBasePass_4384 * _390; + float _403 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _407 = (_403 / (_395 + -0.19505000114440918f)) + 1.0049500465393066f; + float _408 = (_403 / (_396 + -0.19505000114440918f)) + 1.0049500465393066f; + float _409 = (_403 / (_397 + -0.19505000114440918f)) + 1.0049500465393066f; + float _430 = 1.0f / TranslucentBasePass_4356; + _441 = exp2(log2(saturate(((_395 - _407) * select((TranslucentBasePass_4388 < _395), 0.0f, 1.0f)) + _407)) * _430); + _442 = exp2(log2(saturate(((_396 - _408) * select((TranslucentBasePass_4388 < _396), 0.0f, 1.0f)) + _408)) * _430); + _443 = exp2(log2(saturate(((_397 - _409) * select((TranslucentBasePass_4388 < _397), 0.0f, 1.0f)) + _409)) * _430); + } else { + _441 = _388; + _442 = _389; + _443 = _390; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _448 = TranslucentBasePass_4396 * _441; + float _449 = TranslucentBasePass_4396 * _442; + float _450 = TranslucentBasePass_4396 * _443; + float _485 = exp2(log2(abs(_448)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_448 > 0.0f))) - ((int)(uint)((bool)(_448 < 0.0f))))); + float _486 = exp2(log2(abs(_449)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_449 > 0.0f))) - ((int)(uint)((bool)(_449 < 0.0f))))); + float _487 = exp2(log2(abs(_450)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_450 > 0.0f))) - ((int)(uint)((bool)(_450 < 0.0f))))); + float _488 = TranslucentBasePass_4400 * 5.340000152587891f; + float _489 = _485 * _488; + float _490 = _486 * _488; + float _491 = _487 * _488; + float _513 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _522 = 1.0f / TranslucentBasePass_4356; + _533 = exp2(log2(saturate(_513 + ((((_489 + 2.609099864959717f) * _485) + 0.0013464000076055527f) / (((_489 + 1.1699999570846558f) * _485) + 3.0624001026153564f)))) * _522); + _534 = exp2(log2(saturate(_513 + ((((_490 + 2.609099864959717f) * _486) + 0.0013464000076055527f) / (((_490 + 1.1699999570846558f) * _486) + 3.0624001026153564f)))) * _522); + _535 = exp2(log2(saturate(_513 + ((((_491 + 2.609099864959717f) * _487) + 0.0013464000076055527f) / (((_491 + 1.1699999570846558f) * _487) + 3.0624001026153564f)))) * _522); + } else { + _533 = _441; + _534 = _442; + _535 = _443; + } + } while (false); + } while (false); + } while (false); + } else { + _533 = _292; + _534 = _293; + _535 = _294; + } + SV_Target.x = (-0.0f - min((-0.0f - _533), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _534), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _535), 0.0f)); + SV_Target.w = _291; + SV_Target.w *= TEXT_OPACITY; + return SV_Target; +} diff --git a/src/games/wutheringwaves/3_2/ui/video_0x75DDAB9A.ps_6_0.hlsl b/src/games/wutheringwaves/3_2/ui/video_0x75DDAB9A.ps_6_0.hlsl new file mode 100644 index 000000000..f45ed0fdb --- /dev/null +++ b/src/games/wutheringwaves/3_2/ui/video_0x75DDAB9A.ps_6_0.hlsl @@ -0,0 +1,1261 @@ +#include "../../common.hlsl" + +Texture2D t0 : register(t0); + +cbuffer cb0 : register(b0) { + float4 View_000[4] : packoffset(c000.x); + float4 View_064[4] : packoffset(c004.x); + float4 View_128[4] : packoffset(c008.x); + float4 View_192[4] : packoffset(c012.x); + float4 View_256[4] : packoffset(c016.x); + float4 View_320[4] : packoffset(c020.x); + float4 View_384[4] : packoffset(c024.x); + float4 View_448[4] : packoffset(c028.x); + float4 View_512[4] : packoffset(c032.x); + float4 View_576[4] : packoffset(c036.x); + float4 View_640[4] : packoffset(c040.x); + float4 View_704[4] : packoffset(c044.x); + float4 View_768[4] : packoffset(c048.x); + float4 View_832[4] : packoffset(c052.x); + float4 View_896[4] : packoffset(c056.x); + float3 View_960 : packoffset(c060.x); + float View_972 : packoffset(c060.w); + float3 View_976 : packoffset(c061.x); + float View_988 : packoffset(c061.w); + float3 View_992 : packoffset(c062.x); + float View_1004 : packoffset(c062.w); + float3 View_1008 : packoffset(c063.x); + float View_1020 : packoffset(c063.w); + float3 View_1024 : packoffset(c064.x); + float View_1036 : packoffset(c064.w); + float4 View_1040 : packoffset(c065.x); + float4 View_1056 : packoffset(c066.x); + float3 View_1072 : packoffset(c067.x); + float View_1084 : packoffset(c067.w); + float3 View_1088 : packoffset(c068.x); + float View_1100 : packoffset(c068.w); + float3 View_1104 : packoffset(c069.x); + float View_1116 : packoffset(c069.w); + float3 View_1120 : packoffset(c070.x); + float View_1132 : packoffset(c070.w); + float4 View_1136[4] : packoffset(c071.x); + float4 View_1200[4] : packoffset(c075.x); + float4 View_1264[4] : packoffset(c079.x); + float4 View_1328[4] : packoffset(c083.x); + float4 View_1392[4] : packoffset(c087.x); + float4 View_1456[4] : packoffset(c091.x); + float4 View_1520[4] : packoffset(c095.x); + float4 View_1584[4] : packoffset(c099.x); + float4 View_1648[4] : packoffset(c103.x); + float4 View_1712[4] : packoffset(c107.x); + float4 View_1776[4] : packoffset(c111.x); + float3 View_1840 : packoffset(c115.x); + float View_1852 : packoffset(c115.w); + float3 View_1856 : packoffset(c116.x); + float View_1868 : packoffset(c116.w); + float3 View_1872 : packoffset(c117.x); + float View_1884 : packoffset(c117.w); + float4 View_1888[4] : packoffset(c118.x); + float4 View_1952[4] : packoffset(c122.x); + float4 View_2016 : packoffset(c126.x); + float4 View_2032[4] : packoffset(c127.x); + float4 View_2096 : packoffset(c131.x); + float4 View_2112 : packoffset(c132.x); + float2 View_2128 : packoffset(c133.x); + float2 View_2136 : packoffset(c133.z); + float4 View_2144 : packoffset(c134.x); + float4 View_2160 : packoffset(c135.x); + int4 View_2176 : packoffset(c136.x); + float4 View_2192 : packoffset(c137.x); + float4 View_2208 : packoffset(c138.x); + float4 View_2224 : packoffset(c139.x); + float4 View_2240 : packoffset(c140.x); + int View_2256 : packoffset(c141.x); + float View_2260 : packoffset(c141.y); + float View_2264 : packoffset(c141.z); + float View_2268 : packoffset(c141.w); + float4 View_2272 : packoffset(c142.x); + float4 View_2288 : packoffset(c143.x); + float4 View_2304 : packoffset(c144.x); + float2 View_2320 : packoffset(c145.x); + float View_2328 : packoffset(c145.z); + float View_2332 : packoffset(c145.w); + float View_2336 : packoffset(c146.x); + float View_2340 : packoffset(c146.y); + float View_2344 : packoffset(c146.z); + float View_2348 : packoffset(c146.w); + float3 View_2352 : packoffset(c147.x); + float View_2364 : packoffset(c147.w); + float View_2368 : packoffset(c148.x); + float View_2372 : packoffset(c148.y); + float View_2376 : packoffset(c148.z); + float View_2380 : packoffset(c148.w); + float View_2384 : packoffset(c149.x); + float View_2388 : packoffset(c149.y); + float View_2392 : packoffset(c149.z); + int View_2396 : packoffset(c149.w); + int View_2400 : packoffset(c150.x); + int View_2404 : packoffset(c150.y); + int View_2408 : packoffset(c150.z); + int View_2412 : packoffset(c150.w); + float View_2416 : packoffset(c151.x); + float View_2420 : packoffset(c151.y); + float View_2424 : packoffset(c151.z); + float View_2428 : packoffset(c151.w); + float4 View_2432 : packoffset(c152.x); + float3 View_2448 : packoffset(c153.x); + float View_2460 : packoffset(c153.w); + float4 View_2464[2] : packoffset(c154.x); + float4 View_2496[2] : packoffset(c156.x); + float4 View_2528 : packoffset(c158.x); + float4 View_2544 : packoffset(c159.x); + int View_2560 : packoffset(c160.x); + float View_2564 : packoffset(c160.y); + float View_2568 : packoffset(c160.z); + float View_2572 : packoffset(c160.w); + float View_2576 : packoffset(c161.x); + float View_2580 : packoffset(c161.y); + float View_2584 : packoffset(c161.z); + float View_2588 : packoffset(c161.w); + float View_2592 : packoffset(c162.x); + float View_2596 : packoffset(c162.y); + float View_2600 : packoffset(c162.z); + float View_2604 : packoffset(c162.w); + float3 View_2608 : packoffset(c163.x); + float View_2620 : packoffset(c163.w); + float View_2624 : packoffset(c164.x); + float View_2628 : packoffset(c164.y); + float View_2632 : packoffset(c164.z); + float View_2636 : packoffset(c164.w); + float View_2640 : packoffset(c165.x); + float View_2644 : packoffset(c165.y); + float View_2648 : packoffset(c165.z); + float View_2652 : packoffset(c165.w); + float View_2656 : packoffset(c166.x); + float View_2660 : packoffset(c166.y); + float View_2664 : packoffset(c166.z); + float View_2668 : packoffset(c166.w); + float4 View_2672[2] : packoffset(c167.x); + float4 View_2704[2] : packoffset(c169.x); + float4 View_2736[2] : packoffset(c171.x); + float4 View_2768[2] : packoffset(c173.x); + float4 View_2800[2] : packoffset(c175.x); + float4 View_2832 : packoffset(c177.x); + float3 View_2848 : packoffset(c178.x); + float View_2860 : packoffset(c178.w); + float4 View_2864 : packoffset(c179.x); + float4 View_2880[4] : packoffset(c180.x); + float4 View_2944 : packoffset(c184.x); + float View_2960 : packoffset(c185.x); + float View_2964 : packoffset(c185.y); + float View_2968 : packoffset(c185.z); + float View_2972 : packoffset(c185.w); + float4 View_2976 : packoffset(c186.x); + float View_2992 : packoffset(c187.x); + float View_2996 : packoffset(c187.y); + float View_3000 : packoffset(c187.z); + float View_3004 : packoffset(c187.w); + float View_3008 : packoffset(c188.x); + float View_3012 : packoffset(c188.y); + int View_3016 : packoffset(c188.z); + int View_3020 : packoffset(c188.w); + float3 View_3024 : packoffset(c189.x); + float View_3036 : packoffset(c189.w); + float View_3040 : packoffset(c190.x); + float View_3044 : packoffset(c190.y); + float View_3048 : packoffset(c190.z); + float View_3052 : packoffset(c190.w); + float4 View_3056 : packoffset(c191.x); + float View_3072 : packoffset(c192.x); + float View_3076 : packoffset(c192.y); + float View_3080 : packoffset(c192.z); + float View_3084 : packoffset(c192.w); + float4 View_3088 : packoffset(c193.x); + float View_3104 : packoffset(c194.x); + float View_3108 : packoffset(c194.y); + float View_3112 : packoffset(c194.z); + float View_3116 : packoffset(c194.w); + float4 View_3120 : packoffset(c195.x); + float4 View_3136 : packoffset(c196.x); + float4 View_3152 : packoffset(c197.x); + float4 View_3168 : packoffset(c198.x); + float View_3184 : packoffset(c199.x); + float View_3188 : packoffset(c199.y); + float View_3192 : packoffset(c199.z); + float View_3196 : packoffset(c199.w); + float View_3200 : packoffset(c200.x); + float View_3204 : packoffset(c200.y); + float View_3208 : packoffset(c200.z); + float View_3212 : packoffset(c200.w); + float4 View_3216 : packoffset(c201.x); + float4 View_3232[7] : packoffset(c202.x); + float View_3344 : packoffset(c209.x); + float View_3348 : packoffset(c209.y); + float View_3352 : packoffset(c209.z); + float View_3356 : packoffset(c209.w); + int View_3360 : packoffset(c210.x); + float View_3364 : packoffset(c210.y); + float View_3368 : packoffset(c210.z); + float View_3372 : packoffset(c210.w); + float3 View_3376 : packoffset(c211.x); + int View_3388 : packoffset(c211.w); + float4 View_3392[6] : packoffset(c212.x); + float4 View_3488[6] : packoffset(c218.x); + float4 View_3584[6] : packoffset(c224.x); + float4 View_3680[6] : packoffset(c230.x); + float View_3776 : packoffset(c236.x); + float View_3780 : packoffset(c236.y); + int View_3784 : packoffset(c236.z); + float View_3788 : packoffset(c236.w); + float3 View_3792 : packoffset(c237.x); + float View_3804 : packoffset(c237.w); + float3 View_3808 : packoffset(c238.x); + float View_3820 : packoffset(c238.w); + float View_3824 : packoffset(c239.x); + float View_3828 : packoffset(c239.y); + int View_3832 : packoffset(c239.z); + float View_3836 : packoffset(c239.w); + float View_3840 : packoffset(c240.x); + float View_3844 : packoffset(c240.y); + float View_3848 : packoffset(c240.z); + float View_3852 : packoffset(c240.w); + int2 View_3856 : packoffset(c241.x); + float View_3864 : packoffset(c241.z); + float View_3868 : packoffset(c241.w); + float3 View_3872 : packoffset(c242.x); + float View_3884 : packoffset(c242.w); + float3 View_3888 : packoffset(c243.x); + float View_3900 : packoffset(c243.w); + float2 View_3904 : packoffset(c244.x); + float2 View_3912 : packoffset(c244.z); + float2 View_3920 : packoffset(c245.x); + float2 View_3928 : packoffset(c245.z); + float2 View_3936 : packoffset(c246.x); + float View_3944 : packoffset(c246.z); + float View_3948 : packoffset(c246.w); + float3 View_3952 : packoffset(c247.x); + float View_3964 : packoffset(c247.w); + float2 View_3968 : packoffset(c248.x); + float2 View_3976 : packoffset(c248.z); + float View_3984 : packoffset(c249.x); + float View_3988 : packoffset(c249.y); + float View_3992 : packoffset(c249.z); + float View_3996 : packoffset(c249.w); + float3 View_4000 : packoffset(c250.x); + float View_4012 : packoffset(c250.w); + float3 View_4016 : packoffset(c251.x); + float View_4028 : packoffset(c251.w); + float3 View_4032 : packoffset(c252.x); + float View_4044 : packoffset(c252.w); + float3 View_4048 : packoffset(c253.x); + float View_4060 : packoffset(c253.w); + float View_4064 : packoffset(c254.x); + float View_4068 : packoffset(c254.y); + float View_4072 : packoffset(c254.z); + float View_4076 : packoffset(c254.w); + float4 View_4080[4] : packoffset(c255.x); + float4 View_4144[2] : packoffset(c259.x); + int View_4176 : packoffset(c261.x); + float View_4180 : packoffset(c261.y); + float View_4184 : packoffset(c261.z); + float View_4188 : packoffset(c261.w); + float4 View_4192 : packoffset(c262.x); + float2 View_4208 : packoffset(c263.x); + float View_4216 : packoffset(c263.z); + float View_4220 : packoffset(c263.w); + float4 View_4224 : packoffset(c264.x); + int View_4240 : packoffset(c265.x); + float View_4244 : packoffset(c265.y); + float View_4248 : packoffset(c265.z); + float View_4252 : packoffset(c265.w); + float4 View_4256 : packoffset(c266.x); + int View_4272 : packoffset(c267.x); + int View_4276 : packoffset(c267.y); + int View_4280 : packoffset(c267.z); + float View_4284 : packoffset(c267.w); + float View_4288 : packoffset(c268.x); + float View_4292 : packoffset(c268.y); + float View_4296 : packoffset(c268.z); + float View_4300 : packoffset(c268.w); + float4 View_4304 : packoffset(c269.x); + float4 View_4320 : packoffset(c270.x); + float4 View_4336 : packoffset(c271.x); + float4 View_4352 : packoffset(c272.x); + float4 View_4368 : packoffset(c273.x); + float4 View_4384 : packoffset(c274.x); + int View_4400 : packoffset(c275.x); + float View_4404 : packoffset(c275.y); + float View_4408 : packoffset(c275.z); + float View_4412 : packoffset(c275.w); + float4 View_4416 : packoffset(c276.x); + float4 View_4432 : packoffset(c277.x); + float View_4448 : packoffset(c278.x); + float View_4452 : packoffset(c278.y); + float View_4456 : packoffset(c278.z); + float View_4460 : packoffset(c278.w); + int View_4464 : packoffset(c279.x); + float View_4468 : packoffset(c279.y); + float View_4472 : packoffset(c279.z); + float View_4476 : packoffset(c279.w); + float4 View_4480 : packoffset(c280.x); + float View_4496 : packoffset(c281.x); + float View_4500 : packoffset(c281.y); + float View_4504 : packoffset(c281.z); + float View_4508 : packoffset(c281.w); + float View_4512 : packoffset(c282.x); + float View_4516 : packoffset(c282.y); + float View_4520 : packoffset(c282.z); + float View_4524 : packoffset(c282.w); + float4 View_4528 : packoffset(c283.x); + int View_4544 : packoffset(c284.x); + int View_4548 : packoffset(c284.y); + int View_4552 : packoffset(c284.z); + float View_4556 : packoffset(c284.w); + float View_4560 : packoffset(c285.x); + float View_4564 : packoffset(c285.y); + float View_4568 : packoffset(c285.z); + float View_4572 : packoffset(c285.w); + float4 View_4576 : packoffset(c286.x); + float4 View_4592 : packoffset(c287.x); + float4 View_4608 : packoffset(c288.x); + float4 View_4624 : packoffset(c289.x); + float View_4640 : packoffset(c290.x); + float View_4644 : packoffset(c290.y); + float View_4648 : packoffset(c290.z); + float View_4652 : packoffset(c290.w); + float4 View_4656 : packoffset(c291.x); + float4 View_4672 : packoffset(c292.x); + float4 View_4688 : packoffset(c293.x); + float4 View_4704 : packoffset(c294.x); + float4 View_4720 : packoffset(c295.x); + float View_4736 : packoffset(c296.x); + float View_4740 : packoffset(c296.y); + float View_4744 : packoffset(c296.z); + float View_4748 : packoffset(c296.w); + float4 View_4752 : packoffset(c297.x); + float4 View_4768 : packoffset(c298.x); + float View_4784 : packoffset(c299.x); + float View_4788 : packoffset(c299.y); + float View_4792 : packoffset(c299.z); + float View_4796 : packoffset(c299.w); + float4 View_4800 : packoffset(c300.x); + float4 View_4816 : packoffset(c301.x); + float View_4832 : packoffset(c302.x); + float View_4836 : packoffset(c302.y); + float View_4840 : packoffset(c302.z); + float View_4844 : packoffset(c302.w); + float View_4848 : packoffset(c303.x); + float View_4852 : packoffset(c303.y); + float View_4856 : packoffset(c303.z); + float View_4860 : packoffset(c303.w); + float View_4864 : packoffset(c304.x); + float View_4868 : packoffset(c304.y); + float View_4872 : packoffset(c304.z); + float View_4876 : packoffset(c304.w); + float View_4880 : packoffset(c305.x); + float View_4884 : packoffset(c305.y); + float View_4888 : packoffset(c305.z); + float View_4892 : packoffset(c305.w); + float View_4896 : packoffset(c306.x); + float View_4900 : packoffset(c306.y); + float View_4904 : packoffset(c306.z); + float View_4908 : packoffset(c306.w); + float View_4912 : packoffset(c307.x); + float View_4916 : packoffset(c307.y); + float View_4920 : packoffset(c307.z); + float View_4924 : packoffset(c307.w); + float View_4928 : packoffset(c308.x); + float View_4932 : packoffset(c308.y); + float View_4936 : packoffset(c308.z); + float View_4940 : packoffset(c308.w); + float View_4944 : packoffset(c309.x); + float View_4948 : packoffset(c309.y); + float View_4952 : packoffset(c309.z); + float View_4956 : packoffset(c309.w); + float View_4960 : packoffset(c310.x); + float View_4964 : packoffset(c310.y); + float View_4968 : packoffset(c310.z); + float View_4972 : packoffset(c310.w); + float View_4976 : packoffset(c311.x); + float View_4980 : packoffset(c311.y); + float View_4984 : packoffset(c311.z); + float View_4988 : packoffset(c311.w); + float View_4992 : packoffset(c312.x); + float View_4996 : packoffset(c312.y); + float View_5000 : packoffset(c312.z); + float View_5004 : packoffset(c312.w); + float View_5008 : packoffset(c313.x); + float View_5012 : packoffset(c313.y); + float View_5016 : packoffset(c313.z); + float View_5020 : packoffset(c313.w); + float View_5024 : packoffset(c314.x); + float View_5028 : packoffset(c314.y); + float View_5032 : packoffset(c314.z); + float View_5036 : packoffset(c314.w); + float View_5040 : packoffset(c315.x); + float View_5044 : packoffset(c315.y); + float View_5048 : packoffset(c315.z); + float View_5052 : packoffset(c315.w); + float View_5056 : packoffset(c316.x); + float View_5060 : packoffset(c316.y); + float View_5064 : packoffset(c316.z); + float View_5068 : packoffset(c316.w); + float View_5072 : packoffset(c317.x); + float View_5076 : packoffset(c317.y); + float View_5080 : packoffset(c317.z); + float View_5084 : packoffset(c317.w); + float View_5088 : packoffset(c318.x); + float View_5092 : packoffset(c318.y); + float View_5096 : packoffset(c318.z); + float View_5100 : packoffset(c318.w); + float View_5104 : packoffset(c319.x); + float View_5108 : packoffset(c319.y); + float View_5112 : packoffset(c319.z); + float View_5116 : packoffset(c319.w); + float View_5120 : packoffset(c320.x); + float View_5124 : packoffset(c320.y); + float View_5128 : packoffset(c320.z); + float View_5132 : packoffset(c320.w); + float View_5136 : packoffset(c321.x); + float View_5140 : packoffset(c321.y); + float View_5144 : packoffset(c321.z); + float View_5148 : packoffset(c321.w); + float View_5152 : packoffset(c322.x); + float View_5156 : packoffset(c322.y); + float View_5160 : packoffset(c322.z); + float View_5164 : packoffset(c322.w); + float View_5168 : packoffset(c323.x); + float View_5172 : packoffset(c323.y); + float View_5176 : packoffset(c323.z); + float View_5180 : packoffset(c323.w); + float View_5184 : packoffset(c324.x); + float View_5188 : packoffset(c324.y); + float View_5192 : packoffset(c324.z); + float View_5196 : packoffset(c324.w); + float View_5200 : packoffset(c325.x); + float View_5204 : packoffset(c325.y); + float View_5208 : packoffset(c325.z); + float View_5212 : packoffset(c325.w); + float View_5216 : packoffset(c326.x); + float View_5220 : packoffset(c326.y); + float View_5224 : packoffset(c326.z); + float View_5228 : packoffset(c326.w); + float View_5232 : packoffset(c327.x); + float View_5236 : packoffset(c327.y); + float View_5240 : packoffset(c327.z); + float View_5244 : packoffset(c327.w); + float View_5248 : packoffset(c328.x); + float View_5252 : packoffset(c328.y); + float View_5256 : packoffset(c328.z); + float View_5260 : packoffset(c328.w); + float View_5264 : packoffset(c329.x); + float View_5268 : packoffset(c329.y); + float View_5272 : packoffset(c329.z); + float View_5276 : packoffset(c329.w); + float View_5280 : packoffset(c330.x); + float View_5284 : packoffset(c330.y); + float View_5288 : packoffset(c330.z); + float View_5292 : packoffset(c330.w); + float View_5296 : packoffset(c331.x); + float View_5300 : packoffset(c331.y); + float View_5304 : packoffset(c331.z); + float View_5308 : packoffset(c331.w); + float View_5312 : packoffset(c332.x); + float View_5316 : packoffset(c332.y); + float View_5320 : packoffset(c332.z); + float View_5324 : packoffset(c332.w); + float View_5328 : packoffset(c333.x); + float View_5332 : packoffset(c333.y); + float View_5336 : packoffset(c333.z); + float View_5340 : packoffset(c333.w); + float View_5344 : packoffset(c334.x); + float View_5348 : packoffset(c334.y); + float View_5352 : packoffset(c334.z); + float View_5356 : packoffset(c334.w); + float View_5360 : packoffset(c335.x); + float View_5364 : packoffset(c335.y); + float View_5368 : packoffset(c335.z); + float View_5372 : packoffset(c335.w); + float View_5376 : packoffset(c336.x); + float View_5380 : packoffset(c336.y); + float View_5384 : packoffset(c336.z); + float View_5388 : packoffset(c336.w); + float View_5392 : packoffset(c337.x); + float View_5396 : packoffset(c337.y); + float View_5400 : packoffset(c337.z); + float View_5404 : packoffset(c337.w); + float View_5408 : packoffset(c338.x); + float View_5412 : packoffset(c338.y); + float View_5416 : packoffset(c338.z); + float View_5420 : packoffset(c338.w); + float View_5424 : packoffset(c339.x); + float View_5428 : packoffset(c339.y); + float View_5432 : packoffset(c339.z); + float View_5436 : packoffset(c339.w); + float View_5440 : packoffset(c340.x); + float View_5444 : packoffset(c340.y); + float View_5448 : packoffset(c340.z); + float View_5452 : packoffset(c340.w); + float View_5456 : packoffset(c341.x); + float View_5460 : packoffset(c341.y); + float View_5464 : packoffset(c341.z); + float View_5468 : packoffset(c341.w); + float View_5472 : packoffset(c342.x); + float View_5476 : packoffset(c342.y); + float View_5480 : packoffset(c342.z); + float View_5484 : packoffset(c342.w); + float View_5488 : packoffset(c343.x); + float View_5492 : packoffset(c343.y); + float View_5496 : packoffset(c343.z); + float View_5500 : packoffset(c343.w); + float4 View_5504 : packoffset(c344.x); + float View_5520 : packoffset(c345.x); + float View_5524 : packoffset(c345.y); + float View_5528 : packoffset(c345.z); + float View_5532 : packoffset(c345.w); + float4 View_5536 : packoffset(c346.x); + float View_5552 : packoffset(c347.x); + float View_5556 : packoffset(c347.y); + float View_5560 : packoffset(c347.z); + float View_5564 : packoffset(c347.w); + float View_5568 : packoffset(c348.x); + float View_5572 : packoffset(c348.y); + float View_5576 : packoffset(c348.z); + float View_5580 : packoffset(c348.w); + float View_5584 : packoffset(c349.x); + float View_5588 : packoffset(c349.y); + float View_5592 : packoffset(c349.z); + float View_5596 : packoffset(c349.w); + float2 View_5600 : packoffset(c350.x); + float View_5608 : packoffset(c350.z); + float View_5612 : packoffset(c350.w); + float3 View_5616 : packoffset(c351.x); + float View_5628 : packoffset(c351.w); + float3 View_5632 : packoffset(c352.x); + float View_5644 : packoffset(c352.w); + float3 View_5648 : packoffset(c353.x); + float View_5660 : packoffset(c353.w); + float View_5664 : packoffset(c354.x); + float View_5668 : packoffset(c354.y); + float View_5672 : packoffset(c354.z); + float View_5676 : packoffset(c354.w); + float View_5680 : packoffset(c355.x); + float View_5684 : packoffset(c355.y); + float View_5688 : packoffset(c355.z); + float View_5692 : packoffset(c355.w); + float4 View_5696 : packoffset(c356.x); + float3 View_5712 : packoffset(c357.x); + float View_5724 : packoffset(c357.w); + float View_5728 : packoffset(c358.x); +}; + +cbuffer cb1 : register(b1) { + int TranslucentBasePass_000 : packoffset(c000.x); + int TranslucentBasePass_004 : packoffset(c000.y); + int TranslucentBasePass_008 : packoffset(c000.z); + int TranslucentBasePass_012 : packoffset(c000.w); + int TranslucentBasePass_016 : packoffset(c001.x); + float TranslucentBasePass_020 : packoffset(c001.y); + float TranslucentBasePass_024 : packoffset(c001.z); + float TranslucentBasePass_028 : packoffset(c001.w); + int3 TranslucentBasePass_032 : packoffset(c002.x); + int TranslucentBasePass_044 : packoffset(c002.w); + int TranslucentBasePass_048 : packoffset(c003.x); + float TranslucentBasePass_052 : packoffset(c003.y); + float TranslucentBasePass_056 : packoffset(c003.z); + float TranslucentBasePass_060 : packoffset(c003.w); + float3 TranslucentBasePass_064 : packoffset(c004.x); + float TranslucentBasePass_076 : packoffset(c004.w); + float3 TranslucentBasePass_080 : packoffset(c005.x); + float TranslucentBasePass_092 : packoffset(c005.w); + float3 TranslucentBasePass_096 : packoffset(c006.x); + float TranslucentBasePass_108 : packoffset(c006.w); + float4 TranslucentBasePass_112 : packoffset(c007.x); + float TranslucentBasePass_128 : packoffset(c008.x); + int TranslucentBasePass_132 : packoffset(c008.y); + float2 TranslucentBasePass_136 : packoffset(c008.z); + int TranslucentBasePass_144 : packoffset(c009.x); + float TranslucentBasePass_148 : packoffset(c009.y); + float TranslucentBasePass_152 : packoffset(c009.z); + float TranslucentBasePass_156 : packoffset(c009.w); + float4 TranslucentBasePass_160 : packoffset(c010.x); + float4 TranslucentBasePass_176 : packoffset(c011.x); + float4 TranslucentBasePass_192[4][6] : packoffset(c012.x); + float4 TranslucentBasePass_576[6] : packoffset(c036.x); + float4 TranslucentBasePass_672 : packoffset(c042.x); + float TranslucentBasePass_688 : packoffset(c043.x); + int TranslucentBasePass_692 : packoffset(c043.y); + int TranslucentBasePass_696 : packoffset(c043.z); + int TranslucentBasePass_700 : packoffset(c043.w); + float4 TranslucentBasePass_704 : packoffset(c044.x); + float4 TranslucentBasePass_720[4] : packoffset(c045.x); + int TranslucentBasePass_784 : packoffset(c049.x); + float TranslucentBasePass_788 : packoffset(c049.y); + float TranslucentBasePass_792 : packoffset(c049.z); + float TranslucentBasePass_796 : packoffset(c049.w); + float4 TranslucentBasePass_800 : packoffset(c050.x); + float4 TranslucentBasePass_816 : packoffset(c051.x); + float4 TranslucentBasePass_832[4] : packoffset(c052.x); + float4 TranslucentBasePass_896[4] : packoffset(c056.x); + float4 TranslucentBasePass_960 : packoffset(c060.x); + float4 TranslucentBasePass_976[4] : packoffset(c061.x); + float TranslucentBasePass_1040 : packoffset(c065.x); + float TranslucentBasePass_1044 : packoffset(c065.y); + float TranslucentBasePass_1048 : packoffset(c065.z); + float TranslucentBasePass_1052 : packoffset(c065.w); + float TranslucentBasePass_1056 : packoffset(c066.x); + float TranslucentBasePass_1060 : packoffset(c066.y); + float TranslucentBasePass_1064 : packoffset(c066.z); + float TranslucentBasePass_1068 : packoffset(c066.w); + float TranslucentBasePass_1072 : packoffset(c067.x); + float TranslucentBasePass_1076 : packoffset(c067.y); + float TranslucentBasePass_1080 : packoffset(c067.z); + float TranslucentBasePass_1084 : packoffset(c067.w); + float TranslucentBasePass_1088 : packoffset(c068.x); + float TranslucentBasePass_1092 : packoffset(c068.y); + float TranslucentBasePass_1096 : packoffset(c068.z); + float TranslucentBasePass_1100 : packoffset(c068.w); + float TranslucentBasePass_1104 : packoffset(c069.x); + float TranslucentBasePass_1108 : packoffset(c069.y); + float TranslucentBasePass_1112 : packoffset(c069.z); + float TranslucentBasePass_1116 : packoffset(c069.w); + float TranslucentBasePass_1120 : packoffset(c070.x); + float TranslucentBasePass_1124 : packoffset(c070.y); + float TranslucentBasePass_1128 : packoffset(c070.z); + float TranslucentBasePass_1132 : packoffset(c070.w); + float TranslucentBasePass_1136 : packoffset(c071.x); + float TranslucentBasePass_1140 : packoffset(c071.y); + float TranslucentBasePass_1144 : packoffset(c071.z); + float TranslucentBasePass_1148 : packoffset(c071.w); + int TranslucentBasePass_1152 : packoffset(c072.x); + int TranslucentBasePass_1156 : packoffset(c072.y); + int TranslucentBasePass_1160 : packoffset(c072.z); + int TranslucentBasePass_1164 : packoffset(c072.w); + int TranslucentBasePass_1168 : packoffset(c073.x); + float TranslucentBasePass_1172 : packoffset(c073.y); + float TranslucentBasePass_1176 : packoffset(c073.z); + float TranslucentBasePass_1180 : packoffset(c073.w); + int3 TranslucentBasePass_1184 : packoffset(c074.x); + int TranslucentBasePass_1196 : packoffset(c074.w); + int TranslucentBasePass_1200 : packoffset(c075.x); + float TranslucentBasePass_1204 : packoffset(c075.y); + float TranslucentBasePass_1208 : packoffset(c075.z); + float TranslucentBasePass_1212 : packoffset(c075.w); + float3 TranslucentBasePass_1216 : packoffset(c076.x); + float TranslucentBasePass_1228 : packoffset(c076.w); + float3 TranslucentBasePass_1232 : packoffset(c077.x); + float TranslucentBasePass_1244 : packoffset(c077.w); + float3 TranslucentBasePass_1248 : packoffset(c078.x); + float TranslucentBasePass_1260 : packoffset(c078.w); + float4 TranslucentBasePass_1264 : packoffset(c079.x); + float TranslucentBasePass_1280 : packoffset(c080.x); + int TranslucentBasePass_1284 : packoffset(c080.y); + float2 TranslucentBasePass_1288 : packoffset(c080.z); + int TranslucentBasePass_1296 : packoffset(c081.x); + float TranslucentBasePass_1300 : packoffset(c081.y); + float TranslucentBasePass_1304 : packoffset(c081.z); + float TranslucentBasePass_1308 : packoffset(c081.w); + float4 TranslucentBasePass_1312 : packoffset(c082.x); + float4 TranslucentBasePass_1328 : packoffset(c083.x); + float4 TranslucentBasePass_1344[4][6] : packoffset(c084.x); + float4 TranslucentBasePass_1728[6] : packoffset(c108.x); + float4 TranslucentBasePass_1824 : packoffset(c114.x); + float TranslucentBasePass_1840 : packoffset(c115.x); + int TranslucentBasePass_1844 : packoffset(c115.y); + int TranslucentBasePass_1848 : packoffset(c115.z); + int TranslucentBasePass_1852 : packoffset(c115.w); + float4 TranslucentBasePass_1856 : packoffset(c116.x); + float4 TranslucentBasePass_1872[4] : packoffset(c117.x); + int TranslucentBasePass_1936 : packoffset(c121.x); + float TranslucentBasePass_1940 : packoffset(c121.y); + float TranslucentBasePass_1944 : packoffset(c121.z); + float TranslucentBasePass_1948 : packoffset(c121.w); + float4 TranslucentBasePass_1952 : packoffset(c122.x); + float4 TranslucentBasePass_1968 : packoffset(c123.x); + float4 TranslucentBasePass_1984[4] : packoffset(c124.x); + float4 TranslucentBasePass_2048[4] : packoffset(c128.x); + float4 TranslucentBasePass_2112 : packoffset(c132.x); + float4 TranslucentBasePass_2128[4] : packoffset(c133.x); + float TranslucentBasePass_2192 : packoffset(c137.x); + float TranslucentBasePass_2196 : packoffset(c137.y); + float TranslucentBasePass_2200 : packoffset(c137.z); + float TranslucentBasePass_2204 : packoffset(c137.w); + float TranslucentBasePass_2208 : packoffset(c138.x); + float TranslucentBasePass_2212 : packoffset(c138.y); + float TranslucentBasePass_2216 : packoffset(c138.z); + float TranslucentBasePass_2220 : packoffset(c138.w); + float TranslucentBasePass_2224 : packoffset(c139.x); + float TranslucentBasePass_2228 : packoffset(c139.y); + float TranslucentBasePass_2232 : packoffset(c139.z); + float TranslucentBasePass_2236 : packoffset(c139.w); + float TranslucentBasePass_2240 : packoffset(c140.x); + float TranslucentBasePass_2244 : packoffset(c140.y); + float TranslucentBasePass_2248 : packoffset(c140.z); + float TranslucentBasePass_2252 : packoffset(c140.w); + float TranslucentBasePass_2256 : packoffset(c141.x); + float TranslucentBasePass_2260 : packoffset(c141.y); + float TranslucentBasePass_2264 : packoffset(c141.z); + float TranslucentBasePass_2268 : packoffset(c141.w); + float TranslucentBasePass_2272 : packoffset(c142.x); + float TranslucentBasePass_2276 : packoffset(c142.y); + float TranslucentBasePass_2280 : packoffset(c142.z); + float TranslucentBasePass_2284 : packoffset(c142.w); + float TranslucentBasePass_2288 : packoffset(c143.x); + float TranslucentBasePass_2292 : packoffset(c143.y); + float TranslucentBasePass_2296 : packoffset(c143.z); + float TranslucentBasePass_2300 : packoffset(c143.w); + float4 TranslucentBasePass_2304 : packoffset(c144.x); + float TranslucentBasePass_2320 : packoffset(c145.x); + float TranslucentBasePass_2324 : packoffset(c145.y); + float TranslucentBasePass_2328 : packoffset(c145.z); + float TranslucentBasePass_2332 : packoffset(c145.w); + float4 TranslucentBasePass_2336 : packoffset(c146.x); + float TranslucentBasePass_2352 : packoffset(c147.x); + float TranslucentBasePass_2356 : packoffset(c147.y); + float TranslucentBasePass_2360 : packoffset(c147.z); + float TranslucentBasePass_2364 : packoffset(c147.w); + float TranslucentBasePass_2368 : packoffset(c148.x); + float TranslucentBasePass_2372 : packoffset(c148.y); + float TranslucentBasePass_2376 : packoffset(c148.z); + float TranslucentBasePass_2380 : packoffset(c148.w); + float TranslucentBasePass_2384 : packoffset(c149.x); + float TranslucentBasePass_2388 : packoffset(c149.y); + float TranslucentBasePass_2392 : packoffset(c149.z); + float TranslucentBasePass_2396 : packoffset(c149.w); + float TranslucentBasePass_2400 : packoffset(c150.x); + float TranslucentBasePass_2404 : packoffset(c150.y); + float TranslucentBasePass_2408 : packoffset(c150.z); + float TranslucentBasePass_2412 : packoffset(c150.w); + float4 TranslucentBasePass_2416 : packoffset(c151.x); + float4 TranslucentBasePass_2432 : packoffset(c152.x); + float4 TranslucentBasePass_2448 : packoffset(c153.x); + float4 TranslucentBasePass_2464 : packoffset(c154.x); + float4 TranslucentBasePass_2480[3] : packoffset(c155.x); + float3 TranslucentBasePass_2528 : packoffset(c158.x); + float TranslucentBasePass_2540 : packoffset(c158.w); + float2 TranslucentBasePass_2544 : packoffset(c159.x); + float TranslucentBasePass_2552 : packoffset(c159.z); + float TranslucentBasePass_2556 : packoffset(c159.w); + float4 TranslucentBasePass_2560[4][2] : packoffset(c160.x); + float4 TranslucentBasePass_2688[2] : packoffset(c168.x); + float2 TranslucentBasePass_2720 : packoffset(c170.x); + int TranslucentBasePass_2728 : packoffset(c170.z); + float TranslucentBasePass_2732 : packoffset(c170.w); + float TranslucentBasePass_2736 : packoffset(c171.x); + float TranslucentBasePass_2740 : packoffset(c171.y); + float TranslucentBasePass_2744 : packoffset(c171.z); + float TranslucentBasePass_2748 : packoffset(c171.w); + float4 TranslucentBasePass_2752 : packoffset(c172.x); + float4 TranslucentBasePass_2768 : packoffset(c173.x); + float4 TranslucentBasePass_2784 : packoffset(c174.x); + float4 TranslucentBasePass_2800 : packoffset(c175.x); + float4 TranslucentBasePass_2816 : packoffset(c176.x); + float4 TranslucentBasePass_2832 : packoffset(c177.x); + float2 TranslucentBasePass_2848 : packoffset(c178.x); + float TranslucentBasePass_2856 : packoffset(c178.z); + float TranslucentBasePass_2860 : packoffset(c178.w); + float4 TranslucentBasePass_2864 : packoffset(c179.x); + float TranslucentBasePass_2880 : packoffset(c180.x); + float TranslucentBasePass_2884 : packoffset(c180.y); + float TranslucentBasePass_2888 : packoffset(c180.z); + float TranslucentBasePass_2892 : packoffset(c180.w); + float TranslucentBasePass_2896 : packoffset(c181.x); + float TranslucentBasePass_2900 : packoffset(c181.y); + float TranslucentBasePass_2904 : packoffset(c181.z); + float TranslucentBasePass_2908 : packoffset(c181.w); + float TranslucentBasePass_2912 : packoffset(c182.x); + float TranslucentBasePass_2916 : packoffset(c182.y); + float TranslucentBasePass_2920 : packoffset(c182.z); + float TranslucentBasePass_2924 : packoffset(c182.w); + float4 TranslucentBasePass_2928 : packoffset(c183.x); + float4 TranslucentBasePass_2944 : packoffset(c184.x); + float4 TranslucentBasePass_2960 : packoffset(c185.x); + float TranslucentBasePass_2976 : packoffset(c186.x); + float TranslucentBasePass_2980 : packoffset(c186.y); + float TranslucentBasePass_2984 : packoffset(c186.z); + float TranslucentBasePass_2988 : packoffset(c186.w); + float TranslucentBasePass_2992 : packoffset(c187.x); + float TranslucentBasePass_2996 : packoffset(c187.y); + float TranslucentBasePass_3000 : packoffset(c187.z); + float TranslucentBasePass_3004 : packoffset(c187.w); + float TranslucentBasePass_3008 : packoffset(c188.x); + float TranslucentBasePass_3012 : packoffset(c188.y); + float TranslucentBasePass_3016 : packoffset(c188.z); + float TranslucentBasePass_3020 : packoffset(c188.w); + float TranslucentBasePass_3024 : packoffset(c189.x); + float TranslucentBasePass_3028 : packoffset(c189.y); + float TranslucentBasePass_3032 : packoffset(c189.z); + float TranslucentBasePass_3036 : packoffset(c189.w); + float4 TranslucentBasePass_3040 : packoffset(c190.x); + float TranslucentBasePass_3056 : packoffset(c191.x); + float TranslucentBasePass_3060 : packoffset(c191.y); + float TranslucentBasePass_3064 : packoffset(c191.z); + float TranslucentBasePass_3068 : packoffset(c191.w); + float TranslucentBasePass_3072 : packoffset(c192.x); + float TranslucentBasePass_3076 : packoffset(c192.y); + float TranslucentBasePass_3080 : packoffset(c192.z); + float TranslucentBasePass_3084 : packoffset(c192.w); + float4 TranslucentBasePass_3088 : packoffset(c193.x); + float4 TranslucentBasePass_3104 : packoffset(c194.x); + float4 TranslucentBasePass_3120 : packoffset(c195.x); + float TranslucentBasePass_3136 : packoffset(c196.x); + float TranslucentBasePass_3140 : packoffset(c196.y); + float TranslucentBasePass_3144 : packoffset(c196.z); + float TranslucentBasePass_3148 : packoffset(c196.w); + float TranslucentBasePass_3152 : packoffset(c197.x); + float TranslucentBasePass_3156 : packoffset(c197.y); + float TranslucentBasePass_3160 : packoffset(c197.z); + float TranslucentBasePass_3164 : packoffset(c197.w); + float TranslucentBasePass_3168 : packoffset(c198.x); + float TranslucentBasePass_3172 : packoffset(c198.y); + float TranslucentBasePass_3176 : packoffset(c198.z); + float TranslucentBasePass_3180 : packoffset(c198.w); + float3 TranslucentBasePass_3184 : packoffset(c199.x); + float TranslucentBasePass_3196 : packoffset(c199.w); + float TranslucentBasePass_3200 : packoffset(c200.x); + float TranslucentBasePass_3204 : packoffset(c200.y); + float TranslucentBasePass_3208 : packoffset(c200.z); + float TranslucentBasePass_3212 : packoffset(c200.w); + float TranslucentBasePass_3216 : packoffset(c201.x); + float TranslucentBasePass_3220 : packoffset(c201.y); + float TranslucentBasePass_3224 : packoffset(c201.z); + float TranslucentBasePass_3228 : packoffset(c201.w); + float4 TranslucentBasePass_3232 : packoffset(c202.x); + float4 TranslucentBasePass_3248 : packoffset(c203.x); + float4 TranslucentBasePass_3264 : packoffset(c204.x); + float4 TranslucentBasePass_3280 : packoffset(c205.x); + float4 TranslucentBasePass_3296 : packoffset(c206.x); + float4 TranslucentBasePass_3312 : packoffset(c207.x); + float2 TranslucentBasePass_3328 : packoffset(c208.x); + float TranslucentBasePass_3336 : packoffset(c208.z); + float TranslucentBasePass_3340 : packoffset(c208.w); + float4 TranslucentBasePass_3344 : packoffset(c209.x); + float TranslucentBasePass_3360 : packoffset(c210.x); + float TranslucentBasePass_3364 : packoffset(c210.y); + float TranslucentBasePass_3368 : packoffset(c210.z); + float TranslucentBasePass_3372 : packoffset(c210.w); + float TranslucentBasePass_3376 : packoffset(c211.x); + float TranslucentBasePass_3380 : packoffset(c211.y); + float TranslucentBasePass_3384 : packoffset(c211.z); + float TranslucentBasePass_3388 : packoffset(c211.w); + float TranslucentBasePass_3392 : packoffset(c212.x); + float TranslucentBasePass_3396 : packoffset(c212.y); + float TranslucentBasePass_3400 : packoffset(c212.z); + float TranslucentBasePass_3404 : packoffset(c212.w); + float4 TranslucentBasePass_3408 : packoffset(c213.x); + float4 TranslucentBasePass_3424 : packoffset(c214.x); + float4 TranslucentBasePass_3440 : packoffset(c215.x); + float TranslucentBasePass_3456 : packoffset(c216.x); + float TranslucentBasePass_3460 : packoffset(c216.y); + float TranslucentBasePass_3464 : packoffset(c216.z); + float TranslucentBasePass_3468 : packoffset(c216.w); + float TranslucentBasePass_3472 : packoffset(c217.x); + float TranslucentBasePass_3476 : packoffset(c217.y); + float TranslucentBasePass_3480 : packoffset(c217.z); + float TranslucentBasePass_3484 : packoffset(c217.w); + float TranslucentBasePass_3488 : packoffset(c218.x); + float TranslucentBasePass_3492 : packoffset(c218.y); + float TranslucentBasePass_3496 : packoffset(c218.z); + float TranslucentBasePass_3500 : packoffset(c218.w); + float TranslucentBasePass_3504 : packoffset(c219.x); + float TranslucentBasePass_3508 : packoffset(c219.y); + float TranslucentBasePass_3512 : packoffset(c219.z); + float TranslucentBasePass_3516 : packoffset(c219.w); + float4 TranslucentBasePass_3520 : packoffset(c220.x); + float TranslucentBasePass_3536 : packoffset(c221.x); + float TranslucentBasePass_3540 : packoffset(c221.y); + float TranslucentBasePass_3544 : packoffset(c221.z); + float TranslucentBasePass_3548 : packoffset(c221.w); + float TranslucentBasePass_3552 : packoffset(c222.x); + float TranslucentBasePass_3556 : packoffset(c222.y); + float TranslucentBasePass_3560 : packoffset(c222.z); + float TranslucentBasePass_3564 : packoffset(c222.w); + float4 TranslucentBasePass_3568 : packoffset(c223.x); + float4 TranslucentBasePass_3584 : packoffset(c224.x); + float4 TranslucentBasePass_3600 : packoffset(c225.x); + float TranslucentBasePass_3616 : packoffset(c226.x); + float TranslucentBasePass_3620 : packoffset(c226.y); + float TranslucentBasePass_3624 : packoffset(c226.z); + float TranslucentBasePass_3628 : packoffset(c226.w); + float TranslucentBasePass_3632 : packoffset(c227.x); + float TranslucentBasePass_3636 : packoffset(c227.y); + float TranslucentBasePass_3640 : packoffset(c227.z); + float TranslucentBasePass_3644 : packoffset(c227.w); + float TranslucentBasePass_3648 : packoffset(c228.x); + float TranslucentBasePass_3652 : packoffset(c228.y); + float TranslucentBasePass_3656 : packoffset(c228.z); + float TranslucentBasePass_3660 : packoffset(c228.w); + float3 TranslucentBasePass_3664 : packoffset(c229.x); + float TranslucentBasePass_3676 : packoffset(c229.w); + float TranslucentBasePass_3680 : packoffset(c230.x); + float TranslucentBasePass_3684 : packoffset(c230.y); + float TranslucentBasePass_3688 : packoffset(c230.z); + float TranslucentBasePass_3692 : packoffset(c230.w); + float TranslucentBasePass_3696 : packoffset(c231.x); + float TranslucentBasePass_3700 : packoffset(c231.y); + float TranslucentBasePass_3704 : packoffset(c231.z); + float TranslucentBasePass_3708 : packoffset(c231.w); + float TranslucentBasePass_3712 : packoffset(c232.x); + float TranslucentBasePass_3716 : packoffset(c232.y); + float2 TranslucentBasePass_3720 : packoffset(c232.z); + int TranslucentBasePass_3728 : packoffset(c233.x); + int TranslucentBasePass_3732 : packoffset(c233.y); + float TranslucentBasePass_3736 : packoffset(c233.z); + int TranslucentBasePass_3740 : packoffset(c233.w); + float TranslucentBasePass_3744 : packoffset(c234.x); + float TranslucentBasePass_3748 : packoffset(c234.y); + float TranslucentBasePass_3752 : packoffset(c234.z); + float TranslucentBasePass_3756 : packoffset(c234.w); + float4 TranslucentBasePass_3760 : packoffset(c235.x); + float3 TranslucentBasePass_3776 : packoffset(c236.x); + float TranslucentBasePass_3788 : packoffset(c236.w); + float3 TranslucentBasePass_3792 : packoffset(c237.x); + float TranslucentBasePass_3804 : packoffset(c237.w); + float TranslucentBasePass_3808 : packoffset(c238.x); + float TranslucentBasePass_3812 : packoffset(c238.y); + float TranslucentBasePass_3816 : packoffset(c238.z); + float TranslucentBasePass_3820 : packoffset(c238.w); + float TranslucentBasePass_3824 : packoffset(c239.x); + float TranslucentBasePass_3828 : packoffset(c239.y); + float TranslucentBasePass_3832 : packoffset(c239.z); + float TranslucentBasePass_3836 : packoffset(c239.w); + float TranslucentBasePass_3840 : packoffset(c240.x); + float TranslucentBasePass_3844 : packoffset(c240.y); + float TranslucentBasePass_3848 : packoffset(c240.z); + float TranslucentBasePass_3852 : packoffset(c240.w); + float TranslucentBasePass_3856 : packoffset(c241.x); + float TranslucentBasePass_3860 : packoffset(c241.y); + float TranslucentBasePass_3864 : packoffset(c241.z); + float TranslucentBasePass_3868 : packoffset(c241.w); + float TranslucentBasePass_3872 : packoffset(c242.x); + float TranslucentBasePass_3876 : packoffset(c242.y); + float TranslucentBasePass_3880 : packoffset(c242.z); + float TranslucentBasePass_3884 : packoffset(c242.w); + float TranslucentBasePass_3888 : packoffset(c243.x); + float TranslucentBasePass_3892 : packoffset(c243.y); + float TranslucentBasePass_3896 : packoffset(c243.z); + float TranslucentBasePass_3900 : packoffset(c243.w); + float TranslucentBasePass_3904 : packoffset(c244.x); + float TranslucentBasePass_3908 : packoffset(c244.y); + float TranslucentBasePass_3912 : packoffset(c244.z); + float TranslucentBasePass_3916 : packoffset(c244.w); + float TranslucentBasePass_3920 : packoffset(c245.x); + float TranslucentBasePass_3924 : packoffset(c245.y); + float TranslucentBasePass_3928 : packoffset(c245.z); + float TranslucentBasePass_3932 : packoffset(c245.w); + float TranslucentBasePass_3936 : packoffset(c246.x); + float TranslucentBasePass_3940 : packoffset(c246.y); + float TranslucentBasePass_3944 : packoffset(c246.z); + float TranslucentBasePass_3948 : packoffset(c246.w); + float TranslucentBasePass_3952 : packoffset(c247.x); + float TranslucentBasePass_3956 : packoffset(c247.y); + float TranslucentBasePass_3960 : packoffset(c247.z); + float TranslucentBasePass_3964 : packoffset(c247.w); + float4 TranslucentBasePass_3968 : packoffset(c248.x); + float4 TranslucentBasePass_3984 : packoffset(c249.x); + float TranslucentBasePass_4000 : packoffset(c250.x); + float TranslucentBasePass_4004 : packoffset(c250.y); + float TranslucentBasePass_4008 : packoffset(c250.z); + float TranslucentBasePass_4012 : packoffset(c250.w); + float TranslucentBasePass_4016 : packoffset(c251.x); + float TranslucentBasePass_4020 : packoffset(c251.y); + float TranslucentBasePass_4024 : packoffset(c251.z); + float TranslucentBasePass_4028 : packoffset(c251.w); + float TranslucentBasePass_4032 : packoffset(c252.x); + float TranslucentBasePass_4036 : packoffset(c252.y); + float TranslucentBasePass_4040 : packoffset(c252.z); + float TranslucentBasePass_4044 : packoffset(c252.w); + float TranslucentBasePass_4048 : packoffset(c253.x); + float TranslucentBasePass_4052 : packoffset(c253.y); + float TranslucentBasePass_4056 : packoffset(c253.z); + float TranslucentBasePass_4060 : packoffset(c253.w); + float TranslucentBasePass_4064 : packoffset(c254.x); + float TranslucentBasePass_4068 : packoffset(c254.y); + float TranslucentBasePass_4072 : packoffset(c254.z); + float TranslucentBasePass_4076 : packoffset(c254.w); + float TranslucentBasePass_4080 : packoffset(c255.x); + float TranslucentBasePass_4084 : packoffset(c255.y); + float TranslucentBasePass_4088 : packoffset(c255.z); + float TranslucentBasePass_4092 : packoffset(c255.w); + float TranslucentBasePass_4096 : packoffset(c256.x); + float TranslucentBasePass_4100 : packoffset(c256.y); + float TranslucentBasePass_4104 : packoffset(c256.z); + float TranslucentBasePass_4108 : packoffset(c256.w); + float TranslucentBasePass_4112 : packoffset(c257.x); + float TranslucentBasePass_4116 : packoffset(c257.y); + float TranslucentBasePass_4120 : packoffset(c257.z); + float TranslucentBasePass_4124 : packoffset(c257.w); + float TranslucentBasePass_4128 : packoffset(c258.x); + float TranslucentBasePass_4132 : packoffset(c258.y); + float TranslucentBasePass_4136 : packoffset(c258.z); + float TranslucentBasePass_4140 : packoffset(c258.w); + float TranslucentBasePass_4144 : packoffset(c259.x); + float TranslucentBasePass_4148 : packoffset(c259.y); + float TranslucentBasePass_4152 : packoffset(c259.z); + float TranslucentBasePass_4156 : packoffset(c259.w); + float TranslucentBasePass_4160 : packoffset(c260.x); + float TranslucentBasePass_4164 : packoffset(c260.y); + int TranslucentBasePass_4168 : packoffset(c260.z); + float TranslucentBasePass_4172 : packoffset(c260.w); + float TranslucentBasePass_4176 : packoffset(c261.x); + float TranslucentBasePass_4180 : packoffset(c261.y); + float TranslucentBasePass_4184 : packoffset(c261.z); + float TranslucentBasePass_4188 : packoffset(c261.w); + float TranslucentBasePass_4192 : packoffset(c262.x); + float TranslucentBasePass_4196 : packoffset(c262.y); + float TranslucentBasePass_4200 : packoffset(c262.z); + float TranslucentBasePass_4204 : packoffset(c262.w); + float TranslucentBasePass_4208 : packoffset(c263.x); + float TranslucentBasePass_4212 : packoffset(c263.y); + float TranslucentBasePass_4216 : packoffset(c263.z); + float TranslucentBasePass_4220 : packoffset(c263.w); + float TranslucentBasePass_4224 : packoffset(c264.x); + float TranslucentBasePass_4228 : packoffset(c264.y); + float TranslucentBasePass_4232 : packoffset(c264.z); + float TranslucentBasePass_4236 : packoffset(c264.w); + float TranslucentBasePass_4240 : packoffset(c265.x); + float TranslucentBasePass_4244 : packoffset(c265.y); + float TranslucentBasePass_4248 : packoffset(c265.z); + float TranslucentBasePass_4252 : packoffset(c265.w); + float4 TranslucentBasePass_4256 : packoffset(c266.x); + float TranslucentBasePass_4272 : packoffset(c267.x); + float TranslucentBasePass_4276 : packoffset(c267.y); + float TranslucentBasePass_4280 : packoffset(c267.z); + float TranslucentBasePass_4284 : packoffset(c267.w); + float4 TranslucentBasePass_4288[4] : packoffset(c268.x); + int TranslucentBasePass_4352 : packoffset(c272.x); + float TranslucentBasePass_4356 : packoffset(c272.y); + float TranslucentBasePass_4360 : packoffset(c272.z); + float TranslucentBasePass_4364 : packoffset(c272.w); + float TranslucentBasePass_4368 : packoffset(c273.x); + float TranslucentBasePass_4372 : packoffset(c273.y); + float TranslucentBasePass_4376 : packoffset(c273.z); + float TranslucentBasePass_4380 : packoffset(c273.w); + float TranslucentBasePass_4384 : packoffset(c274.x); + float TranslucentBasePass_4388 : packoffset(c274.y); + float TranslucentBasePass_4392 : packoffset(c274.z); + float TranslucentBasePass_4396 : packoffset(c274.w); + float TranslucentBasePass_4400 : packoffset(c275.x); + float TranslucentBasePass_4404 : packoffset(c275.y); + float TranslucentBasePass_4408 : packoffset(c275.z); +}; + +cbuffer cb2 : register(b2) { + float4 Primitive_000[4] : packoffset(c000.x); + float4 Primitive_064 : packoffset(c004.x); + float4 Primitive_080 : packoffset(c005.x); + float4 Primitive_096[4] : packoffset(c006.x); + float4 Primitive_160[4] : packoffset(c010.x); + float4 Primitive_224[4] : packoffset(c014.x); + float3 Primitive_288 : packoffset(c018.x); + float Primitive_300 : packoffset(c018.w); + float3 Primitive_304 : packoffset(c019.x); + float Primitive_316 : packoffset(c019.w); + float Primitive_320 : packoffset(c020.x); + float Primitive_324 : packoffset(c020.y); + float Primitive_328 : packoffset(c020.z); + float Primitive_332 : packoffset(c020.w); + float4 Primitive_336 : packoffset(c021.x); + float4 Primitive_352 : packoffset(c022.x); + float3 Primitive_368 : packoffset(c023.x); + int Primitive_380 : packoffset(c023.w); + float3 Primitive_384 : packoffset(c024.x); + int Primitive_396 : packoffset(c024.w); + float3 Primitive_400 : packoffset(c025.x); + int Primitive_412 : packoffset(c025.w); + float3 Primitive_416 : packoffset(c026.x); + int Primitive_428 : packoffset(c026.w); + float4 Primitive_432[9] : packoffset(c027.x); + int Primitive_576 : packoffset(c036.x); + int Primitive_580 : packoffset(c036.y); + int Primitive_584 : packoffset(c036.z); + int Primitive_588 : packoffset(c036.w); + float3 Primitive_592 : packoffset(c037.x); + int Primitive_604 : packoffset(c037.w); + float3 Primitive_608 : packoffset(c038.x); + float Primitive_620 : packoffset(c038.w); + float3 Primitive_624 : packoffset(c039.x); + int Primitive_636 : packoffset(c039.w); + float3 Primitive_640 : packoffset(c040.x); + int Primitive_652 : packoffset(c040.w); + float4 Primitive_656 : packoffset(c041.x); + float3 Primitive_672 : packoffset(c042.x); + int Primitive_684 : packoffset(c042.w); +}; + +cbuffer cb3 : register(b3) { + float4 Material_000[4] : packoffset(c000.x); + float4 Material_064[1] : packoffset(c004.x); +}; + +SamplerState s0 : register(s0); + +float4 main( + linear float4 TEXCOORD10_centroid : TEXCOORD10_centroid, + linear float4 TEXCOORD11_centroid : TEXCOORD11_centroid, + linear float4 COLOR : COLOR, + linear float4 TEXCOORD : TEXCOORD, + linear float4 TEXCOORD_7 : TEXCOORD7, + noperspective float4 SV_Position : SV_Position, + nointerpolation uint SV_IsFrontFace : SV_IsFrontFace +) : SV_Target { + float4 SV_Target; + float _55 = mad(SV_Position.z, (View_704[2].w), mad(SV_Position.y, (View_704[1].w), ((View_704[0].w) * SV_Position.x))) + (View_704[3].w); + float _59 = ((mad(SV_Position.z, (View_704[2].x), mad(SV_Position.y, (View_704[1].x), ((View_704[0].x) * SV_Position.x))) + (View_704[3].x)) / _55) - View_1120.x; + float _60 = ((mad(SV_Position.z, (View_704[2].y), mad(SV_Position.y, (View_704[1].y), ((View_704[0].y) * SV_Position.x))) + (View_704[3].y)) / _55) - View_1120.y; + float _61 = ((mad(SV_Position.z, (View_704[2].z), mad(SV_Position.y, (View_704[1].z), ((View_704[0].z) * SV_Position.x))) + (View_704[3].z)) / _55) - View_1120.z; + float _70; + float _71; + float _72; + float _116; + float _117; + float _118; + float _175; + float _176; + float _177; + float _178; + float _213; + float _214; + float _215; + float _272; + float _273; + float _274; + float _325; + float _326; + float _327; + float _417; + float _418; + float _419; + if ((Material_064[0].x) < 0.5f) { + _70 = (COLOR.x * COLOR.x); + _71 = (COLOR.y * COLOR.y); + _72 = (COLOR.z * COLOR.z); + } else { + _70 = COLOR.x; + _71 = COLOR.y; + _72 = COLOR.z; + } + float4 _85 = t0.Sample(s0, float2((dot(float2(TEXCOORD.x, TEXCOORD.y), float2((Material_000[2].x), (Material_000[2].y))) + (Material_000[1].x)), (dot(float2(TEXCOORD.x, TEXCOORD.y), float2((Material_000[2].z), (Material_000[2].w))) + (Material_000[1].y)))); + if ((Material_064[0].x) > 0.5f) { + _116 = max(((exp2(log2(max(_85.x, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _117 = max(((exp2(log2(max(_85.y, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + _118 = max(((exp2(log2(max(_85.z, 0.0f)) * 0.4166666567325592f) * 1.0549999475479126f) + -0.054999999701976776f), 0.0f); + } else { + _116 = _85.x; + _117 = _85.y; + _118 = _85.z; + } + float _119 = _116 * _70; + float _120 = _117 * _71; + float _121 = _118 * _72; + float _137 = saturate(_85.w * COLOR.w); + float _138 = max(((((Material_000[3].x) - _119) * (Material_064[0].y)) + _119), 0.0f); + float _139 = max(((((Material_000[3].y) - _120) * (Material_064[0].y)) + _120), 0.0f); + float _140 = max(((((Material_000[3].z) - _121) * (Material_064[0].y)) + _121), 0.0f); + [branch] + if (View_2336 > 0.0f) { + if ((bool)(abs(_61 - Primitive_080.z) > (Primitive_304.z + 1.0f)) || ((bool)((bool)(abs(_59 - Primitive_080.x) > (Primitive_304.x + 1.0f)) || (bool)(abs(_60 - Primitive_080.y) > (Primitive_304.y + 1.0f))))) { + float _172 = float((bool)(bool)(frac(dot(float3(_59, _60, _61), float3(0.5770000219345093f, 0.5770000219345093f, 0.5770000219345093f)) * 0.0020000000949949026f) > 0.5f)); + _175 = 1.0f; + _176 = (1.0f - _172); + _177 = 1.0f; + _178 = _172; + } else { + _175 = _137; + _176 = _138; + _177 = _139; + _178 = _140; + } + } else { + _175 = _137; + _176 = _138; + _177 = _139; + _178 = _140; + } + [branch] + if (!(TranslucentBasePass_4352 == 0)) { + do { + [branch] + if (TranslucentBasePass_4368 == 0.0f) { + float _202 = 1.0f / TranslucentBasePass_4356; + _213 = exp2(log2(1.0f - exp2((_176 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _202); + _214 = exp2(log2(1.0f - exp2((_177 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _202); + _215 = exp2(log2(1.0f - exp2((_178 * -1.4426950216293335f) * TranslucentBasePass_4364)) * _202); + } else { + _213 = _176; + _214 = _177; + _215 = _178; + } + do { + [branch] + if (TranslucentBasePass_4368 == 1.0f) { + float _219 = TranslucentBasePass_4372 * _213; + float _220 = TranslucentBasePass_4372 * _214; + float _221 = TranslucentBasePass_4372 * _215; + float _223 = TranslucentBasePass_4376 * 1.3600000143051147f; + float _224 = TranslucentBasePass_4376 * 0.9599999785423279f; + float _261 = 1.0f / TranslucentBasePass_4356; + _272 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_223 * _219) + 0.04699999839067459f) * _219) / ((((_224 * _219) + 0.5600000023841858f) * _219) + 0.14000000059604645f)))) * _261); + _273 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_223 * _220) + 0.04699999839067459f) * _220) / ((((_224 * _220) + 0.5600000023841858f) * _220) + 0.14000000059604645f)))) * _261); + _274 = exp2(log2(saturate(TranslucentBasePass_4380 + saturate((((_223 * _221) + 0.04699999839067459f) * _221) / ((((_224 * _221) + 0.5600000023841858f) * _221) + 0.14000000059604645f)))) * _261); + } else { + _272 = _213; + _273 = _214; + _274 = _215; + } + do { + [branch] + if (TranslucentBasePass_4368 == 2.0f) { + float _279 = TranslucentBasePass_4384 * _272; + float _280 = TranslucentBasePass_4384 * _273; + float _281 = TranslucentBasePass_4384 * _274; + float _287 = TranslucentBasePass_4392 * -0.16398000717163086f; + float _291 = (_287 / (_279 + -0.19505000114440918f)) + 1.0049500465393066f; + float _292 = (_287 / (_280 + -0.19505000114440918f)) + 1.0049500465393066f; + float _293 = (_287 / (_281 + -0.19505000114440918f)) + 1.0049500465393066f; + float _314 = 1.0f / TranslucentBasePass_4356; + _325 = exp2(log2(saturate(((_279 - _291) * select((TranslucentBasePass_4388 < _279), 0.0f, 1.0f)) + _291)) * _314); + _326 = exp2(log2(saturate(((_280 - _292) * select((TranslucentBasePass_4388 < _280), 0.0f, 1.0f)) + _292)) * _314); + _327 = exp2(log2(saturate(((_281 - _293) * select((TranslucentBasePass_4388 < _281), 0.0f, 1.0f)) + _293)) * _314); + } else { + _325 = _272; + _326 = _273; + _327 = _274; + } + [branch] + if (TranslucentBasePass_4368 == 3.0f) { + float _332 = TranslucentBasePass_4396 * _325; + float _333 = TranslucentBasePass_4396 * _326; + float _334 = TranslucentBasePass_4396 * _327; + float _369 = exp2(log2(abs(_332)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_332 > 0.0f))) - ((int)(uint)((bool)(_332 < 0.0f))))); + float _370 = exp2(log2(abs(_333)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_333 > 0.0f))) - ((int)(uint)((bool)(_333 < 0.0f))))); + float _371 = exp2(log2(abs(_334)) * TranslucentBasePass_4408) * float((int)(((int)(uint)((bool)(_334 > 0.0f))) - ((int)(uint)((bool)(_334 < 0.0f))))); + float _372 = TranslucentBasePass_4400 * 5.340000152587891f; + float _373 = _369 * _372; + float _374 = _370 * _372; + float _375 = _371 * _372; + float _397 = TranslucentBasePass_4404 + -0.0004396551812533289f; + float _406 = 1.0f / TranslucentBasePass_4356; + _417 = exp2(log2(saturate(_397 + ((((_373 + 2.609099864959717f) * _369) + 0.0013464000076055527f) / (((_373 + 1.1699999570846558f) * _369) + 3.0624001026153564f)))) * _406); + _418 = exp2(log2(saturate(_397 + ((((_374 + 2.609099864959717f) * _370) + 0.0013464000076055527f) / (((_374 + 1.1699999570846558f) * _370) + 3.0624001026153564f)))) * _406); + _419 = exp2(log2(saturate(_397 + ((((_375 + 2.609099864959717f) * _371) + 0.0013464000076055527f) / (((_375 + 1.1699999570846558f) * _371) + 3.0624001026153564f)))) * _406); + } else { + _417 = _325; + _418 = _326; + _419 = _327; + } + } while (false); + } while (false); + } while (false); + } else { + _417 = _176; + _418 = _177; + _419 = _178; + } + float3 _video_hdr = AutoHDRVideo(float3(_417, _418, _419), SV_Position.xy); + SV_Target.x = (-0.0f - min((-0.0f - _video_hdr.x), 0.0f)); + SV_Target.y = (-0.0f - min((-0.0f - _video_hdr.y), 0.0f)); + SV_Target.z = (-0.0f - min((-0.0f - _video_hdr.z), 0.0f)); + SV_Target.w = _175; + return SV_Target; +} diff --git a/src/games/wutheringwaves/addon.cpp b/src/games/wutheringwaves/addon.cpp index 5b53bbf27..33e3823f0 100644 --- a/src/games/wutheringwaves/addon.cpp +++ b/src/games/wutheringwaves/addon.cpp @@ -33,6 +33,13 @@ ShaderInjectData shader_injection; float current_settings_mode = 0; +int tint_tone_mapping = 0xF2C14E; +int tint_video = 0xE76F51; +int tint_ui = 0x4EA8DE; +int tint_scene_grading = 0xF4A261; +int tint_custom_grading = 0x2A9D8F; +int tint_post_processing = 0xE63946; + // Hotkey state tracking // Credit: https://github.com/spiwar/renodx/commit/bb4aa4a32f6addaddf3b8ee2d4ee9a9910104da8 bool ui_toggle_key_was_pressed = false; @@ -138,7 +145,8 @@ renodx::utils::settings::Settings settings = { .section = "Tone Mapping", .tooltip = "Sets the tone mapper type", .labels = {"Vanilla", "RenoDRT"}, - .parse = [](float value) { return value * 3.f; }, + .tint = tint_tone_mapping, + .parse = [](float value) { return value <= 0.f ? 0.f : 3.f; }, .is_visible = []() { return current_settings_mode >= 1; }, }, new renodx::utils::settings::Setting{ @@ -149,6 +157,7 @@ renodx::utils::settings::Settings settings = { .label = "Peak Brightness", .section = "Tone Mapping", .tooltip = "Sets the value of peak white in nits", + .tint = tint_tone_mapping, .min = 48.f, .max = 4000.f, }, @@ -160,6 +169,7 @@ renodx::utils::settings::Settings settings = { .label = "Game Brightness", .section = "Tone Mapping", .tooltip = "Sets the value of 100% white in nits", + .tint = tint_tone_mapping, .min = 48.f, .max = 500.f, }, @@ -172,32 +182,22 @@ renodx::utils::settings::Settings settings = { .section = "Tone Mapping", .tooltip = "Simulates the effect of decoding sRGB as pure gamma that would be seen in SDR.", .labels = {"Off", "2.2", "2.4"}, + .tint = tint_tone_mapping, .is_visible = []() { return current_settings_mode >= 1; }, }, - new renodx::utils::settings::Setting{ - .key = "OutputColorSpace", - .binding = &shader_injection.output_color_space, - .value_type = renodx::utils::settings::SettingValueType::INTEGER, - .default_value = 0.f, - .label = "Color Space", - .section = "Tone Mapping", - .tooltip = "The output color space; this applies to both the scene and UI.\nBe aware that Wuthering Waves was mastered for BT.709.", - .labels = {"BT.709", "DCI-P3", "BT.2020"}, - .is_enabled = []() { return shader_injection.processing_use_scrgb == 0; }, - .is_visible = []() { return current_settings_mode >= 1; }, - }, - new renodx::utils::settings::Setting{ - .key = "ToneMapHueProcessor", - .binding = &shader_injection.tone_map_hue_processor, + new renodx::utils::settings::Setting{ + .key = "ToneMapScaling", + .binding = &shader_injection.tone_map_scaling, .value_type = renodx::utils::settings::SettingValueType::INTEGER, .default_value = 1.f, - .label = "Hue Processor", + .label = "Display Mapper", .section = "Tone Mapping", - .tooltip = "Selects hue processor", - .labels = {"OKLab", "ICtCp", "darkTable UCS"}, + .tooltip = "Selects final display mapping operator.", + .labels = {"Max Channel", "PsychoV"}, + .tint = tint_tone_mapping, .is_enabled = []() { return shader_injection.tone_map_type >= 1; }, .is_visible = []() { return current_settings_mode >= 2; }, - }, + }, new renodx::utils::settings::Setting{ .key = "VideoAutoHDR", .binding = &shader_injection.tone_map_hdr_video, @@ -206,6 +206,7 @@ renodx::utils::settings::Settings settings = { .label = "Video AutoHDR", .section = "Video", .tooltip = "Upgrades SDR videos to HDR.", + .tint = tint_video, }, new renodx::utils::settings::Setting{ .key = "ToneMapVideoNits", @@ -215,6 +216,7 @@ renodx::utils::settings::Settings settings = { .label = "Video Brightness", .section = "Video", .tooltip = "Sets the peak brightness for video content in nits", + .tint = tint_video, .min = 48.f, .max = 4000.f, }, @@ -225,6 +227,7 @@ renodx::utils::settings::Settings settings = { .default_value = 1.f, .label = "Visibility", .section = "UI", + .tint = tint_ui, }, new renodx::utils::settings::Setting{ .key = "UIToggleHotkey", @@ -233,6 +236,7 @@ renodx::utils::settings::Settings settings = { .label = "Toggle Hotkey", .section = "UI", .tooltip = "Click in the field and press any key to set the hotkey, or press Backspace/Delete to clear", + .tint = tint_ui, .on_draw = []() { static bool key_was_pressed = false; bool changed = false; @@ -297,6 +301,7 @@ renodx::utils::settings::Settings settings = { .label = "UI Brightness", .section = "UI", .tooltip = "Sets the brightness of UI and HUD elements in nits", + .tint = tint_ui, .min = 48.f, .max = 500.f, }, @@ -309,6 +314,7 @@ renodx::utils::settings::Settings settings = { .section = "UI", .tooltip = "Controls the gamma correction applied to the UI and HUD elements.\nEncoding 2-D assets for HDR that were originally intended for sRGB creates a \"washed out\" look without correction.", .labels = {"Off", "2.2", "2.4"}, + .tint = tint_ui, .is_visible = []() { return current_settings_mode >= 1; }, }, new renodx::utils::settings::Setting { @@ -317,6 +323,7 @@ renodx::utils::settings::Settings settings = { .default_value = 100.f, .label = "Text Opacity", .section = "UI", + .tint = tint_ui, .parse = [](float value) { return value * 0.01f; } }, new renodx::utils::settings::Setting { @@ -326,6 +333,7 @@ renodx::utils::settings::Settings settings = { .label = "Status Text Opacity", .section = "UI", .tooltip = "Opacity for texts such as location, UUID, and ping", + .tint = tint_ui, .parse = [](float value) { return value * 0.01f; } }, new renodx::utils::settings::Setting { @@ -334,20 +342,9 @@ renodx::utils::settings::Settings settings = { .default_value = 100.f, .label = "HUD Opacity", .section = "UI", + .tint = tint_ui, .parse = [](float value) { return value * 0.01f; } }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeStrength", - .binding = &shader_injection.color_grade_strength, - .default_value = 100.f, - .label = "Strength", - .section = "Scene Grading", - .tooltip = "Scene grading as applied by the game", - .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type >= 1; }, - .parse = [](float value) { return value * 0.01f; }, - .is_visible = []() { return current_settings_mode >= 2; }, - }, new renodx::utils::settings::Setting{ .key = "WuWaTonemapper", .binding = &shader_injection.wuwa_tonemapper, @@ -357,62 +354,46 @@ renodx::utils::settings::Settings settings = { .section = "Scene Grading", .tooltip = "Adjusts the tone mapper used by the game.\nThe provided names are from the game's files.\n\"Kuro\" is the original behavior.", .labels = {"None", "Genshin", "Death Stranding", "Kuro"}, + .tint = tint_scene_grading, .is_enabled = []() { return current_settings_mode >= 1 - && shader_injection.color_grade_strength > 0; }, + && shader_injection.wuwa_tonemap_strength > 0; }, }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeHueCorrection", - .binding = &shader_injection.color_grade_hue_correction, + new renodx::utils::settings::Setting{ + .key = "WuWaTonemapStrength", + .binding = &shader_injection.wuwa_tonemap_strength, .default_value = 100.f, - .label = "Hue Correction", + .label = "Tonemap Strength", .section = "Scene Grading", - .tooltip = "Corrects per-channel hue shifts from per-channel grading.", + .tooltip = "Change strength of KuroTonemapping.", + .tint = tint_scene_grading, .min = 0.f, .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type >= 1 - && shader_injection.color_grade_strength > 0; }, .parse = [](float value) { return value * 0.01f; }, - .is_visible = []() { return current_settings_mode >= 2; }, - }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeSaturationCorrection", - .binding = &shader_injection.color_grade_saturation_correction, + .is_visible = []() { return current_settings_mode >= 1; }, + }, + new renodx::utils::settings::Setting{ + .key = "WuWaLUTStrength", + .binding = &shader_injection.wuwa_lut_strength, .default_value = 100.f, - .label = "Saturation Correction", + .label = "LUT Strength", .section = "Scene Grading", - .tooltip = "Corrects unbalanced saturation from per-channel grading.", + .tooltip = "Change strength of SDR LUT", + .tint = tint_scene_grading, .min = 0.f, .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type >= 1 - && shader_injection.color_grade_strength > 0; }, .parse = [](float value) { return value * 0.01f; }, - .is_visible = []() { return current_settings_mode >= 2; }, - }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeBlowoutRestoration", - .binding = &shader_injection.color_grade_blowout_restoration, - .default_value = 50.f, - .label = "Blowout Restoration", - .section = "Scene Grading", - .tooltip = "Restores color from blowout from per-channel grading.", - .min = 0.f, - .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type >= 1 - && shader_injection.color_grade_strength > 0; }, - .parse = [](float value) { return value * 0.01f; }, - }, + .is_visible = []() { return current_settings_mode >= 1; }, + }, new renodx::utils::settings::Setting{ - .key = "ColorGradeHueShift", - .binding = &shader_injection.color_grade_hue_shift, - .default_value = 50.f, - .label = "Hue Shift", - .section = "Scene Grading", - .tooltip = "Modulates between the hues of the uncorrected and corrected saturation.", - .min = 0.f, + .key = "ColorGradeStrength", + .binding = &shader_injection.color_grade_strength, + .default_value = 100.f, + .label = "Color Grading Strength", + .section = "Custom Color Grading", + .tooltip = "Blend amount between pre-display-map color and mapped color.", + .tint = tint_custom_grading, .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type >= 1 - && shader_injection.color_grade_strength > 0 - && shader_injection.color_grade_saturation_correction > 0; }, + .is_enabled = []() { return shader_injection.tone_map_type >= 1; }, .parse = [](float value) { return value * 0.01f; }, .is_visible = []() { return current_settings_mode >= 2; }, }, @@ -422,6 +403,7 @@ renodx::utils::settings::Settings settings = { .default_value = 1.f, .label = "Exposure", .section = "Custom Color Grading", + .tint = tint_custom_grading, .max = 2.f, .format = "%.2f", .is_visible = []() { return current_settings_mode >= 1; }, @@ -432,66 +414,91 @@ renodx::utils::settings::Settings settings = { .default_value = 50.f, .label = "Highlights", .section = "Custom Color Grading", + .tint = tint_custom_grading, .max = 100.f, .parse = [](float value) { return value * 0.02f; }, .is_visible = []() { return current_settings_mode >= 1; }, }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeHighlightsVersion", - .binding = &shader_injection.color_grade_highlights_version, - .value_type = renodx::utils::settings::SettingValueType::INTEGER, - .default_value = 0.f, - .label = "Highlights Version", - .section = "Custom Color Grading", - .tooltip = "Highlights \"v2\" is experimental.", - .labels = { - "v1", - "v2", - "v3", - }, - .parse = [](float value) { return value + 1; }, - .is_visible = []() { return current_settings_mode >= 2; }, - }, new renodx::utils::settings::Setting{ .key = "ColorGradeShadows", .binding = &shader_injection.color_grade_shadows, .default_value = 50.f, .label = "Shadows", .section = "Custom Color Grading", + .tint = tint_custom_grading, .max = 100.f, .parse = [](float value) { return value * 0.02f; }, .is_visible = []() { return current_settings_mode >= 1; }, }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeShadowsVersion", - .binding = &shader_injection.color_grade_shadows_version, - .value_type = renodx::utils::settings::SettingValueType::INTEGER, - .default_value = 0.f, - .label = "Shadows Version", - .section = "Custom Color Grading", - .tooltip = "The lack of \"v2\" is intentional.", - .labels = { - "v1", - "v3", - }, - .parse = [](float value) { return value >= 1.f ? 3.f : 1.f;}, - .is_visible = []() { return current_settings_mode >= 2; }, - }, new renodx::utils::settings::Setting{ .key = "ColorGradeContrast", .binding = &shader_injection.color_grade_contrast, .default_value = 50.f, .label = "Contrast", .section = "Custom Color Grading", + .tint = tint_custom_grading, .max = 100.f, .parse = [](float value) { return value * 0.02f; }, }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeGamma", + .binding = &shader_injection.color_grade_gamma, + .default_value = 100.f, + .label = "Gamma", + .section = "Custom Color Grading", + .tooltip = "Psycho grading gamma (100 = neutral).", + .tint = tint_custom_grading, + .min = 50.f, + .max = 200.f, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return false; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeContrastHighlights", + .binding = &shader_injection.color_grade_contrast_highlights, + .default_value = 100.f, + .label = "Contrast Highlights", + .section = "Custom Color Grading", + .tooltip = "Extra highlight contrast shaping (100 = neutral).", + .tint = tint_custom_grading, + .min = 0.f, + .max = 200.f, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeContrastShadows", + .binding = &shader_injection.color_grade_contrast_shadows, + .default_value = 100.f, + .label = "Contrast Shadows", + .section = "Custom Color Grading", + .tooltip = "Extra shadow contrast shaping (100 = neutral).", + .tint = tint_custom_grading, + .min = 0.f, + .max = 200.f, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeAdaptationContrast", + .binding = &shader_injection.color_grade_adaptation_contrast, + .default_value = 100.f, + .label = "Adaptation Contrast", + .section = "Custom Color Grading", + .tooltip = "Perceptual adaptation contrast (100 = neutral).", + .tint = tint_custom_grading, + .min = 0.f, + .max = 200.f, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, new renodx::utils::settings::Setting{ .key = "ColorGradeSaturation", .binding = &shader_injection.color_grade_saturation, .default_value = 50.f, .label = "Saturation", .section = "Custom Color Grading", + .tint = tint_custom_grading, .max = 100.f, .parse = [](float value) { return value * 0.02f; }, }, @@ -502,21 +509,103 @@ renodx::utils::settings::Settings settings = { .label = "Highlight Saturation", .section = "Custom Color Grading", .tooltip = "Adds or removes highlight color.", + .tint = tint_custom_grading, .max = 100.f, .is_enabled = []() { return shader_injection.tone_map_type >= 1; }, .parse = [](float value) { return value * 0.02f; }, .is_visible = []() { return current_settings_mode >= 1; }, }, - new renodx::utils::settings::Setting{ + new renodx::utils::settings::Setting{ .key = "ColorGradeBlowout", - .binding = &shader_injection.wuwa_blowout, + .binding = &shader_injection.color_grade_blowout, .default_value = 0.f, .label = "Blowout", .section = "Custom Color Grading", - .tooltip = "Simulates the game's original effect of bright colors being clipped to white.\n100 retains original behavior, 0 disables it completely.", + .tooltip = "Controls highlight desaturation due to overexposure.", + .tint = tint_custom_grading, .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1; }, .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 1; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeHueCorrection", + .binding = &shader_injection.color_grade_hue_correction, + .default_value = 0.f, + .label = "Hue Restore", + .section = "Custom Color Grading", + .tooltip = "Controls hue restore strength.", + .tint = tint_custom_grading, + .min = 0.f, + .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1 + && shader_injection.color_grade_strength > 0 + && shader_injection.tone_map_scaling != 0.f; }, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeSaturationCorrection", + .binding = &shader_injection.color_grade_saturation_correction, + .default_value = 100.f, + .label = "Purity Scale", + .section = "Custom Color Grading", + .tooltip = "Scales purity/saturation strength.", + .tint = tint_custom_grading, + .min = 0.f, + .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1 + && shader_injection.color_grade_strength > 0; }, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeHueShift", + .binding = &shader_injection.color_grade_hue_shift, + .default_value = 50.f, + .label = "Highlight Purity Bias", + .section = "Custom Color Grading", + .tooltip = "Biases highlight purity around the neutral midpoint.", + .tint = tint_custom_grading, + .min = 0.f, + .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1 + && shader_injection.color_grade_strength > 0 + && shader_injection.tone_map_scaling != 0.f + && shader_injection.color_grade_saturation_correction > 0; }, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, }, + new renodx::utils::settings::Setting{ + .key = "ColorGradeHueEmulation", + .binding = &shader_injection.color_grade_hue_emulation, + .default_value = 50.f, + .label = "Hue Shift", + .section = "Custom Color Grading", + .tooltip = "Controls SDR hue emulation strength.", + .tint = tint_custom_grading, + .min = 0.f, + .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1 + && shader_injection.color_grade_strength > 0;}, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, + new renodx::utils::settings::Setting{ + .key = "ColorGradePerChannelBlowout", + .binding = &shader_injection.color_grade_chrominance_emulation, + .default_value = 50.f, + .label = "Per Channel Blowout", + .section = "Custom Color Grading", + .tooltip = "Controls chrominance emulation strength for MB hue shift.", + .tint = tint_custom_grading, + .min = 0.f, + .max = 100.f, + .is_enabled = []() { return shader_injection.tone_map_type >= 1 + && shader_injection.color_grade_strength > 0;}, + .parse = [](float value) { return value * 0.01f; }, + .is_visible = []() { return current_settings_mode >= 2; }, + }, new renodx::utils::settings::Setting{ .key = "ColorGradeFlare", .binding = &shader_injection.color_grade_flare, @@ -524,23 +613,12 @@ renodx::utils::settings::Settings settings = { .label = "Flare", .section = "Custom Color Grading", .tooltip = "Flare/Glare Compensation", + .tint = tint_custom_grading, .max = 100.f, .is_enabled = []() { return shader_injection.tone_map_type == 3; }, .parse = [](float value) { return value * 0.02f; }, .is_visible = []() { return current_settings_mode >= 1; }, }, - new renodx::utils::settings::Setting{ - .key = "ColorGradeClip", - .binding = &shader_injection.reno_drt_white_clip, - .default_value = 65.f, - .label = "White Clip", - .section = "Custom Color Grading", - .tooltip = "Clip point for white in nits", - .min = 1.f, - .max = 100.f, - .is_enabled = []() { return shader_injection.tone_map_type == 3; }, - .is_visible = []() { return current_settings_mode >= 1; }, - }, new renodx::utils::settings::Setting { .key = "WuWaBloom", .binding = &shader_injection.wuwa_bloom, @@ -548,6 +626,7 @@ renodx::utils::settings::Settings settings = { .label = "Bloom", .section = "Post-Processing", .tooltip = "Reduces bloom intensity when applied by the game.\n100 retains original behavior, 0 disables it completely.", + .tint = tint_post_processing, .parse = [](float value) { return value * 0.01f; } }, new renodx::utils::settings::Setting{ @@ -558,6 +637,7 @@ renodx::utils::settings::Settings settings = { .label = "HDR Sun", .section = "Post-Processing", .tooltip = "Boosts sun, moon, and glow brightness in the skybox.", + .tint = tint_post_processing, }, }; @@ -571,69 +651,81 @@ const std::map> PRESET_VALUES = { { OFF, { {"ToneMapType", 0.f}, {"WuWaTonemapper", 3.f}, + {"WuWaTonemapStrength", 100.f}, + {"WuWaLUTStrength", 100.f}, {"ToneMapPeakNits", 203.f}, {"ToneMapGameNits", 203.f}, {"ToneMapUINits", 203.f}, {"SwapChainGammaCorrection", 0.f}, - {"OutputColorSpace", 0.f}, + {"ToneMapScaling", 1.f}, {"ColorGradeExposure", 1.f}, {"ColorGradeHighlights", 50.f}, {"ColorGradeShadows", 50.f}, {"ColorGradeContrast", 50.f}, + {"ColorGradeGamma", 100.f}, + {"ColorGradeContrastHighlights", 100.f}, + {"ColorGradeContrastShadows", 100.f}, + {"ColorGradeAdaptationContrast", 100.f}, {"ColorGradeSaturation", 50.f}, {"ColorGradeBlowout", 0.f}, + {"FxSharpeningType", 1.f}, + {"FxSharpening", 0.f}, {"WuWaBloom", 100.f}, - {"WuWaGrain", 100.f} } }, { VANILLA_PLUS, { {"GammaCorrection", 1.f}, {"SwapChainGammaCorrection", 2.f}, - {"OutputColorSpace", 0.f}, + {"ToneMapScaling", 1.f}, {"ColorGradeStrength", 100.f}, {"WuWaTonemapper", 3.f}, + {"WuWaTonemapStrength", 100.f}, + {"WuWaLUTStrength", 100.f}, {"ColorGradeHueCorrection", 0.f}, {"ColorGradeSaturationCorrection", 100.f}, - {"ColorGradeBlowoutRestoration", 0.f}, - {"ColorGradeHueShift", 100.f}, + {"ColorGradeHueShift", 50.f}, + {"ColorGradeHueEmulation", 50.f}, + {"ColorGradePerChannelBlowout", 50.f}, {"ColorGradeExposure", 1.f}, - {"ColorGradeHighlights", 63.f}, - {"ColorGradeHighlightsVersion", 0.f}, + {"ColorGradeHighlights", 60.f}, {"ColorGradeShadows", 50.f}, - {"ColorGradeShadowsVersion", 0.f}, - {"ColorGradeContrast", 51.f}, - {"ColorGradeSaturation", 58.f}, + {"ColorGradeContrast", 50.f}, + {"ColorGradeGamma", 100.f}, + {"ColorGradeContrastHighlights", 100.f}, + {"ColorGradeContrastShadows", 100.f}, + {"ColorGradeAdaptationContrast", 100.f}, + {"ColorGradeSaturation", 50.f}, {"ColorGradeHighlightSaturation", 50.f}, {"ColorGradeBlowout", 0.f}, {"ColorGradeFlare", 0.f}, - {"ColorGradeClip", 65.f}, - {"WuWaChromaticAberration", 100.f}, {"WuWaBloom", 60.f} } }, { HDR_LOOK, { {"GammaCorrection", 1.f}, {"SwapChainGammaCorrection", 2.f}, - {"OutputColorSpace", 0.f}, - {"ToneMapHueProcessor", 0.f}, - {"ColorGradeStrength", 50.f}, + {"ToneMapScaling", 1.f}, + {"ColorGradeStrength", 100.f}, {"WuWaTonemapper", 3.f}, - {"ColorGradeHueCorrection", 100.f}, + {"WuWaTonemapStrength", 50.f}, + {"WuWaLUTStrength", 100.f}, + {"ColorGradeHueCorrection", 0.f}, {"ColorGradeSaturationCorrection", 100.f}, - {"ColorGradeBlowoutRestoration", 0.f}, - {"ColorGradeHueShift", 100.f}, + {"ColorGradeHueShift", 50.f}, + {"ColorGradeHueEmulation", 25.f}, + {"ColorGradePerChannelBlowout", 50.f}, {"ColorGradeExposure", 1.f}, {"ColorGradeHighlights", 60.f}, - {"ColorGradeHighlightsVersion", 2.f}, - {"ColorGradeShadows", 75.f}, - {"ColorGradeShadowsVersion", 1.f}, + {"ColorGradeShadows", 50.f}, {"ColorGradeContrast", 60.f}, - {"ColorGradeSaturation", 60.f}, + {"ColorGradeGamma", 100.f}, + {"ColorGradeContrastHighlights", 100.f}, + {"ColorGradeContrastShadows", 100.f}, + {"ColorGradeAdaptationContrast", 100.f}, + {"ColorGradeSaturation", 55.f}, {"ColorGradeHighlightSaturation", 50.f}, - {"ColorGradeBlowout", 50.f}, + {"ColorGradeBlowout", 0.f}, {"ColorGradeFlare", 0.f}, - {"ColorGradeClip", 60.f}, - {"WuWaChromaticAberration", 100.f}, {"WuWaBloom", 60.f} } } @@ -745,8 +837,8 @@ void OnInitSwapchain(reshade::api::swapchain* swapchain, bool resize) { settings[3]->default_value = game; settings[3]->can_reset = true; - settings[7]->default_value = game; - settings[7]->can_reset = true; + settings[10]->default_value = game; + settings[10]->can_reset = true; fired_on_init_swapchain = true; } diff --git a/src/games/wutheringwaves/common.hlsl b/src/games/wutheringwaves/common.hlsl index 95d5a4aa3..e84765751 100644 --- a/src/games/wutheringwaves/common.hlsl +++ b/src/games/wutheringwaves/common.hlsl @@ -1,9 +1,19 @@ #include "./shared.h" +#include "./psycho_test11.hlsli" #define WUWA_PEAK_SCALING (RENODX_PEAK_NITS / RENODX_GAME_NITS) #define APPLY_BLOOM(c) (c).rgb *= RENODX_WUWA_BLOOM +#define APPLY_EXTENDED_TONEMAP(c1, c2, c3) \ + wuwa::WUWAUncharted2::ApplyExtendedFromCoeffs((c1), (c2), (c3), untonemapped, cb0_037y, cb0_037z, cb0_037w, cb0_038x, cb0_038y, cb0_038z); \ + const float3 tonemapped = float3(c1, c2, c3); \ + if (RENODX_TONE_MAP_TYPE != 0.f) { \ + c1 = lerp(untonemapped.r, tonemapped.r, RENODX_WUWA_TONEMAP_STRENGTH); \ + c2 = lerp(untonemapped.g, tonemapped.g, RENODX_WUWA_TONEMAP_STRENGTH); \ + c3 = lerp(untonemapped.b, tonemapped.b, RENODX_WUWA_TONEMAP_STRENGTH); \ + } + #define WUWA_TM_IS(N) ((uint)(RENODX_WUWA_TM) == (N)) #define CLAMP_IF_SDR(c) ((c) = ((RENODX_TONE_MAP_TYPE == 0.f) ? saturate((c)) : (c))) @@ -14,6 +24,8 @@ #define CAPTURE_TONEMAPPED(c) const float3 tonemapped = (c).rgb +#define CAPTURE_UNGRADED(c1, c2, c3) const float3 ungraded = float3((c1), (c2), (c3)) + #define HANDLE_LUT_OUTPUT(c) (c).rgb = HandleLUTOutput((c).rgb, untonemapped, tonemapped) #define HANDLE_LUT_OUTPUT3(c1, c2, c3) { \ float3 lut_output = float3(c1, c2, c3); \ @@ -35,12 +47,321 @@ namespace wuwa { +float3 CorrectHueAndPurityMBGated( + float3 target_color_bt709, + float3 reference_color_bt709, + float hue_strength = 1.f, + float hue_t_ramp_start = 0.5f, + float hue_t_ramp_end = 1.f, + float purity_strength = 1.f, + float curve_gamma = 1.f, + float2 mb_white_override = float2(-1.f, -1.f), + float t_min = 1e-6f) { + static const float MB_NEAR_WHITE_EPSILON = 1e-14f; + + if (purity_strength <= 0.f && hue_strength <= 0.f) { + return target_color_bt709; + } + + float3 target_color_bt2020 = renodx::color::bt2020::from::BT709(target_color_bt709); + float3 reference_color_bt2020 = renodx::color::bt2020::from::BT709(reference_color_bt709); + + float3 target_mb = renodx::color::macleod_boynton::from::BT2020(target_color_bt2020); + float3 reference_mb = renodx::color::macleod_boynton::from::BT2020(reference_color_bt2020); + + if (target_mb.z <= t_min) { + return target_color_bt709; + } + + float2 white = (mb_white_override.x >= 0.f && mb_white_override.y >= 0.f) + ? mb_white_override + : renodx::color::macleod_boynton::from::D65XY(); + + float2 target_direction = target_mb.xy - white; + float2 reference_direction = reference_mb.xy - white; + + float target_len_sq = dot(target_direction, target_direction); + float reference_len_sq = dot(reference_direction, reference_direction); + + if (target_len_sq < MB_NEAR_WHITE_EPSILON && reference_len_sq < MB_NEAR_WHITE_EPSILON) { + return target_color_bt709; + } + + float target_len = sqrt(max(target_len_sq, 0.f)); + float reference_len = sqrt(max(reference_len_sq, 0.f)); + + float hue_blend = saturate(hue_strength) * + saturate(renodx::math::DivideSafe(target_mb.z - hue_t_ramp_start, + hue_t_ramp_end - hue_t_ramp_start, 0.f)); + + float purity_blend = pow(saturate(purity_strength), max(curve_gamma, 1e-6f)); + float applied_purity = lerp(target_len, reference_len, purity_blend); + + float2 target_unit = (target_len > MB_NEAR_WHITE_EPSILON) + ? target_direction * rsqrt(target_len_sq) + : float2(0.f, 0.f); + float2 reference_unit = (reference_len > MB_NEAR_WHITE_EPSILON) + ? reference_direction * rsqrt(reference_len_sq) + : target_unit; + if (target_len <= MB_NEAR_WHITE_EPSILON) { + target_unit = reference_unit; + } + + float2 blended_unit = target_unit; + if (hue_blend > 0.f) { + blended_unit = lerp(target_unit, reference_unit, hue_blend); + float blended_len_sq = dot(blended_unit, blended_unit); + if (blended_len_sq <= MB_NEAR_WHITE_EPSILON) { + blended_unit = (hue_blend >= 0.5f) ? reference_unit : target_unit; + blended_len_sq = dot(blended_unit, blended_unit); + } + blended_unit *= rsqrt(max(blended_len_sq, 1e-20f)); + } + + float2 final_mb_xy = white + blended_unit * max(applied_purity, 0.f); + float3 final_bt2020 = renodx::color::bt2020::from::MacLeodBoynton(final_mb_xy, target_mb.z); + return renodx::color::bt709::from::BT2020(final_bt2020); +} + +namespace lut { + +static inline float PrepareLinearInput(inout float r, inout float g, inout float b) { + float3 lut_linear_input = max(0.f, float3(r, g, b)); + float lut_sampling_scale = 1.0f; + + if (RENODX_TONE_MAP_TYPE != 0.0f) { + lut_sampling_scale = renodx::tonemap::neutwo::ComputeMaxChannelScale(lut_linear_input); + lut_linear_input *= lut_sampling_scale; + } + + r = lut_linear_input.r; + g = lut_linear_input.g; + b = lut_linear_input.b; + return lut_sampling_scale; +} + +static inline float NormalizeEncodedInput(inout float r, inout float g, inout float b) { + float lut_sample_max_channel = renodx::math::Max(r, g, b, 1.0f); + float3 lut_input_srgb = saturate(float3(r, g, b) / lut_sample_max_channel); + r = lut_input_srgb.r; + g = lut_input_srgb.g; + b = lut_input_srgb.b; + return lut_sample_max_channel; +} + +static inline void ApplySampleMaxChannel(inout float r, inout float g, inout float b, float lut_sample_max_channel) { + r *= lut_sample_max_channel; + g *= lut_sample_max_channel; + b *= lut_sample_max_channel; +} + +static inline void ApplyInverseSamplingScale(inout float r, inout float g, inout float b, float lut_sampling_scale) { + if (RENODX_TONE_MAP_TYPE != 0.0f) { + float inv_lut_sampling_scale = 1.0f / max(lut_sampling_scale, 1e-6f); + r *= inv_lut_sampling_scale; + g *= inv_lut_sampling_scale; + b *= inv_lut_sampling_scale; + } +} + +static inline void ApplyLutStrength(inout float r, inout float g, inout float b, float3 ungraded) { + float3 ungraded_bt709 = renodx::color::bt709::from::AP1(ungraded); + r = lerp(ungraded_bt709.r, r, RENODX_WUWA_LUT_STRENGTH); + g = lerp(ungraded_bt709.g, g, RENODX_WUWA_LUT_STRENGTH); + b = lerp(ungraded_bt709.b, b, RENODX_WUWA_LUT_STRENGTH); +} + +} + static const float3x3 DCIP3_to_BT2020_MAT = float3x3( 0.75383303, 0.19859737, 0.04756960, 0.04574385, 0.94177722, 0.01247893, -0.00121034, 0.01760172, 0.98360862 ); +namespace WUWAUncharted2 { +struct Config { + float pivot_point; + float coeffs[6]; // A,B,C,D,E,F +}; + +static inline float Derivative(float x, float a, float b, float c, float d, float e, float f) { + float num = -a * b * (c - 1.0f) * x * x + 2.0f * a * d * (f - e) * x + b * d * (c * f - e); + float den = x * (a * x + b) + d * f; + return num / (den * den); +} + +// Analytic knee root from BatmanAK UC2 extension helper. +static inline float FindThirdDerivativeRoot(float a, float b, float c, float d, float e, float f) { + float sqrt_ab = sqrt(a * b * b * c * c - 2.f * a * b * b * c + a * b * b); + float sqrt_df = sqrt(a * d * d * e * e - 2.f * a * d * d * e * f + a * d * d * f * f + b * b * c * c * d * f + b * b * (-c) * d * e - b * b * c * d * f + b * b * d * e); + float de_df = d * e - d * f; + + float term_top = 32.f * (a * d * d * e * f - a * d * d * f * f + b * b * c * d * f - b * b * d * e) / (a * a * b * (c - 1.f)); + float term_mid = 96.f * de_df * (c * d * f - d * e) / (a * b * (c - 1.f) * (c - 1.f)); + float de_df2 = de_df * de_df; + float de_df3 = de_df2 * de_df; + float term_tail = 64.f * de_df3 / (b * b * b * (c - 1.f) * (c - 1.f) * (c - 1.f)); + + float Tfrac = sqrt_ab * (term_top - term_mid - term_tail) / (8.f * sqrt_df); + float Tmid2_num = 12.f * a * a * b * c * d * f - 12.f * a * a * b * d * e; + float Tmid2_den = 6.f * (a * a * a * b * c - a * a * a * b); + float Tmid2 = Tmid2_num / Tmid2_den; + float T3 = 6.f * (c * d * f - d * e) / (a * (c - 1.f)); + float T4 = 8.f * de_df2 / (b * b * (c - 1.f) * (c - 1.f)); + + float centerNeg = -Tfrac + Tmid2 + T3 + T4; + float centerPos = Tfrac + Tmid2 + T3 + T4; + + float sNeg = renodx::math::SignSqrt(-centerNeg); + float sPos = renodx::math::SignSqrt(centerPos); + + float shift1 = sqrt_df / sqrt_ab + de_df / (b * (c - 1.f)); + float shift2 = sqrt_df / sqrt_ab - de_df / (b * (c - 1.f)); + + float r1 = -0.5f * sNeg - shift1; + float r2 = 0.5f * sNeg - shift1; + float r3 = -0.5f * sPos + shift2; + float r4 = 0.5f * sPos + shift2; + + return saturate(renodx::math::Max(r1, r2, r3, r4)); +} + +static inline Config CreateConfig(float coeffs[6]) { + Config cfg; + cfg.pivot_point = FindThirdDerivativeRoot(coeffs[0], coeffs[1], coeffs[2], coeffs[3], coeffs[4], coeffs[5]); + cfg.coeffs = coeffs; + return cfg; +} + +static inline float3 ApplyExtended(float3 x, float3 base, Config cfg) { + float A = cfg.coeffs[0], B = cfg.coeffs[1], C = cfg.coeffs[2], D = cfg.coeffs[3], E = cfg.coeffs[4], F = cfg.coeffs[5]; + + float pivot_x = saturate(cfg.pivot_point * 0.82f); // earlier onset + float pivot_y = renodx::tonemap::ApplyCurve(pivot_x, A, B, C, D, E, F); + + float slope = Derivative(pivot_x, A, B, C, D, E, F); + + float3 extended = slope * x + (pivot_y - slope * pivot_x); + + float3 t = smoothstep(pivot_x - 0.05f, pivot_x + 0.05f, x); // softer transition + return lerp(base, extended, t); +} + +static inline void ApplyExtendedFromCoeffs( + inout float r, + inout float g, + inout float b, + float3 untonemapped, + float c037y, + float c037z, + float c037w, + float c038x, + float c038y, + float c038z) { + if (RENODX_TONE_MAP_TYPE != 0.f) { + float coeffs[6] = { c037y, c037z, c037w, c038x, c038y, c038z }; + Config uc2_config = CreateConfig(coeffs); + float3 extended = ApplyExtended(max(0.f, untonemapped), float3(r, g, b), uc2_config); + r = extended.x; + g = extended.y; + b = extended.z; + } +} + +} + +static inline float3 ApplyDisplayMap(float3 input_bt709) { + if (RENODX_TONE_MAP_TYPE == 0.f) { + return renodx::draw::RenderIntermediatePass(input_bt709); + } + + float3 untonemapped_bt709 = max(0.f, input_bt709); + float3 untonemapped_bt2020 = renodx::color::bt2020::from::BT709(untonemapped_bt709); + float peak_ratio = RENODX_PEAK_NITS / RENODX_GAME_NITS; + + renodx_custom::tonemap::psycho::config::Config psycho_config = renodx_custom::tonemap::psycho::config::Create(); + psycho_config.peak_value = peak_ratio; + psycho_config.exposure = RENODX_TONE_MAP_EXPOSURE; + psycho_config.gamma = RENODX_TONE_MAP_GAMMA; + psycho_config.highlights = RENODX_TONE_MAP_HIGHLIGHTS; + psycho_config.shadows = RENODX_TONE_MAP_SHADOWS; + psycho_config.contrast = RENODX_TONE_MAP_CONTRAST; + psycho_config.flare = 0.10f * pow(RENODX_TONE_MAP_FLARE, 10.f); + psycho_config.contrast_highlights = RENODX_TONE_MAP_CONTRAST_HIGHLIGHTS; + psycho_config.contrast_shadows = RENODX_TONE_MAP_CONTRAST_SHADOWS; + psycho_config.purity_scale = RENODX_TONE_MAP_SATURATION * RENODX_PSYCHOV_PURITY_SCALE; + if (RENODX_TONE_MAP_DECHROMA != 0.f) { + float dechroma_lum = renodx_custom::tonemap::psycho::psycho11_StockmanLuminanceFromBT2020(untonemapped_bt2020); + float dechroma_scale = lerp(1.f, 0.f, saturate(pow(dechroma_lum / (10000.f / 100.f), (1.f - RENODX_TONE_MAP_DECHROMA)))); + psycho_config.purity_scale *= max(dechroma_scale, 0.f); + } + psycho_config.purity_highlights = + (-1.f * (RENODX_TONE_MAP_HIGHLIGHT_SATURATION - 1.f)) + ((RENODX_PSYCHOV_HIGHLIGHT_PURITY_BIAS - 0.5f) * 2.f); + psycho_config.adaptation_contrast = RENODX_TONE_MAP_ADAPTATION_CONTRAST; + psycho_config.bleaching_intensity = 0.f; + psycho_config.hue_restore = RENODX_PSYCHOV_HUE_RESTORE; + psycho_config.pre_gamut_compress = false; + psycho_config.post_gamut_compress = true; + + float3 tonemapped_bt2020; + if (RENODX_TONE_MAP_SCALING != 0.f) { + tonemapped_bt2020 = renodx_custom::tonemap::psycho::ApplyBT2020(untonemapped_bt2020, psycho_config); + } else { + float3 purity_and_hue_source = renodx::color::bt2020::from::BT709(renodx::tonemap::ReinhardPiecewise(untonemapped_bt709, 4.f, 0.5f)); + untonemapped_bt2020 = renodx::color::correct::Luminance( + purity_and_hue_source, + renodx_custom::tonemap::psycho::psycho11_StockmanLuminanceFromBT2020(purity_and_hue_source), + renodx_custom::tonemap::psycho::psycho11_StockmanLuminanceFromBT2020(untonemapped_bt2020)); + + psycho_config.apply_tonemap = false; + psycho_config.purity_highlights = 0.f; + untonemapped_bt2020 = renodx_custom::tonemap::psycho::ApplyBT2020(untonemapped_bt2020, psycho_config); + + if (RENODX_PSYCHOV_HUE_EMULATION > 0.f || RENODX_PSYCHOV_CHROMA_EMULATION > 0.f) { + float3 pre_max_bt709 = renodx::color::bt709::from::BT2020(untonemapped_bt2020); + float3 pre_max_ap1 = renodx::color::ap1::from::BT709(pre_max_bt709); + float3 pre_max_reference_bt709 = renodx::color::bt709::from::AP1( + renodx::tonemap::ReinhardPiecewise(pre_max_ap1, 2.f, 1.f)); + pre_max_bt709 = CorrectHueAndPurityMBGated( + pre_max_bt709, + pre_max_reference_bt709, + RENODX_PSYCHOV_HUE_EMULATION, + 0.5f, + 1.f, + saturate(RENODX_PSYCHOV_CHROMA_EMULATION), + 1.f); + untonemapped_bt2020 = renodx::color::bt2020::from::BT709(pre_max_bt709); + } + + tonemapped_bt2020 = renodx::tonemap::neutwo::MaxChannel(untonemapped_bt2020, peak_ratio); + } + + float3 mapped_bt709 = renodx::color::bt709::from::BT2020(tonemapped_bt2020); + + if (RENODX_TONE_MAP_SCALING != 0.f && + (RENODX_PSYCHOV_HUE_EMULATION > 0.f || RENODX_PSYCHOV_CHROMA_EMULATION > 0.f)) { + float3 mapped_ap1 = renodx::color::ap1::from::BT709(mapped_bt709); + float3 hue_reference_bt709 = renodx::color::bt709::from::AP1( + renodx::tonemap::ReinhardPiecewise(mapped_ap1, 2.f, 1.f)); + mapped_bt709 = CorrectHueAndPurityMBGated( + mapped_bt709, + hue_reference_bt709, + RENODX_PSYCHOV_HUE_EMULATION, + 0.5f, + 1.f, + saturate(RENODX_PSYCHOV_CHROMA_EMULATION), + 1.f); + } + + float3 mapped_output = lerp(input_bt709, mapped_bt709, RENODX_PSYCHOV_BLEND); + return renodx::draw::RenderIntermediatePass(mapped_output); +} + +static inline float3 InvertAndApplyDisplayMap(float3 input_bt709) { + return ApplyDisplayMap(renodx::draw::InvertIntermediatePass(input_bt709)); +} + } static inline float3 HandleLUTOutput(float3 lut_output, float3 untonemapped, float3 tonemapped) { @@ -116,6 +437,7 @@ static inline float3 HandleLUTOutput(float3 lut_output, float3 untonemapped, flo #define GENERATE_LUT_OUTPUT(T) \ static inline T GenerateLUTOutput(T graded_bt709) { \ graded_bt709 = renodx::draw::RenderIntermediatePass(graded_bt709); \ + graded_bt709 /= 1.0499999523162842f; \ return graded_bt709; \ } diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x08F01A32.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x08F01A32.ps_6_0.hlsl deleted file mode 100644 index a3444ea15..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x08F01A32.ps_6_0.hlsl +++ /dev/null @@ -1,1211 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _338; - float _339; - float _340; - float _887; - float _920; - float _934; - float _998; - float _1135; - float _1136; - float _1137; - float _1280; - float _1281; - float _1282; - float _1296; - float _1307; - float _1318; - float _1463; - float _1474; - float _1596; - float _1629; - float _1643; - float _1682; - float _1775; - float _1834; - float _1893; - float _1976; - float _2041; - float _2106; - float _2123; - float _2124; - float _2125; - float _2229; - float _2262; - float _2276; - float _2315; - float _2408; - float _2467; - float _2526; - float _2606; - float _2668; - float _2730; - float _2744; - float _2745; - float _2746; - float _2904; - float _2905; - float _2906; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _21 = ((uint)(cb0_074w) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _155 = cb0_047y * 0.05000000074505806f; - float _158 = _130 - ((_155 * _140) * _154); - float _161 = ((_155 * _130) * _154) + _140; - float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); - float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); - float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _174 = max(_173, 1.000000013351432e-10f); - float _175 = _172 / _174; - float _178 = ((1.0f - _172) - _173) / _174; - float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); - float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); - float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); - float _191 = mad(_189, -0.7501999735832214f, 0.0f); - float _192 = mad(_189, 1.7135000228881836f, 0.0f); - float _193 = mad(_189, 0.03669999912381172f, -0.0f); - float _194 = mad(_190, 0.03889999911189079f, 0.0f); - float _195 = mad(_190, -0.06849999725818634f, 0.0f); - float _196 = mad(_190, 1.0296000242233276f, 0.0f); - float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); - float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); - float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); - float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); - float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); - float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); - float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); - float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); - float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); - float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); - float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); - float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); - float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); - float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); - float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); - float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); - float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); - float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); - float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); - float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); - float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); - float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); - float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); - float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); - // bool _298 = ((uint)(cb0_046x) == 0); - bool _298 = ((uint)(tm_flags.x) == 0); - if (_298) { - float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _304 = (_289 / _300) + -1.0f; - float _305 = (_292 / _300) + -1.0f; - float _306 = (_295 / _300) + -1.0f; - float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); - _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); - _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); - _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); - } else { - _338 = _289; - _339 = _292; - _340 = _295; - } - float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _355 = cb0_052w + cb0_057w; - float _369 = cb0_051w * cb0_056w; - float _383 = cb0_050w * cb0_055w; - float _397 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = _338 - _341; - float _416 = _339 - _341; - float _417 = _340 - _341; - float _475 = saturate(_341 / cb0_073x); - float _479 = (_475 * _475) * (3.0f - (_475 * 2.0f)); - float _480 = 1.0f - _479; - float _489 = cb0_052w + cb0_067w; - float _498 = cb0_051w * cb0_066w; - float _507 = cb0_050w * cb0_065w; - float _516 = cb0_049w * cb0_064w; - float _525 = cb0_048w * cb0_063w; - float _587 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); - float _591 = (_587 * _587) * (3.0f - (_587 * 2.0f)); - float _600 = cb0_052w + cb0_062w; - float _609 = cb0_051w * cb0_061w; - float _618 = cb0_050w * cb0_060w; - float _627 = cb0_049w * cb0_059w; - float _636 = cb0_048w * cb0_058w; - float _694 = _479 - _591; - float _705 = ((_591 * (((cb0_052x + cb0_067x) + _489) + (((cb0_051x * cb0_066x) * _498) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _516) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _525) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _507)))))) + (_480 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383))))))) + ((((cb0_052x + cb0_062x) + _600) + (((cb0_051x * cb0_061x) * _609) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _627) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _636) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _618))))) * _694); - float _707 = ((_591 * (((cb0_052y + cb0_067y) + _489) + (((cb0_051y * cb0_066y) * _498) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _516) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _525) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _507)))))) + (_480 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383))))))) + ((((cb0_052y + cb0_062y) + _600) + (((cb0_051y * cb0_061y) * _609) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _627) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _636) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _618))))) * _694); - float _709 = ((_591 * (((cb0_052z + cb0_067z) + _489) + (((cb0_051z * cb0_066z) * _498) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _516) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _525) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _507)))))) + (_480 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383))))))) + ((((cb0_052z + cb0_062z) + _600) + (((cb0_051z * cb0_061z) * _609) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _627) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _636) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _618))))) * _694); - float _735 = dot(float3(_705, _707, _709), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _793 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_705 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _794 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_707 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _795 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_709 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _798 = mad(-0.0832584798336029f, _795, mad(-0.6217905879020691f, _794, (_793 * 1.7050515413284302f))); - float _801 = mad(-0.010548528283834457f, _795, mad(1.1408027410507202f, _794, (_793 * -0.13025718927383423f))); - float _804 = mad(1.152971863746643f, _795, mad(-0.1289687603712082f, _794, (_793 * -0.024003278464078903f))); - float _820 = ((mad(0.061360642313957214f, _795, mad(-4.540197551250458e-09f, _794, (_793 * 0.9386394023895264f))) - _793) * cb0_075x) + _793; - float _821 = ((mad(0.169205904006958f, _795, mad(0.8307942152023315f, _794, (_793 * 6.775371730327606e-08f))) - _794) * cb0_075x) + _794; - float _822 = (mad(-2.3283064365386963e-10f, _794, (_793 * -9.313225746154785e-10f)) * cb0_075x) + _795; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _832 = mad(0.16386905312538147f, _822, mad(0.14067868888378143f, _821, (_820 * 0.6954522132873535f))); - float _835 = mad(0.0955343246459961f, _822, mad(0.8596711158752441f, _821, (_820 * 0.044794581830501556f))); - float _838 = mad(1.0015007257461548f, _822, mad(0.004025210160762072f, _821, (_820 * -0.005525882821530104f))); - float _842 = max(max(_832, _835), _838); - float _847 = (max(_842, 1.000000013351432e-10f) - max(min(min(_832, _835), _838), 1.000000013351432e-10f)) / max(_842, 0.009999999776482582f); - float _860 = ((_835 + _832) + _838) + (sqrt((((_838 - _835) * _838) + ((_835 - _832) * _835)) + ((_832 - _838) * _832)) * 1.75f); - float _861 = _860 * 0.3333333432674408f; - float _862 = _847 + -0.4000000059604645f; - float _863 = _862 * 5.0f; - float _867 = max((1.0f - abs(_862 * 2.5f)), 0.0f); - float _878 = ((float(((int)(uint)((bool)(_863 > 0.0f))) - ((int)(uint)((bool)(_863 < 0.0f)))) * (1.0f - (_867 * _867))) + 1.0f) * 0.02500000037252903f; - if (!(_861 <= 0.0533333346247673f)) { - if (!(_861 >= 0.1599999964237213f)) { - _887 = (((0.23999999463558197f / _860) + -0.5f) * _878); - } else { - _887 = 0.0f; - } - } else { - _887 = _878; - } - float _888 = _887 + 1.0f; - float _889 = _888 * _832; - float _890 = _888 * _835; - float _891 = _888 * _838; - if (!((bool)(_889 == _890) && (bool)(_890 == _891))) { - float _898 = ((_889 * 2.0f) - _890) - _891; - float _901 = ((_835 - _838) * 1.7320507764816284f) * _888; - float _903 = atan(_901 / _898); - bool _906 = (_898 < 0.0f); - bool _907 = (_898 == 0.0f); - bool _908 = (_901 >= 0.0f); - bool _909 = (_901 < 0.0f); - _920 = select((_908 && _907), 90.0f, select((_909 && _907), -90.0f, (select((_909 && _906), (_903 + -3.1415927410125732f), select((_908 && _906), (_903 + 3.1415927410125732f), _903)) * 57.2957763671875f))); - } else { - _920 = 0.0f; - } - float _925 = min(max(select((_920 < 0.0f), (_920 + 360.0f), _920), 0.0f), 360.0f); - if (_925 < -180.0f) { - _934 = (_925 + 360.0f); - } else { - if (_925 > 180.0f) { - _934 = (_925 + -360.0f); - } else { - _934 = _925; - } - } - float _938 = saturate(1.0f - abs(_934 * 0.014814814552664757f)); - float _942 = (_938 * _938) * (3.0f - (_938 * 2.0f)); - float _948 = ((_942 * _942) * ((_847 * 0.18000000715255737f) * (0.029999999329447746f - _889))) + _889; - float _958 = max(0.0f, mad(-0.21492856740951538f, _891, mad(-0.2365107536315918f, _890, (_948 * 1.4514392614364624f)))); - float _959 = max(0.0f, mad(-0.09967592358589172f, _891, mad(1.17622971534729f, _890, (_948 * -0.07655377686023712f)))); - float _960 = max(0.0f, mad(0.9977163076400757f, _891, mad(-0.006032449658960104f, _890, (_948 * 0.008316148072481155f)))); - float _961 = dot(float3(_958, _959, _960), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _975 = (cb0_036w + 1.0f) - cb0_036y; - float _978 = cb0_037x + 1.0f; - float _980 = _978 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _998 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _989 = (cb0_036w + 0.18000000715255737f) / _975; - _998 = (-0.7447274923324585f - ((log2(_989 / (2.0f - _989)) * 0.3465735912322998f) * (_975 / cb0_036x))); - } - float _1001 = ((1.0f - cb0_036y) / cb0_036x) - _998; - float _1003 = (cb0_036z / cb0_036x) - _1001; - float _1007 = log2(lerp(_961, _958, 0.9599999785423279f)) * 0.3010300099849701f; - float _1008 = log2(lerp(_961, _959, 0.9599999785423279f)) * 0.3010300099849701f; - float _1009 = log2(lerp(_961, _960, 0.9599999785423279f)) * 0.3010300099849701f; - float _1013 = cb0_036x * (_1007 + _1001); - float _1014 = cb0_036x * (_1008 + _1001); - float _1015 = cb0_036x * (_1009 + _1001); - float _1016 = _975 * 2.0f; - float _1018 = (cb0_036x * -2.0f) / _975; - float _1019 = _1007 - _998; - float _1020 = _1008 - _998; - float _1021 = _1009 - _998; - float _1040 = _980 * 2.0f; - float _1042 = (cb0_036x * 2.0f) / _980; - float _1067 = select((_1007 < _998), ((_1016 / (exp2((_1019 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1013); - float _1068 = select((_1008 < _998), ((_1016 / (exp2((_1020 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1014); - float _1069 = select((_1009 < _998), ((_1016 / (exp2((_1021 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1015); - float _1076 = _1003 - _998; - float _1080 = saturate(_1019 / _1076); - float _1081 = saturate(_1020 / _1076); - float _1082 = saturate(_1021 / _1076); - bool _1083 = (_1003 < _998); - float _1087 = select(_1083, (1.0f - _1080), _1080); - float _1088 = select(_1083, (1.0f - _1081), _1081); - float _1089 = select(_1083, (1.0f - _1082), _1082); - float _1108 = (((_1087 * _1087) * (select((_1007 > _1003), (_978 - (_1040 / (exp2(((_1007 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; - float _1109 = (((_1088 * _1088) * (select((_1008 > _1003), (_978 - (_1040 / (exp2(((_1008 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1014) - _1068)) * (3.0f - (_1088 * 2.0f))) + _1068; - float _1110 = (((_1089 * _1089) * (select((_1009 > _1003), (_978 - (_1040 / (exp2(((_1009 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; - float _1111 = dot(float3(_1108, _1109, _1110), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1135 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1108, 0.9300000071525574f))) - _820)) + _820); - _1136 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1109, 0.9300000071525574f))) - _821)) + _821); - _1137 = ((cb0_075z * (max(0.0f, (lerp(_1111, _1110, 0.9300000071525574f))) - _822)) + _822); - } else { - _1135 = _820; - _1136 = _821; - _1137 = _822; - } - float _1153 = ((mad(-0.06537103652954102f, _1137, mad(1.451815478503704e-06f, _1136, (_1135 * 1.065374732017517f))) - _1135) * cb0_075x) + _1135; - float _1154 = ((mad(-0.20366770029067993f, _1137, mad(1.2036634683609009f, _1136, (_1135 * -2.57161445915699e-07f))) - _1136) * cb0_075x) + _1136; - float _1155 = ((mad(0.9999996423721313f, _1137, mad(2.0954757928848267e-08f, _1136, (_1135 * 1.862645149230957e-08f))) - _1137) * cb0_075x) + _1137; - [branch] - if (!_298) { - float _1198 = 1.0f / (dot(float3(_798, _801, _804), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1208 = max(0.0f, (((_1198 * cb0_035x) + cb0_034x) * dot(float3(_798, _801, _804), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1209 = max(0.0f, (((_1198 * cb0_035y) + cb0_034y) * dot(float3(_798, _801, _804), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1210 = max(0.0f, (((_1198 * cb0_035z) + cb0_034z) * dot(float3(_798, _801, _804), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1216 = max(0.0f, (cb0_031x - _1208)); - float _1217 = max(0.0f, (cb0_031x - _1209)); - float _1218 = max(0.0f, (cb0_031x - _1210)); - float _1220 = max(_1208, cb0_031z); - float _1221 = max(_1209, cb0_031z); - float _1222 = max(_1210, cb0_031z); - _1280 = (((((((cb0_032x * _1220) + cb0_032y) * (1.0f / (cb0_031w + _1220))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1208, cb0_031x), cb0_031z))) + ((cb0_028w * _1216) * (1.0f / (cb0_031y + _1216)))) + cb0_029w); - _1281 = ((((((1.0f / (cb0_031w + _1221)) * ((cb0_032x * _1221) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1209, cb0_031x), cb0_031z))) + ((cb0_028w * _1217) * (1.0f / (cb0_031y + _1217)))) + cb0_029w); - _1282 = ((((((1.0f / (cb0_031w + _1222)) * ((cb0_032x * _1222) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1210, cb0_031x), cb0_031z))) + ((cb0_028w * _1218) * (1.0f / (cb0_031y + _1218)))) + cb0_029w); - } else { - _1280 = max(0.0f, mad(-0.0832584798336029f, _1155, mad(-0.6217905879020691f, _1154, (_1153 * 1.7050515413284302f)))); - _1281 = max(0.0f, mad(-0.010548528283834457f, _1155, mad(1.1408027410507202f, _1154, (_1153 * -0.13025718927383423f)))); - _1282 = max(0.0f, mad(1.152971863746643f, _1155, mad(-0.1289687603712082f, _1154, (_1153 * -0.024003278464078903f)))); - } - float _1283 = saturate(_1280); - float _1284 = saturate(_1281); - float _1285 = saturate(_1282); - if (_1283 < 0.0031306699384003878f) { - _1296 = (_1283 * 12.920000076293945f); - } else { - _1296 = (((pow(_1283, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1284 < 0.0031306699384003878f) { - _1307 = (_1284 * 12.920000076293945f); - } else { - _1307 = (((pow(_1284, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1285 < 0.0031306699384003878f) { - _1318 = (_1285 * 12.920000076293945f); - } else { - _1318 = (((pow(_1285, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1322 = (_1307 * 0.9375f) + 0.03125f; - float _1330 = _1318 * 15.0f; - float _1331 = floor(_1330); - float _1332 = _1330 - _1331; - float _1334 = (((_1296 * 0.9375f) + 0.03125f) + _1331) * 0.0625f; - float4 _1335 = t0.Sample(s0, float2(_1334, _1322)); - float4 _1340 = t0.Sample(s0, float2((_1334 + 0.0625f), _1322)); - float _1359 = max(6.103519990574569e-05f, (((lerp(_1335.x, _1340.x, _1332)) * cb0_041x) + (cb0_040x * _1296))); - float _1360 = max(6.103519990574569e-05f, (((lerp(_1335.y, _1340.y, _1332)) * cb0_041x) + (cb0_040x * _1307))); - float _1361 = max(6.103519990574569e-05f, (((lerp(_1335.z, _1340.z, _1332)) * cb0_041x) + (cb0_040x * _1318))); - float _1383 = select((_1359 > 0.040449999272823334f), exp2(log2((_1359 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1359 * 0.07739938050508499f)); - float _1384 = select((_1360 > 0.040449999272823334f), exp2(log2((_1360 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1360 * 0.07739938050508499f)); - float _1385 = select((_1361 > 0.040449999272823334f), exp2(log2((_1361 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1361 * 0.07739938050508499f)); - float _1411 = cb0_044y * (((cb0_026y + (cb0_026x * _1383)) * _1383) + cb0_026z); - float _1412 = cb0_044z * (((cb0_026y + (cb0_026x * _1384)) * _1384) + cb0_026z); - float _1413 = cb0_044w * (((cb0_026y + (cb0_026x * _1385)) * _1385) + cb0_026z); - float _1420 = ((cb0_045x - _1411) * cb0_045w) + _1411; - float _1421 = ((cb0_045y - _1412) * cb0_045w) + _1412; - float _1422 = ((cb0_045z - _1413) * cb0_045w) + _1413; - float _1423 = cb0_044y * _798; - float _1424 = cb0_044z * _801; - float _1425 = cb0_044w * _804; - float _1432 = ((cb0_045x - _1423) * cb0_045w) + _1423; - float _1433 = ((cb0_045y - _1424) * cb0_045w) + _1424; - float _1434 = ((cb0_045z - _1425) * cb0_045w) + _1425; - float _1446 = exp2(log2(max(0.0f, _1420)) * cb0_027y); - float _1447 = exp2(log2(max(0.0f, _1421)) * cb0_027y); - float _1448 = exp2(log2(max(0.0f, _1422)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1446, _1447, _1448)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1446 < 0.0031306699384003878f) { - _1463 = (_1446 * 12.920000076293945f); - } else { - _1463 = (((pow(_1446, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1447 < 0.0031306699384003878f) { - _1474 = (_1447 * 12.920000076293945f); - } else { - _1474 = (((pow(_1447, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1448 < 0.0031306699384003878f) { - _2904 = _1463; - _2905 = _1474; - _2906 = (_1448 * 12.920000076293945f); - } else { - _2904 = _1463; - _2905 = _1474; - _2906 = (((pow(_1448, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1489 = mad(0.04736635088920593f, _1448, mad(0.3395121395587921f, _1447, (_1446 * 0.613191545009613f))); - float _1492 = mad(0.01345000695437193f, _1448, mad(0.9163357615470886f, _1447, (_1446 * 0.07020691782236099f))); - float _1495 = mad(0.8696067929267883f, _1448, mad(0.1095672994852066f, _1447, (_1446 * 0.020618872717022896f))); - float _1505 = max(6.103519990574569e-05f, mad(_34, _1495, mad(_33, _1492, (_1489 * _32)))); - float _1506 = max(6.103519990574569e-05f, mad(_37, _1495, mad(_36, _1492, (_1489 * _35)))); - float _1507 = max(6.103519990574569e-05f, mad(_40, _1495, mad(_39, _1492, (_1489 * _38)))); - _2904 = min((_1505 * 4.5f), ((exp2(log2(max(_1505, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2905 = min((_1506 * 4.5f), ((exp2(log2(max(_1506, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2906 = min((_1507 * 4.5f), ((exp2(log2(max(_1507, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1534 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1534) { - float _1537 = _1433 * 3.0f; - float _1538 = _1434 * 3.0f; - float _1541 = mad(0.17733481526374817f, _1538, mad(0.38297808170318604f, _1537, (_1432 * 1.31910240650177f))); - float _1544 = mad(0.09676162153482437f, _1538, mad(0.8134231567382812f, _1537, (_1432 * 0.2693769633769989f))); - float _1547 = mad(0.870704174041748f, _1538, mad(0.11154405772686005f, _1537, (_1432 * 0.05263196676969528f))); - float _1551 = max(max(_1541, _1544), _1547); - float _1556 = (max(_1551, 1.000000013351432e-10f) - max(min(min(_1541, _1544), _1547), 1.000000013351432e-10f)) / max(_1551, 0.009999999776482582f); - float _1569 = ((_1544 + _1541) + _1547) + (sqrt((((_1547 - _1544) * _1547) + ((_1544 - _1541) * _1544)) + ((_1541 - _1547) * _1541)) * 1.75f); - float _1570 = _1569 * 0.3333333432674408f; - float _1571 = _1556 + -0.4000000059604645f; - float _1572 = _1571 * 5.0f; - float _1576 = max((1.0f - abs(_1571 * 2.5f)), 0.0f); - float _1587 = ((float(((int)(uint)((bool)(_1572 > 0.0f))) - ((int)(uint)((bool)(_1572 < 0.0f)))) * (1.0f - (_1576 * _1576))) + 1.0f) * 0.02500000037252903f; - if (!(_1570 <= 0.0533333346247673f)) { - if (!(_1570 >= 0.1599999964237213f)) { - _1596 = (((0.23999999463558197f / _1569) + -0.5f) * _1587); - } else { - _1596 = 0.0f; - } - } else { - _1596 = _1587; - } - float _1597 = _1596 + 1.0f; - float _1598 = _1597 * _1541; - float _1599 = _1597 * _1544; - float _1600 = _1597 * _1547; - if (!((bool)(_1598 == _1599) && (bool)(_1599 == _1600))) { - float _1607 = ((_1598 * 2.0f) - _1599) - _1600; - float _1610 = ((_1544 - _1547) * 1.7320507764816284f) * _1597; - float _1612 = atan(_1610 / _1607); - bool _1615 = (_1607 < 0.0f); - bool _1616 = (_1607 == 0.0f); - bool _1617 = (_1610 >= 0.0f); - bool _1618 = (_1610 < 0.0f); - _1629 = select((_1617 && _1616), 90.0f, select((_1618 && _1616), -90.0f, (select((_1618 && _1615), (_1612 + -3.1415927410125732f), select((_1617 && _1615), (_1612 + 3.1415927410125732f), _1612)) * 57.2957763671875f))); - } else { - _1629 = 0.0f; - } - float _1634 = min(max(select((_1629 < 0.0f), (_1629 + 360.0f), _1629), 0.0f), 360.0f); - if (_1634 < -180.0f) { - _1643 = (_1634 + 360.0f); - } else { - if (_1634 > 180.0f) { - _1643 = (_1634 + -360.0f); - } else { - _1643 = _1634; - } - } - if ((bool)(_1643 > -67.5f) && (bool)(_1643 < 67.5f)) { - float _1649 = (_1643 + 67.5f) * 0.029629629105329514f; - int _1650 = int(_1649); - float _1652 = _1649 - float(_1650); - float _1653 = _1652 * _1652; - float _1654 = _1653 * _1652; - if (_1650 == 3) { - _1682 = (((0.1666666716337204f - (_1652 * 0.5f)) + (_1653 * 0.5f)) - (_1654 * 0.1666666716337204f)); - } else { - if (_1650 == 2) { - _1682 = ((0.6666666865348816f - _1653) + (_1654 * 0.5f)); - } else { - if (_1650 == 1) { - _1682 = (((_1654 * -0.5f) + 0.1666666716337204f) + ((_1653 + _1652) * 0.5f)); - } else { - _1682 = select((_1650 == 0), (_1654 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1682 = 0.0f; - } - float _1691 = min(max(((((_1556 * 0.27000001072883606f) * (0.029999999329447746f - _1598)) * _1682) + _1598), 0.0f), 65535.0f); - float _1692 = min(max(_1599, 0.0f), 65535.0f); - float _1693 = min(max(_1600, 0.0f), 65535.0f); - float _1706 = min(max(mad(-0.21492856740951538f, _1693, mad(-0.2365107536315918f, _1692, (_1691 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1707 = min(max(mad(-0.09967592358589172f, _1693, mad(1.17622971534729f, _1692, (_1691 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1708 = min(max(mad(0.9977163076400757f, _1693, mad(-0.006032449658960104f, _1692, (_1691 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1709 = dot(float3(_1706, _1707, _1708), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1716 = ((_1706 - _1709) * 0.9599999785423279f) + _1709; - float _1717 = ((_1707 - _1709) * 0.9599999785423279f) + _1709; - float _1718 = ((_1708 - _1709) * 0.9599999785423279f) + _1709; - float _1721 = log2(select((_1716 <= 0.0f), 6.103515625e-05f, _1716)); - float _1722 = _1721 * 0.3010300099849701f; - if (!(_1722 <= -5.2601776123046875f)) { - if ((bool)(_1722 > -5.2601776123046875f) && (bool)(_1722 < -0.7447274923324585f)) { - float _1730 = (_1721 * 0.19999998807907104f) + 3.494786262512207f; - int _1731 = int(_1730); - float _1733 = _1730 - float(_1731); - float _1735 = _global_0[_1731]; - float _1738 = _global_0[(_1731 + 1)]; - float _1743 = _1735 * 0.5f; - _1775 = dot(float3((_1733 * _1733), _1733, 1.0f), float3(mad((_global_0[(_1731 + 2)]), 0.5f, mad(_1738, -1.0f, _1743)), (_1738 - _1735), mad(_1738, 0.5f, _1743))); - } else { - if ((bool)(_1722 >= -0.7447274923324585f) && (bool)(_1722 < 4.673812389373779f)) { - float _1755 = (_1721 * 0.1666666567325592f) + 0.4123218357563019f; - int _1756 = int(_1755); - float _1758 = _1755 - float(_1756); - float _1760 = _global_1[_1756]; - float _1763 = _global_1[(_1756 + 1)]; - float _1768 = _1760 * 0.5f; - _1775 = dot(float3((_1758 * _1758), _1758, 1.0f), float3(mad((_global_1[(_1756 + 2)]), 0.5f, mad(_1763, -1.0f, _1768)), (_1763 - _1760), mad(_1763, 0.5f, _1768))); - } else { - _1775 = 4.0f; - } - } - } else { - _1775 = -4.0f; - } - float _1777 = exp2(_1775 * 3.321928024291992f); - float _1780 = log2(select((_1717 <= 0.0f), 6.103515625e-05f, _1717)); - float _1781 = _1780 * 0.3010300099849701f; - if (!(_1781 <= -5.2601776123046875f)) { - if ((bool)(_1781 > -5.2601776123046875f) && (bool)(_1781 < -0.7447274923324585f)) { - float _1789 = (_1780 * 0.19999998807907104f) + 3.494786262512207f; - int _1790 = int(_1789); - float _1792 = _1789 - float(_1790); - float _1794 = _global_0[_1790]; - float _1797 = _global_0[(_1790 + 1)]; - float _1802 = _1794 * 0.5f; - _1834 = dot(float3((_1792 * _1792), _1792, 1.0f), float3(mad((_global_0[(_1790 + 2)]), 0.5f, mad(_1797, -1.0f, _1802)), (_1797 - _1794), mad(_1797, 0.5f, _1802))); - } else { - if ((bool)(_1781 >= -0.7447274923324585f) && (bool)(_1781 < 4.673812389373779f)) { - float _1814 = (_1780 * 0.1666666567325592f) + 0.4123218357563019f; - int _1815 = int(_1814); - float _1817 = _1814 - float(_1815); - float _1819 = _global_1[_1815]; - float _1822 = _global_1[(_1815 + 1)]; - float _1827 = _1819 * 0.5f; - _1834 = dot(float3((_1817 * _1817), _1817, 1.0f), float3(mad((_global_1[(_1815 + 2)]), 0.5f, mad(_1822, -1.0f, _1827)), (_1822 - _1819), mad(_1822, 0.5f, _1827))); - } else { - _1834 = 4.0f; - } - } - } else { - _1834 = -4.0f; - } - float _1836 = exp2(_1834 * 3.321928024291992f); - float _1839 = log2(select((_1718 <= 0.0f), 6.103515625e-05f, _1718)); - float _1840 = _1839 * 0.3010300099849701f; - if (!(_1840 <= -5.2601776123046875f)) { - if ((bool)(_1840 > -5.2601776123046875f) && (bool)(_1840 < -0.7447274923324585f)) { - float _1848 = (_1839 * 0.19999998807907104f) + 3.494786262512207f; - int _1849 = int(_1848); - float _1851 = _1848 - float(_1849); - float _1853 = _global_0[_1849]; - float _1856 = _global_0[(_1849 + 1)]; - float _1861 = _1853 * 0.5f; - _1893 = dot(float3((_1851 * _1851), _1851, 1.0f), float3(mad((_global_0[(_1849 + 2)]), 0.5f, mad(_1856, -1.0f, _1861)), (_1856 - _1853), mad(_1856, 0.5f, _1861))); - } else { - if ((bool)(_1840 >= -0.7447274923324585f) && (bool)(_1840 < 4.673812389373779f)) { - float _1873 = (_1839 * 0.1666666567325592f) + 0.4123218357563019f; - int _1874 = int(_1873); - float _1876 = _1873 - float(_1874); - float _1878 = _global_1[_1874]; - float _1881 = _global_1[(_1874 + 1)]; - float _1886 = _1878 * 0.5f; - _1893 = dot(float3((_1876 * _1876), _1876, 1.0f), float3(mad((_global_1[(_1874 + 2)]), 0.5f, mad(_1881, -1.0f, _1886)), (_1881 - _1878), mad(_1881, 0.5f, _1886))); - } else { - _1893 = 4.0f; - } - } - } else { - _1893 = -4.0f; - } - float _1895 = exp2(_1893 * 3.321928024291992f); - float _1898 = mad(0.16386906802654266f, _1895, mad(0.14067870378494263f, _1836, (_1777 * 0.6954522132873535f))); - float _1901 = mad(0.0955343171954155f, _1895, mad(0.8596711158752441f, _1836, (_1777 * 0.044794563204050064f))); - float _1904 = mad(1.0015007257461548f, _1895, mad(0.004025210160762072f, _1836, (_1777 * -0.005525882821530104f))); - float _1907 = mad(-0.21492856740951538f, _1904, mad(-0.2365107536315918f, _1901, (_1898 * 1.4514392614364624f))); - float _1910 = mad(-0.09967592358589172f, _1904, mad(1.17622971534729f, _1901, (_1898 * -0.07655377686023712f))); - float _1913 = mad(0.9977163076400757f, _1904, mad(-0.006032449658960104f, _1901, (_1898 * 0.008316148072481155f))); - float _1916 = log2(select((_1907 <= 0.0f), 9.999999747378752e-05f, _1907)); - float _1917 = _1916 * 0.3010300099849701f; - if (!(!(_1917 <= -3.848327875137329f))) { - _1976 = ((_1916 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1917 > -3.848327875137329f) && (bool)(_1917 < 0.6812411546707153f)) { - float _1928 = (_1916 + 12.783867835998535f) * 0.46521204710006714f; - int _1929 = int(_1928); - float _1931 = _1928 - float(_1929); - float _1933 = _global_2[_1929]; - float _1936 = _global_2[(_1929 + 1)]; - float _1941 = _1933 * 0.5f; - _1976 = dot(float3((_1931 * _1931), _1931, 1.0f), float3(mad((_global_2[(_1929 + 2)]), 0.5f, mad(_1936, -1.0f, _1941)), (_1936 - _1933), mad(_1936, 0.5f, _1941))); - } else { - if ((bool)(_1917 >= 0.6812411546707153f) && (bool)(_1917 < 3.653702974319458f)) { - float _1953 = (_1916 + -2.2630341053009033f) * 0.7089107632637024f; - int _1954 = int(_1953); - float _1956 = _1953 - float(_1954); - float _1958 = _global_3[_1954]; - float _1961 = _global_3[(_1954 + 1)]; - float _1966 = _1958 * 0.5f; - _1976 = dot(float3((_1956 * _1956), _1956, 1.0f), float3(mad((_global_3[(_1954 + 2)]), 0.5f, mad(_1961, -1.0f, _1966)), (_1961 - _1958), mad(_1961, 0.5f, _1966))); - } else { - _1976 = ((_1916 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1981 = log2(select((_1910 <= 0.0f), 9.999999747378752e-05f, _1910)); - float _1982 = _1981 * 0.3010300099849701f; - if (!(!(_1982 <= -3.848327875137329f))) { - _2041 = ((_1981 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1982 > -3.848327875137329f) && (bool)(_1982 < 0.6812411546707153f)) { - float _1993 = (_1981 + 12.783867835998535f) * 0.46521204710006714f; - int _1994 = int(_1993); - float _1996 = _1993 - float(_1994); - float _1998 = _global_2[_1994]; - float _2001 = _global_2[(_1994 + 1)]; - float _2006 = _1998 * 0.5f; - _2041 = dot(float3((_1996 * _1996), _1996, 1.0f), float3(mad((_global_2[(_1994 + 2)]), 0.5f, mad(_2001, -1.0f, _2006)), (_2001 - _1998), mad(_2001, 0.5f, _2006))); - } else { - if ((bool)(_1982 >= 0.6812411546707153f) && (bool)(_1982 < 3.653702974319458f)) { - float _2018 = (_1981 + -2.2630341053009033f) * 0.7089107632637024f; - int _2019 = int(_2018); - float _2021 = _2018 - float(_2019); - float _2023 = _global_3[_2019]; - float _2026 = _global_3[(_2019 + 1)]; - float _2031 = _2023 * 0.5f; - _2041 = dot(float3((_2021 * _2021), _2021, 1.0f), float3(mad((_global_3[(_2019 + 2)]), 0.5f, mad(_2026, -1.0f, _2031)), (_2026 - _2023), mad(_2026, 0.5f, _2031))); - } else { - _2041 = ((_1981 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2046 = log2(select((_1913 <= 0.0f), 9.999999747378752e-05f, _1913)); - float _2047 = _2046 * 0.3010300099849701f; - if (!(!(_2047 <= -3.848327875137329f))) { - _2106 = ((_2046 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2047 > -3.848327875137329f) && (bool)(_2047 < 0.6812411546707153f)) { - float _2058 = (_2046 + 12.783867835998535f) * 0.46521204710006714f; - int _2059 = int(_2058); - float _2061 = _2058 - float(_2059); - float _2063 = _global_2[_2059]; - float _2066 = _global_2[(_2059 + 1)]; - float _2071 = _2063 * 0.5f; - _2106 = dot(float3((_2061 * _2061), _2061, 1.0f), float3(mad((_global_2[(_2059 + 2)]), 0.5f, mad(_2066, -1.0f, _2071)), (_2066 - _2063), mad(_2066, 0.5f, _2071))); - } else { - if ((bool)(_2047 >= 0.6812411546707153f) && (bool)(_2047 < 3.653702974319458f)) { - float _2083 = (_2046 + -2.2630341053009033f) * 0.7089107632637024f; - int _2084 = int(_2083); - float _2086 = _2083 - float(_2084); - float _2088 = _global_3[_2084]; - float _2091 = _global_3[(_2084 + 1)]; - float _2096 = _2088 * 0.5f; - _2106 = dot(float3((_2086 * _2086), _2086, 1.0f), float3(mad((_global_3[(_2084 + 2)]), 0.5f, mad(_2091, -1.0f, _2096)), (_2091 - _2088), mad(_2091, 0.5f, _2096))); - } else { - _2106 = ((_2046 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2109 = exp2(_1976 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2110 = exp2(_2041 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2111 = exp2(_2106 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1534) { - _2123 = mad(_34, _2111, mad(_33, _2110, (_2109 * _32))); - _2124 = mad(_37, _2111, mad(_36, _2110, (_2109 * _35))); - _2125 = mad(_40, _2111, mad(_39, _2110, (_2109 * _38))); - } else { - _2123 = _2109; - _2124 = _2110; - _2125 = _2111; - } - float _2135 = exp2(log2(_2123 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2136 = exp2(log2(_2124 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2137 = exp2(log2(_2125 * 9.999999747378752e-05f) * 0.1593017578125f); - _2904 = exp2(log2((1.0f / ((_2135 * 18.6875f) + 1.0f)) * ((_2135 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2905 = exp2(log2((1.0f / ((_2136 * 18.6875f) + 1.0f)) * ((_2136 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2137 * 18.6875f) + 1.0f)) * ((_2137 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2170 = _1433 * 3.0f; - float _2171 = _1434 * 3.0f; - float _2174 = mad(0.17733481526374817f, _2171, mad(0.38297808170318604f, _2170, (_1432 * 1.31910240650177f))); - float _2177 = mad(0.09676162153482437f, _2171, mad(0.8134231567382812f, _2170, (_1432 * 0.2693769633769989f))); - float _2180 = mad(0.870704174041748f, _2171, mad(0.11154405772686005f, _2170, (_1432 * 0.05263196676969528f))); - float _2184 = max(max(_2174, _2177), _2180); - float _2189 = (max(_2184, 1.000000013351432e-10f) - max(min(min(_2174, _2177), _2180), 1.000000013351432e-10f)) / max(_2184, 0.009999999776482582f); - float _2202 = ((_2177 + _2174) + _2180) + (sqrt((((_2180 - _2177) * _2180) + ((_2177 - _2174) * _2177)) + ((_2174 - _2180) * _2174)) * 1.75f); - float _2203 = _2202 * 0.3333333432674408f; - float _2204 = _2189 + -0.4000000059604645f; - float _2205 = _2204 * 5.0f; - float _2209 = max((1.0f - abs(_2204 * 2.5f)), 0.0f); - float _2220 = ((float(((int)(uint)((bool)(_2205 > 0.0f))) - ((int)(uint)((bool)(_2205 < 0.0f)))) * (1.0f - (_2209 * _2209))) + 1.0f) * 0.02500000037252903f; - if (!(_2203 <= 0.0533333346247673f)) { - if (!(_2203 >= 0.1599999964237213f)) { - _2229 = (((0.23999999463558197f / _2202) + -0.5f) * _2220); - } else { - _2229 = 0.0f; - } - } else { - _2229 = _2220; - } - float _2230 = _2229 + 1.0f; - float _2231 = _2230 * _2174; - float _2232 = _2230 * _2177; - float _2233 = _2230 * _2180; - if (!((bool)(_2231 == _2232) && (bool)(_2232 == _2233))) { - float _2240 = ((_2231 * 2.0f) - _2232) - _2233; - float _2243 = ((_2177 - _2180) * 1.7320507764816284f) * _2230; - float _2245 = atan(_2243 / _2240); - bool _2248 = (_2240 < 0.0f); - bool _2249 = (_2240 == 0.0f); - bool _2250 = (_2243 >= 0.0f); - bool _2251 = (_2243 < 0.0f); - _2262 = select((_2250 && _2249), 90.0f, select((_2251 && _2249), -90.0f, (select((_2251 && _2248), (_2245 + -3.1415927410125732f), select((_2250 && _2248), (_2245 + 3.1415927410125732f), _2245)) * 57.2957763671875f))); - } else { - _2262 = 0.0f; - } - float _2267 = min(max(select((_2262 < 0.0f), (_2262 + 360.0f), _2262), 0.0f), 360.0f); - if (_2267 < -180.0f) { - _2276 = (_2267 + 360.0f); - } else { - if (_2267 > 180.0f) { - _2276 = (_2267 + -360.0f); - } else { - _2276 = _2267; - } - } - if ((bool)(_2276 > -67.5f) && (bool)(_2276 < 67.5f)) { - float _2282 = (_2276 + 67.5f) * 0.029629629105329514f; - int _2283 = int(_2282); - float _2285 = _2282 - float(_2283); - float _2286 = _2285 * _2285; - float _2287 = _2286 * _2285; - if (_2283 == 3) { - _2315 = (((0.1666666716337204f - (_2285 * 0.5f)) + (_2286 * 0.5f)) - (_2287 * 0.1666666716337204f)); - } else { - if (_2283 == 2) { - _2315 = ((0.6666666865348816f - _2286) + (_2287 * 0.5f)); - } else { - if (_2283 == 1) { - _2315 = (((_2287 * -0.5f) + 0.1666666716337204f) + ((_2286 + _2285) * 0.5f)); - } else { - _2315 = select((_2283 == 0), (_2287 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2315 = 0.0f; - } - float _2324 = min(max(((((_2189 * 0.27000001072883606f) * (0.029999999329447746f - _2231)) * _2315) + _2231), 0.0f), 65535.0f); - float _2325 = min(max(_2232, 0.0f), 65535.0f); - float _2326 = min(max(_2233, 0.0f), 65535.0f); - float _2339 = min(max(mad(-0.21492856740951538f, _2326, mad(-0.2365107536315918f, _2325, (_2324 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2340 = min(max(mad(-0.09967592358589172f, _2326, mad(1.17622971534729f, _2325, (_2324 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2341 = min(max(mad(0.9977163076400757f, _2326, mad(-0.006032449658960104f, _2325, (_2324 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2342 = dot(float3(_2339, _2340, _2341), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2349 = ((_2339 - _2342) * 0.9599999785423279f) + _2342; - float _2350 = ((_2340 - _2342) * 0.9599999785423279f) + _2342; - float _2351 = ((_2341 - _2342) * 0.9599999785423279f) + _2342; - float _2354 = log2(select((_2349 <= 0.0f), 6.103515625e-05f, _2349)); - float _2355 = _2354 * 0.3010300099849701f; - if (!(_2355 <= -5.2601776123046875f)) { - if ((bool)(_2355 > -5.2601776123046875f) && (bool)(_2355 < -0.7447274923324585f)) { - float _2363 = (_2354 * 0.19999998807907104f) + 3.494786262512207f; - int _2364 = int(_2363); - float _2366 = _2363 - float(_2364); - float _2368 = _global_0[_2364]; - float _2371 = _global_0[(_2364 + 1)]; - float _2376 = _2368 * 0.5f; - _2408 = dot(float3((_2366 * _2366), _2366, 1.0f), float3(mad((_global_0[(_2364 + 2)]), 0.5f, mad(_2371, -1.0f, _2376)), (_2371 - _2368), mad(_2371, 0.5f, _2376))); - } else { - if ((bool)(_2355 >= -0.7447274923324585f) && (bool)(_2355 < 4.673812389373779f)) { - float _2388 = (_2354 * 0.1666666567325592f) + 0.4123218357563019f; - int _2389 = int(_2388); - float _2391 = _2388 - float(_2389); - float _2393 = _global_1[_2389]; - float _2396 = _global_1[(_2389 + 1)]; - float _2401 = _2393 * 0.5f; - _2408 = dot(float3((_2391 * _2391), _2391, 1.0f), float3(mad((_global_1[(_2389 + 2)]), 0.5f, mad(_2396, -1.0f, _2401)), (_2396 - _2393), mad(_2396, 0.5f, _2401))); - } else { - _2408 = 4.0f; - } - } - } else { - _2408 = -4.0f; - } - float _2410 = exp2(_2408 * 3.321928024291992f); - float _2413 = log2(select((_2350 <= 0.0f), 6.103515625e-05f, _2350)); - float _2414 = _2413 * 0.3010300099849701f; - if (!(_2414 <= -5.2601776123046875f)) { - if ((bool)(_2414 > -5.2601776123046875f) && (bool)(_2414 < -0.7447274923324585f)) { - float _2422 = (_2413 * 0.19999998807907104f) + 3.494786262512207f; - int _2423 = int(_2422); - float _2425 = _2422 - float(_2423); - float _2427 = _global_0[_2423]; - float _2430 = _global_0[(_2423 + 1)]; - float _2435 = _2427 * 0.5f; - _2467 = dot(float3((_2425 * _2425), _2425, 1.0f), float3(mad((_global_0[(_2423 + 2)]), 0.5f, mad(_2430, -1.0f, _2435)), (_2430 - _2427), mad(_2430, 0.5f, _2435))); - } else { - if ((bool)(_2414 >= -0.7447274923324585f) && (bool)(_2414 < 4.673812389373779f)) { - float _2447 = (_2413 * 0.1666666567325592f) + 0.4123218357563019f; - int _2448 = int(_2447); - float _2450 = _2447 - float(_2448); - float _2452 = _global_1[_2448]; - float _2455 = _global_1[(_2448 + 1)]; - float _2460 = _2452 * 0.5f; - _2467 = dot(float3((_2450 * _2450), _2450, 1.0f), float3(mad((_global_1[(_2448 + 2)]), 0.5f, mad(_2455, -1.0f, _2460)), (_2455 - _2452), mad(_2455, 0.5f, _2460))); - } else { - _2467 = 4.0f; - } - } - } else { - _2467 = -4.0f; - } - float _2469 = exp2(_2467 * 3.321928024291992f); - float _2472 = log2(select((_2351 <= 0.0f), 6.103515625e-05f, _2351)); - float _2473 = _2472 * 0.3010300099849701f; - if (!(_2473 <= -5.2601776123046875f)) { - if ((bool)(_2473 > -5.2601776123046875f) && (bool)(_2473 < -0.7447274923324585f)) { - float _2481 = (_2472 * 0.19999998807907104f) + 3.494786262512207f; - int _2482 = int(_2481); - float _2484 = _2481 - float(_2482); - float _2486 = _global_0[_2482]; - float _2489 = _global_0[(_2482 + 1)]; - float _2494 = _2486 * 0.5f; - _2526 = dot(float3((_2484 * _2484), _2484, 1.0f), float3(mad((_global_0[(_2482 + 2)]), 0.5f, mad(_2489, -1.0f, _2494)), (_2489 - _2486), mad(_2489, 0.5f, _2494))); - } else { - if ((bool)(_2473 >= -0.7447274923324585f) && (bool)(_2473 < 4.673812389373779f)) { - float _2506 = (_2472 * 0.1666666567325592f) + 0.4123218357563019f; - int _2507 = int(_2506); - float _2509 = _2506 - float(_2507); - float _2511 = _global_1[_2507]; - float _2514 = _global_1[(_2507 + 1)]; - float _2519 = _2511 * 0.5f; - _2526 = dot(float3((_2509 * _2509), _2509, 1.0f), float3(mad((_global_1[(_2507 + 2)]), 0.5f, mad(_2514, -1.0f, _2519)), (_2514 - _2511), mad(_2514, 0.5f, _2519))); - } else { - _2526 = 4.0f; - } - } - } else { - _2526 = -4.0f; - } - float _2528 = exp2(_2526 * 3.321928024291992f); - float _2531 = mad(0.16386906802654266f, _2528, mad(0.14067870378494263f, _2469, (_2410 * 0.6954522132873535f))); - float _2534 = mad(0.0955343171954155f, _2528, mad(0.8596711158752441f, _2469, (_2410 * 0.044794563204050064f))); - float _2537 = mad(1.0015007257461548f, _2528, mad(0.004025210160762072f, _2469, (_2410 * -0.005525882821530104f))); - float _2540 = mad(-0.21492856740951538f, _2537, mad(-0.2365107536315918f, _2534, (_2531 * 1.4514392614364624f))); - float _2543 = mad(-0.09967592358589172f, _2537, mad(1.17622971534729f, _2534, (_2531 * -0.07655377686023712f))); - float _2546 = mad(0.9977163076400757f, _2537, mad(-0.006032449658960104f, _2534, (_2531 * 0.008316148072481155f))); - float _2549 = log2(select((_2540 <= 0.0f), 9.999999747378752e-05f, _2540)); - float _2550 = _2549 * 0.3010300099849701f; - if (!(_2550 <= -3.848327875137329f)) { - if ((bool)(_2550 > -3.848327875137329f) && (bool)(_2550 < 0.6812411546707153f)) { - float _2558 = (_2549 + 12.783867835998535f) * 0.46521204710006714f; - int _2559 = int(_2558); - float _2561 = _2558 - float(_2559); - float _2563 = _global_4[_2559]; - float _2566 = _global_4[(_2559 + 1)]; - float _2571 = _2563 * 0.5f; - _2606 = dot(float3((_2561 * _2561), _2561, 1.0f), float3(mad((_global_4[(_2559 + 2)]), 0.5f, mad(_2566, -1.0f, _2571)), (_2566 - _2563), mad(_2566, 0.5f, _2571))); - } else { - if ((bool)(_2550 >= 0.6812411546707153f) && (bool)(_2550 < 3.7613162994384766f)) { - float _2583 = (_2549 + -2.2630341053009033f) * 0.6841424107551575f; - int _2584 = int(_2583); - float _2586 = _2583 - float(_2584); - float _2588 = _global_5[_2584]; - float _2591 = _global_5[(_2584 + 1)]; - float _2596 = _2588 * 0.5f; - _2606 = dot(float3((_2586 * _2586), _2586, 1.0f), float3(mad((_global_5[(_2584 + 2)]), 0.5f, mad(_2591, -1.0f, _2596)), (_2591 - _2588), mad(_2591, 0.5f, _2596))); - } else { - _2606 = ((_2549 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2606 = -2.301030158996582f; - } - float _2608 = exp2(_2606 * 3.321928024291992f); - float _2611 = log2(select((_2543 <= 0.0f), 9.999999747378752e-05f, _2543)); - float _2612 = _2611 * 0.3010300099849701f; - if (!(_2612 <= -3.848327875137329f)) { - if ((bool)(_2612 > -3.848327875137329f) && (bool)(_2612 < 0.6812411546707153f)) { - float _2620 = (_2611 + 12.783867835998535f) * 0.46521204710006714f; - int _2621 = int(_2620); - float _2623 = _2620 - float(_2621); - float _2625 = _global_4[_2621]; - float _2628 = _global_4[(_2621 + 1)]; - float _2633 = _2625 * 0.5f; - _2668 = dot(float3((_2623 * _2623), _2623, 1.0f), float3(mad((_global_4[(_2621 + 2)]), 0.5f, mad(_2628, -1.0f, _2633)), (_2628 - _2625), mad(_2628, 0.5f, _2633))); - } else { - if ((bool)(_2612 >= 0.6812411546707153f) && (bool)(_2612 < 3.7613162994384766f)) { - float _2645 = (_2611 + -2.2630341053009033f) * 0.6841424107551575f; - int _2646 = int(_2645); - float _2648 = _2645 - float(_2646); - float _2650 = _global_5[_2646]; - float _2653 = _global_5[(_2646 + 1)]; - float _2658 = _2650 * 0.5f; - _2668 = dot(float3((_2648 * _2648), _2648, 1.0f), float3(mad((_global_5[(_2646 + 2)]), 0.5f, mad(_2653, -1.0f, _2658)), (_2653 - _2650), mad(_2653, 0.5f, _2658))); - } else { - _2668 = ((_2611 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2668 = -2.301030158996582f; - } - float _2670 = exp2(_2668 * 3.321928024291992f); - float _2673 = log2(select((_2546 <= 0.0f), 9.999999747378752e-05f, _2546)); - float _2674 = _2673 * 0.3010300099849701f; - if (!(_2674 <= -3.848327875137329f)) { - if ((bool)(_2674 > -3.848327875137329f) && (bool)(_2674 < 0.6812411546707153f)) { - float _2682 = (_2673 + 12.783867835998535f) * 0.46521204710006714f; - int _2683 = int(_2682); - float _2685 = _2682 - float(_2683); - float _2687 = _global_4[_2683]; - float _2690 = _global_4[(_2683 + 1)]; - float _2695 = _2687 * 0.5f; - _2730 = dot(float3((_2685 * _2685), _2685, 1.0f), float3(mad((_global_4[(_2683 + 2)]), 0.5f, mad(_2690, -1.0f, _2695)), (_2690 - _2687), mad(_2690, 0.5f, _2695))); - } else { - if ((bool)(_2674 >= 0.6812411546707153f) && (bool)(_2674 < 3.7613162994384766f)) { - float _2707 = (_2673 + -2.2630341053009033f) * 0.6841424107551575f; - int _2708 = int(_2707); - float _2710 = _2707 - float(_2708); - float _2712 = _global_5[_2708]; - float _2715 = _global_5[(_2708 + 1)]; - float _2720 = _2712 * 0.5f; - _2730 = dot(float3((_2710 * _2710), _2710, 1.0f), float3(mad((_global_5[(_2708 + 2)]), 0.5f, mad(_2715, -1.0f, _2720)), (_2715 - _2712), mad(_2715, 0.5f, _2720))); - } else { - _2730 = ((_2673 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2730 = -2.301030158996582f; - } - float _2732 = exp2(_2730 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _2744 = mad(_34, _2732, mad(_33, _2670, (_2608 * _32))); - _2745 = mad(_37, _2732, mad(_36, _2670, (_2608 * _35))); - _2746 = mad(_40, _2732, mad(_39, _2670, (_2608 * _38))); - } else { - _2744 = _2608; - _2745 = _2670; - _2746 = _2732; - } - float _2756 = exp2(log2(_2744 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2757 = exp2(log2(_2745 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2758 = exp2(log2(_2746 * 9.999999747378752e-05f) * 0.1593017578125f); - _2904 = exp2(log2((1.0f / ((_2756 * 18.6875f) + 1.0f)) * ((_2756 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2905 = exp2(log2((1.0f / ((_2757 * 18.6875f) + 1.0f)) * ((_2757 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2758 * 18.6875f) + 1.0f)) * ((_2758 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _2791 = mad(0.04736635088920593f, _1434, mad(0.3395121395587921f, _1433, (_1432 * 0.613191545009613f))); - float _2794 = mad(0.01345000695437193f, _1434, mad(0.9163357615470886f, _1433, (_1432 * 0.07020691782236099f))); - float _2797 = mad(0.8696067929267883f, _1434, mad(0.1095672994852066f, _1433, (_1432 * 0.020618872717022896f))); - float _2816 = exp2(log2(mad(_34, _2797, mad(_33, _2794, (_2791 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2817 = exp2(log2(mad(_37, _2797, mad(_36, _2794, (_2791 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2818 = exp2(log2(mad(_40, _2797, mad(_39, _2794, (_2791 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2904 = exp2(log2((1.0f / ((_2816 * 18.6875f) + 1.0f)) * ((_2816 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2905 = exp2(log2((1.0f / ((_2817 * 18.6875f) + 1.0f)) * ((_2817 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2818 * 18.6875f) + 1.0f)) * ((_2818 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _2853 = mad(0.04736635088920593f, _1422, mad(0.3395121395587921f, _1421, (_1420 * 0.613191545009613f))); - float _2856 = mad(0.01345000695437193f, _1422, mad(0.9163357615470886f, _1421, (_1420 * 0.07020691782236099f))); - float _2859 = mad(0.8696067929267883f, _1422, mad(0.1095672994852066f, _1421, (_1420 * 0.020618872717022896f))); - _2904 = mad(_34, _2859, mad(_33, _2856, (_2853 * _32))); - _2905 = mad(_37, _2859, mad(_36, _2856, (_2853 * _35))); - _2906 = mad(_40, _2859, mad(_39, _2856, (_2853 * _38))); - } else { - float _2872 = mad(0.04736635088920593f, _1448, mad(0.3395121395587921f, _1447, (_1446 * 0.613191545009613f))); - float _2875 = mad(0.01345000695437193f, _1448, mad(0.9163357615470886f, _1447, (_1446 * 0.07020691782236099f))); - float _2878 = mad(0.8696067929267883f, _1448, mad(0.1095672994852066f, _1447, (_1446 * 0.020618872717022896f))); - float _2893 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2904 = exp2(_2893 * log2(mad(_34, _2878, mad(_33, _2875, (_2872 * _32))))); - _2905 = exp2(_2893 * log2(mad(_37, _2878, mad(_36, _2875, (_2872 * _35))))); - _2906 = exp2(_2893 * log2(mad(_40, _2878, mad(_39, _2875, (_2872 * _38))))); - } - } else { - _2904 = _1432; - _2905 = _1433; - _2906 = _1434; - } - } - } - } - } - } - SV_Target.x = (_2904 * 0.9523810148239136f); - SV_Target.y = (_2905 * 0.9523810148239136f); - SV_Target.z = (_2906 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0A427D38.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0A427D38.ps_6_0.hlsl deleted file mode 100644 index ab3abce34..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0A427D38.ps_6_0.hlsl +++ /dev/null @@ -1,1563 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _337; - float _338; - float _339; - float _505; - float _506; - float _528; - float _529; - float _530; - float _669; - float _670; - float _691; - float _692; - float _693; - float _833; - float _834; - float _855; - float _856; - float _857; - float _994; - float _995; - float _1016; - float _1017; - float _1018; - float _1113; - float _1146; - float _1160; - float _1224; - float _1357; - float _1358; - float _1359; - float _1500; - float _1501; - float _1502; - float _1516; - float _1527; - float _1538; - float _1689; - float _1700; - float _1822; - float _1855; - float _1869; - float _1908; - float _2001; - float _2060; - float _2119; - float _2202; - float _2267; - float _2332; - float _2349; - float _2350; - float _2351; - float _2455; - float _2488; - float _2502; - float _2541; - float _2634; - float _2693; - float _2752; - float _2832; - float _2894; - float _2956; - float _2970; - float _2971; - float _2972; - float _3128; - float _3129; - float _3130; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _21 = (cb0_074w == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _156 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _158 = _130 - (_156 * _140); - float _160 = (_156 * _130) + _140; - float _165 = (4.0f - (_160 * 8.0f)) + (_158 * 2.0f); - float _171 = (((_158 * 3.0f) / _165) - _146) + select(_149, _146, _116); - float _172 = (((_160 * 2.0f) / _165) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _173 = max(_172, 1.000000013351432e-10f); - float _174 = _171 / _173; - float _177 = ((1.0f - _171) - _172) / _173; - float _187 = 0.9413792490959167f / mad(-0.16140000522136688f, _177, ((_174 * 0.8950999975204468f) + 0.266400009393692f)); - float _188 = 1.0404363870620728f / mad(0.03669999912381172f, _177, (1.7135000228881836f - (_174 * 0.7501999735832214f))); - float _189 = 1.089766502380371f / mad(1.0296000242233276f, _177, ((_174 * 0.03889999911189079f) + -0.06849999725818634f)); - float _190 = mad(_188, -0.7501999735832214f, 0.0f); - float _191 = mad(_188, 1.7135000228881836f, 0.0f); - float _192 = mad(_188, 0.03669999912381172f, -0.0f); - float _193 = mad(_189, 0.03889999911189079f, 0.0f); - float _194 = mad(_189, -0.06849999725818634f, 0.0f); - float _195 = mad(_189, 1.0296000242233276f, 0.0f); - float _198 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_187 * 0.883457362651825f))); - float _201 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_187 * 0.26293492317199707f))); - float _204 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_187 * -0.15930065512657166f))); - float _207 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_187 * 0.38695648312568665f))); - float _210 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_187 * 0.11516613513231277f))); - float _213 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_187 * -0.0697740763425827f))); - float _216 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_187 * -0.007634039502590895f))); - float _219 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_187 * -0.0022720457054674625f))); - float _222 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_187 * 0.0013765322510153055f))); - float _225 = mad(_204, 0.01933390088379383f, mad(_201, 0.2126729041337967f, (_198 * 0.4124563932418823f))); - float _228 = mad(_204, 0.11919199675321579f, mad(_201, 0.7151522040367126f, (_198 * 0.3575761020183563f))); - float _231 = mad(_204, 0.9503040909767151f, mad(_201, 0.07217500358819962f, (_198 * 0.18043750524520874f))); - float _234 = mad(_213, 0.01933390088379383f, mad(_210, 0.2126729041337967f, (_207 * 0.4124563932418823f))); - float _237 = mad(_213, 0.11919199675321579f, mad(_210, 0.7151522040367126f, (_207 * 0.3575761020183563f))); - float _240 = mad(_213, 0.9503040909767151f, mad(_210, 0.07217500358819962f, (_207 * 0.18043750524520874f))); - float _243 = mad(_222, 0.01933390088379383f, mad(_219, 0.2126729041337967f, (_216 * 0.4124563932418823f))); - float _246 = mad(_222, 0.11919199675321579f, mad(_219, 0.7151522040367126f, (_216 * 0.3575761020183563f))); - float _249 = mad(_222, 0.9503040909767151f, mad(_219, 0.07217500358819962f, (_216 * 0.18043750524520874f))); - float _279 = mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _243, mad(-1.5373831987380981f, _234, (_225 * 3.2409698963165283f))) * _97))); - float _282 = mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _243, mad(1.8759675025939941f, _234, (_225 * -0.9692436456680298f))) * _97))); - float _285 = mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _243, mad(-0.20397695899009705f, _234, (_225 * 0.05563008040189743f))) * _97))); - float _288 = mad(0.04736635088920593f, _285, mad(0.3395121395587921f, _282, (_279 * 0.613191545009613f))); - float _291 = mad(0.01345000695437193f, _285, mad(0.9163357615470886f, _282, (_279 * 0.07020691782236099f))); - float _294 = mad(0.8696067929267883f, _285, mad(0.1095672994852066f, _282, (_279 * 0.020618872717022896f))); - // bool _297 = (cb0_046x == 0); - bool _297 = (tm_flags.x == 0); - if (_297) { - float _299 = dot(float3(_288, _291, _294), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _303 = (_288 / _299) + -1.0f; - float _304 = (_291 / _299) + -1.0f; - float _305 = (_294 / _299) + -1.0f; - float _317 = (1.0f - exp2(((_299 * _299) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_303, _304, _305), float3(_303, _304, _305)) * -4.0f)); - _337 = (((mad(-0.06368283927440643f, _294, mad(-0.32929131388664246f, _291, (_288 * 1.370412826538086f))) - _288) * _317) + _288); - _338 = (((mad(-0.010861567221581936f, _294, mad(1.0970908403396606f, _291, (_288 * -0.08343426138162613f))) - _291) * _317) + _291); - _339 = (((mad(1.203694462776184f, _294, mad(-0.09862564504146576f, _291, (_288 * -0.02579325996339321f))) - _294) * _317) + _294); - } else { - _337 = _288; - _338 = _291; - _339 = _294; - } - float _340 = dot(float3(_337, _338, _339), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _354 = cb0_052w + cb0_057w; - float _368 = cb0_051w * cb0_056w; - float _382 = cb0_050w * cb0_055w; - float _396 = cb0_049w * cb0_054w; - float _407 = cb0_048w * cb0_053w; - float _411 = cb0_048x * (_337 - _340); - float _414 = cb0_048y * (_338 - _340); - float _417 = cb0_048z * (_339 - _340); - float _473 = cb0_073w + 1.0f; - float _477 = saturate(_473 * (((cb0_052x + cb0_057x) + _354) + (((cb0_051x * cb0_056x) * _368) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _396) * log2(max(0.0f, (((_411 * cb0_053x) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _382)))))); - float _478 = saturate(_473 * (((cb0_052y + cb0_057y) + _354) + (((cb0_051y * cb0_056y) * _368) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _396) * log2(max(0.0f, (((_414 * cb0_053y) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _382)))))); - float _479 = saturate(_473 * (((cb0_052z + cb0_057z) + _354) + (((cb0_051z * cb0_056z) * _368) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _396) * log2(max(0.0f, (((_417 * cb0_053z) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _382)))))); - float _483 = max(_477, max(_478, _479)); - float _484 = _483 - min(_477, min(_478, _479)); - if (!(_484 == 0.0f)) { - float _487 = _484 / _483; - if (_477 == _483) { - _505 = ((_478 - _479) / _484); - _506 = _487; - } else { - if (_478 == _483) { - _505 = (((_479 - _477) / _484) + 2.0f); - _506 = _487; - } else { - if (_479 == _483) { - _505 = (((_477 - _478) / _484) + 4.0f); - _506 = _487; - } else { - _505 = 0.0f; - _506 = _487; - } - } - } - } else { - _505 = 0.0f; - _506 = 0.0f; - } - float _508 = _505 + cb0_073z; - float _509 = floor(_508); - float _510 = _508 - _509; - float _511 = 1.0f - _506; - float _513 = 1.0f - (_510 * _506); - float _516 = 1.0f - ((1.0f - _510) * _506); - if (!(_509 == 0.0f)) { - if (!(_509 == 1.0f)) { - if (!(_509 == 2.0f)) { - if (!(_509 == 3.0f)) { - if (!(_509 == 4.0f)) { - _528 = 1.0f; - _529 = _511; - _530 = _513; - } else { - _528 = _516; - _529 = _511; - _530 = 1.0f; - } - } else { - _528 = _511; - _529 = _513; - _530 = 1.0f; - } - } else { - _528 = _511; - _529 = 1.0f; - _530 = _516; - } - } else { - _528 = _513; - _529 = 1.0f; - _530 = _511; - } - } else { - _528 = 1.0f; - _529 = _516; - _530 = _511; - } - float _533 = saturate(_340 / cb0_073x); - float _537 = (_533 * _533) * (3.0f - (_533 * 2.0f)); - float _547 = cb0_067w + cb0_052w; - float _556 = cb0_066w * cb0_051w; - float _565 = cb0_065w * cb0_050w; - float _574 = cb0_064w * cb0_049w; - float _580 = cb0_063w * cb0_048w; - float _641 = saturate((((cb0_067x + cb0_052x) + _547) + (((cb0_066x * cb0_051x) * _556) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _574) * log2(max(0.0f, (((_411 * cb0_063x) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _565))))) * _473); - float _642 = saturate((((cb0_067y + cb0_052y) + _547) + (((cb0_066y * cb0_051y) * _556) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _574) * log2(max(0.0f, (((_414 * cb0_063y) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _565))))) * _473); - float _643 = saturate((((cb0_067z + cb0_052z) + _547) + (((cb0_066z * cb0_051z) * _556) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _574) * log2(max(0.0f, (((_417 * cb0_063z) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _565))))) * _473); - float _647 = max(_641, max(_642, _643)); - float _648 = _647 - min(_641, min(_642, _643)); - if (!(_648 == 0.0f)) { - float _651 = _648 / _647; - if (_641 == _647) { - _669 = ((_642 - _643) / _648); - _670 = _651; - } else { - if (_642 == _647) { - _669 = (((_643 - _641) / _648) + 2.0f); - _670 = _651; - } else { - if (_643 == _647) { - _669 = (((_641 - _642) / _648) + 4.0f); - _670 = _651; - } else { - _669 = 0.0f; - _670 = _651; - } - } - } - } else { - _669 = 0.0f; - _670 = 0.0f; - } - float _671 = _669 + cb0_073z; - float _672 = floor(_671); - float _673 = _671 - _672; - float _674 = 1.0f - _670; - float _676 = 1.0f - (_673 * _670); - float _679 = 1.0f - ((1.0f - _673) * _670); - if (!(_672 == 0.0f)) { - if (!(_672 == 1.0f)) { - if (!(_672 == 2.0f)) { - if (!(_672 == 3.0f)) { - if (!(_672 == 4.0f)) { - _691 = 1.0f; - _692 = _674; - _693 = _676; - } else { - _691 = _679; - _692 = _674; - _693 = 1.0f; - } - } else { - _691 = _674; - _692 = _676; - _693 = 1.0f; - } - } else { - _691 = _674; - _692 = 1.0f; - _693 = _679; - } - } else { - _691 = _676; - _692 = 1.0f; - _693 = _674; - } - } else { - _691 = 1.0f; - _692 = _679; - _693 = _674; - } - float _698 = saturate((_340 - cb0_073y) / (1.0f - cb0_073y)); - float _702 = (_698 * _698) * (3.0f - (_698 * 2.0f)); - float _711 = cb0_062w + cb0_052w; - float _720 = cb0_061w * cb0_051w; - float _729 = cb0_060w * cb0_050w; - float _738 = cb0_059w * cb0_049w; - float _744 = cb0_058w * cb0_048w; - float _805 = saturate((((cb0_062x + cb0_052x) + _711) + (((cb0_061x * cb0_051x) * _720) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _738) * log2(max(0.0f, (((_411 * cb0_058x) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _729))))) * _473); - float _806 = saturate((((cb0_062y + cb0_052y) + _711) + (((cb0_061y * cb0_051y) * _720) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _738) * log2(max(0.0f, (((_414 * cb0_058y) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _729))))) * _473); - float _807 = saturate((((cb0_062z + cb0_052z) + _711) + (((cb0_061z * cb0_051z) * _720) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _738) * log2(max(0.0f, (((_417 * cb0_058z) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _729))))) * _473); - float _811 = max(_805, max(_806, _807)); - float _812 = _811 - min(_805, min(_806, _807)); - if (!(_812 == 0.0f)) { - float _815 = _812 / _811; - if (_805 == _811) { - _833 = ((_806 - _807) / _812); - _834 = _815; - } else { - if (_806 == _811) { - _833 = (((_807 - _805) / _812) + 2.0f); - _834 = _815; - } else { - if (_807 == _811) { - _833 = (((_805 - _806) / _812) + 4.0f); - _834 = _815; - } else { - _833 = 0.0f; - _834 = _815; - } - } - } - } else { - _833 = 0.0f; - _834 = 0.0f; - } - float _835 = _833 + cb0_073z; - float _836 = floor(_835); - float _837 = _835 - _836; - float _838 = 1.0f - _834; - float _840 = 1.0f - (_837 * _834); - float _843 = 1.0f - ((1.0f - _837) * _834); - if (!(_836 == 0.0f)) { - if (!(_836 == 1.0f)) { - if (!(_836 == 2.0f)) { - if (!(_836 == 3.0f)) { - if (!(_836 == 4.0f)) { - _855 = 1.0f; - _856 = _838; - _857 = _840; - } else { - _855 = _843; - _856 = _838; - _857 = 1.0f; - } - } else { - _855 = _838; - _856 = _840; - _857 = 1.0f; - } - } else { - _855 = _838; - _856 = 1.0f; - _857 = _843; - } - } else { - _855 = _840; - _856 = 1.0f; - _857 = _838; - } - } else { - _855 = 1.0f; - _856 = _843; - _857 = _838; - } - float _859 = (1.0f - _537) * _483; - float _863 = _811 * (_537 - _702); - float _867 = _702 * _647; - float _872 = ((_867 * _691) + (_859 * _528)) + (_855 * _863); - float _874 = ((_867 * _692) + (_859 * _529)) + (_856 * _863); - float _876 = ((_867 * _693) + (_859 * _530)) + (_857 * _863); - float _902 = dot(float3(_872, _874, _876), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _966 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_872 - _902)) + _902)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _473); - float _967 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_874 - _902)) + _902)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _473); - float _968 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_876 - _902)) + _902)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _473); - float _972 = max(_966, max(_967, _968)); - float _973 = _972 - min(_966, min(_967, _968)); - if (!(_973 == 0.0f)) { - float _976 = _973 / _972; - if (_966 == _972) { - _994 = ((_967 - _968) / _973); - _995 = _976; - } else { - if (_967 == _972) { - _994 = (((_968 - _966) / _973) + 2.0f); - _995 = _976; - } else { - if (_968 == _972) { - _994 = (((_966 - _967) / _973) + 4.0f); - _995 = _976; - } else { - _994 = 0.0f; - _995 = _976; - } - } - } - } else { - _994 = 0.0f; - _995 = 0.0f; - } - float _996 = _994 + cb0_073z; - float _997 = floor(_996); - float _998 = _996 - _997; - float _999 = 1.0f - _995; - float _1001 = 1.0f - (_998 * _995); - float _1004 = 1.0f - ((1.0f - _998) * _995); - if (!(_997 == 0.0f)) { - if (!(_997 == 1.0f)) { - if (!(_997 == 2.0f)) { - if (!(_997 == 3.0f)) { - if (!(_997 == 4.0f)) { - _1016 = 1.0f; - _1017 = _999; - _1018 = _1001; - } else { - _1016 = _1004; - _1017 = _999; - _1018 = 1.0f; - } - } else { - _1016 = _999; - _1017 = _1001; - _1018 = 1.0f; - } - } else { - _1016 = _999; - _1017 = 1.0f; - _1018 = _1004; - } - } else { - _1016 = _1001; - _1017 = 1.0f; - _1018 = _999; - } - } else { - _1016 = 1.0f; - _1017 = _1004; - _1018 = _999; - } - float _1019 = _1016 * _972; - float _1020 = _1017 * _972; - float _1021 = _1018 * _972; - float _1024 = mad(-0.0832584798336029f, _1021, mad(-0.6217905879020691f, _1020, (_1019 * 1.7050515413284302f))); - float _1027 = mad(-0.010548528283834457f, _1021, mad(1.1408027410507202f, _1020, (_1019 * -0.13025718927383423f))); - float _1030 = mad(1.152971863746643f, _1021, mad(-0.1289687603712082f, _1020, (_1019 * -0.024003278464078903f))); - float _1046 = ((mad(0.061360642313957214f, _1021, mad(-4.540197551250458e-09f, _1020, (_1019 * 0.9386394023895264f))) - _1019) * cb0_075x) + _1019; - float _1047 = ((mad(0.169205904006958f, _1021, mad(0.8307942152023315f, _1020, (_1019 * 6.775371730327606e-08f))) - _1020) * cb0_075x) + _1020; - float _1048 = (mad(-2.3283064365386963e-10f, _1020, (_1019 * -9.313225746154785e-10f)) * cb0_075x) + _1021; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _1058 = mad(0.16386905312538147f, _1048, mad(0.14067868888378143f, _1047, (_1046 * 0.6954522132873535f))); - float _1061 = mad(0.0955343246459961f, _1048, mad(0.8596711158752441f, _1047, (_1046 * 0.044794581830501556f))); - float _1064 = mad(1.0015007257461548f, _1048, mad(0.004025210160762072f, _1047, (_1046 * -0.005525882821530104f))); - float _1068 = max(max(_1058, _1061), _1064); - float _1073 = (max(_1068, 1.000000013351432e-10f) - max(min(min(_1058, _1061), _1064), 1.000000013351432e-10f)) / max(_1068, 0.009999999776482582f); - float _1086 = ((_1061 + _1058) + _1064) + (sqrt((((_1064 - _1061) * _1064) + ((_1061 - _1058) * _1061)) + ((_1058 - _1064) * _1058)) * 1.75f); - float _1087 = _1086 * 0.3333333432674408f; - float _1088 = _1073 + -0.4000000059604645f; - float _1089 = _1088 * 5.0f; - float _1093 = max((1.0f - abs(_1088 * 2.5f)), 0.0f); - float _1104 = ((float((int)(((int)(uint)((bool)(_1089 > 0.0f))) - ((int)(uint)((bool)(_1089 < 0.0f))))) * (1.0f - (_1093 * _1093))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1087 <= 0.0533333346247673f)) { - if (!(_1087 >= 0.1599999964237213f)) { - _1113 = (((0.23999999463558197f / _1086) + -0.5f) * _1104); - } else { - _1113 = 0.0f; - } - } else { - _1113 = _1104; - } - float _1114 = _1113 + 1.0f; - float _1115 = _1114 * _1058; - float _1116 = _1114 * _1061; - float _1117 = _1114 * _1064; - do { - if (!((bool)(_1115 == _1116) && (bool)(_1116 == _1117))) { - float _1124 = ((_1115 * 2.0f) - _1116) - _1117; - float _1127 = ((_1061 - _1064) * 1.7320507764816284f) * _1114; - float _1129 = atan(_1127 / _1124); - bool _1132 = (_1124 < 0.0f); - bool _1133 = (_1124 == 0.0f); - bool _1134 = (_1127 >= 0.0f); - bool _1135 = (_1127 < 0.0f); - _1146 = select((_1134 && _1133), 90.0f, select((_1135 && _1133), -90.0f, (select((_1135 && _1132), (_1129 + -3.1415927410125732f), select((_1134 && _1132), (_1129 + 3.1415927410125732f), _1129)) * 57.2957763671875f))); - } else { - _1146 = 0.0f; - } - float _1151 = min(max(select((_1146 < 0.0f), (_1146 + 360.0f), _1146), 0.0f), 360.0f); - do { - if (_1151 < -180.0f) { - _1160 = (_1151 + 360.0f); - } else { - if (_1151 > 180.0f) { - _1160 = (_1151 + -360.0f); - } else { - _1160 = _1151; - } - } - float _1164 = saturate(1.0f - abs(_1160 * 0.014814814552664757f)); - float _1168 = (_1164 * _1164) * (3.0f - (_1164 * 2.0f)); - float _1174 = ((_1168 * _1168) * ((_1073 * 0.18000000715255737f) * (0.029999999329447746f - _1115))) + _1115; - float _1184 = max(0.0f, mad(-0.21492856740951538f, _1117, mad(-0.2365107536315918f, _1116, (_1174 * 1.4514392614364624f)))); - float _1185 = max(0.0f, mad(-0.09967592358589172f, _1117, mad(1.17622971534729f, _1116, (_1174 * -0.07655377686023712f)))); - float _1186 = max(0.0f, mad(0.9977163076400757f, _1117, mad(-0.006032449658960104f, _1116, (_1174 * 0.008316148072481155f)))); - float _1187 = dot(float3(_1184, _1185, _1186), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1201 = (cb0_036w + 1.0f) - cb0_036y; - float _1204 = cb0_037x + 1.0f; - float _1206 = _1204 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1224 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1215 = (cb0_036w + 0.18000000715255737f) / _1201; - _1224 = (-0.7447274923324585f - ((log2(_1215 / (2.0f - _1215)) * 0.3465735912322998f) * (_1201 / cb0_036x))); - } - float _1227 = ((1.0f - cb0_036y) / cb0_036x) - _1224; - float _1229 = (cb0_036z / cb0_036x) - _1227; - float _1233 = log2(lerp(_1187, _1184, 0.9599999785423279f)) * 0.3010300099849701f; - float _1234 = log2(lerp(_1187, _1185, 0.9599999785423279f)) * 0.3010300099849701f; - float _1235 = log2(lerp(_1187, _1186, 0.9599999785423279f)) * 0.3010300099849701f; - float _1239 = (_1233 + _1227) * cb0_036x; - float _1240 = (_1234 + _1227) * cb0_036x; - float _1241 = (_1235 + _1227) * cb0_036x; - float _1242 = _1201 * 2.0f; - float _1245 = _1233 - _1224; - float _1246 = _1234 - _1224; - float _1247 = _1235 - _1224; - float _1248 = ((cb0_036x * -2.0f) / _1201) * 1.4426950216293335f; - float _1264 = _1206 * 2.0f; - float _1270 = ((cb0_036x * 2.0f) / _1206) * 1.4426950216293335f; - float _1289 = select((_1233 < _1224), ((_1242 / (exp2(_1248 * _1245) + 1.0f)) - cb0_036w), _1239); - float _1290 = select((_1234 < _1224), ((_1242 / (exp2(_1248 * _1246) + 1.0f)) - cb0_036w), _1240); - float _1291 = select((_1235 < _1224), ((_1242 / (exp2(_1248 * _1247) + 1.0f)) - cb0_036w), _1241); - float _1298 = _1229 - _1224; - float _1302 = saturate(_1245 / _1298); - float _1303 = saturate(_1246 / _1298); - float _1304 = saturate(_1247 / _1298); - bool _1305 = (_1229 < _1224); - float _1309 = select(_1305, (1.0f - _1302), _1302); - float _1310 = select(_1305, (1.0f - _1303), _1303); - float _1311 = select(_1305, (1.0f - _1304), _1304); - float _1330 = (((_1309 * _1309) * (select((_1233 > _1229), (_1204 - (_1264 / (exp2(_1270 * (_1233 - _1229)) + 1.0f))), _1239) - _1289)) * (3.0f - (_1309 * 2.0f))) + _1289; - float _1331 = (((_1310 * _1310) * (select((_1234 > _1229), (_1204 - (_1264 / (exp2(_1270 * (_1234 - _1229)) + 1.0f))), _1240) - _1290)) * (3.0f - (_1310 * 2.0f))) + _1290; - float _1332 = (((_1311 * _1311) * (select((_1235 > _1229), (_1204 - (_1264 / (exp2(_1270 * (_1235 - _1229)) + 1.0f))), _1241) - _1291)) * (3.0f - (_1311 * 2.0f))) + _1291; - float _1333 = dot(float3(_1330, _1331, _1332), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1357 = (((max(0.0f, (lerp(_1333, _1330, 0.9300000071525574f))) - _1046) * cb0_075z) + _1046); - _1358 = (((max(0.0f, (lerp(_1333, _1331, 0.9300000071525574f))) - _1047) * cb0_075z) + _1047); - _1359 = (((max(0.0f, (lerp(_1333, _1332, 0.9300000071525574f))) - _1048) * cb0_075z) + _1048); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1357 = _1046; - _1358 = _1047; - _1359 = _1048; - } - float _1375 = ((mad(-0.06537103652954102f, _1359, mad(1.451815478503704e-06f, _1358, (_1357 * 1.065374732017517f))) - _1357) * cb0_075x) + _1357; - float _1376 = ((mad(-0.20366770029067993f, _1359, mad(1.2036634683609009f, _1358, (_1357 * -2.57161445915699e-07f))) - _1358) * cb0_075x) + _1358; - float _1377 = ((mad(0.9999996423721313f, _1359, mad(2.0954757928848267e-08f, _1358, (_1357 * 1.862645149230957e-08f))) - _1359) * cb0_075x) + _1359; - [branch] - if (!_297) { - float _1420 = 1.0f / (dot(float3(_1024, _1027, _1030), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1430 = max(0.0f, (((_1420 * cb0_035x) + cb0_034x) * dot(float3(_1024, _1027, _1030), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1431 = max(0.0f, (((_1420 * cb0_035y) + cb0_034y) * dot(float3(_1024, _1027, _1030), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1432 = max(0.0f, (((_1420 * cb0_035z) + cb0_034z) * dot(float3(_1024, _1027, _1030), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1438 = max(0.0f, (cb0_031x - _1430)); - float _1439 = max(0.0f, (cb0_031x - _1431)); - float _1440 = max(0.0f, (cb0_031x - _1432)); - float _1442 = max(_1430, cb0_031z); - float _1443 = max(_1431, cb0_031z); - float _1444 = max(_1432, cb0_031z); - float _1489 = cb0_029w + -0.0020000000949949026f; - _1500 = ((((min(max(_1430, cb0_031x), cb0_031z) * cb0_030w) + _1489) + (((cb0_032x * _1442) + cb0_032y) * (1.0f / (_1442 + cb0_031w)))) + ((_1438 * cb0_028w) * (1.0f / (cb0_031y + _1438)))); - _1501 = ((((min(max(_1431, cb0_031x), cb0_031z) * cb0_030w) + _1489) + (((cb0_032x * _1443) + cb0_032y) * (1.0f / (_1443 + cb0_031w)))) + ((_1439 * cb0_028w) * (1.0f / (_1439 + cb0_031y)))); - _1502 = ((((min(max(_1432, cb0_031x), cb0_031z) * cb0_030w) + _1489) + ((1.0f / (_1444 + cb0_031w)) * ((cb0_032x * _1444) + cb0_032y))) + ((_1440 * cb0_028w) * (1.0f / (_1440 + cb0_031y)))); - } else { - _1500 = max(0.0f, mad(-0.0832584798336029f, _1377, mad(-0.6217905879020691f, _1376, (_1375 * 1.7050515413284302f)))); - _1501 = max(0.0f, mad(-0.010548528283834457f, _1377, mad(1.1408027410507202f, _1376, (_1375 * -0.13025718927383423f)))); - _1502 = max(0.0f, mad(1.152971863746643f, _1377, mad(-0.1289687603712082f, _1376, (_1375 * -0.024003278464078903f)))); - } - float _1503 = saturate(_1500); - float _1504 = saturate(_1501); - float _1505 = saturate(_1502); - if (_1503 < 0.0031306699384003878f) { - _1516 = (_1503 * 12.920000076293945f); - } else { - _1516 = (((pow(_1503, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1504 < 0.0031306699384003878f) { - _1527 = (_1504 * 12.920000076293945f); - } else { - _1527 = (((pow(_1504, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1505 < 0.0031306699384003878f) { - _1538 = (_1505 * 12.920000076293945f); - } else { - _1538 = (((pow(_1505, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1542 = (_1527 * 0.9375f) + 0.03125f; - float _1545 = cb0_040x * _1516; - float _1546 = cb0_040x * _1527; - float _1547 = cb0_040x * _1538; - float _1550 = _1538 * 15.0f; - float _1551 = floor(_1550); - float _1552 = _1550 - _1551; - float _1554 = (((_1516 * 0.9375f) + 0.03125f) + _1551) * 0.0625f; - float4 _1555 = t0.Sample(s0, float2(_1554, _1542)); - float4 _1560 = t0.Sample(s0, float2((_1554 + 0.0625f), _1542)); - float _1578 = cb0_038w * cb0_039z; - float _1585 = max(6.103519990574569e-05f, ((((_1555.x - _1545) + ((_1560.x - _1555.x) * _1552)) * _1578) + _1545)); - float _1586 = max(6.103519990574569e-05f, ((((_1555.y - _1546) + ((_1560.y - _1555.y) * _1552)) * _1578) + _1546)); - float _1587 = max(6.103519990574569e-05f, ((((_1555.z - _1547) + ((_1560.z - _1555.z) * _1552)) * _1578) + _1547)); - float _1609 = select((_1585 > 0.040449999272823334f), exp2(log2((_1585 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1585 * 0.07739938050508499f)); - float _1610 = select((_1586 > 0.040449999272823334f), exp2(log2((_1586 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1586 * 0.07739938050508499f)); - float _1611 = select((_1587 > 0.040449999272823334f), exp2(log2((_1587 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1587 * 0.07739938050508499f)); - float _1637 = ((((cb0_026x * _1609) + cb0_026y) * _1609) + cb0_026z) * cb0_044y; - float _1638 = ((((cb0_026x * _1610) + cb0_026y) * _1610) + cb0_026z) * cb0_044z; - float _1639 = ((((cb0_026x * _1611) + cb0_026y) * _1611) + cb0_026z) * cb0_044w; - float _1646 = ((cb0_045x - _1637) * cb0_045w) + _1637; - float _1647 = ((cb0_045y - _1638) * cb0_045w) + _1638; - float _1648 = ((cb0_045z - _1639) * cb0_045w) + _1639; - float _1649 = cb0_044y * _1024; - float _1650 = cb0_044z * _1027; - float _1651 = cb0_044w * _1030; - float _1658 = ((cb0_045x - _1649) * cb0_045w) + _1649; - float _1659 = ((cb0_045y - _1650) * cb0_045w) + _1650; - float _1660 = ((cb0_045z - _1651) * cb0_045w) + _1651; - float _1672 = exp2(log2(max(0.0f, _1646)) * cb0_027y); - float _1673 = exp2(log2(max(0.0f, _1647)) * cb0_027y); - float _1674 = exp2(log2(max(0.0f, _1648)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1672, _1673, _1674)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1672 < 0.0031306699384003878f) { - _1689 = (_1672 * 12.920000076293945f); - } else { - _1689 = (((pow(_1672, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1673 < 0.0031306699384003878f) { - _1700 = (_1673 * 12.920000076293945f); - } else { - _1700 = (((pow(_1673, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1674 < 0.0031306699384003878f) { - _3128 = _1689; - _3129 = _1700; - _3130 = (_1674 * 12.920000076293945f); - } else { - _3128 = _1689; - _3129 = _1700; - _3130 = (((pow(_1674, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1715 = mad(0.04736635088920593f, _1674, mad(0.3395121395587921f, _1673, (_1672 * 0.613191545009613f))); - float _1718 = mad(0.01345000695437193f, _1674, mad(0.9163357615470886f, _1673, (_1672 * 0.07020691782236099f))); - float _1721 = mad(0.8696067929267883f, _1674, mad(0.1095672994852066f, _1673, (_1672 * 0.020618872717022896f))); - float _1731 = max(6.103519990574569e-05f, mad(_34, _1721, mad(_33, _1718, (_1715 * _32)))); - float _1732 = max(6.103519990574569e-05f, mad(_37, _1721, mad(_36, _1718, (_1715 * _35)))); - float _1733 = max(6.103519990574569e-05f, mad(_40, _1721, mad(_39, _1718, (_1715 * _38)))); - _3128 = min((_1731 * 4.5f), ((exp2(log2(max(_1731, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3129 = min((_1732 * 4.5f), ((exp2(log2(max(_1732, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3130 = min((_1733 * 4.5f), ((exp2(log2(max(_1733, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1760 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1760) { - float _1763 = _1659 * 3.0f; - float _1764 = _1660 * 3.0f; - float _1767 = mad(0.17733481526374817f, _1764, mad(0.38297808170318604f, _1763, (_1658 * 1.31910240650177f))); - float _1770 = mad(0.09676162153482437f, _1764, mad(0.8134231567382812f, _1763, (_1658 * 0.2693769633769989f))); - float _1773 = mad(0.870704174041748f, _1764, mad(0.11154405772686005f, _1763, (_1658 * 0.05263196676969528f))); - float _1777 = max(max(_1767, _1770), _1773); - float _1782 = (max(_1777, 1.000000013351432e-10f) - max(min(min(_1767, _1770), _1773), 1.000000013351432e-10f)) / max(_1777, 0.009999999776482582f); - float _1795 = ((_1770 + _1767) + _1773) + (sqrt((((_1773 - _1770) * _1773) + ((_1770 - _1767) * _1770)) + ((_1767 - _1773) * _1767)) * 1.75f); - float _1796 = _1795 * 0.3333333432674408f; - float _1797 = _1782 + -0.4000000059604645f; - float _1798 = _1797 * 5.0f; - float _1802 = max((1.0f - abs(_1797 * 2.5f)), 0.0f); - float _1813 = ((float((int)(((int)(uint)((bool)(_1798 > 0.0f))) - ((int)(uint)((bool)(_1798 < 0.0f))))) * (1.0f - (_1802 * _1802))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1796 <= 0.0533333346247673f)) { - if (!(_1796 >= 0.1599999964237213f)) { - _1822 = (((0.23999999463558197f / _1795) + -0.5f) * _1813); - } else { - _1822 = 0.0f; - } - } else { - _1822 = _1813; - } - float _1823 = _1822 + 1.0f; - float _1824 = _1823 * _1767; - float _1825 = _1823 * _1770; - float _1826 = _1823 * _1773; - do { - if (!((bool)(_1824 == _1825) && (bool)(_1825 == _1826))) { - float _1833 = ((_1824 * 2.0f) - _1825) - _1826; - float _1836 = ((_1770 - _1773) * 1.7320507764816284f) * _1823; - float _1838 = atan(_1836 / _1833); - bool _1841 = (_1833 < 0.0f); - bool _1842 = (_1833 == 0.0f); - bool _1843 = (_1836 >= 0.0f); - bool _1844 = (_1836 < 0.0f); - _1855 = select((_1843 && _1842), 90.0f, select((_1844 && _1842), -90.0f, (select((_1844 && _1841), (_1838 + -3.1415927410125732f), select((_1843 && _1841), (_1838 + 3.1415927410125732f), _1838)) * 57.2957763671875f))); - } else { - _1855 = 0.0f; - } - float _1860 = min(max(select((_1855 < 0.0f), (_1855 + 360.0f), _1855), 0.0f), 360.0f); - do { - if (_1860 < -180.0f) { - _1869 = (_1860 + 360.0f); - } else { - if (_1860 > 180.0f) { - _1869 = (_1860 + -360.0f); - } else { - _1869 = _1860; - } - } - do { - if ((bool)(_1869 > -67.5f) && (bool)(_1869 < 67.5f)) { - float _1875 = (_1869 + 67.5f) * 0.029629629105329514f; - int _1876 = int(_1875); - float _1878 = _1875 - float((int)(_1876)); - float _1879 = _1878 * _1878; - float _1880 = _1879 * _1878; - if (_1876 == 3) { - _1908 = (((0.1666666716337204f - (_1878 * 0.5f)) + (_1879 * 0.5f)) - (_1880 * 0.1666666716337204f)); - } else { - if (_1876 == 2) { - _1908 = ((0.6666666865348816f - _1879) + (_1880 * 0.5f)); - } else { - if (_1876 == 1) { - _1908 = ((0.1666666716337204f - (_1880 * 0.5f)) + ((_1879 + _1878) * 0.5f)); - } else { - _1908 = select((_1876 == 0), (_1880 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1908 = 0.0f; - } - float _1917 = min(max(((((_1782 * 0.27000001072883606f) * (0.029999999329447746f - _1824)) * _1908) + _1824), 0.0f), 65535.0f); - float _1918 = min(max(_1825, 0.0f), 65535.0f); - float _1919 = min(max(_1826, 0.0f), 65535.0f); - float _1932 = min(max(mad(-0.21492856740951538f, _1919, mad(-0.2365107536315918f, _1918, (_1917 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1933 = min(max(mad(-0.09967592358589172f, _1919, mad(1.17622971534729f, _1918, (_1917 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1934 = min(max(mad(0.9977163076400757f, _1919, mad(-0.006032449658960104f, _1918, (_1917 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1935 = dot(float3(_1932, _1933, _1934), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1942 = ((_1932 - _1935) * 0.9599999785423279f) + _1935; - float _1943 = ((_1933 - _1935) * 0.9599999785423279f) + _1935; - float _1944 = ((_1934 - _1935) * 0.9599999785423279f) + _1935; - float _1947 = log2(select((_1942 <= 0.0f), 6.103515625e-05f, _1942)); - float _1948 = _1947 * 0.3010300099849701f; - do { - if (!(_1948 <= -5.2601776123046875f)) { - if ((bool)(_1948 > -5.2601776123046875f) && (bool)(_1948 < -0.7447274923324585f)) { - float _1956 = (_1947 * 0.19999998807907104f) + 3.494786262512207f; - int _1957 = int(_1956); - float _1959 = _1956 - float((int)(_1957)); - float _1961 = _global_0[_1957]; - float _1964 = _global_0[(_1957 + 1)]; - float _1969 = _1961 * 0.5f; - _2001 = dot(float3((_1959 * _1959), _1959, 1.0f), float3(mad((_global_0[(_1957 + 2)]), 0.5f, mad(_1964, -1.0f, _1969)), (_1964 - _1961), mad(_1964, 0.5f, _1969))); - } else { - if ((bool)(_1948 >= -0.7447274923324585f) && (bool)(_1948 < 4.673812389373779f)) { - float _1981 = (_1947 * 0.1666666567325592f) + 0.4123218357563019f; - int _1982 = int(_1981); - float _1984 = _1981 - float((int)(_1982)); - float _1986 = _global_1[_1982]; - float _1989 = _global_1[(_1982 + 1)]; - float _1994 = _1986 * 0.5f; - _2001 = dot(float3((_1984 * _1984), _1984, 1.0f), float3(mad((_global_1[(_1982 + 2)]), 0.5f, mad(_1989, -1.0f, _1994)), (_1989 - _1986), mad(_1989, 0.5f, _1994))); - } else { - _2001 = 4.0f; - } - } - } else { - _2001 = -4.0f; - } - float _2003 = exp2(_2001 * 3.321928024291992f); - float _2006 = log2(select((_1943 <= 0.0f), 6.103515625e-05f, _1943)); - float _2007 = _2006 * 0.3010300099849701f; - do { - if (!(_2007 <= -5.2601776123046875f)) { - if ((bool)(_2007 > -5.2601776123046875f) && (bool)(_2007 < -0.7447274923324585f)) { - float _2015 = (_2006 * 0.19999998807907104f) + 3.494786262512207f; - int _2016 = int(_2015); - float _2018 = _2015 - float((int)(_2016)); - float _2020 = _global_0[_2016]; - float _2023 = _global_0[(_2016 + 1)]; - float _2028 = _2020 * 0.5f; - _2060 = dot(float3((_2018 * _2018), _2018, 1.0f), float3(mad((_global_0[(_2016 + 2)]), 0.5f, mad(_2023, -1.0f, _2028)), (_2023 - _2020), mad(_2023, 0.5f, _2028))); - } else { - if ((bool)(_2007 >= -0.7447274923324585f) && (bool)(_2007 < 4.673812389373779f)) { - float _2040 = (_2006 * 0.1666666567325592f) + 0.4123218357563019f; - int _2041 = int(_2040); - float _2043 = _2040 - float((int)(_2041)); - float _2045 = _global_1[_2041]; - float _2048 = _global_1[(_2041 + 1)]; - float _2053 = _2045 * 0.5f; - _2060 = dot(float3((_2043 * _2043), _2043, 1.0f), float3(mad((_global_1[(_2041 + 2)]), 0.5f, mad(_2048, -1.0f, _2053)), (_2048 - _2045), mad(_2048, 0.5f, _2053))); - } else { - _2060 = 4.0f; - } - } - } else { - _2060 = -4.0f; - } - float _2062 = exp2(_2060 * 3.321928024291992f); - float _2065 = log2(select((_1944 <= 0.0f), 6.103515625e-05f, _1944)); - float _2066 = _2065 * 0.3010300099849701f; - do { - if (!(_2066 <= -5.2601776123046875f)) { - if ((bool)(_2066 > -5.2601776123046875f) && (bool)(_2066 < -0.7447274923324585f)) { - float _2074 = (_2065 * 0.19999998807907104f) + 3.494786262512207f; - int _2075 = int(_2074); - float _2077 = _2074 - float((int)(_2075)); - float _2079 = _global_0[_2075]; - float _2082 = _global_0[(_2075 + 1)]; - float _2087 = _2079 * 0.5f; - _2119 = dot(float3((_2077 * _2077), _2077, 1.0f), float3(mad((_global_0[(_2075 + 2)]), 0.5f, mad(_2082, -1.0f, _2087)), (_2082 - _2079), mad(_2082, 0.5f, _2087))); - } else { - if ((bool)(_2066 >= -0.7447274923324585f) && (bool)(_2066 < 4.673812389373779f)) { - float _2099 = (_2065 * 0.1666666567325592f) + 0.4123218357563019f; - int _2100 = int(_2099); - float _2102 = _2099 - float((int)(_2100)); - float _2104 = _global_1[_2100]; - float _2107 = _global_1[(_2100 + 1)]; - float _2112 = _2104 * 0.5f; - _2119 = dot(float3((_2102 * _2102), _2102, 1.0f), float3(mad((_global_1[(_2100 + 2)]), 0.5f, mad(_2107, -1.0f, _2112)), (_2107 - _2104), mad(_2107, 0.5f, _2112))); - } else { - _2119 = 4.0f; - } - } - } else { - _2119 = -4.0f; - } - float _2121 = exp2(_2119 * 3.321928024291992f); - float _2124 = mad(0.16386906802654266f, _2121, mad(0.14067870378494263f, _2062, (_2003 * 0.6954522132873535f))); - float _2127 = mad(0.0955343171954155f, _2121, mad(0.8596711158752441f, _2062, (_2003 * 0.044794563204050064f))); - float _2130 = mad(1.0015007257461548f, _2121, mad(0.004025210160762072f, _2062, (_2003 * -0.005525882821530104f))); - float _2133 = mad(-0.21492856740951538f, _2130, mad(-0.2365107536315918f, _2127, (_2124 * 1.4514392614364624f))); - float _2136 = mad(-0.09967592358589172f, _2130, mad(1.17622971534729f, _2127, (_2124 * -0.07655377686023712f))); - float _2139 = mad(0.9977163076400757f, _2130, mad(-0.006032449658960104f, _2127, (_2124 * 0.008316148072481155f))); - float _2142 = log2(select((_2133 <= 0.0f), 9.999999747378752e-05f, _2133)); - float _2143 = _2142 * 0.3010300099849701f; - do { - if (!(!(_2143 <= -3.848327875137329f))) { - _2202 = ((_2142 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2143 > -3.848327875137329f) && (bool)(_2143 < 0.6812411546707153f)) { - float _2154 = (_2142 + 12.783867835998535f) * 0.46521204710006714f; - int _2155 = int(_2154); - float _2157 = _2154 - float((int)(_2155)); - float _2159 = _global_2[_2155]; - float _2162 = _global_2[(_2155 + 1)]; - float _2167 = _2159 * 0.5f; - _2202 = dot(float3((_2157 * _2157), _2157, 1.0f), float3(mad((_global_2[(_2155 + 2)]), 0.5f, mad(_2162, -1.0f, _2167)), (_2162 - _2159), mad(_2162, 0.5f, _2167))); - } else { - if ((bool)(_2143 >= 0.6812411546707153f) && (bool)(_2143 < 3.653702974319458f)) { - float _2179 = (_2142 + -2.2630341053009033f) * 0.7089107632637024f; - int _2180 = int(_2179); - float _2182 = _2179 - float((int)(_2180)); - float _2184 = _global_3[_2180]; - float _2187 = _global_3[(_2180 + 1)]; - float _2192 = _2184 * 0.5f; - _2202 = dot(float3((_2182 * _2182), _2182, 1.0f), float3(mad((_global_3[(_2180 + 2)]), 0.5f, mad(_2187, -1.0f, _2192)), (_2187 - _2184), mad(_2187, 0.5f, _2192))); - } else { - _2202 = ((_2142 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2207 = log2(select((_2136 <= 0.0f), 9.999999747378752e-05f, _2136)); - float _2208 = _2207 * 0.3010300099849701f; - do { - if (!(!(_2208 <= -3.848327875137329f))) { - _2267 = ((_2207 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2208 > -3.848327875137329f) && (bool)(_2208 < 0.6812411546707153f)) { - float _2219 = (_2207 + 12.783867835998535f) * 0.46521204710006714f; - int _2220 = int(_2219); - float _2222 = _2219 - float((int)(_2220)); - float _2224 = _global_2[_2220]; - float _2227 = _global_2[(_2220 + 1)]; - float _2232 = _2224 * 0.5f; - _2267 = dot(float3((_2222 * _2222), _2222, 1.0f), float3(mad((_global_2[(_2220 + 2)]), 0.5f, mad(_2227, -1.0f, _2232)), (_2227 - _2224), mad(_2227, 0.5f, _2232))); - } else { - if ((bool)(_2208 >= 0.6812411546707153f) && (bool)(_2208 < 3.653702974319458f)) { - float _2244 = (_2207 + -2.2630341053009033f) * 0.7089107632637024f; - int _2245 = int(_2244); - float _2247 = _2244 - float((int)(_2245)); - float _2249 = _global_3[_2245]; - float _2252 = _global_3[(_2245 + 1)]; - float _2257 = _2249 * 0.5f; - _2267 = dot(float3((_2247 * _2247), _2247, 1.0f), float3(mad((_global_3[(_2245 + 2)]), 0.5f, mad(_2252, -1.0f, _2257)), (_2252 - _2249), mad(_2252, 0.5f, _2257))); - } else { - _2267 = ((_2207 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2272 = log2(select((_2139 <= 0.0f), 9.999999747378752e-05f, _2139)); - float _2273 = _2272 * 0.3010300099849701f; - do { - if (!(!(_2273 <= -3.848327875137329f))) { - _2332 = ((_2272 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2273 > -3.848327875137329f) && (bool)(_2273 < 0.6812411546707153f)) { - float _2284 = (_2272 + 12.783867835998535f) * 0.46521204710006714f; - int _2285 = int(_2284); - float _2287 = _2284 - float((int)(_2285)); - float _2289 = _global_2[_2285]; - float _2292 = _global_2[(_2285 + 1)]; - float _2297 = _2289 * 0.5f; - _2332 = dot(float3((_2287 * _2287), _2287, 1.0f), float3(mad((_global_2[(_2285 + 2)]), 0.5f, mad(_2292, -1.0f, _2297)), (_2292 - _2289), mad(_2292, 0.5f, _2297))); - } else { - if ((bool)(_2273 >= 0.6812411546707153f) && (bool)(_2273 < 3.653702974319458f)) { - float _2309 = (_2272 + -2.2630341053009033f) * 0.7089107632637024f; - int _2310 = int(_2309); - float _2312 = _2309 - float((int)(_2310)); - float _2314 = _global_3[_2310]; - float _2317 = _global_3[(_2310 + 1)]; - float _2322 = _2314 * 0.5f; - _2332 = dot(float3((_2312 * _2312), _2312, 1.0f), float3(mad((_global_3[(_2310 + 2)]), 0.5f, mad(_2317, -1.0f, _2322)), (_2317 - _2314), mad(_2317, 0.5f, _2322))); - } else { - _2332 = ((_2272 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2335 = exp2(_2202 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2336 = exp2(_2267 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2337 = exp2(_2332 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1760) { - _2349 = mad(_34, _2337, mad(_33, _2336, (_2335 * _32))); - _2350 = mad(_37, _2337, mad(_36, _2336, (_2335 * _35))); - _2351 = mad(_40, _2337, mad(_39, _2336, (_2335 * _38))); - } else { - _2349 = _2335; - _2350 = _2336; - _2351 = _2337; - } - float _2361 = exp2(log2(_2349 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2362 = exp2(log2(_2350 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2363 = exp2(log2(_2351 * 9.999999747378752e-05f) * 0.1593017578125f); - _3128 = exp2(log2((1.0f / ((_2361 * 18.6875f) + 1.0f)) * ((_2361 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3129 = exp2(log2((1.0f / ((_2362 * 18.6875f) + 1.0f)) * ((_2362 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3130 = exp2(log2((1.0f / ((_2363 * 18.6875f) + 1.0f)) * ((_2363 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2396 = _1659 * 3.0f; - float _2397 = _1660 * 3.0f; - float _2400 = mad(0.17733481526374817f, _2397, mad(0.38297808170318604f, _2396, (_1658 * 1.31910240650177f))); - float _2403 = mad(0.09676162153482437f, _2397, mad(0.8134231567382812f, _2396, (_1658 * 0.2693769633769989f))); - float _2406 = mad(0.870704174041748f, _2397, mad(0.11154405772686005f, _2396, (_1658 * 0.05263196676969528f))); - float _2410 = max(max(_2400, _2403), _2406); - float _2415 = (max(_2410, 1.000000013351432e-10f) - max(min(min(_2400, _2403), _2406), 1.000000013351432e-10f)) / max(_2410, 0.009999999776482582f); - float _2428 = ((_2403 + _2400) + _2406) + (sqrt((((_2406 - _2403) * _2406) + ((_2403 - _2400) * _2403)) + ((_2400 - _2406) * _2400)) * 1.75f); - float _2429 = _2428 * 0.3333333432674408f; - float _2430 = _2415 + -0.4000000059604645f; - float _2431 = _2430 * 5.0f; - float _2435 = max((1.0f - abs(_2430 * 2.5f)), 0.0f); - float _2446 = ((float((int)(((int)(uint)((bool)(_2431 > 0.0f))) - ((int)(uint)((bool)(_2431 < 0.0f))))) * (1.0f - (_2435 * _2435))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2429 <= 0.0533333346247673f)) { - if (!(_2429 >= 0.1599999964237213f)) { - _2455 = (((0.23999999463558197f / _2428) + -0.5f) * _2446); - } else { - _2455 = 0.0f; - } - } else { - _2455 = _2446; - } - float _2456 = _2455 + 1.0f; - float _2457 = _2456 * _2400; - float _2458 = _2456 * _2403; - float _2459 = _2456 * _2406; - do { - if (!((bool)(_2457 == _2458) && (bool)(_2458 == _2459))) { - float _2466 = ((_2457 * 2.0f) - _2458) - _2459; - float _2469 = ((_2403 - _2406) * 1.7320507764816284f) * _2456; - float _2471 = atan(_2469 / _2466); - bool _2474 = (_2466 < 0.0f); - bool _2475 = (_2466 == 0.0f); - bool _2476 = (_2469 >= 0.0f); - bool _2477 = (_2469 < 0.0f); - _2488 = select((_2476 && _2475), 90.0f, select((_2477 && _2475), -90.0f, (select((_2477 && _2474), (_2471 + -3.1415927410125732f), select((_2476 && _2474), (_2471 + 3.1415927410125732f), _2471)) * 57.2957763671875f))); - } else { - _2488 = 0.0f; - } - float _2493 = min(max(select((_2488 < 0.0f), (_2488 + 360.0f), _2488), 0.0f), 360.0f); - do { - if (_2493 < -180.0f) { - _2502 = (_2493 + 360.0f); - } else { - if (_2493 > 180.0f) { - _2502 = (_2493 + -360.0f); - } else { - _2502 = _2493; - } - } - do { - if ((bool)(_2502 > -67.5f) && (bool)(_2502 < 67.5f)) { - float _2508 = (_2502 + 67.5f) * 0.029629629105329514f; - int _2509 = int(_2508); - float _2511 = _2508 - float((int)(_2509)); - float _2512 = _2511 * _2511; - float _2513 = _2512 * _2511; - if (_2509 == 3) { - _2541 = (((0.1666666716337204f - (_2511 * 0.5f)) + (_2512 * 0.5f)) - (_2513 * 0.1666666716337204f)); - } else { - if (_2509 == 2) { - _2541 = ((0.6666666865348816f - _2512) + (_2513 * 0.5f)); - } else { - if (_2509 == 1) { - _2541 = ((0.1666666716337204f - (_2513 * 0.5f)) + ((_2512 + _2511) * 0.5f)); - } else { - _2541 = select((_2509 == 0), (_2513 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2541 = 0.0f; - } - float _2550 = min(max(((((_2415 * 0.27000001072883606f) * (0.029999999329447746f - _2457)) * _2541) + _2457), 0.0f), 65535.0f); - float _2551 = min(max(_2458, 0.0f), 65535.0f); - float _2552 = min(max(_2459, 0.0f), 65535.0f); - float _2565 = min(max(mad(-0.21492856740951538f, _2552, mad(-0.2365107536315918f, _2551, (_2550 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2566 = min(max(mad(-0.09967592358589172f, _2552, mad(1.17622971534729f, _2551, (_2550 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2567 = min(max(mad(0.9977163076400757f, _2552, mad(-0.006032449658960104f, _2551, (_2550 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2568 = dot(float3(_2565, _2566, _2567), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2575 = ((_2565 - _2568) * 0.9599999785423279f) + _2568; - float _2576 = ((_2566 - _2568) * 0.9599999785423279f) + _2568; - float _2577 = ((_2567 - _2568) * 0.9599999785423279f) + _2568; - float _2580 = log2(select((_2575 <= 0.0f), 6.103515625e-05f, _2575)); - float _2581 = _2580 * 0.3010300099849701f; - do { - if (!(_2581 <= -5.2601776123046875f)) { - if ((bool)(_2581 > -5.2601776123046875f) && (bool)(_2581 < -0.7447274923324585f)) { - float _2589 = (_2580 * 0.19999998807907104f) + 3.494786262512207f; - int _2590 = int(_2589); - float _2592 = _2589 - float((int)(_2590)); - float _2594 = _global_0[_2590]; - float _2597 = _global_0[(_2590 + 1)]; - float _2602 = _2594 * 0.5f; - _2634 = dot(float3((_2592 * _2592), _2592, 1.0f), float3(mad((_global_0[(_2590 + 2)]), 0.5f, mad(_2597, -1.0f, _2602)), (_2597 - _2594), mad(_2597, 0.5f, _2602))); - } else { - if ((bool)(_2581 >= -0.7447274923324585f) && (bool)(_2581 < 4.673812389373779f)) { - float _2614 = (_2580 * 0.1666666567325592f) + 0.4123218357563019f; - int _2615 = int(_2614); - float _2617 = _2614 - float((int)(_2615)); - float _2619 = _global_1[_2615]; - float _2622 = _global_1[(_2615 + 1)]; - float _2627 = _2619 * 0.5f; - _2634 = dot(float3((_2617 * _2617), _2617, 1.0f), float3(mad((_global_1[(_2615 + 2)]), 0.5f, mad(_2622, -1.0f, _2627)), (_2622 - _2619), mad(_2622, 0.5f, _2627))); - } else { - _2634 = 4.0f; - } - } - } else { - _2634 = -4.0f; - } - float _2636 = exp2(_2634 * 3.321928024291992f); - float _2639 = log2(select((_2576 <= 0.0f), 6.103515625e-05f, _2576)); - float _2640 = _2639 * 0.3010300099849701f; - do { - if (!(_2640 <= -5.2601776123046875f)) { - if ((bool)(_2640 > -5.2601776123046875f) && (bool)(_2640 < -0.7447274923324585f)) { - float _2648 = (_2639 * 0.19999998807907104f) + 3.494786262512207f; - int _2649 = int(_2648); - float _2651 = _2648 - float((int)(_2649)); - float _2653 = _global_0[_2649]; - float _2656 = _global_0[(_2649 + 1)]; - float _2661 = _2653 * 0.5f; - _2693 = dot(float3((_2651 * _2651), _2651, 1.0f), float3(mad((_global_0[(_2649 + 2)]), 0.5f, mad(_2656, -1.0f, _2661)), (_2656 - _2653), mad(_2656, 0.5f, _2661))); - } else { - if ((bool)(_2640 >= -0.7447274923324585f) && (bool)(_2640 < 4.673812389373779f)) { - float _2673 = (_2639 * 0.1666666567325592f) + 0.4123218357563019f; - int _2674 = int(_2673); - float _2676 = _2673 - float((int)(_2674)); - float _2678 = _global_1[_2674]; - float _2681 = _global_1[(_2674 + 1)]; - float _2686 = _2678 * 0.5f; - _2693 = dot(float3((_2676 * _2676), _2676, 1.0f), float3(mad((_global_1[(_2674 + 2)]), 0.5f, mad(_2681, -1.0f, _2686)), (_2681 - _2678), mad(_2681, 0.5f, _2686))); - } else { - _2693 = 4.0f; - } - } - } else { - _2693 = -4.0f; - } - float _2695 = exp2(_2693 * 3.321928024291992f); - float _2698 = log2(select((_2577 <= 0.0f), 6.103515625e-05f, _2577)); - float _2699 = _2698 * 0.3010300099849701f; - do { - if (!(_2699 <= -5.2601776123046875f)) { - if ((bool)(_2699 > -5.2601776123046875f) && (bool)(_2699 < -0.7447274923324585f)) { - float _2707 = (_2698 * 0.19999998807907104f) + 3.494786262512207f; - int _2708 = int(_2707); - float _2710 = _2707 - float((int)(_2708)); - float _2712 = _global_0[_2708]; - float _2715 = _global_0[(_2708 + 1)]; - float _2720 = _2712 * 0.5f; - _2752 = dot(float3((_2710 * _2710), _2710, 1.0f), float3(mad((_global_0[(_2708 + 2)]), 0.5f, mad(_2715, -1.0f, _2720)), (_2715 - _2712), mad(_2715, 0.5f, _2720))); - } else { - if ((bool)(_2699 >= -0.7447274923324585f) && (bool)(_2699 < 4.673812389373779f)) { - float _2732 = (_2698 * 0.1666666567325592f) + 0.4123218357563019f; - int _2733 = int(_2732); - float _2735 = _2732 - float((int)(_2733)); - float _2737 = _global_1[_2733]; - float _2740 = _global_1[(_2733 + 1)]; - float _2745 = _2737 * 0.5f; - _2752 = dot(float3((_2735 * _2735), _2735, 1.0f), float3(mad((_global_1[(_2733 + 2)]), 0.5f, mad(_2740, -1.0f, _2745)), (_2740 - _2737), mad(_2740, 0.5f, _2745))); - } else { - _2752 = 4.0f; - } - } - } else { - _2752 = -4.0f; - } - float _2754 = exp2(_2752 * 3.321928024291992f); - float _2757 = mad(0.16386906802654266f, _2754, mad(0.14067870378494263f, _2695, (_2636 * 0.6954522132873535f))); - float _2760 = mad(0.0955343171954155f, _2754, mad(0.8596711158752441f, _2695, (_2636 * 0.044794563204050064f))); - float _2763 = mad(1.0015007257461548f, _2754, mad(0.004025210160762072f, _2695, (_2636 * -0.005525882821530104f))); - float _2766 = mad(-0.21492856740951538f, _2763, mad(-0.2365107536315918f, _2760, (_2757 * 1.4514392614364624f))); - float _2769 = mad(-0.09967592358589172f, _2763, mad(1.17622971534729f, _2760, (_2757 * -0.07655377686023712f))); - float _2772 = mad(0.9977163076400757f, _2763, mad(-0.006032449658960104f, _2760, (_2757 * 0.008316148072481155f))); - float _2775 = log2(select((_2766 <= 0.0f), 9.999999747378752e-05f, _2766)); - float _2776 = _2775 * 0.3010300099849701f; - do { - if (!(_2776 <= -3.848327875137329f)) { - if ((bool)(_2776 > -3.848327875137329f) && (bool)(_2776 < 0.6812411546707153f)) { - float _2784 = (_2775 + 12.783867835998535f) * 0.46521204710006714f; - int _2785 = int(_2784); - float _2787 = _2784 - float((int)(_2785)); - float _2789 = _global_4[_2785]; - float _2792 = _global_4[(_2785 + 1)]; - float _2797 = _2789 * 0.5f; - _2832 = dot(float3((_2787 * _2787), _2787, 1.0f), float3(mad((_global_4[(_2785 + 2)]), 0.5f, mad(_2792, -1.0f, _2797)), (_2792 - _2789), mad(_2792, 0.5f, _2797))); - } else { - if ((bool)(_2776 >= 0.6812411546707153f) && (bool)(_2776 < 3.7613162994384766f)) { - float _2809 = (_2775 + -2.2630341053009033f) * 0.6841424107551575f; - int _2810 = int(_2809); - float _2812 = _2809 - float((int)(_2810)); - float _2814 = _global_5[_2810]; - float _2817 = _global_5[(_2810 + 1)]; - float _2822 = _2814 * 0.5f; - _2832 = dot(float3((_2812 * _2812), _2812, 1.0f), float3(mad((_global_5[(_2810 + 2)]), 0.5f, mad(_2817, -1.0f, _2822)), (_2817 - _2814), mad(_2817, 0.5f, _2822))); - } else { - _2832 = ((_2775 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2832 = -2.301030158996582f; - } - float _2834 = exp2(_2832 * 3.321928024291992f); - float _2837 = log2(select((_2769 <= 0.0f), 9.999999747378752e-05f, _2769)); - float _2838 = _2837 * 0.3010300099849701f; - do { - if (!(_2838 <= -3.848327875137329f)) { - if ((bool)(_2838 > -3.848327875137329f) && (bool)(_2838 < 0.6812411546707153f)) { - float _2846 = (_2837 + 12.783867835998535f) * 0.46521204710006714f; - int _2847 = int(_2846); - float _2849 = _2846 - float((int)(_2847)); - float _2851 = _global_4[_2847]; - float _2854 = _global_4[(_2847 + 1)]; - float _2859 = _2851 * 0.5f; - _2894 = dot(float3((_2849 * _2849), _2849, 1.0f), float3(mad((_global_4[(_2847 + 2)]), 0.5f, mad(_2854, -1.0f, _2859)), (_2854 - _2851), mad(_2854, 0.5f, _2859))); - } else { - if ((bool)(_2838 >= 0.6812411546707153f) && (bool)(_2838 < 3.7613162994384766f)) { - float _2871 = (_2837 + -2.2630341053009033f) * 0.6841424107551575f; - int _2872 = int(_2871); - float _2874 = _2871 - float((int)(_2872)); - float _2876 = _global_5[_2872]; - float _2879 = _global_5[(_2872 + 1)]; - float _2884 = _2876 * 0.5f; - _2894 = dot(float3((_2874 * _2874), _2874, 1.0f), float3(mad((_global_5[(_2872 + 2)]), 0.5f, mad(_2879, -1.0f, _2884)), (_2879 - _2876), mad(_2879, 0.5f, _2884))); - } else { - _2894 = ((_2837 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2894 = -2.301030158996582f; - } - float _2896 = exp2(_2894 * 3.321928024291992f); - float _2899 = log2(select((_2772 <= 0.0f), 9.999999747378752e-05f, _2772)); - float _2900 = _2899 * 0.3010300099849701f; - do { - if (!(_2900 <= -3.848327875137329f)) { - if ((bool)(_2900 > -3.848327875137329f) && (bool)(_2900 < 0.6812411546707153f)) { - float _2908 = (_2899 + 12.783867835998535f) * 0.46521204710006714f; - int _2909 = int(_2908); - float _2911 = _2908 - float((int)(_2909)); - float _2913 = _global_4[_2909]; - float _2916 = _global_4[(_2909 + 1)]; - float _2921 = _2913 * 0.5f; - _2956 = dot(float3((_2911 * _2911), _2911, 1.0f), float3(mad((_global_4[(_2909 + 2)]), 0.5f, mad(_2916, -1.0f, _2921)), (_2916 - _2913), mad(_2916, 0.5f, _2921))); - } else { - if ((bool)(_2900 >= 0.6812411546707153f) && (bool)(_2900 < 3.7613162994384766f)) { - float _2933 = (_2899 + -2.2630341053009033f) * 0.6841424107551575f; - int _2934 = int(_2933); - float _2936 = _2933 - float((int)(_2934)); - float _2938 = _global_5[_2934]; - float _2941 = _global_5[(_2934 + 1)]; - float _2946 = _2938 * 0.5f; - _2956 = dot(float3((_2936 * _2936), _2936, 1.0f), float3(mad((_global_5[(_2934 + 2)]), 0.5f, mad(_2941, -1.0f, _2946)), (_2941 - _2938), mad(_2941, 0.5f, _2946))); - } else { - _2956 = ((_2899 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2956 = -2.301030158996582f; - } - float _2958 = exp2(_2956 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _2970 = mad(_34, _2958, mad(_33, _2896, (_2834 * _32))); - _2971 = mad(_37, _2958, mad(_36, _2896, (_2834 * _35))); - _2972 = mad(_40, _2958, mad(_39, _2896, (_2834 * _38))); - } else { - _2970 = _2834; - _2971 = _2896; - _2972 = _2958; - } - float _2982 = exp2(log2(_2970 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2983 = exp2(log2(_2971 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2984 = exp2(log2(_2972 * 9.999999747378752e-05f) * 0.1593017578125f); - _3128 = exp2(log2((1.0f / ((_2982 * 18.6875f) + 1.0f)) * ((_2982 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3129 = exp2(log2((1.0f / ((_2983 * 18.6875f) + 1.0f)) * ((_2983 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3130 = exp2(log2((1.0f / ((_2984 * 18.6875f) + 1.0f)) * ((_2984 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _3017 = mad(0.04736635088920593f, _1660, mad(0.3395121395587921f, _1659, (_1658 * 0.613191545009613f))); - float _3020 = mad(0.01345000695437193f, _1660, mad(0.9163357615470886f, _1659, (_1658 * 0.07020691782236099f))); - float _3023 = mad(0.8696067929267883f, _1660, mad(0.1095672994852066f, _1659, (_1658 * 0.020618872717022896f))); - float _3042 = exp2(log2(mad(_34, _3023, mad(_33, _3020, (_3017 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3043 = exp2(log2(mad(_37, _3023, mad(_36, _3020, (_3017 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3044 = exp2(log2(mad(_40, _3023, mad(_39, _3020, (_3017 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3128 = exp2(log2((1.0f / ((_3042 * 18.6875f) + 1.0f)) * ((_3042 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3129 = exp2(log2((1.0f / ((_3043 * 18.6875f) + 1.0f)) * ((_3043 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3130 = exp2(log2((1.0f / ((_3044 * 18.6875f) + 1.0f)) * ((_3044 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _3079 = mad(0.04736635088920593f, _1648, mad(0.3395121395587921f, _1647, (_1646 * 0.613191545009613f))); - float _3082 = mad(0.01345000695437193f, _1648, mad(0.9163357615470886f, _1647, (_1646 * 0.07020691782236099f))); - float _3085 = mad(0.8696067929267883f, _1648, mad(0.1095672994852066f, _1647, (_1646 * 0.020618872717022896f))); - _3128 = mad(_34, _3085, mad(_33, _3082, (_3079 * _32))); - _3129 = mad(_37, _3085, mad(_36, _3082, (_3079 * _35))); - _3130 = mad(_40, _3085, mad(_39, _3082, (_3079 * _38))); - } else { - float _3098 = mad(0.04736635088920593f, _1674, mad(0.3395121395587921f, _1673, (_1672 * 0.613191545009613f))); - float _3101 = mad(0.01345000695437193f, _1674, mad(0.9163357615470886f, _1673, (_1672 * 0.07020691782236099f))); - float _3104 = mad(0.8696067929267883f, _1674, mad(0.1095672994852066f, _1673, (_1672 * 0.020618872717022896f))); - float _3117 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3128 = exp2(log2(mad(_34, _3104, mad(_33, _3101, (_3098 * _32)))) * _3117); - _3129 = exp2(log2(mad(_37, _3104, mad(_36, _3101, (_3098 * _35)))) * _3117); - _3130 = exp2(log2(mad(_40, _3104, mad(_39, _3101, (_3098 * _38)))) * _3117); - } - } else { - _3128 = _1658; - _3129 = _1659; - _3130 = _1660; - } - } - } - } - } - } - SV_Target.x = (_3128 * 0.9523810148239136f); - SV_Target.y = (_3129 * 0.9523810148239136f); - SV_Target.z = (_3130 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0F5C0351.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0F5C0351.ps_6_0.hlsl deleted file mode 100644 index 2f3e96622..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x0F5C0351.ps_6_0.hlsl +++ /dev/null @@ -1,1506 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _338; - float _339; - float _340; - float _506; - float _507; - float _529; - float _530; - float _531; - float _676; - float _677; - float _698; - float _699; - float _700; - float _846; - float _847; - float _868; - float _869; - float _870; - float _1005; - float _1006; - float _1027; - float _1028; - float _1029; - float _1124; - float _1157; - float _1171; - float _1235; - float _1372; - float _1373; - float _1374; - float _1517; - float _1518; - float _1519; - float _1533; - float _1544; - float _1555; - float _1706; - float _1717; - float _1839; - float _1872; - float _1886; - float _1925; - float _2018; - float _2077; - float _2136; - float _2219; - float _2284; - float _2349; - float _2366; - float _2367; - float _2368; - float _2472; - float _2505; - float _2519; - float _2558; - float _2651; - float _2710; - float _2769; - float _2849; - float _2911; - float _2973; - float _2987; - float _2988; - float _2989; - float _3145; - float _3146; - float _3147; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _21 = ((uint)(cb0_074w) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _155 = cb0_047y * 0.05000000074505806f; - float _158 = _130 - ((_155 * _140) * _154); - float _161 = ((_155 * _130) * _154) + _140; - float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); - float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); - float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _174 = max(_173, 1.000000013351432e-10f); - float _175 = _172 / _174; - float _178 = ((1.0f - _172) - _173) / _174; - float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); - float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); - float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); - float _191 = mad(_189, -0.7501999735832214f, 0.0f); - float _192 = mad(_189, 1.7135000228881836f, 0.0f); - float _193 = mad(_189, 0.03669999912381172f, -0.0f); - float _194 = mad(_190, 0.03889999911189079f, 0.0f); - float _195 = mad(_190, -0.06849999725818634f, 0.0f); - float _196 = mad(_190, 1.0296000242233276f, 0.0f); - float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); - float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); - float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); - float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); - float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); - float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); - float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); - float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); - float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); - float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); - float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); - float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); - float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); - float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); - float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); - float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); - float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); - float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); - float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); - float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); - float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); - float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); - float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); - float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); - // bool _298 = ((uint)(cb0_046x) == 0); - bool _298 = ((uint)(tm_flags.x) == 0); - if (_298) { - float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _304 = (_289 / _300) + -1.0f; - float _305 = (_292 / _300) + -1.0f; - float _306 = (_295 / _300) + -1.0f; - float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); - _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); - _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); - _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); - } else { - _338 = _289; - _339 = _292; - _340 = _295; - } - float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _355 = cb0_052w + cb0_057w; - float _369 = cb0_051w * cb0_056w; - float _383 = cb0_050w * cb0_055w; - float _397 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = _338 - _341; - float _416 = _339 - _341; - float _417 = _340 - _341; - float _474 = cb0_073w + 1.0f; - float _478 = saturate(_474 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383)))))); - float _479 = saturate(_474 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383)))))); - float _480 = saturate(_474 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383)))))); - float _484 = max(_478, max(_479, _480)); - float _485 = _484 - min(_478, min(_479, _480)); - if (!(_485 == 0.0f)) { - float _488 = _485 / _484; - if (_478 == _484) { - _506 = ((_479 - _480) / _485); - _507 = _488; - } else { - if (_479 == _484) { - _506 = (((_480 - _478) / _485) + 2.0f); - _507 = _488; - } else { - if (_480 == _484) { - _506 = (((_478 - _479) / _485) + 4.0f); - _507 = _488; - } else { - _506 = 0.0f; - _507 = _488; - } - } - } - } else { - _506 = 0.0f; - _507 = 0.0f; - } - float _509 = cb0_073z + _506; - float _510 = floor(_509); - float _511 = _509 - _510; - float _512 = 1.0f - _507; - float _514 = 1.0f - (_511 * _507); - float _517 = 1.0f - ((1.0f - _511) * _507); - if (!(_510 == 0.0f)) { - if (!(_510 == 1.0f)) { - if (!(_510 == 2.0f)) { - if (!(_510 == 3.0f)) { - if (!(_510 == 4.0f)) { - _529 = 1.0f; - _530 = _512; - _531 = _514; - } else { - _529 = _517; - _530 = _512; - _531 = 1.0f; - } - } else { - _529 = _512; - _530 = _514; - _531 = 1.0f; - } - } else { - _529 = _512; - _530 = 1.0f; - _531 = _517; - } - } else { - _529 = _514; - _530 = 1.0f; - _531 = _512; - } - } else { - _529 = 1.0f; - _530 = _517; - _531 = _512; - } - float _537 = saturate(_341 / cb0_073x); - float _541 = (_537 * _537) * (3.0f - (_537 * 2.0f)); - float _542 = 1.0f - _541; - float _551 = cb0_052w + cb0_067w; - float _560 = cb0_051w * cb0_066w; - float _569 = cb0_050w * cb0_065w; - float _578 = cb0_049w * cb0_064w; - float _587 = cb0_048w * cb0_063w; - float _648 = saturate(_474 * (((cb0_052x + cb0_067x) + _551) + (((cb0_051x * cb0_066x) * _560) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _578) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _587) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _569)))))); - float _649 = saturate(_474 * (((cb0_052y + cb0_067y) + _551) + (((cb0_051y * cb0_066y) * _560) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _578) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _587) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _569)))))); - float _650 = saturate(_474 * (((cb0_052z + cb0_067z) + _551) + (((cb0_051z * cb0_066z) * _560) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _578) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _587) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _569)))))); - float _654 = max(_648, max(_649, _650)); - float _655 = _654 - min(_648, min(_649, _650)); - if (!(_655 == 0.0f)) { - float _658 = _655 / _654; - if (_648 == _654) { - _676 = ((_649 - _650) / _655); - _677 = _658; - } else { - if (_649 == _654) { - _676 = (((_650 - _648) / _655) + 2.0f); - _677 = _658; - } else { - if (_650 == _654) { - _676 = (((_648 - _649) / _655) + 4.0f); - _677 = _658; - } else { - _676 = 0.0f; - _677 = _658; - } - } - } - } else { - _676 = 0.0f; - _677 = 0.0f; - } - float _678 = cb0_073z + _676; - float _679 = floor(_678); - float _680 = _678 - _679; - float _681 = 1.0f - _677; - float _683 = 1.0f - (_680 * _677); - float _686 = 1.0f - ((1.0f - _680) * _677); - if (!(_679 == 0.0f)) { - if (!(_679 == 1.0f)) { - if (!(_679 == 2.0f)) { - if (!(_679 == 3.0f)) { - if (!(_679 == 4.0f)) { - _698 = 1.0f; - _699 = _681; - _700 = _683; - } else { - _698 = _686; - _699 = _681; - _700 = 1.0f; - } - } else { - _698 = _681; - _699 = _683; - _700 = 1.0f; - } - } else { - _698 = _681; - _699 = 1.0f; - _700 = _686; - } - } else { - _698 = _683; - _699 = 1.0f; - _700 = _681; - } - } else { - _698 = 1.0f; - _699 = _686; - _700 = _681; - } - float _708 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); - float _712 = (_708 * _708) * (3.0f - (_708 * 2.0f)); - float _721 = cb0_052w + cb0_062w; - float _730 = cb0_051w * cb0_061w; - float _739 = cb0_050w * cb0_060w; - float _748 = cb0_049w * cb0_059w; - float _757 = cb0_048w * cb0_058w; - float _818 = saturate(_474 * (((cb0_052x + cb0_062x) + _721) + (((cb0_051x * cb0_061x) * _730) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _748) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _757) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _739)))))); - float _819 = saturate(_474 * (((cb0_052y + cb0_062y) + _721) + (((cb0_051y * cb0_061y) * _730) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _748) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _757) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _739)))))); - float _820 = saturate(_474 * (((cb0_052z + cb0_062z) + _721) + (((cb0_051z * cb0_061z) * _730) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _748) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _757) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _739)))))); - float _824 = max(_818, max(_819, _820)); - float _825 = _824 - min(_818, min(_819, _820)); - if (!(_825 == 0.0f)) { - float _828 = _825 / _824; - if (_818 == _824) { - _846 = ((_819 - _820) / _825); - _847 = _828; - } else { - if (_819 == _824) { - _846 = (((_820 - _818) / _825) + 2.0f); - _847 = _828; - } else { - if (_820 == _824) { - _846 = (((_818 - _819) / _825) + 4.0f); - _847 = _828; - } else { - _846 = 0.0f; - _847 = _828; - } - } - } - } else { - _846 = 0.0f; - _847 = 0.0f; - } - float _848 = cb0_073z + _846; - float _849 = floor(_848); - float _850 = _848 - _849; - float _851 = 1.0f - _847; - float _853 = 1.0f - (_850 * _847); - float _856 = 1.0f - ((1.0f - _850) * _847); - if (!(_849 == 0.0f)) { - if (!(_849 == 1.0f)) { - if (!(_849 == 2.0f)) { - if (!(_849 == 3.0f)) { - if (!(_849 == 4.0f)) { - _868 = 1.0f; - _869 = _851; - _870 = _853; - } else { - _868 = _856; - _869 = _851; - _870 = 1.0f; - } - } else { - _868 = _851; - _869 = _853; - _870 = 1.0f; - } - } else { - _868 = _851; - _869 = 1.0f; - _870 = _856; - } - } else { - _868 = _853; - _869 = 1.0f; - _870 = _851; - } - } else { - _868 = 1.0f; - _869 = _856; - _870 = _851; - } - float _875 = _824 * (_541 - _712); - float _883 = (((_698 * _654) * _712) + ((_529 * _484) * _542)) + (_875 * _868); - float _885 = (((_699 * _654) * _712) + ((_530 * _484) * _542)) + (_875 * _869); - float _887 = (((_700 * _654) * _712) + ((_531 * _484) * _542)) + (_875 * _870); - float _913 = dot(float3(_883, _885, _887), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _977 = saturate(_474 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_883 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _978 = saturate(_474 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_885 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _979 = saturate(_474 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_887 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _983 = max(_977, max(_978, _979)); - float _984 = _983 - min(_977, min(_978, _979)); - if (!(_984 == 0.0f)) { - float _987 = _984 / _983; - if (_977 == _983) { - _1005 = ((_978 - _979) / _984); - _1006 = _987; - } else { - if (_978 == _983) { - _1005 = (((_979 - _977) / _984) + 2.0f); - _1006 = _987; - } else { - if (_979 == _983) { - _1005 = (((_977 - _978) / _984) + 4.0f); - _1006 = _987; - } else { - _1005 = 0.0f; - _1006 = _987; - } - } - } - } else { - _1005 = 0.0f; - _1006 = 0.0f; - } - float _1007 = cb0_073z + _1005; - float _1008 = floor(_1007); - float _1009 = _1007 - _1008; - float _1010 = 1.0f - _1006; - float _1012 = 1.0f - (_1009 * _1006); - float _1015 = 1.0f - ((1.0f - _1009) * _1006); - if (!(_1008 == 0.0f)) { - if (!(_1008 == 1.0f)) { - if (!(_1008 == 2.0f)) { - if (!(_1008 == 3.0f)) { - if (!(_1008 == 4.0f)) { - _1027 = 1.0f; - _1028 = _1010; - _1029 = _1012; - } else { - _1027 = _1015; - _1028 = _1010; - _1029 = 1.0f; - } - } else { - _1027 = _1010; - _1028 = _1012; - _1029 = 1.0f; - } - } else { - _1027 = _1010; - _1028 = 1.0f; - _1029 = _1015; - } - } else { - _1027 = _1012; - _1028 = 1.0f; - _1029 = _1010; - } - } else { - _1027 = 1.0f; - _1028 = _1015; - _1029 = _1010; - } - float _1030 = _1027 * _983; - float _1031 = _1028 * _983; - float _1032 = _1029 * _983; - float _1035 = mad(-0.0832584798336029f, _1032, mad(-0.6217905879020691f, _1031, (_1030 * 1.7050515413284302f))); - float _1038 = mad(-0.010548528283834457f, _1032, mad(1.1408027410507202f, _1031, (_1030 * -0.13025718927383423f))); - float _1041 = mad(1.152971863746643f, _1032, mad(-0.1289687603712082f, _1031, (_1030 * -0.024003278464078903f))); - float _1057 = ((mad(0.061360642313957214f, _1032, mad(-4.540197551250458e-09f, _1031, (_1030 * 0.9386394023895264f))) - _1030) * cb0_075x) + _1030; - float _1058 = ((mad(0.169205904006958f, _1032, mad(0.8307942152023315f, _1031, (_1030 * 6.775371730327606e-08f))) - _1031) * cb0_075x) + _1031; - float _1059 = (mad(-2.3283064365386963e-10f, _1031, (_1030 * -9.313225746154785e-10f)) * cb0_075x) + _1032; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1069 = mad(0.16386905312538147f, _1059, mad(0.14067868888378143f, _1058, (_1057 * 0.6954522132873535f))); - float _1072 = mad(0.0955343246459961f, _1059, mad(0.8596711158752441f, _1058, (_1057 * 0.044794581830501556f))); - float _1075 = mad(1.0015007257461548f, _1059, mad(0.004025210160762072f, _1058, (_1057 * -0.005525882821530104f))); - float _1079 = max(max(_1069, _1072), _1075); - float _1084 = (max(_1079, 1.000000013351432e-10f) - max(min(min(_1069, _1072), _1075), 1.000000013351432e-10f)) / max(_1079, 0.009999999776482582f); - float _1097 = ((_1072 + _1069) + _1075) + (sqrt((((_1075 - _1072) * _1075) + ((_1072 - _1069) * _1072)) + ((_1069 - _1075) * _1069)) * 1.75f); - float _1098 = _1097 * 0.3333333432674408f; - float _1099 = _1084 + -0.4000000059604645f; - float _1100 = _1099 * 5.0f; - float _1104 = max((1.0f - abs(_1099 * 2.5f)), 0.0f); - float _1115 = ((float(((int)(uint)((bool)(_1100 > 0.0f))) - ((int)(uint)((bool)(_1100 < 0.0f)))) * (1.0f - (_1104 * _1104))) + 1.0f) * 0.02500000037252903f; - if (!(_1098 <= 0.0533333346247673f)) { - if (!(_1098 >= 0.1599999964237213f)) { - _1124 = (((0.23999999463558197f / _1097) + -0.5f) * _1115); - } else { - _1124 = 0.0f; - } - } else { - _1124 = _1115; - } - float _1125 = _1124 + 1.0f; - float _1126 = _1125 * _1069; - float _1127 = _1125 * _1072; - float _1128 = _1125 * _1075; - if (!((bool)(_1126 == _1127) && (bool)(_1127 == _1128))) { - float _1135 = ((_1126 * 2.0f) - _1127) - _1128; - float _1138 = ((_1072 - _1075) * 1.7320507764816284f) * _1125; - float _1140 = atan(_1138 / _1135); - bool _1143 = (_1135 < 0.0f); - bool _1144 = (_1135 == 0.0f); - bool _1145 = (_1138 >= 0.0f); - bool _1146 = (_1138 < 0.0f); - _1157 = select((_1145 && _1144), 90.0f, select((_1146 && _1144), -90.0f, (select((_1146 && _1143), (_1140 + -3.1415927410125732f), select((_1145 && _1143), (_1140 + 3.1415927410125732f), _1140)) * 57.2957763671875f))); - } else { - _1157 = 0.0f; - } - float _1162 = min(max(select((_1157 < 0.0f), (_1157 + 360.0f), _1157), 0.0f), 360.0f); - if (_1162 < -180.0f) { - _1171 = (_1162 + 360.0f); - } else { - if (_1162 > 180.0f) { - _1171 = (_1162 + -360.0f); - } else { - _1171 = _1162; - } - } - float _1175 = saturate(1.0f - abs(_1171 * 0.014814814552664757f)); - float _1179 = (_1175 * _1175) * (3.0f - (_1175 * 2.0f)); - float _1185 = ((_1179 * _1179) * ((_1084 * 0.18000000715255737f) * (0.029999999329447746f - _1126))) + _1126; - float _1195 = max(0.0f, mad(-0.21492856740951538f, _1128, mad(-0.2365107536315918f, _1127, (_1185 * 1.4514392614364624f)))); - float _1196 = max(0.0f, mad(-0.09967592358589172f, _1128, mad(1.17622971534729f, _1127, (_1185 * -0.07655377686023712f)))); - float _1197 = max(0.0f, mad(0.9977163076400757f, _1128, mad(-0.006032449658960104f, _1127, (_1185 * 0.008316148072481155f)))); - float _1198 = dot(float3(_1195, _1196, _1197), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1212 = (cb0_036w + 1.0f) - cb0_036y; - float _1215 = cb0_037x + 1.0f; - float _1217 = _1215 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1235 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1226 = (cb0_036w + 0.18000000715255737f) / _1212; - _1235 = (-0.7447274923324585f - ((log2(_1226 / (2.0f - _1226)) * 0.3465735912322998f) * (_1212 / cb0_036x))); - } - float _1238 = ((1.0f - cb0_036y) / cb0_036x) - _1235; - float _1240 = (cb0_036z / cb0_036x) - _1238; - float _1244 = log2(lerp(_1198, _1195, 0.9599999785423279f)) * 0.3010300099849701f; - float _1245 = log2(lerp(_1198, _1196, 0.9599999785423279f)) * 0.3010300099849701f; - float _1246 = log2(lerp(_1198, _1197, 0.9599999785423279f)) * 0.3010300099849701f; - float _1250 = cb0_036x * (_1244 + _1238); - float _1251 = cb0_036x * (_1245 + _1238); - float _1252 = cb0_036x * (_1246 + _1238); - float _1253 = _1212 * 2.0f; - float _1255 = (cb0_036x * -2.0f) / _1212; - float _1256 = _1244 - _1235; - float _1257 = _1245 - _1235; - float _1258 = _1246 - _1235; - float _1277 = _1217 * 2.0f; - float _1279 = (cb0_036x * 2.0f) / _1217; - float _1304 = select((_1244 < _1235), ((_1253 / (exp2((_1256 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1250); - float _1305 = select((_1245 < _1235), ((_1253 / (exp2((_1257 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1251); - float _1306 = select((_1246 < _1235), ((_1253 / (exp2((_1258 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1252); - float _1313 = _1240 - _1235; - float _1317 = saturate(_1256 / _1313); - float _1318 = saturate(_1257 / _1313); - float _1319 = saturate(_1258 / _1313); - bool _1320 = (_1240 < _1235); - float _1324 = select(_1320, (1.0f - _1317), _1317); - float _1325 = select(_1320, (1.0f - _1318), _1318); - float _1326 = select(_1320, (1.0f - _1319), _1319); - float _1345 = (((_1324 * _1324) * (select((_1244 > _1240), (_1215 - (_1277 / (exp2(((_1244 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1250) - _1304)) * (3.0f - (_1324 * 2.0f))) + _1304; - float _1346 = (((_1325 * _1325) * (select((_1245 > _1240), (_1215 - (_1277 / (exp2(((_1245 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1251) - _1305)) * (3.0f - (_1325 * 2.0f))) + _1305; - float _1347 = (((_1326 * _1326) * (select((_1246 > _1240), (_1215 - (_1277 / (exp2(((_1246 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; - float _1348 = dot(float3(_1345, _1346, _1347), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1372 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1345, 0.9300000071525574f))) - _1057)) + _1057); - _1373 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1346, 0.9300000071525574f))) - _1058)) + _1058); - _1374 = ((cb0_075z * (max(0.0f, (lerp(_1348, _1347, 0.9300000071525574f))) - _1059)) + _1059); - } else { - _1372 = _1057; - _1373 = _1058; - _1374 = _1059; - } - float _1390 = ((mad(-0.06537103652954102f, _1374, mad(1.451815478503704e-06f, _1373, (_1372 * 1.065374732017517f))) - _1372) * cb0_075x) + _1372; - float _1391 = ((mad(-0.20366770029067993f, _1374, mad(1.2036634683609009f, _1373, (_1372 * -2.57161445915699e-07f))) - _1373) * cb0_075x) + _1373; - float _1392 = ((mad(0.9999996423721313f, _1374, mad(2.0954757928848267e-08f, _1373, (_1372 * 1.862645149230957e-08f))) - _1374) * cb0_075x) + _1374; - [branch] - if (!_298) { - float _1435 = 1.0f / (dot(float3(_1035, _1038, _1041), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1445 = max(0.0f, (((_1435 * cb0_035x) + cb0_034x) * dot(float3(_1035, _1038, _1041), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1446 = max(0.0f, (((_1435 * cb0_035y) + cb0_034y) * dot(float3(_1035, _1038, _1041), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1447 = max(0.0f, (((_1435 * cb0_035z) + cb0_034z) * dot(float3(_1035, _1038, _1041), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1453 = max(0.0f, (cb0_031x - _1445)); - float _1454 = max(0.0f, (cb0_031x - _1446)); - float _1455 = max(0.0f, (cb0_031x - _1447)); - float _1457 = max(_1445, cb0_031z); - float _1458 = max(_1446, cb0_031z); - float _1459 = max(_1447, cb0_031z); - _1517 = (((((((cb0_032x * _1457) + cb0_032y) * (1.0f / (cb0_031w + _1457))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1445, cb0_031x), cb0_031z))) + ((cb0_028w * _1453) * (1.0f / (cb0_031y + _1453)))) + cb0_029w); - _1518 = ((((((1.0f / (cb0_031w + _1458)) * ((cb0_032x * _1458) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1446, cb0_031x), cb0_031z))) + ((cb0_028w * _1454) * (1.0f / (cb0_031y + _1454)))) + cb0_029w); - _1519 = ((((((1.0f / (cb0_031w + _1459)) * ((cb0_032x * _1459) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1447, cb0_031x), cb0_031z))) + ((cb0_028w * _1455) * (1.0f / (cb0_031y + _1455)))) + cb0_029w); - } else { - _1517 = max(0.0f, mad(-0.0832584798336029f, _1392, mad(-0.6217905879020691f, _1391, (_1390 * 1.7050515413284302f)))); - _1518 = max(0.0f, mad(-0.010548528283834457f, _1392, mad(1.1408027410507202f, _1391, (_1390 * -0.13025718927383423f)))); - _1519 = max(0.0f, mad(1.152971863746643f, _1392, mad(-0.1289687603712082f, _1391, (_1390 * -0.024003278464078903f)))); - } - float _1520 = saturate(_1517); - float _1521 = saturate(_1518); - float _1522 = saturate(_1519); - if (_1520 < 0.0031306699384003878f) { - _1533 = (_1520 * 12.920000076293945f); - } else { - _1533 = (((pow(_1520, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1521 < 0.0031306699384003878f) { - _1544 = (_1521 * 12.920000076293945f); - } else { - _1544 = (((pow(_1521, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1522 < 0.0031306699384003878f) { - _1555 = (_1522 * 12.920000076293945f); - } else { - _1555 = (((pow(_1522, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1559 = (_1544 * 0.9375f) + 0.03125f; - float _1562 = cb0_040x * _1533; - float _1563 = cb0_040x * _1544; - float _1564 = cb0_040x * _1555; - float _1567 = _1555 * 15.0f; - float _1568 = floor(_1567); - float _1569 = _1567 - _1568; - float _1571 = (((_1533 * 0.9375f) + 0.03125f) + _1568) * 0.0625f; - float4 _1572 = t0.Sample(s0, float2(_1571, _1559)); - float4 _1577 = t0.Sample(s0, float2((_1571 + 0.0625f), _1559)); - float _1595 = cb0_038w * cb0_039z; - float _1602 = max(6.103519990574569e-05f, ((_1595 * ((_1572.x - _1562) + ((_1577.x - _1572.x) * _1569))) + _1562)); - float _1603 = max(6.103519990574569e-05f, ((_1595 * ((_1572.y - _1563) + ((_1577.y - _1572.y) * _1569))) + _1563)); - float _1604 = max(6.103519990574569e-05f, ((_1595 * ((_1572.z - _1564) + ((_1577.z - _1572.z) * _1569))) + _1564)); - float _1626 = select((_1602 > 0.040449999272823334f), exp2(log2((_1602 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1602 * 0.07739938050508499f)); - float _1627 = select((_1603 > 0.040449999272823334f), exp2(log2((_1603 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1603 * 0.07739938050508499f)); - float _1628 = select((_1604 > 0.040449999272823334f), exp2(log2((_1604 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1604 * 0.07739938050508499f)); - float _1654 = cb0_044y * (((cb0_026y + (cb0_026x * _1626)) * _1626) + cb0_026z); - float _1655 = cb0_044z * (((cb0_026y + (cb0_026x * _1627)) * _1627) + cb0_026z); - float _1656 = cb0_044w * (((cb0_026y + (cb0_026x * _1628)) * _1628) + cb0_026z); - float _1663 = ((cb0_045x - _1654) * cb0_045w) + _1654; - float _1664 = ((cb0_045y - _1655) * cb0_045w) + _1655; - float _1665 = ((cb0_045z - _1656) * cb0_045w) + _1656; - float _1666 = cb0_044y * _1035; - float _1667 = cb0_044z * _1038; - float _1668 = cb0_044w * _1041; - float _1675 = ((cb0_045x - _1666) * cb0_045w) + _1666; - float _1676 = ((cb0_045y - _1667) * cb0_045w) + _1667; - float _1677 = ((cb0_045z - _1668) * cb0_045w) + _1668; - float _1689 = exp2(log2(max(0.0f, _1663)) * cb0_027y); - float _1690 = exp2(log2(max(0.0f, _1664)) * cb0_027y); - float _1691 = exp2(log2(max(0.0f, _1665)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1689, _1690, _1691)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1689 < 0.0031306699384003878f) { - _1706 = (_1689 * 12.920000076293945f); - } else { - _1706 = (((pow(_1689, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1690 < 0.0031306699384003878f) { - _1717 = (_1690 * 12.920000076293945f); - } else { - _1717 = (((pow(_1690, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1691 < 0.0031306699384003878f) { - _3145 = _1706; - _3146 = _1717; - _3147 = (_1691 * 12.920000076293945f); - } else { - _3145 = _1706; - _3146 = _1717; - _3147 = (((pow(_1691, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1732 = mad(0.04736635088920593f, _1691, mad(0.3395121395587921f, _1690, (_1689 * 0.613191545009613f))); - float _1735 = mad(0.01345000695437193f, _1691, mad(0.9163357615470886f, _1690, (_1689 * 0.07020691782236099f))); - float _1738 = mad(0.8696067929267883f, _1691, mad(0.1095672994852066f, _1690, (_1689 * 0.020618872717022896f))); - float _1748 = max(6.103519990574569e-05f, mad(_34, _1738, mad(_33, _1735, (_1732 * _32)))); - float _1749 = max(6.103519990574569e-05f, mad(_37, _1738, mad(_36, _1735, (_1732 * _35)))); - float _1750 = max(6.103519990574569e-05f, mad(_40, _1738, mad(_39, _1735, (_1732 * _38)))); - _3145 = min((_1748 * 4.5f), ((exp2(log2(max(_1748, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3146 = min((_1749 * 4.5f), ((exp2(log2(max(_1749, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3147 = min((_1750 * 4.5f), ((exp2(log2(max(_1750, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1777 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1777) { - float _1780 = _1676 * 3.0f; - float _1781 = _1677 * 3.0f; - float _1784 = mad(0.17733481526374817f, _1781, mad(0.38297808170318604f, _1780, (_1675 * 1.31910240650177f))); - float _1787 = mad(0.09676162153482437f, _1781, mad(0.8134231567382812f, _1780, (_1675 * 0.2693769633769989f))); - float _1790 = mad(0.870704174041748f, _1781, mad(0.11154405772686005f, _1780, (_1675 * 0.05263196676969528f))); - float _1794 = max(max(_1784, _1787), _1790); - float _1799 = (max(_1794, 1.000000013351432e-10f) - max(min(min(_1784, _1787), _1790), 1.000000013351432e-10f)) / max(_1794, 0.009999999776482582f); - float _1812 = ((_1787 + _1784) + _1790) + (sqrt((((_1790 - _1787) * _1790) + ((_1787 - _1784) * _1787)) + ((_1784 - _1790) * _1784)) * 1.75f); - float _1813 = _1812 * 0.3333333432674408f; - float _1814 = _1799 + -0.4000000059604645f; - float _1815 = _1814 * 5.0f; - float _1819 = max((1.0f - abs(_1814 * 2.5f)), 0.0f); - float _1830 = ((float(((int)(uint)((bool)(_1815 > 0.0f))) - ((int)(uint)((bool)(_1815 < 0.0f)))) * (1.0f - (_1819 * _1819))) + 1.0f) * 0.02500000037252903f; - if (!(_1813 <= 0.0533333346247673f)) { - if (!(_1813 >= 0.1599999964237213f)) { - _1839 = (((0.23999999463558197f / _1812) + -0.5f) * _1830); - } else { - _1839 = 0.0f; - } - } else { - _1839 = _1830; - } - float _1840 = _1839 + 1.0f; - float _1841 = _1840 * _1784; - float _1842 = _1840 * _1787; - float _1843 = _1840 * _1790; - if (!((bool)(_1841 == _1842) && (bool)(_1842 == _1843))) { - float _1850 = ((_1841 * 2.0f) - _1842) - _1843; - float _1853 = ((_1787 - _1790) * 1.7320507764816284f) * _1840; - float _1855 = atan(_1853 / _1850); - bool _1858 = (_1850 < 0.0f); - bool _1859 = (_1850 == 0.0f); - bool _1860 = (_1853 >= 0.0f); - bool _1861 = (_1853 < 0.0f); - _1872 = select((_1860 && _1859), 90.0f, select((_1861 && _1859), -90.0f, (select((_1861 && _1858), (_1855 + -3.1415927410125732f), select((_1860 && _1858), (_1855 + 3.1415927410125732f), _1855)) * 57.2957763671875f))); - } else { - _1872 = 0.0f; - } - float _1877 = min(max(select((_1872 < 0.0f), (_1872 + 360.0f), _1872), 0.0f), 360.0f); - if (_1877 < -180.0f) { - _1886 = (_1877 + 360.0f); - } else { - if (_1877 > 180.0f) { - _1886 = (_1877 + -360.0f); - } else { - _1886 = _1877; - } - } - if ((bool)(_1886 > -67.5f) && (bool)(_1886 < 67.5f)) { - float _1892 = (_1886 + 67.5f) * 0.029629629105329514f; - int _1893 = int(_1892); - float _1895 = _1892 - float(_1893); - float _1896 = _1895 * _1895; - float _1897 = _1896 * _1895; - if (_1893 == 3) { - _1925 = (((0.1666666716337204f - (_1895 * 0.5f)) + (_1896 * 0.5f)) - (_1897 * 0.1666666716337204f)); - } else { - if (_1893 == 2) { - _1925 = ((0.6666666865348816f - _1896) + (_1897 * 0.5f)); - } else { - if (_1893 == 1) { - _1925 = (((_1897 * -0.5f) + 0.1666666716337204f) + ((_1896 + _1895) * 0.5f)); - } else { - _1925 = select((_1893 == 0), (_1897 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1925 = 0.0f; - } - float _1934 = min(max(((((_1799 * 0.27000001072883606f) * (0.029999999329447746f - _1841)) * _1925) + _1841), 0.0f), 65535.0f); - float _1935 = min(max(_1842, 0.0f), 65535.0f); - float _1936 = min(max(_1843, 0.0f), 65535.0f); - float _1949 = min(max(mad(-0.21492856740951538f, _1936, mad(-0.2365107536315918f, _1935, (_1934 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1950 = min(max(mad(-0.09967592358589172f, _1936, mad(1.17622971534729f, _1935, (_1934 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1951 = min(max(mad(0.9977163076400757f, _1936, mad(-0.006032449658960104f, _1935, (_1934 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1952 = dot(float3(_1949, _1950, _1951), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1959 = ((_1949 - _1952) * 0.9599999785423279f) + _1952; - float _1960 = ((_1950 - _1952) * 0.9599999785423279f) + _1952; - float _1961 = ((_1951 - _1952) * 0.9599999785423279f) + _1952; - float _1964 = log2(select((_1959 <= 0.0f), 6.103515625e-05f, _1959)); - float _1965 = _1964 * 0.3010300099849701f; - if (!(_1965 <= -5.2601776123046875f)) { - if ((bool)(_1965 > -5.2601776123046875f) && (bool)(_1965 < -0.7447274923324585f)) { - float _1973 = (_1964 * 0.19999998807907104f) + 3.494786262512207f; - int _1974 = int(_1973); - float _1976 = _1973 - float(_1974); - float _1978 = _global_0[_1974]; - float _1981 = _global_0[(_1974 + 1)]; - float _1986 = _1978 * 0.5f; - _2018 = dot(float3((_1976 * _1976), _1976, 1.0f), float3(mad((_global_0[(_1974 + 2)]), 0.5f, mad(_1981, -1.0f, _1986)), (_1981 - _1978), mad(_1981, 0.5f, _1986))); - } else { - if ((bool)(_1965 >= -0.7447274923324585f) && (bool)(_1965 < 4.673812389373779f)) { - float _1998 = (_1964 * 0.1666666567325592f) + 0.4123218357563019f; - int _1999 = int(_1998); - float _2001 = _1998 - float(_1999); - float _2003 = _global_1[_1999]; - float _2006 = _global_1[(_1999 + 1)]; - float _2011 = _2003 * 0.5f; - _2018 = dot(float3((_2001 * _2001), _2001, 1.0f), float3(mad((_global_1[(_1999 + 2)]), 0.5f, mad(_2006, -1.0f, _2011)), (_2006 - _2003), mad(_2006, 0.5f, _2011))); - } else { - _2018 = 4.0f; - } - } - } else { - _2018 = -4.0f; - } - float _2020 = exp2(_2018 * 3.321928024291992f); - float _2023 = log2(select((_1960 <= 0.0f), 6.103515625e-05f, _1960)); - float _2024 = _2023 * 0.3010300099849701f; - if (!(_2024 <= -5.2601776123046875f)) { - if ((bool)(_2024 > -5.2601776123046875f) && (bool)(_2024 < -0.7447274923324585f)) { - float _2032 = (_2023 * 0.19999998807907104f) + 3.494786262512207f; - int _2033 = int(_2032); - float _2035 = _2032 - float(_2033); - float _2037 = _global_0[_2033]; - float _2040 = _global_0[(_2033 + 1)]; - float _2045 = _2037 * 0.5f; - _2077 = dot(float3((_2035 * _2035), _2035, 1.0f), float3(mad((_global_0[(_2033 + 2)]), 0.5f, mad(_2040, -1.0f, _2045)), (_2040 - _2037), mad(_2040, 0.5f, _2045))); - } else { - if ((bool)(_2024 >= -0.7447274923324585f) && (bool)(_2024 < 4.673812389373779f)) { - float _2057 = (_2023 * 0.1666666567325592f) + 0.4123218357563019f; - int _2058 = int(_2057); - float _2060 = _2057 - float(_2058); - float _2062 = _global_1[_2058]; - float _2065 = _global_1[(_2058 + 1)]; - float _2070 = _2062 * 0.5f; - _2077 = dot(float3((_2060 * _2060), _2060, 1.0f), float3(mad((_global_1[(_2058 + 2)]), 0.5f, mad(_2065, -1.0f, _2070)), (_2065 - _2062), mad(_2065, 0.5f, _2070))); - } else { - _2077 = 4.0f; - } - } - } else { - _2077 = -4.0f; - } - float _2079 = exp2(_2077 * 3.321928024291992f); - float _2082 = log2(select((_1961 <= 0.0f), 6.103515625e-05f, _1961)); - float _2083 = _2082 * 0.3010300099849701f; - if (!(_2083 <= -5.2601776123046875f)) { - if ((bool)(_2083 > -5.2601776123046875f) && (bool)(_2083 < -0.7447274923324585f)) { - float _2091 = (_2082 * 0.19999998807907104f) + 3.494786262512207f; - int _2092 = int(_2091); - float _2094 = _2091 - float(_2092); - float _2096 = _global_0[_2092]; - float _2099 = _global_0[(_2092 + 1)]; - float _2104 = _2096 * 0.5f; - _2136 = dot(float3((_2094 * _2094), _2094, 1.0f), float3(mad((_global_0[(_2092 + 2)]), 0.5f, mad(_2099, -1.0f, _2104)), (_2099 - _2096), mad(_2099, 0.5f, _2104))); - } else { - if ((bool)(_2083 >= -0.7447274923324585f) && (bool)(_2083 < 4.673812389373779f)) { - float _2116 = (_2082 * 0.1666666567325592f) + 0.4123218357563019f; - int _2117 = int(_2116); - float _2119 = _2116 - float(_2117); - float _2121 = _global_1[_2117]; - float _2124 = _global_1[(_2117 + 1)]; - float _2129 = _2121 * 0.5f; - _2136 = dot(float3((_2119 * _2119), _2119, 1.0f), float3(mad((_global_1[(_2117 + 2)]), 0.5f, mad(_2124, -1.0f, _2129)), (_2124 - _2121), mad(_2124, 0.5f, _2129))); - } else { - _2136 = 4.0f; - } - } - } else { - _2136 = -4.0f; - } - float _2138 = exp2(_2136 * 3.321928024291992f); - float _2141 = mad(0.16386906802654266f, _2138, mad(0.14067870378494263f, _2079, (_2020 * 0.6954522132873535f))); - float _2144 = mad(0.0955343171954155f, _2138, mad(0.8596711158752441f, _2079, (_2020 * 0.044794563204050064f))); - float _2147 = mad(1.0015007257461548f, _2138, mad(0.004025210160762072f, _2079, (_2020 * -0.005525882821530104f))); - float _2150 = mad(-0.21492856740951538f, _2147, mad(-0.2365107536315918f, _2144, (_2141 * 1.4514392614364624f))); - float _2153 = mad(-0.09967592358589172f, _2147, mad(1.17622971534729f, _2144, (_2141 * -0.07655377686023712f))); - float _2156 = mad(0.9977163076400757f, _2147, mad(-0.006032449658960104f, _2144, (_2141 * 0.008316148072481155f))); - float _2159 = log2(select((_2150 <= 0.0f), 9.999999747378752e-05f, _2150)); - float _2160 = _2159 * 0.3010300099849701f; - if (!(!(_2160 <= -3.848327875137329f))) { - _2219 = ((_2159 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2160 > -3.848327875137329f) && (bool)(_2160 < 0.6812411546707153f)) { - float _2171 = (_2159 + 12.783867835998535f) * 0.46521204710006714f; - int _2172 = int(_2171); - float _2174 = _2171 - float(_2172); - float _2176 = _global_2[_2172]; - float _2179 = _global_2[(_2172 + 1)]; - float _2184 = _2176 * 0.5f; - _2219 = dot(float3((_2174 * _2174), _2174, 1.0f), float3(mad((_global_2[(_2172 + 2)]), 0.5f, mad(_2179, -1.0f, _2184)), (_2179 - _2176), mad(_2179, 0.5f, _2184))); - } else { - if ((bool)(_2160 >= 0.6812411546707153f) && (bool)(_2160 < 3.653702974319458f)) { - float _2196 = (_2159 + -2.2630341053009033f) * 0.7089107632637024f; - int _2197 = int(_2196); - float _2199 = _2196 - float(_2197); - float _2201 = _global_3[_2197]; - float _2204 = _global_3[(_2197 + 1)]; - float _2209 = _2201 * 0.5f; - _2219 = dot(float3((_2199 * _2199), _2199, 1.0f), float3(mad((_global_3[(_2197 + 2)]), 0.5f, mad(_2204, -1.0f, _2209)), (_2204 - _2201), mad(_2204, 0.5f, _2209))); - } else { - _2219 = ((_2159 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2224 = log2(select((_2153 <= 0.0f), 9.999999747378752e-05f, _2153)); - float _2225 = _2224 * 0.3010300099849701f; - if (!(!(_2225 <= -3.848327875137329f))) { - _2284 = ((_2224 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2225 > -3.848327875137329f) && (bool)(_2225 < 0.6812411546707153f)) { - float _2236 = (_2224 + 12.783867835998535f) * 0.46521204710006714f; - int _2237 = int(_2236); - float _2239 = _2236 - float(_2237); - float _2241 = _global_2[_2237]; - float _2244 = _global_2[(_2237 + 1)]; - float _2249 = _2241 * 0.5f; - _2284 = dot(float3((_2239 * _2239), _2239, 1.0f), float3(mad((_global_2[(_2237 + 2)]), 0.5f, mad(_2244, -1.0f, _2249)), (_2244 - _2241), mad(_2244, 0.5f, _2249))); - } else { - if ((bool)(_2225 >= 0.6812411546707153f) && (bool)(_2225 < 3.653702974319458f)) { - float _2261 = (_2224 + -2.2630341053009033f) * 0.7089107632637024f; - int _2262 = int(_2261); - float _2264 = _2261 - float(_2262); - float _2266 = _global_3[_2262]; - float _2269 = _global_3[(_2262 + 1)]; - float _2274 = _2266 * 0.5f; - _2284 = dot(float3((_2264 * _2264), _2264, 1.0f), float3(mad((_global_3[(_2262 + 2)]), 0.5f, mad(_2269, -1.0f, _2274)), (_2269 - _2266), mad(_2269, 0.5f, _2274))); - } else { - _2284 = ((_2224 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2289 = log2(select((_2156 <= 0.0f), 9.999999747378752e-05f, _2156)); - float _2290 = _2289 * 0.3010300099849701f; - if (!(!(_2290 <= -3.848327875137329f))) { - _2349 = ((_2289 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2290 > -3.848327875137329f) && (bool)(_2290 < 0.6812411546707153f)) { - float _2301 = (_2289 + 12.783867835998535f) * 0.46521204710006714f; - int _2302 = int(_2301); - float _2304 = _2301 - float(_2302); - float _2306 = _global_2[_2302]; - float _2309 = _global_2[(_2302 + 1)]; - float _2314 = _2306 * 0.5f; - _2349 = dot(float3((_2304 * _2304), _2304, 1.0f), float3(mad((_global_2[(_2302 + 2)]), 0.5f, mad(_2309, -1.0f, _2314)), (_2309 - _2306), mad(_2309, 0.5f, _2314))); - } else { - if ((bool)(_2290 >= 0.6812411546707153f) && (bool)(_2290 < 3.653702974319458f)) { - float _2326 = (_2289 + -2.2630341053009033f) * 0.7089107632637024f; - int _2327 = int(_2326); - float _2329 = _2326 - float(_2327); - float _2331 = _global_3[_2327]; - float _2334 = _global_3[(_2327 + 1)]; - float _2339 = _2331 * 0.5f; - _2349 = dot(float3((_2329 * _2329), _2329, 1.0f), float3(mad((_global_3[(_2327 + 2)]), 0.5f, mad(_2334, -1.0f, _2339)), (_2334 - _2331), mad(_2334, 0.5f, _2339))); - } else { - _2349 = ((_2289 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2352 = exp2(_2219 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2353 = exp2(_2284 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2354 = exp2(_2349 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1777) { - _2366 = mad(_34, _2354, mad(_33, _2353, (_2352 * _32))); - _2367 = mad(_37, _2354, mad(_36, _2353, (_2352 * _35))); - _2368 = mad(_40, _2354, mad(_39, _2353, (_2352 * _38))); - } else { - _2366 = _2352; - _2367 = _2353; - _2368 = _2354; - } - float _2378 = exp2(log2(_2366 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2379 = exp2(log2(_2367 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2380 = exp2(log2(_2368 * 9.999999747378752e-05f) * 0.1593017578125f); - _3145 = exp2(log2((1.0f / ((_2378 * 18.6875f) + 1.0f)) * ((_2378 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3146 = exp2(log2((1.0f / ((_2379 * 18.6875f) + 1.0f)) * ((_2379 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_2380 * 18.6875f) + 1.0f)) * ((_2380 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2413 = _1676 * 3.0f; - float _2414 = _1677 * 3.0f; - float _2417 = mad(0.17733481526374817f, _2414, mad(0.38297808170318604f, _2413, (_1675 * 1.31910240650177f))); - float _2420 = mad(0.09676162153482437f, _2414, mad(0.8134231567382812f, _2413, (_1675 * 0.2693769633769989f))); - float _2423 = mad(0.870704174041748f, _2414, mad(0.11154405772686005f, _2413, (_1675 * 0.05263196676969528f))); - float _2427 = max(max(_2417, _2420), _2423); - float _2432 = (max(_2427, 1.000000013351432e-10f) - max(min(min(_2417, _2420), _2423), 1.000000013351432e-10f)) / max(_2427, 0.009999999776482582f); - float _2445 = ((_2420 + _2417) + _2423) + (sqrt((((_2423 - _2420) * _2423) + ((_2420 - _2417) * _2420)) + ((_2417 - _2423) * _2417)) * 1.75f); - float _2446 = _2445 * 0.3333333432674408f; - float _2447 = _2432 + -0.4000000059604645f; - float _2448 = _2447 * 5.0f; - float _2452 = max((1.0f - abs(_2447 * 2.5f)), 0.0f); - float _2463 = ((float(((int)(uint)((bool)(_2448 > 0.0f))) - ((int)(uint)((bool)(_2448 < 0.0f)))) * (1.0f - (_2452 * _2452))) + 1.0f) * 0.02500000037252903f; - if (!(_2446 <= 0.0533333346247673f)) { - if (!(_2446 >= 0.1599999964237213f)) { - _2472 = (((0.23999999463558197f / _2445) + -0.5f) * _2463); - } else { - _2472 = 0.0f; - } - } else { - _2472 = _2463; - } - float _2473 = _2472 + 1.0f; - float _2474 = _2473 * _2417; - float _2475 = _2473 * _2420; - float _2476 = _2473 * _2423; - if (!((bool)(_2474 == _2475) && (bool)(_2475 == _2476))) { - float _2483 = ((_2474 * 2.0f) - _2475) - _2476; - float _2486 = ((_2420 - _2423) * 1.7320507764816284f) * _2473; - float _2488 = atan(_2486 / _2483); - bool _2491 = (_2483 < 0.0f); - bool _2492 = (_2483 == 0.0f); - bool _2493 = (_2486 >= 0.0f); - bool _2494 = (_2486 < 0.0f); - _2505 = select((_2493 && _2492), 90.0f, select((_2494 && _2492), -90.0f, (select((_2494 && _2491), (_2488 + -3.1415927410125732f), select((_2493 && _2491), (_2488 + 3.1415927410125732f), _2488)) * 57.2957763671875f))); - } else { - _2505 = 0.0f; - } - float _2510 = min(max(select((_2505 < 0.0f), (_2505 + 360.0f), _2505), 0.0f), 360.0f); - if (_2510 < -180.0f) { - _2519 = (_2510 + 360.0f); - } else { - if (_2510 > 180.0f) { - _2519 = (_2510 + -360.0f); - } else { - _2519 = _2510; - } - } - if ((bool)(_2519 > -67.5f) && (bool)(_2519 < 67.5f)) { - float _2525 = (_2519 + 67.5f) * 0.029629629105329514f; - int _2526 = int(_2525); - float _2528 = _2525 - float(_2526); - float _2529 = _2528 * _2528; - float _2530 = _2529 * _2528; - if (_2526 == 3) { - _2558 = (((0.1666666716337204f - (_2528 * 0.5f)) + (_2529 * 0.5f)) - (_2530 * 0.1666666716337204f)); - } else { - if (_2526 == 2) { - _2558 = ((0.6666666865348816f - _2529) + (_2530 * 0.5f)); - } else { - if (_2526 == 1) { - _2558 = (((_2530 * -0.5f) + 0.1666666716337204f) + ((_2529 + _2528) * 0.5f)); - } else { - _2558 = select((_2526 == 0), (_2530 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2558 = 0.0f; - } - float _2567 = min(max(((((_2432 * 0.27000001072883606f) * (0.029999999329447746f - _2474)) * _2558) + _2474), 0.0f), 65535.0f); - float _2568 = min(max(_2475, 0.0f), 65535.0f); - float _2569 = min(max(_2476, 0.0f), 65535.0f); - float _2582 = min(max(mad(-0.21492856740951538f, _2569, mad(-0.2365107536315918f, _2568, (_2567 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2583 = min(max(mad(-0.09967592358589172f, _2569, mad(1.17622971534729f, _2568, (_2567 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2584 = min(max(mad(0.9977163076400757f, _2569, mad(-0.006032449658960104f, _2568, (_2567 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2585 = dot(float3(_2582, _2583, _2584), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2592 = ((_2582 - _2585) * 0.9599999785423279f) + _2585; - float _2593 = ((_2583 - _2585) * 0.9599999785423279f) + _2585; - float _2594 = ((_2584 - _2585) * 0.9599999785423279f) + _2585; - float _2597 = log2(select((_2592 <= 0.0f), 6.103515625e-05f, _2592)); - float _2598 = _2597 * 0.3010300099849701f; - if (!(_2598 <= -5.2601776123046875f)) { - if ((bool)(_2598 > -5.2601776123046875f) && (bool)(_2598 < -0.7447274923324585f)) { - float _2606 = (_2597 * 0.19999998807907104f) + 3.494786262512207f; - int _2607 = int(_2606); - float _2609 = _2606 - float(_2607); - float _2611 = _global_0[_2607]; - float _2614 = _global_0[(_2607 + 1)]; - float _2619 = _2611 * 0.5f; - _2651 = dot(float3((_2609 * _2609), _2609, 1.0f), float3(mad((_global_0[(_2607 + 2)]), 0.5f, mad(_2614, -1.0f, _2619)), (_2614 - _2611), mad(_2614, 0.5f, _2619))); - } else { - if ((bool)(_2598 >= -0.7447274923324585f) && (bool)(_2598 < 4.673812389373779f)) { - float _2631 = (_2597 * 0.1666666567325592f) + 0.4123218357563019f; - int _2632 = int(_2631); - float _2634 = _2631 - float(_2632); - float _2636 = _global_1[_2632]; - float _2639 = _global_1[(_2632 + 1)]; - float _2644 = _2636 * 0.5f; - _2651 = dot(float3((_2634 * _2634), _2634, 1.0f), float3(mad((_global_1[(_2632 + 2)]), 0.5f, mad(_2639, -1.0f, _2644)), (_2639 - _2636), mad(_2639, 0.5f, _2644))); - } else { - _2651 = 4.0f; - } - } - } else { - _2651 = -4.0f; - } - float _2653 = exp2(_2651 * 3.321928024291992f); - float _2656 = log2(select((_2593 <= 0.0f), 6.103515625e-05f, _2593)); - float _2657 = _2656 * 0.3010300099849701f; - if (!(_2657 <= -5.2601776123046875f)) { - if ((bool)(_2657 > -5.2601776123046875f) && (bool)(_2657 < -0.7447274923324585f)) { - float _2665 = (_2656 * 0.19999998807907104f) + 3.494786262512207f; - int _2666 = int(_2665); - float _2668 = _2665 - float(_2666); - float _2670 = _global_0[_2666]; - float _2673 = _global_0[(_2666 + 1)]; - float _2678 = _2670 * 0.5f; - _2710 = dot(float3((_2668 * _2668), _2668, 1.0f), float3(mad((_global_0[(_2666 + 2)]), 0.5f, mad(_2673, -1.0f, _2678)), (_2673 - _2670), mad(_2673, 0.5f, _2678))); - } else { - if ((bool)(_2657 >= -0.7447274923324585f) && (bool)(_2657 < 4.673812389373779f)) { - float _2690 = (_2656 * 0.1666666567325592f) + 0.4123218357563019f; - int _2691 = int(_2690); - float _2693 = _2690 - float(_2691); - float _2695 = _global_1[_2691]; - float _2698 = _global_1[(_2691 + 1)]; - float _2703 = _2695 * 0.5f; - _2710 = dot(float3((_2693 * _2693), _2693, 1.0f), float3(mad((_global_1[(_2691 + 2)]), 0.5f, mad(_2698, -1.0f, _2703)), (_2698 - _2695), mad(_2698, 0.5f, _2703))); - } else { - _2710 = 4.0f; - } - } - } else { - _2710 = -4.0f; - } - float _2712 = exp2(_2710 * 3.321928024291992f); - float _2715 = log2(select((_2594 <= 0.0f), 6.103515625e-05f, _2594)); - float _2716 = _2715 * 0.3010300099849701f; - if (!(_2716 <= -5.2601776123046875f)) { - if ((bool)(_2716 > -5.2601776123046875f) && (bool)(_2716 < -0.7447274923324585f)) { - float _2724 = (_2715 * 0.19999998807907104f) + 3.494786262512207f; - int _2725 = int(_2724); - float _2727 = _2724 - float(_2725); - float _2729 = _global_0[_2725]; - float _2732 = _global_0[(_2725 + 1)]; - float _2737 = _2729 * 0.5f; - _2769 = dot(float3((_2727 * _2727), _2727, 1.0f), float3(mad((_global_0[(_2725 + 2)]), 0.5f, mad(_2732, -1.0f, _2737)), (_2732 - _2729), mad(_2732, 0.5f, _2737))); - } else { - if ((bool)(_2716 >= -0.7447274923324585f) && (bool)(_2716 < 4.673812389373779f)) { - float _2749 = (_2715 * 0.1666666567325592f) + 0.4123218357563019f; - int _2750 = int(_2749); - float _2752 = _2749 - float(_2750); - float _2754 = _global_1[_2750]; - float _2757 = _global_1[(_2750 + 1)]; - float _2762 = _2754 * 0.5f; - _2769 = dot(float3((_2752 * _2752), _2752, 1.0f), float3(mad((_global_1[(_2750 + 2)]), 0.5f, mad(_2757, -1.0f, _2762)), (_2757 - _2754), mad(_2757, 0.5f, _2762))); - } else { - _2769 = 4.0f; - } - } - } else { - _2769 = -4.0f; - } - float _2771 = exp2(_2769 * 3.321928024291992f); - float _2774 = mad(0.16386906802654266f, _2771, mad(0.14067870378494263f, _2712, (_2653 * 0.6954522132873535f))); - float _2777 = mad(0.0955343171954155f, _2771, mad(0.8596711158752441f, _2712, (_2653 * 0.044794563204050064f))); - float _2780 = mad(1.0015007257461548f, _2771, mad(0.004025210160762072f, _2712, (_2653 * -0.005525882821530104f))); - float _2783 = mad(-0.21492856740951538f, _2780, mad(-0.2365107536315918f, _2777, (_2774 * 1.4514392614364624f))); - float _2786 = mad(-0.09967592358589172f, _2780, mad(1.17622971534729f, _2777, (_2774 * -0.07655377686023712f))); - float _2789 = mad(0.9977163076400757f, _2780, mad(-0.006032449658960104f, _2777, (_2774 * 0.008316148072481155f))); - float _2792 = log2(select((_2783 <= 0.0f), 9.999999747378752e-05f, _2783)); - float _2793 = _2792 * 0.3010300099849701f; - if (!(_2793 <= -3.848327875137329f)) { - if ((bool)(_2793 > -3.848327875137329f) && (bool)(_2793 < 0.6812411546707153f)) { - float _2801 = (_2792 + 12.783867835998535f) * 0.46521204710006714f; - int _2802 = int(_2801); - float _2804 = _2801 - float(_2802); - float _2806 = _global_4[_2802]; - float _2809 = _global_4[(_2802 + 1)]; - float _2814 = _2806 * 0.5f; - _2849 = dot(float3((_2804 * _2804), _2804, 1.0f), float3(mad((_global_4[(_2802 + 2)]), 0.5f, mad(_2809, -1.0f, _2814)), (_2809 - _2806), mad(_2809, 0.5f, _2814))); - } else { - if ((bool)(_2793 >= 0.6812411546707153f) && (bool)(_2793 < 3.7613162994384766f)) { - float _2826 = (_2792 + -2.2630341053009033f) * 0.6841424107551575f; - int _2827 = int(_2826); - float _2829 = _2826 - float(_2827); - float _2831 = _global_5[_2827]; - float _2834 = _global_5[(_2827 + 1)]; - float _2839 = _2831 * 0.5f; - _2849 = dot(float3((_2829 * _2829), _2829, 1.0f), float3(mad((_global_5[(_2827 + 2)]), 0.5f, mad(_2834, -1.0f, _2839)), (_2834 - _2831), mad(_2834, 0.5f, _2839))); - } else { - _2849 = ((_2792 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2849 = -2.301030158996582f; - } - float _2851 = exp2(_2849 * 3.321928024291992f); - float _2854 = log2(select((_2786 <= 0.0f), 9.999999747378752e-05f, _2786)); - float _2855 = _2854 * 0.3010300099849701f; - if (!(_2855 <= -3.848327875137329f)) { - if ((bool)(_2855 > -3.848327875137329f) && (bool)(_2855 < 0.6812411546707153f)) { - float _2863 = (_2854 + 12.783867835998535f) * 0.46521204710006714f; - int _2864 = int(_2863); - float _2866 = _2863 - float(_2864); - float _2868 = _global_4[_2864]; - float _2871 = _global_4[(_2864 + 1)]; - float _2876 = _2868 * 0.5f; - _2911 = dot(float3((_2866 * _2866), _2866, 1.0f), float3(mad((_global_4[(_2864 + 2)]), 0.5f, mad(_2871, -1.0f, _2876)), (_2871 - _2868), mad(_2871, 0.5f, _2876))); - } else { - if ((bool)(_2855 >= 0.6812411546707153f) && (bool)(_2855 < 3.7613162994384766f)) { - float _2888 = (_2854 + -2.2630341053009033f) * 0.6841424107551575f; - int _2889 = int(_2888); - float _2891 = _2888 - float(_2889); - float _2893 = _global_5[_2889]; - float _2896 = _global_5[(_2889 + 1)]; - float _2901 = _2893 * 0.5f; - _2911 = dot(float3((_2891 * _2891), _2891, 1.0f), float3(mad((_global_5[(_2889 + 2)]), 0.5f, mad(_2896, -1.0f, _2901)), (_2896 - _2893), mad(_2896, 0.5f, _2901))); - } else { - _2911 = ((_2854 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2911 = -2.301030158996582f; - } - float _2913 = exp2(_2911 * 3.321928024291992f); - float _2916 = log2(select((_2789 <= 0.0f), 9.999999747378752e-05f, _2789)); - float _2917 = _2916 * 0.3010300099849701f; - if (!(_2917 <= -3.848327875137329f)) { - if ((bool)(_2917 > -3.848327875137329f) && (bool)(_2917 < 0.6812411546707153f)) { - float _2925 = (_2916 + 12.783867835998535f) * 0.46521204710006714f; - int _2926 = int(_2925); - float _2928 = _2925 - float(_2926); - float _2930 = _global_4[_2926]; - float _2933 = _global_4[(_2926 + 1)]; - float _2938 = _2930 * 0.5f; - _2973 = dot(float3((_2928 * _2928), _2928, 1.0f), float3(mad((_global_4[(_2926 + 2)]), 0.5f, mad(_2933, -1.0f, _2938)), (_2933 - _2930), mad(_2933, 0.5f, _2938))); - } else { - if ((bool)(_2917 >= 0.6812411546707153f) && (bool)(_2917 < 3.7613162994384766f)) { - float _2950 = (_2916 + -2.2630341053009033f) * 0.6841424107551575f; - int _2951 = int(_2950); - float _2953 = _2950 - float(_2951); - float _2955 = _global_5[_2951]; - float _2958 = _global_5[(_2951 + 1)]; - float _2963 = _2955 * 0.5f; - _2973 = dot(float3((_2953 * _2953), _2953, 1.0f), float3(mad((_global_5[(_2951 + 2)]), 0.5f, mad(_2958, -1.0f, _2963)), (_2958 - _2955), mad(_2958, 0.5f, _2963))); - } else { - _2973 = ((_2916 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2973 = -2.301030158996582f; - } - float _2975 = exp2(_2973 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _2987 = mad(_34, _2975, mad(_33, _2913, (_2851 * _32))); - _2988 = mad(_37, _2975, mad(_36, _2913, (_2851 * _35))); - _2989 = mad(_40, _2975, mad(_39, _2913, (_2851 * _38))); - } else { - _2987 = _2851; - _2988 = _2913; - _2989 = _2975; - } - float _2999 = exp2(log2(_2987 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3000 = exp2(log2(_2988 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3001 = exp2(log2(_2989 * 9.999999747378752e-05f) * 0.1593017578125f); - _3145 = exp2(log2((1.0f / ((_2999 * 18.6875f) + 1.0f)) * ((_2999 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3146 = exp2(log2((1.0f / ((_3000 * 18.6875f) + 1.0f)) * ((_3000 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_3001 * 18.6875f) + 1.0f)) * ((_3001 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _3034 = mad(0.04736635088920593f, _1677, mad(0.3395121395587921f, _1676, (_1675 * 0.613191545009613f))); - float _3037 = mad(0.01345000695437193f, _1677, mad(0.9163357615470886f, _1676, (_1675 * 0.07020691782236099f))); - float _3040 = mad(0.8696067929267883f, _1677, mad(0.1095672994852066f, _1676, (_1675 * 0.020618872717022896f))); - float _3059 = exp2(log2(mad(_34, _3040, mad(_33, _3037, (_3034 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3060 = exp2(log2(mad(_37, _3040, mad(_36, _3037, (_3034 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3061 = exp2(log2(mad(_40, _3040, mad(_39, _3037, (_3034 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3145 = exp2(log2((1.0f / ((_3059 * 18.6875f) + 1.0f)) * ((_3059 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3146 = exp2(log2((1.0f / ((_3060 * 18.6875f) + 1.0f)) * ((_3060 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_3061 * 18.6875f) + 1.0f)) * ((_3061 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3096 = mad(0.04736635088920593f, _1665, mad(0.3395121395587921f, _1664, (_1663 * 0.613191545009613f))); - float _3099 = mad(0.01345000695437193f, _1665, mad(0.9163357615470886f, _1664, (_1663 * 0.07020691782236099f))); - float _3102 = mad(0.8696067929267883f, _1665, mad(0.1095672994852066f, _1664, (_1663 * 0.020618872717022896f))); - _3145 = mad(_34, _3102, mad(_33, _3099, (_3096 * _32))); - _3146 = mad(_37, _3102, mad(_36, _3099, (_3096 * _35))); - _3147 = mad(_40, _3102, mad(_39, _3099, (_3096 * _38))); - } else { - float _3115 = mad(0.04736635088920593f, _1691, mad(0.3395121395587921f, _1690, (_1689 * 0.613191545009613f))); - float _3118 = mad(0.01345000695437193f, _1691, mad(0.9163357615470886f, _1690, (_1689 * 0.07020691782236099f))); - float _3121 = mad(0.8696067929267883f, _1691, mad(0.1095672994852066f, _1690, (_1689 * 0.020618872717022896f))); - float _3134 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3145 = exp2(_3134 * log2(mad(_34, _3121, mad(_33, _3118, (_3115 * _32))))); - _3146 = exp2(_3134 * log2(mad(_37, _3121, mad(_36, _3118, (_3115 * _35))))); - _3147 = exp2(_3134 * log2(mad(_40, _3121, mad(_39, _3118, (_3115 * _38))))); - } - } else { - _3145 = _1675; - _3146 = _1676; - _3147 = _1677; - } - } - } - } - } - } - SV_Target.x = (_3145 * 0.9523810148239136f); - SV_Target.y = (_3146 * 0.9523810148239136f); - SV_Target.z = (_3147 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1501C651.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1501C651.ps_6_0.hlsl deleted file mode 100644 index 1aeeea6d1..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1501C651.ps_6_0.hlsl +++ /dev/null @@ -1,1644 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - float cb0_074x : packoffset(c074.x); - float cb0_074y : packoffset(c074.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _337; - float _338; - float _339; - float _505; - float _506; - float _528; - float _529; - float _530; - float _669; - float _670; - float _691; - float _692; - float _693; - float _833; - float _834; - float _855; - float _856; - float _857; - float _936; - float _937; - float _1082; - float _1083; - float _1084; - float _1089; - float _1090; - float _1091; - float _1209; - float _1210; - float _1231; - float _1232; - float _1233; - float _1328; - float _1361; - float _1375; - float _1439; - float _1572; - float _1573; - float _1574; - float _1715; - float _1716; - float _1717; - float _1731; - float _1742; - float _1753; - float _1904; - float _1915; - float _2037; - float _2070; - float _2084; - float _2123; - float _2216; - float _2275; - float _2334; - float _2417; - float _2482; - float _2547; - float _2564; - float _2565; - float _2566; - float _2670; - float _2703; - float _2717; - float _2756; - float _2849; - float _2908; - float _2967; - float _3047; - float _3109; - float _3171; - float _3185; - float _3186; - float _3187; - float _3343; - float _3344; - float _3345; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _21 = ((uint)(cb0_074w) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _156 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _158 = _130 - (_156 * _140); - float _160 = (_156 * _130) + _140; - float _165 = (4.0f - (_160 * 8.0f)) + (_158 * 2.0f); - float _171 = (((_158 * 3.0f) / _165) - _146) + select(_149, _146, _116); - float _172 = (((_160 * 2.0f) / _165) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _173 = max(_172, 1.000000013351432e-10f); - float _174 = _171 / _173; - float _177 = ((1.0f - _171) - _172) / _173; - float _187 = 0.9413792490959167f / mad(-0.16140000522136688f, _177, ((_174 * 0.8950999975204468f) + 0.266400009393692f)); - float _188 = 1.0404363870620728f / mad(0.03669999912381172f, _177, (1.7135000228881836f - (_174 * 0.7501999735832214f))); - float _189 = 1.089766502380371f / mad(1.0296000242233276f, _177, ((_174 * 0.03889999911189079f) + -0.06849999725818634f)); - float _190 = mad(_188, -0.7501999735832214f, 0.0f); - float _191 = mad(_188, 1.7135000228881836f, 0.0f); - float _192 = mad(_188, 0.03669999912381172f, -0.0f); - float _193 = mad(_189, 0.03889999911189079f, 0.0f); - float _194 = mad(_189, -0.06849999725818634f, 0.0f); - float _195 = mad(_189, 1.0296000242233276f, 0.0f); - float _198 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_187 * 0.883457362651825f))); - float _201 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_187 * 0.26293492317199707f))); - float _204 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_187 * -0.15930065512657166f))); - float _207 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_187 * 0.38695648312568665f))); - float _210 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_187 * 0.11516613513231277f))); - float _213 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_187 * -0.0697740763425827f))); - float _216 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_187 * -0.007634039502590895f))); - float _219 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_187 * -0.0022720457054674625f))); - float _222 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_187 * 0.0013765322510153055f))); - float _225 = mad(_204, 0.01933390088379383f, mad(_201, 0.2126729041337967f, (_198 * 0.4124563932418823f))); - float _228 = mad(_204, 0.11919199675321579f, mad(_201, 0.7151522040367126f, (_198 * 0.3575761020183563f))); - float _231 = mad(_204, 0.9503040909767151f, mad(_201, 0.07217500358819962f, (_198 * 0.18043750524520874f))); - float _234 = mad(_213, 0.01933390088379383f, mad(_210, 0.2126729041337967f, (_207 * 0.4124563932418823f))); - float _237 = mad(_213, 0.11919199675321579f, mad(_210, 0.7151522040367126f, (_207 * 0.3575761020183563f))); - float _240 = mad(_213, 0.9503040909767151f, mad(_210, 0.07217500358819962f, (_207 * 0.18043750524520874f))); - float _243 = mad(_222, 0.01933390088379383f, mad(_219, 0.2126729041337967f, (_216 * 0.4124563932418823f))); - float _246 = mad(_222, 0.11919199675321579f, mad(_219, 0.7151522040367126f, (_216 * 0.3575761020183563f))); - float _249 = mad(_222, 0.9503040909767151f, mad(_219, 0.07217500358819962f, (_216 * 0.18043750524520874f))); - float _279 = mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _243, mad(-1.5373831987380981f, _234, (_225 * 3.2409698963165283f))) * _97))); - float _282 = mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _243, mad(1.8759675025939941f, _234, (_225 * -0.9692436456680298f))) * _97))); - float _285 = mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _243, mad(-0.20397695899009705f, _234, (_225 * 0.05563008040189743f))) * _97))); - float _288 = mad(0.04736635088920593f, _285, mad(0.3395121395587921f, _282, (_279 * 0.613191545009613f))); - float _291 = mad(0.01345000695437193f, _285, mad(0.9163357615470886f, _282, (_279 * 0.07020691782236099f))); - float _294 = mad(0.8696067929267883f, _285, mad(0.1095672994852066f, _282, (_279 * 0.020618872717022896f))); - bool _297 = ((uint)(tm_flags.x) == 0); - if (_297) { - float _299 = dot(float3(_288, _291, _294), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _303 = (_288 / _299) + -1.0f; - float _304 = (_291 / _299) + -1.0f; - float _305 = (_294 / _299) + -1.0f; - float _317 = (1.0f - exp2(((_299 * _299) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_303, _304, _305), float3(_303, _304, _305)) * -4.0f)); - _337 = (((mad(-0.06368283927440643f, _294, mad(-0.32929131388664246f, _291, (_288 * 1.370412826538086f))) - _288) * _317) + _288); - _338 = (((mad(-0.010861567221581936f, _294, mad(1.0970908403396606f, _291, (_288 * -0.08343426138162613f))) - _291) * _317) + _291); - _339 = (((mad(1.203694462776184f, _294, mad(-0.09862564504146576f, _291, (_288 * -0.02579325996339321f))) - _294) * _317) + _294); - } else { - _337 = _288; - _338 = _291; - _339 = _294; - } - float _340 = dot(float3(_337, _338, _339), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _354 = cb0_052w + cb0_057w; - float _368 = cb0_051w * cb0_056w; - float _382 = cb0_050w * cb0_055w; - float _396 = cb0_049w * cb0_054w; - float _407 = cb0_048w * cb0_053w; - float _411 = cb0_048x * (_337 - _340); - float _414 = cb0_048y * (_338 - _340); - float _417 = cb0_048z * (_339 - _340); - float _473 = cb0_073w + 1.0f; - float _477 = saturate(_473 * (((cb0_052x + cb0_057x) + _354) + (((cb0_051x * cb0_056x) * _368) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _396) * log2(max(0.0f, (((_411 * cb0_053x) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _382)))))); - float _478 = saturate(_473 * (((cb0_052y + cb0_057y) + _354) + (((cb0_051y * cb0_056y) * _368) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _396) * log2(max(0.0f, (((_414 * cb0_053y) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _382)))))); - float _479 = saturate(_473 * (((cb0_052z + cb0_057z) + _354) + (((cb0_051z * cb0_056z) * _368) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _396) * log2(max(0.0f, (((_417 * cb0_053z) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _382)))))); - float _483 = max(_477, max(_478, _479)); - float _484 = _483 - min(_477, min(_478, _479)); - if (!(_484 == 0.0f)) { - float _487 = _484 / _483; - if (_477 == _483) { - _505 = ((_478 - _479) / _484); - _506 = _487; - } else { - if (_478 == _483) { - _505 = (((_479 - _477) / _484) + 2.0f); - _506 = _487; - } else { - if (_479 == _483) { - _505 = (((_477 - _478) / _484) + 4.0f); - _506 = _487; - } else { - _505 = 0.0f; - _506 = _487; - } - } - } - } else { - _505 = 0.0f; - _506 = 0.0f; - } - float _508 = _505 + cb0_073z; - float _509 = floor(_508); - float _510 = _508 - _509; - float _511 = 1.0f - _506; - float _513 = 1.0f - (_510 * _506); - float _516 = 1.0f - ((1.0f - _510) * _506); - if (!(_509 == 0.0f)) { - if (!(_509 == 1.0f)) { - if (!(_509 == 2.0f)) { - if (!(_509 == 3.0f)) { - if (!(_509 == 4.0f)) { - _528 = 1.0f; - _529 = _511; - _530 = _513; - } else { - _528 = _516; - _529 = _511; - _530 = 1.0f; - } - } else { - _528 = _511; - _529 = _513; - _530 = 1.0f; - } - } else { - _528 = _511; - _529 = 1.0f; - _530 = _516; - } - } else { - _528 = _513; - _529 = 1.0f; - _530 = _511; - } - } else { - _528 = 1.0f; - _529 = _516; - _530 = _511; - } - float _533 = saturate(_340 / cb0_073x); - float _537 = (_533 * _533) * (3.0f - (_533 * 2.0f)); - float _547 = cb0_067w + cb0_052w; - float _556 = cb0_066w * cb0_051w; - float _565 = cb0_065w * cb0_050w; - float _574 = cb0_064w * cb0_049w; - float _580 = cb0_063w * cb0_048w; - float _641 = saturate((((cb0_067x + cb0_052x) + _547) + (((cb0_066x * cb0_051x) * _556) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _574) * log2(max(0.0f, (((_411 * cb0_063x) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _565))))) * _473); - float _642 = saturate((((cb0_067y + cb0_052y) + _547) + (((cb0_066y * cb0_051y) * _556) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _574) * log2(max(0.0f, (((_414 * cb0_063y) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _565))))) * _473); - float _643 = saturate((((cb0_067z + cb0_052z) + _547) + (((cb0_066z * cb0_051z) * _556) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _574) * log2(max(0.0f, (((_417 * cb0_063z) * _580) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _565))))) * _473); - float _647 = max(_641, max(_642, _643)); - float _648 = _647 - min(_641, min(_642, _643)); - if (!(_648 == 0.0f)) { - float _651 = _648 / _647; - if (_641 == _647) { - _669 = ((_642 - _643) / _648); - _670 = _651; - } else { - if (_642 == _647) { - _669 = (((_643 - _641) / _648) + 2.0f); - _670 = _651; - } else { - if (_643 == _647) { - _669 = (((_641 - _642) / _648) + 4.0f); - _670 = _651; - } else { - _669 = 0.0f; - _670 = _651; - } - } - } - } else { - _669 = 0.0f; - _670 = 0.0f; - } - float _671 = _669 + cb0_073z; - float _672 = floor(_671); - float _673 = _671 - _672; - float _674 = 1.0f - _670; - float _676 = 1.0f - (_673 * _670); - float _679 = 1.0f - ((1.0f - _673) * _670); - if (!(_672 == 0.0f)) { - if (!(_672 == 1.0f)) { - if (!(_672 == 2.0f)) { - if (!(_672 == 3.0f)) { - if (!(_672 == 4.0f)) { - _691 = 1.0f; - _692 = _674; - _693 = _676; - } else { - _691 = _679; - _692 = _674; - _693 = 1.0f; - } - } else { - _691 = _674; - _692 = _676; - _693 = 1.0f; - } - } else { - _691 = _674; - _692 = 1.0f; - _693 = _679; - } - } else { - _691 = _676; - _692 = 1.0f; - _693 = _674; - } - } else { - _691 = 1.0f; - _692 = _679; - _693 = _674; - } - float _698 = saturate((_340 - cb0_073y) / (1.0f - cb0_073y)); - float _702 = (_698 * _698) * (3.0f - (_698 * 2.0f)); - float _711 = cb0_062w + cb0_052w; - float _720 = cb0_061w * cb0_051w; - float _729 = cb0_060w * cb0_050w; - float _738 = cb0_059w * cb0_049w; - float _744 = cb0_058w * cb0_048w; - float _805 = saturate((((cb0_062x + cb0_052x) + _711) + (((cb0_061x * cb0_051x) * _720) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _738) * log2(max(0.0f, (((_411 * cb0_058x) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _729))))) * _473); - float _806 = saturate((((cb0_062y + cb0_052y) + _711) + (((cb0_061y * cb0_051y) * _720) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _738) * log2(max(0.0f, (((_414 * cb0_058y) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _729))))) * _473); - float _807 = saturate((((cb0_062z + cb0_052z) + _711) + (((cb0_061z * cb0_051z) * _720) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _738) * log2(max(0.0f, (((_417 * cb0_058z) * _744) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _729))))) * _473); - float _811 = max(_805, max(_806, _807)); - float _812 = _811 - min(_805, min(_806, _807)); - if (!(_812 == 0.0f)) { - float _815 = _812 / _811; - if (_805 == _811) { - _833 = ((_806 - _807) / _812); - _834 = _815; - } else { - if (_806 == _811) { - _833 = (((_807 - _805) / _812) + 2.0f); - _834 = _815; - } else { - if (_807 == _811) { - _833 = (((_805 - _806) / _812) + 4.0f); - _834 = _815; - } else { - _833 = 0.0f; - _834 = _815; - } - } - } - } else { - _833 = 0.0f; - _834 = 0.0f; - } - float _835 = _833 + cb0_073z; - float _836 = floor(_835); - float _837 = _835 - _836; - float _838 = 1.0f - _834; - float _840 = 1.0f - (_837 * _834); - float _843 = 1.0f - ((1.0f - _837) * _834); - if (!(_836 == 0.0f)) { - if (!(_836 == 1.0f)) { - if (!(_836 == 2.0f)) { - if (!(_836 == 3.0f)) { - if (!(_836 == 4.0f)) { - _855 = 1.0f; - _856 = _838; - _857 = _840; - } else { - _855 = _843; - _856 = _838; - _857 = 1.0f; - } - } else { - _855 = _838; - _856 = _840; - _857 = 1.0f; - } - } else { - _855 = _838; - _856 = 1.0f; - _857 = _843; - } - } else { - _855 = _840; - _856 = 1.0f; - _857 = _838; - } - } else { - _855 = 1.0f; - _856 = _843; - _857 = _838; - } - float _859 = (1.0f - _537) * _483; - float _863 = _811 * (_537 - _702); - float _867 = _702 * _647; - float _872 = ((_867 * _691) + (_859 * _528)) + (_855 * _863); - float _874 = ((_867 * _692) + (_859 * _529)) + (_856 * _863); - float _876 = ((_867 * _693) + (_859 * _530)) + (_857 * _863); - if (!(cb0_074x <= 0.0f)) { - float _883 = min(max(cb0_074y, 1800.0f), 6500.0f); - float _884 = saturate(cb0_074x); - do { - if (_883 < 4000.0f) { - float _895 = ((((_883 * 1.2864121856637212e-07f) + 0.00015411825734190643f) * _883) + 0.8601177334785461f) / ((((_883 * 7.081451371959702e-07f) + 0.0008424202096648514f) * _883) + 1.0f); - float _905 = ((((_883 * 4.204816761443908e-08f) + 4.228062607580796e-05f) * _883) + 0.31739872694015503f) / ((1.0f - (_883 * 2.8974181986995973e-05f)) + ((_883 * _883) * 1.6145605741257896e-07f)); - float _910 = ((_895 * 2.0f) + 4.0f) - (_905 * 8.0f); - _936 = ((_895 * 3.0f) / _910); - _937 = ((_905 * 2.0f) / _910); - } else { - float _915 = _883 * 1.0005563497543335f; - float _929 = select((_915 <= 7000.0f), (((((2967800.0f - (4604438528.0f / _883)) / _915) + 99.11000061035156f) / _915) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / _883)) / _915) + 247.47999572753906f) / _915) + 0.23703999817371368f)); - _936 = _929; - _937 = (((_929 * 2.869999885559082f) + -0.2750000059604645f) - ((_929 * _929) * 3.0f)); - } - float _938 = max(_937, 1.000000013351432e-10f); - float _939 = _936 / _938; - float _942 = ((1.0f - _936) - _937) / _938; - float _945 = mad(-0.16140000522136688f, _942, ((_939 * 0.8950999975204468f) + 0.266400009393692f)); - float _952 = mad(0.03669999912381172f, _942, (1.7135000228881836f - (_939 * 0.7501999735832214f))) * 0.9611351490020752f; - float _953 = mad(1.0296000242233276f, _942, ((_939 * 0.03889999911189079f) + -0.06849999725818634f)) * 0.91762775182724f; - float _954 = mad(_952, -0.7501999735832214f, 0.0f); - float _955 = mad(_952, 1.7135000228881836f, 0.0f); - float _956 = mad(_952, 0.03669999912381172f, -0.0f); - float _957 = mad(_953, 0.03889999911189079f, 0.0f); - float _958 = mad(_953, -0.06849999725818634f, 0.0f); - float _959 = mad(_953, 1.0296000242233276f, 0.0f); - float _962 = mad(0.1599626988172531f, _957, mad(-0.1470542997121811f, _954, (_945 * 0.9384711980819702f))); - float _965 = mad(0.1599626988172531f, _958, mad(-0.1470542997121811f, _955, (_945 * 0.27930817008018494f))); - float _968 = mad(0.1599626988172531f, _959, mad(-0.1470542997121811f, _956, (_945 * -0.16922049224376678f))); - float _971 = mad(0.04929120093584061f, _957, mad(0.5183603167533875f, _954, (_945 * 0.4110526740550995f))); - float _974 = mad(0.04929120093584061f, _958, mad(0.5183603167533875f, _955, (_945 * 0.12233765423297882f))); - float _977 = mad(0.04929120093584061f, _959, mad(0.5183603167533875f, _956, (_945 * -0.07411899417638779f))); - float _980 = mad(0.9684867262840271f, _957, mad(0.04004279896616936f, _954, (_945 * -0.008109419606626034f))); - float _983 = mad(0.9684867262840271f, _958, mad(0.04004279896616936f, _955, (_945 * -0.0024135285057127476f))); - float _986 = mad(0.9684867262840271f, _959, mad(0.04004279896616936f, _956, (_945 * 0.0014622504822909832f))); - float _989 = mad(_968, 0.01933390088379383f, mad(_965, 0.2126729041337967f, (_962 * 0.4124563932418823f))); - float _992 = mad(_968, 0.11919199675321579f, mad(_965, 0.7151522040367126f, (_962 * 0.3575761020183563f))); - float _995 = mad(_968, 0.9503040909767151f, mad(_965, 0.07217500358819962f, (_962 * 0.18043750524520874f))); - float _998 = mad(_977, 0.01933390088379383f, mad(_974, 0.2126729041337967f, (_971 * 0.4124563932418823f))); - float _1001 = mad(_977, 0.11919199675321579f, mad(_974, 0.7151522040367126f, (_971 * 0.3575761020183563f))); - float _1004 = mad(_977, 0.9503040909767151f, mad(_974, 0.07217500358819962f, (_971 * 0.18043750524520874f))); - float _1007 = mad(_986, 0.01933390088379383f, mad(_983, 0.2126729041337967f, (_980 * 0.4124563932418823f))); - float _1010 = mad(_986, 0.11919199675321579f, mad(_983, 0.7151522040367126f, (_980 * 0.3575761020183563f))); - float _1013 = mad(_986, 0.9503040909767151f, mad(_983, 0.07217500358819962f, (_980 * 0.18043750524520874f))); - float _1049 = mad(mad(1.056971549987793f, _1013, mad(-0.20397695899009705f, _1004, (_995 * 0.05563008040189743f))), _876, mad(mad(1.056971549987793f, _1010, mad(-0.20397695899009705f, _1001, (_992 * 0.05563008040189743f))), _874, (mad(1.056971549987793f, _1007, mad(-0.20397695899009705f, _998, (_989 * 0.05563008040189743f))) * _872))); - float _1052 = ((_884 * _884) * -0.30000001192092896f) * _1049; - float _1067 = ((min(1.0f, (mad(mad(-0.4986107647418976f, _1013, mad(-1.5373831987380981f, _1004, (_995 * 3.2409698963165283f))), _876, mad(mad(-0.4986107647418976f, _1010, mad(-1.5373831987380981f, _1001, (_992 * 3.2409698963165283f))), _874, (mad(-0.4986107647418976f, _1007, mad(-1.5373831987380981f, _998, (_989 * 3.2409698963165283f))) * _872))) - (_1052 * 0.18000000715255737f))) - _872) * _884) + _872; - float _1068 = ((min(1.0f, (mad(mad(0.04155505821108818f, _1013, mad(1.8759675025939941f, _1004, (_995 * -0.9692436456680298f))), _876, mad(mad(0.04155505821108818f, _1010, mad(1.8759675025939941f, _1001, (_992 * -0.9692436456680298f))), _874, (mad(0.04155505821108818f, _1007, mad(1.8759675025939941f, _998, (_989 * -0.9692436456680298f))) * _872))) - (_1052 * 0.12000000476837158f))) - _874) * _884) + _874; - float _1069 = ((max(0.0f, (_1052 + _1049)) - _876) * _884) + _876; - float _1070 = dot(float3(_1067, _1068, _1069), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - do { - if (_1070 > 0.0010000000474974513f) { - float _1077 = (((dot(float3(_872, _874, _876), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)) / _1070) + -1.0f) * 0.800000011920929f) + 1.0f; - _1082 = (_1077 * _1067); - _1083 = (_1077 * _1068); - _1084 = (_1077 * _1069); - } else { - _1082 = _1067; - _1083 = _1068; - _1084 = _1069; - } - _1089 = max(0.0f, _1082); - _1090 = max(0.0f, _1083); - _1091 = max(0.0f, _1084); - } while (false); - } while (false); - } else { - _1089 = _872; - _1090 = _874; - _1091 = _876; - } - float _1117 = dot(float3(_1089, _1090, _1091), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1181 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_1089 - _1117)) + _1117)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _473); - float _1182 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_1090 - _1117)) + _1117)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _473); - float _1183 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_1091 - _1117)) + _1117)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _473); - float _1187 = max(_1181, max(_1182, _1183)); - float _1188 = _1187 - min(_1181, min(_1182, _1183)); - if (!(_1188 == 0.0f)) { - float _1191 = _1188 / _1187; - if (_1181 == _1187) { - _1209 = ((_1182 - _1183) / _1188); - _1210 = _1191; - } else { - if (_1182 == _1187) { - _1209 = (((_1183 - _1181) / _1188) + 2.0f); - _1210 = _1191; - } else { - if (_1183 == _1187) { - _1209 = (((_1181 - _1182) / _1188) + 4.0f); - _1210 = _1191; - } else { - _1209 = 0.0f; - _1210 = _1191; - } - } - } - } else { - _1209 = 0.0f; - _1210 = 0.0f; - } - float _1211 = _1209 + cb0_073z; - float _1212 = floor(_1211); - float _1213 = _1211 - _1212; - float _1214 = 1.0f - _1210; - float _1216 = 1.0f - (_1213 * _1210); - float _1219 = 1.0f - ((1.0f - _1213) * _1210); - if (!(_1212 == 0.0f)) { - if (!(_1212 == 1.0f)) { - if (!(_1212 == 2.0f)) { - if (!(_1212 == 3.0f)) { - if (!(_1212 == 4.0f)) { - _1231 = 1.0f; - _1232 = _1214; - _1233 = _1216; - } else { - _1231 = _1219; - _1232 = _1214; - _1233 = 1.0f; - } - } else { - _1231 = _1214; - _1232 = _1216; - _1233 = 1.0f; - } - } else { - _1231 = _1214; - _1232 = 1.0f; - _1233 = _1219; - } - } else { - _1231 = _1216; - _1232 = 1.0f; - _1233 = _1214; - } - } else { - _1231 = 1.0f; - _1232 = _1219; - _1233 = _1214; - } - float _1234 = _1231 * _1187; - float _1235 = _1232 * _1187; - float _1236 = _1233 * _1187; - float _1239 = mad(-0.0832584798336029f, _1236, mad(-0.6217905879020691f, _1235, (_1234 * 1.7050515413284302f))); - float _1242 = mad(-0.010548528283834457f, _1236, mad(1.1408027410507202f, _1235, (_1234 * -0.13025718927383423f))); - float _1245 = mad(1.152971863746643f, _1236, mad(-0.1289687603712082f, _1235, (_1234 * -0.024003278464078903f))); - float _1261 = ((mad(0.061360642313957214f, _1236, mad(-4.540197551250458e-09f, _1235, (_1234 * 0.9386394023895264f))) - _1234) * cb0_075x) + _1234; - float _1262 = ((mad(0.169205904006958f, _1236, mad(0.8307942152023315f, _1235, (_1234 * 6.775371730327606e-08f))) - _1235) * cb0_075x) + _1235; - float _1263 = (mad(-2.3283064365386963e-10f, _1235, (_1234 * -9.313225746154785e-10f)) * cb0_075x) + _1236; - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1273 = mad(0.16386905312538147f, _1263, mad(0.14067868888378143f, _1262, (_1261 * 0.6954522132873535f))); - float _1276 = mad(0.0955343246459961f, _1263, mad(0.8596711158752441f, _1262, (_1261 * 0.044794581830501556f))); - float _1279 = mad(1.0015007257461548f, _1263, mad(0.004025210160762072f, _1262, (_1261 * -0.005525882821530104f))); - float _1283 = max(max(_1273, _1276), _1279); - float _1288 = (max(_1283, 1.000000013351432e-10f) - max(min(min(_1273, _1276), _1279), 1.000000013351432e-10f)) / max(_1283, 0.009999999776482582f); - float _1301 = ((_1276 + _1273) + _1279) + (sqrt((((_1279 - _1276) * _1279) + ((_1276 - _1273) * _1276)) + ((_1273 - _1279) * _1273)) * 1.75f); - float _1302 = _1301 * 0.3333333432674408f; - float _1303 = _1288 + -0.4000000059604645f; - float _1304 = _1303 * 5.0f; - float _1308 = max((1.0f - abs(_1303 * 2.5f)), 0.0f); - float _1319 = ((float(((int)(uint)((bool)(_1304 > 0.0f))) - ((int)(uint)((bool)(_1304 < 0.0f)))) * (1.0f - (_1308 * _1308))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1302 <= 0.0533333346247673f)) { - if (!(_1302 >= 0.1599999964237213f)) { - _1328 = (((0.23999999463558197f / _1301) + -0.5f) * _1319); - } else { - _1328 = 0.0f; - } - } else { - _1328 = _1319; - } - float _1329 = _1328 + 1.0f; - float _1330 = _1329 * _1273; - float _1331 = _1329 * _1276; - float _1332 = _1329 * _1279; - do { - if (!((bool)(_1330 == _1331) && (bool)(_1331 == _1332))) { - float _1339 = ((_1330 * 2.0f) - _1331) - _1332; - float _1342 = ((_1276 - _1279) * 1.7320507764816284f) * _1329; - float _1344 = atan(_1342 / _1339); - bool _1347 = (_1339 < 0.0f); - bool _1348 = (_1339 == 0.0f); - bool _1349 = (_1342 >= 0.0f); - bool _1350 = (_1342 < 0.0f); - _1361 = select((_1349 && _1348), 90.0f, select((_1350 && _1348), -90.0f, (select((_1350 && _1347), (_1344 + -3.1415927410125732f), select((_1349 && _1347), (_1344 + 3.1415927410125732f), _1344)) * 57.2957763671875f))); - } else { - _1361 = 0.0f; - } - float _1366 = min(max(select((_1361 < 0.0f), (_1361 + 360.0f), _1361), 0.0f), 360.0f); - do { - if (_1366 < -180.0f) { - _1375 = (_1366 + 360.0f); - } else { - if (_1366 > 180.0f) { - _1375 = (_1366 + -360.0f); - } else { - _1375 = _1366; - } - } - float _1379 = saturate(1.0f - abs(_1375 * 0.014814814552664757f)); - float _1383 = (_1379 * _1379) * (3.0f - (_1379 * 2.0f)); - float _1389 = ((_1383 * _1383) * ((_1288 * 0.18000000715255737f) * (0.029999999329447746f - _1330))) + _1330; - float _1399 = max(0.0f, mad(-0.21492856740951538f, _1332, mad(-0.2365107536315918f, _1331, (_1389 * 1.4514392614364624f)))); - float _1400 = max(0.0f, mad(-0.09967592358589172f, _1332, mad(1.17622971534729f, _1331, (_1389 * -0.07655377686023712f)))); - float _1401 = max(0.0f, mad(0.9977163076400757f, _1332, mad(-0.006032449658960104f, _1331, (_1389 * 0.008316148072481155f)))); - float _1402 = dot(float3(_1399, _1400, _1401), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1416 = (cb0_036w + 1.0f) - cb0_036y; - float _1419 = cb0_037x + 1.0f; - float _1421 = _1419 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1439 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1430 = (cb0_036w + 0.18000000715255737f) / _1416; - _1439 = (-0.7447274923324585f - ((log2(_1430 / (2.0f - _1430)) * 0.3465735912322998f) * (_1416 / cb0_036x))); - } - float _1442 = ((1.0f - cb0_036y) / cb0_036x) - _1439; - float _1444 = (cb0_036z / cb0_036x) - _1442; - float _1448 = log2(lerp(_1402, _1399, 0.9599999785423279f)) * 0.3010300099849701f; - float _1449 = log2(lerp(_1402, _1400, 0.9599999785423279f)) * 0.3010300099849701f; - float _1450 = log2(lerp(_1402, _1401, 0.9599999785423279f)) * 0.3010300099849701f; - float _1454 = (_1448 + _1442) * cb0_036x; - float _1455 = (_1449 + _1442) * cb0_036x; - float _1456 = (_1450 + _1442) * cb0_036x; - float _1457 = _1416 * 2.0f; - float _1460 = _1448 - _1439; - float _1461 = _1449 - _1439; - float _1462 = _1450 - _1439; - float _1463 = ((cb0_036x * -2.0f) / _1416) * 1.4426950216293335f; - float _1479 = _1421 * 2.0f; - float _1485 = ((cb0_036x * 2.0f) / _1421) * 1.4426950216293335f; - float _1504 = select((_1448 < _1439), ((_1457 / (exp2(_1463 * _1460) + 1.0f)) - cb0_036w), _1454); - float _1505 = select((_1449 < _1439), ((_1457 / (exp2(_1463 * _1461) + 1.0f)) - cb0_036w), _1455); - float _1506 = select((_1450 < _1439), ((_1457 / (exp2(_1463 * _1462) + 1.0f)) - cb0_036w), _1456); - float _1513 = _1444 - _1439; - float _1517 = saturate(_1460 / _1513); - float _1518 = saturate(_1461 / _1513); - float _1519 = saturate(_1462 / _1513); - bool _1520 = (_1444 < _1439); - float _1524 = select(_1520, (1.0f - _1517), _1517); - float _1525 = select(_1520, (1.0f - _1518), _1518); - float _1526 = select(_1520, (1.0f - _1519), _1519); - float _1545 = (((_1524 * _1524) * (select((_1448 > _1444), (_1419 - (_1479 / (exp2(_1485 * (_1448 - _1444)) + 1.0f))), _1454) - _1504)) * (3.0f - (_1524 * 2.0f))) + _1504; - float _1546 = (((_1525 * _1525) * (select((_1449 > _1444), (_1419 - (_1479 / (exp2(_1485 * (_1449 - _1444)) + 1.0f))), _1455) - _1505)) * (3.0f - (_1525 * 2.0f))) + _1505; - float _1547 = (((_1526 * _1526) * (select((_1450 > _1444), (_1419 - (_1479 / (exp2(_1485 * (_1450 - _1444)) + 1.0f))), _1456) - _1506)) * (3.0f - (_1526 * 2.0f))) + _1506; - float _1548 = dot(float3(_1545, _1546, _1547), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1572 = (((max(0.0f, (lerp(_1548, _1545, 0.9300000071525574f))) - _1261) * cb0_075z) + _1261); - _1573 = (((max(0.0f, (lerp(_1548, _1546, 0.9300000071525574f))) - _1262) * cb0_075z) + _1262); - _1574 = (((max(0.0f, (lerp(_1548, _1547, 0.9300000071525574f))) - _1263) * cb0_075z) + _1263); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1572 = _1261; - _1573 = _1262; - _1574 = _1263; - } - float _1590 = ((mad(-0.06537103652954102f, _1574, mad(1.451815478503704e-06f, _1573, (_1572 * 1.065374732017517f))) - _1572) * cb0_075x) + _1572; - float _1591 = ((mad(-0.20366770029067993f, _1574, mad(1.2036634683609009f, _1573, (_1572 * -2.57161445915699e-07f))) - _1573) * cb0_075x) + _1573; - float _1592 = ((mad(0.9999996423721313f, _1574, mad(2.0954757928848267e-08f, _1573, (_1572 * 1.862645149230957e-08f))) - _1574) * cb0_075x) + _1574; - [branch] - if (!_297) { - float _1635 = 1.0f / (dot(float3(_1239, _1242, _1245), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1645 = max(0.0f, (((_1635 * cb0_035x) + cb0_034x) * dot(float3(_1239, _1242, _1245), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1646 = max(0.0f, (((_1635 * cb0_035y) + cb0_034y) * dot(float3(_1239, _1242, _1245), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1647 = max(0.0f, (((_1635 * cb0_035z) + cb0_034z) * dot(float3(_1239, _1242, _1245), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1653 = max(0.0f, (cb0_031x - _1645)); - float _1654 = max(0.0f, (cb0_031x - _1646)); - float _1655 = max(0.0f, (cb0_031x - _1647)); - float _1657 = max(_1645, cb0_031z); - float _1658 = max(_1646, cb0_031z); - float _1659 = max(_1647, cb0_031z); - float _1704 = cb0_029w + -0.0020000000949949026f; - _1715 = ((((min(max(_1645, cb0_031x), cb0_031z) * cb0_030w) + _1704) + (((cb0_032x * _1657) + cb0_032y) * (1.0f / (_1657 + cb0_031w)))) + ((_1653 * cb0_028w) * (1.0f / (cb0_031y + _1653)))); - _1716 = ((((min(max(_1646, cb0_031x), cb0_031z) * cb0_030w) + _1704) + (((cb0_032x * _1658) + cb0_032y) * (1.0f / (_1658 + cb0_031w)))) + ((_1654 * cb0_028w) * (1.0f / (_1654 + cb0_031y)))); - _1717 = ((((min(max(_1647, cb0_031x), cb0_031z) * cb0_030w) + _1704) + ((1.0f / (_1659 + cb0_031w)) * ((cb0_032x * _1659) + cb0_032y))) + ((_1655 * cb0_028w) * (1.0f / (_1655 + cb0_031y)))); - } else { - _1715 = max(0.0f, mad(-0.0832584798336029f, _1592, mad(-0.6217905879020691f, _1591, (_1590 * 1.7050515413284302f)))); - _1716 = max(0.0f, mad(-0.010548528283834457f, _1592, mad(1.1408027410507202f, _1591, (_1590 * -0.13025718927383423f)))); - _1717 = max(0.0f, mad(1.152971863746643f, _1592, mad(-0.1289687603712082f, _1591, (_1590 * -0.024003278464078903f)))); - } - float _1718 = saturate(_1715); - float _1719 = saturate(_1716); - float _1720 = saturate(_1717); - if (_1718 < 0.0031306699384003878f) { - _1731 = (_1718 * 12.920000076293945f); - } else { - _1731 = (((pow(_1718, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1719 < 0.0031306699384003878f) { - _1742 = (_1719 * 12.920000076293945f); - } else { - _1742 = (((pow(_1719, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1720 < 0.0031306699384003878f) { - _1753 = (_1720 * 12.920000076293945f); - } else { - _1753 = (((pow(_1720, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1757 = (_1742 * 0.9375f) + 0.03125f; - float _1760 = cb0_040x * _1731; - float _1761 = cb0_040x * _1742; - float _1762 = cb0_040x * _1753; - float _1765 = _1753 * 15.0f; - float _1766 = floor(_1765); - float _1767 = _1765 - _1766; - float _1769 = (((_1731 * 0.9375f) + 0.03125f) + _1766) * 0.0625f; - float4 _1770 = t0.Sample(s0, float2(_1769, _1757)); - float4 _1775 = t0.Sample(s0, float2((_1769 + 0.0625f), _1757)); - float _1793 = cb0_038w * cb0_039z; - float _1800 = max(6.103519990574569e-05f, ((((_1770.x - _1760) + ((_1775.x - _1770.x) * _1767)) * _1793) + _1760)); - float _1801 = max(6.103519990574569e-05f, ((((_1770.y - _1761) + ((_1775.y - _1770.y) * _1767)) * _1793) + _1761)); - float _1802 = max(6.103519990574569e-05f, ((((_1770.z - _1762) + ((_1775.z - _1770.z) * _1767)) * _1793) + _1762)); - float _1824 = select((_1800 > 0.040449999272823334f), exp2(log2((_1800 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1800 * 0.07739938050508499f)); - float _1825 = select((_1801 > 0.040449999272823334f), exp2(log2((_1801 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1801 * 0.07739938050508499f)); - float _1826 = select((_1802 > 0.040449999272823334f), exp2(log2((_1802 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1802 * 0.07739938050508499f)); - float _1852 = ((((cb0_026x * _1824) + cb0_026y) * _1824) + cb0_026z) * cb0_044y; - float _1853 = ((((cb0_026x * _1825) + cb0_026y) * _1825) + cb0_026z) * cb0_044z; - float _1854 = ((((cb0_026x * _1826) + cb0_026y) * _1826) + cb0_026z) * cb0_044w; - float _1861 = ((cb0_045x - _1852) * cb0_045w) + _1852; - float _1862 = ((cb0_045y - _1853) * cb0_045w) + _1853; - float _1863 = ((cb0_045z - _1854) * cb0_045w) + _1854; - float _1864 = cb0_044y * _1239; - float _1865 = cb0_044z * _1242; - float _1866 = cb0_044w * _1245; - float _1873 = ((cb0_045x - _1864) * cb0_045w) + _1864; - float _1874 = ((cb0_045y - _1865) * cb0_045w) + _1865; - float _1875 = ((cb0_045z - _1866) * cb0_045w) + _1866; - float _1887 = exp2(log2(max(0.0f, _1861)) * cb0_027y); - float _1888 = exp2(log2(max(0.0f, _1862)) * cb0_027y); - float _1889 = exp2(log2(max(0.0f, _1863)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1887, _1888, _1889)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - do { - if (_1887 < 0.0031306699384003878f) { - _1904 = (_1887 * 12.920000076293945f); - } else { - _1904 = (((pow(_1887, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1888 < 0.0031306699384003878f) { - _1915 = (_1888 * 12.920000076293945f); - } else { - _1915 = (((pow(_1888, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1889 < 0.0031306699384003878f) { - _3343 = _1904; - _3344 = _1915; - _3345 = (_1889 * 12.920000076293945f); - } else { - _3343 = _1904; - _3344 = _1915; - _3345 = (((pow(_1889, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 1) { - float _1930 = mad(0.04736635088920593f, _1889, mad(0.3395121395587921f, _1888, (_1887 * 0.613191545009613f))); - float _1933 = mad(0.01345000695437193f, _1889, mad(0.9163357615470886f, _1888, (_1887 * 0.07020691782236099f))); - float _1936 = mad(0.8696067929267883f, _1889, mad(0.1095672994852066f, _1888, (_1887 * 0.020618872717022896f))); - float _1946 = max(6.103519990574569e-05f, mad(_34, _1936, mad(_33, _1933, (_1930 * _32)))); - float _1947 = max(6.103519990574569e-05f, mad(_37, _1936, mad(_36, _1933, (_1930 * _35)))); - float _1948 = max(6.103519990574569e-05f, mad(_40, _1936, mad(_39, _1933, (_1930 * _38)))); - _3343 = min((_1946 * 4.5f), ((exp2(log2(max(_1946, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3344 = min((_1947 * 4.5f), ((exp2(log2(max(_1947, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3345 = min((_1948 * 4.5f), ((exp2(log2(max(_1948, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1975 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1975) { - float _1978 = _1874 * 3.0f; - float _1979 = _1875 * 3.0f; - float _1982 = mad(0.17733481526374817f, _1979, mad(0.38297808170318604f, _1978, (_1873 * 1.31910240650177f))); - float _1985 = mad(0.09676162153482437f, _1979, mad(0.8134231567382812f, _1978, (_1873 * 0.2693769633769989f))); - float _1988 = mad(0.870704174041748f, _1979, mad(0.11154405772686005f, _1978, (_1873 * 0.05263196676969528f))); - float _1992 = max(max(_1982, _1985), _1988); - float _1997 = (max(_1992, 1.000000013351432e-10f) - max(min(min(_1982, _1985), _1988), 1.000000013351432e-10f)) / max(_1992, 0.009999999776482582f); - float _2010 = ((_1985 + _1982) + _1988) + (sqrt((((_1988 - _1985) * _1988) + ((_1985 - _1982) * _1985)) + ((_1982 - _1988) * _1982)) * 1.75f); - float _2011 = _2010 * 0.3333333432674408f; - float _2012 = _1997 + -0.4000000059604645f; - float _2013 = _2012 * 5.0f; - float _2017 = max((1.0f - abs(_2012 * 2.5f)), 0.0f); - float _2028 = ((float(((int)(uint)((bool)(_2013 > 0.0f))) - ((int)(uint)((bool)(_2013 < 0.0f)))) * (1.0f - (_2017 * _2017))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2011 <= 0.0533333346247673f)) { - if (!(_2011 >= 0.1599999964237213f)) { - _2037 = (((0.23999999463558197f / _2010) + -0.5f) * _2028); - } else { - _2037 = 0.0f; - } - } else { - _2037 = _2028; - } - float _2038 = _2037 + 1.0f; - float _2039 = _2038 * _1982; - float _2040 = _2038 * _1985; - float _2041 = _2038 * _1988; - do { - if (!((bool)(_2039 == _2040) && (bool)(_2040 == _2041))) { - float _2048 = ((_2039 * 2.0f) - _2040) - _2041; - float _2051 = ((_1985 - _1988) * 1.7320507764816284f) * _2038; - float _2053 = atan(_2051 / _2048); - bool _2056 = (_2048 < 0.0f); - bool _2057 = (_2048 == 0.0f); - bool _2058 = (_2051 >= 0.0f); - bool _2059 = (_2051 < 0.0f); - _2070 = select((_2058 && _2057), 90.0f, select((_2059 && _2057), -90.0f, (select((_2059 && _2056), (_2053 + -3.1415927410125732f), select((_2058 && _2056), (_2053 + 3.1415927410125732f), _2053)) * 57.2957763671875f))); - } else { - _2070 = 0.0f; - } - float _2075 = min(max(select((_2070 < 0.0f), (_2070 + 360.0f), _2070), 0.0f), 360.0f); - do { - if (_2075 < -180.0f) { - _2084 = (_2075 + 360.0f); - } else { - if (_2075 > 180.0f) { - _2084 = (_2075 + -360.0f); - } else { - _2084 = _2075; - } - } - do { - if ((bool)(_2084 > -67.5f) && (bool)(_2084 < 67.5f)) { - float _2090 = (_2084 + 67.5f) * 0.029629629105329514f; - int _2091 = int(_2090); - float _2093 = _2090 - float(_2091); - float _2094 = _2093 * _2093; - float _2095 = _2094 * _2093; - if (_2091 == 3) { - _2123 = (((0.1666666716337204f - (_2093 * 0.5f)) + (_2094 * 0.5f)) - (_2095 * 0.1666666716337204f)); - } else { - if (_2091 == 2) { - _2123 = ((0.6666666865348816f - _2094) + (_2095 * 0.5f)); - } else { - if (_2091 == 1) { - _2123 = ((0.1666666716337204f - (_2095 * 0.5f)) + ((_2094 + _2093) * 0.5f)); - } else { - _2123 = select((_2091 == 0), (_2095 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2123 = 0.0f; - } - float _2132 = min(max(((((_1997 * 0.27000001072883606f) * (0.029999999329447746f - _2039)) * _2123) + _2039), 0.0f), 65535.0f); - float _2133 = min(max(_2040, 0.0f), 65535.0f); - float _2134 = min(max(_2041, 0.0f), 65535.0f); - float _2147 = min(max(mad(-0.21492856740951538f, _2134, mad(-0.2365107536315918f, _2133, (_2132 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2148 = min(max(mad(-0.09967592358589172f, _2134, mad(1.17622971534729f, _2133, (_2132 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2149 = min(max(mad(0.9977163076400757f, _2134, mad(-0.006032449658960104f, _2133, (_2132 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2150 = dot(float3(_2147, _2148, _2149), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2157 = ((_2147 - _2150) * 0.9599999785423279f) + _2150; - float _2158 = ((_2148 - _2150) * 0.9599999785423279f) + _2150; - float _2159 = ((_2149 - _2150) * 0.9599999785423279f) + _2150; - float _2162 = log2(select((_2157 <= 0.0f), 6.103515625e-05f, _2157)); - float _2163 = _2162 * 0.3010300099849701f; - do { - if (!(_2163 <= -5.2601776123046875f)) { - if ((bool)(_2163 > -5.2601776123046875f) && (bool)(_2163 < -0.7447274923324585f)) { - float _2171 = (_2162 * 0.19999998807907104f) + 3.494786262512207f; - int _2172 = int(_2171); - float _2174 = _2171 - float(_2172); - float _2176 = _global_0[_2172]; - float _2179 = _global_0[(_2172 + 1)]; - float _2184 = _2176 * 0.5f; - _2216 = dot(float3((_2174 * _2174), _2174, 1.0f), float3(mad((_global_0[(_2172 + 2)]), 0.5f, mad(_2179, -1.0f, _2184)), (_2179 - _2176), mad(_2179, 0.5f, _2184))); - } else { - if ((bool)(_2163 >= -0.7447274923324585f) && (bool)(_2163 < 4.673812389373779f)) { - float _2196 = (_2162 * 0.1666666567325592f) + 0.4123218357563019f; - int _2197 = int(_2196); - float _2199 = _2196 - float(_2197); - float _2201 = _global_1[_2197]; - float _2204 = _global_1[(_2197 + 1)]; - float _2209 = _2201 * 0.5f; - _2216 = dot(float3((_2199 * _2199), _2199, 1.0f), float3(mad((_global_1[(_2197 + 2)]), 0.5f, mad(_2204, -1.0f, _2209)), (_2204 - _2201), mad(_2204, 0.5f, _2209))); - } else { - _2216 = 4.0f; - } - } - } else { - _2216 = -4.0f; - } - float _2218 = exp2(_2216 * 3.321928024291992f); - float _2221 = log2(select((_2158 <= 0.0f), 6.103515625e-05f, _2158)); - float _2222 = _2221 * 0.3010300099849701f; - do { - if (!(_2222 <= -5.2601776123046875f)) { - if ((bool)(_2222 > -5.2601776123046875f) && (bool)(_2222 < -0.7447274923324585f)) { - float _2230 = (_2221 * 0.19999998807907104f) + 3.494786262512207f; - int _2231 = int(_2230); - float _2233 = _2230 - float(_2231); - float _2235 = _global_0[_2231]; - float _2238 = _global_0[(_2231 + 1)]; - float _2243 = _2235 * 0.5f; - _2275 = dot(float3((_2233 * _2233), _2233, 1.0f), float3(mad((_global_0[(_2231 + 2)]), 0.5f, mad(_2238, -1.0f, _2243)), (_2238 - _2235), mad(_2238, 0.5f, _2243))); - } else { - if ((bool)(_2222 >= -0.7447274923324585f) && (bool)(_2222 < 4.673812389373779f)) { - float _2255 = (_2221 * 0.1666666567325592f) + 0.4123218357563019f; - int _2256 = int(_2255); - float _2258 = _2255 - float(_2256); - float _2260 = _global_1[_2256]; - float _2263 = _global_1[(_2256 + 1)]; - float _2268 = _2260 * 0.5f; - _2275 = dot(float3((_2258 * _2258), _2258, 1.0f), float3(mad((_global_1[(_2256 + 2)]), 0.5f, mad(_2263, -1.0f, _2268)), (_2263 - _2260), mad(_2263, 0.5f, _2268))); - } else { - _2275 = 4.0f; - } - } - } else { - _2275 = -4.0f; - } - float _2277 = exp2(_2275 * 3.321928024291992f); - float _2280 = log2(select((_2159 <= 0.0f), 6.103515625e-05f, _2159)); - float _2281 = _2280 * 0.3010300099849701f; - do { - if (!(_2281 <= -5.2601776123046875f)) { - if ((bool)(_2281 > -5.2601776123046875f) && (bool)(_2281 < -0.7447274923324585f)) { - float _2289 = (_2280 * 0.19999998807907104f) + 3.494786262512207f; - int _2290 = int(_2289); - float _2292 = _2289 - float(_2290); - float _2294 = _global_0[_2290]; - float _2297 = _global_0[(_2290 + 1)]; - float _2302 = _2294 * 0.5f; - _2334 = dot(float3((_2292 * _2292), _2292, 1.0f), float3(mad((_global_0[(_2290 + 2)]), 0.5f, mad(_2297, -1.0f, _2302)), (_2297 - _2294), mad(_2297, 0.5f, _2302))); - } else { - if ((bool)(_2281 >= -0.7447274923324585f) && (bool)(_2281 < 4.673812389373779f)) { - float _2314 = (_2280 * 0.1666666567325592f) + 0.4123218357563019f; - int _2315 = int(_2314); - float _2317 = _2314 - float(_2315); - float _2319 = _global_1[_2315]; - float _2322 = _global_1[(_2315 + 1)]; - float _2327 = _2319 * 0.5f; - _2334 = dot(float3((_2317 * _2317), _2317, 1.0f), float3(mad((_global_1[(_2315 + 2)]), 0.5f, mad(_2322, -1.0f, _2327)), (_2322 - _2319), mad(_2322, 0.5f, _2327))); - } else { - _2334 = 4.0f; - } - } - } else { - _2334 = -4.0f; - } - float _2336 = exp2(_2334 * 3.321928024291992f); - float _2339 = mad(0.16386906802654266f, _2336, mad(0.14067870378494263f, _2277, (_2218 * 0.6954522132873535f))); - float _2342 = mad(0.0955343171954155f, _2336, mad(0.8596711158752441f, _2277, (_2218 * 0.044794563204050064f))); - float _2345 = mad(1.0015007257461548f, _2336, mad(0.004025210160762072f, _2277, (_2218 * -0.005525882821530104f))); - float _2348 = mad(-0.21492856740951538f, _2345, mad(-0.2365107536315918f, _2342, (_2339 * 1.4514392614364624f))); - float _2351 = mad(-0.09967592358589172f, _2345, mad(1.17622971534729f, _2342, (_2339 * -0.07655377686023712f))); - float _2354 = mad(0.9977163076400757f, _2345, mad(-0.006032449658960104f, _2342, (_2339 * 0.008316148072481155f))); - float _2357 = log2(select((_2348 <= 0.0f), 9.999999747378752e-05f, _2348)); - float _2358 = _2357 * 0.3010300099849701f; - do { - if (!(!(_2358 <= -3.848327875137329f))) { - _2417 = ((_2357 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2358 > -3.848327875137329f) && (bool)(_2358 < 0.6812411546707153f)) { - float _2369 = (_2357 + 12.783867835998535f) * 0.46521204710006714f; - int _2370 = int(_2369); - float _2372 = _2369 - float(_2370); - float _2374 = _global_2[_2370]; - float _2377 = _global_2[(_2370 + 1)]; - float _2382 = _2374 * 0.5f; - _2417 = dot(float3((_2372 * _2372), _2372, 1.0f), float3(mad((_global_2[(_2370 + 2)]), 0.5f, mad(_2377, -1.0f, _2382)), (_2377 - _2374), mad(_2377, 0.5f, _2382))); - } else { - if ((bool)(_2358 >= 0.6812411546707153f) && (bool)(_2358 < 3.653702974319458f)) { - float _2394 = (_2357 + -2.2630341053009033f) * 0.7089107632637024f; - int _2395 = int(_2394); - float _2397 = _2394 - float(_2395); - float _2399 = _global_3[_2395]; - float _2402 = _global_3[(_2395 + 1)]; - float _2407 = _2399 * 0.5f; - _2417 = dot(float3((_2397 * _2397), _2397, 1.0f), float3(mad((_global_3[(_2395 + 2)]), 0.5f, mad(_2402, -1.0f, _2407)), (_2402 - _2399), mad(_2402, 0.5f, _2407))); - } else { - _2417 = ((_2357 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2422 = log2(select((_2351 <= 0.0f), 9.999999747378752e-05f, _2351)); - float _2423 = _2422 * 0.3010300099849701f; - do { - if (!(!(_2423 <= -3.848327875137329f))) { - _2482 = ((_2422 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2423 > -3.848327875137329f) && (bool)(_2423 < 0.6812411546707153f)) { - float _2434 = (_2422 + 12.783867835998535f) * 0.46521204710006714f; - int _2435 = int(_2434); - float _2437 = _2434 - float(_2435); - float _2439 = _global_2[_2435]; - float _2442 = _global_2[(_2435 + 1)]; - float _2447 = _2439 * 0.5f; - _2482 = dot(float3((_2437 * _2437), _2437, 1.0f), float3(mad((_global_2[(_2435 + 2)]), 0.5f, mad(_2442, -1.0f, _2447)), (_2442 - _2439), mad(_2442, 0.5f, _2447))); - } else { - if ((bool)(_2423 >= 0.6812411546707153f) && (bool)(_2423 < 3.653702974319458f)) { - float _2459 = (_2422 + -2.2630341053009033f) * 0.7089107632637024f; - int _2460 = int(_2459); - float _2462 = _2459 - float(_2460); - float _2464 = _global_3[_2460]; - float _2467 = _global_3[(_2460 + 1)]; - float _2472 = _2464 * 0.5f; - _2482 = dot(float3((_2462 * _2462), _2462, 1.0f), float3(mad((_global_3[(_2460 + 2)]), 0.5f, mad(_2467, -1.0f, _2472)), (_2467 - _2464), mad(_2467, 0.5f, _2472))); - } else { - _2482 = ((_2422 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2487 = log2(select((_2354 <= 0.0f), 9.999999747378752e-05f, _2354)); - float _2488 = _2487 * 0.3010300099849701f; - do { - if (!(!(_2488 <= -3.848327875137329f))) { - _2547 = ((_2487 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2488 > -3.848327875137329f) && (bool)(_2488 < 0.6812411546707153f)) { - float _2499 = (_2487 + 12.783867835998535f) * 0.46521204710006714f; - int _2500 = int(_2499); - float _2502 = _2499 - float(_2500); - float _2504 = _global_2[_2500]; - float _2507 = _global_2[(_2500 + 1)]; - float _2512 = _2504 * 0.5f; - _2547 = dot(float3((_2502 * _2502), _2502, 1.0f), float3(mad((_global_2[(_2500 + 2)]), 0.5f, mad(_2507, -1.0f, _2512)), (_2507 - _2504), mad(_2507, 0.5f, _2512))); - } else { - if ((bool)(_2488 >= 0.6812411546707153f) && (bool)(_2488 < 3.653702974319458f)) { - float _2524 = (_2487 + -2.2630341053009033f) * 0.7089107632637024f; - int _2525 = int(_2524); - float _2527 = _2524 - float(_2525); - float _2529 = _global_3[_2525]; - float _2532 = _global_3[(_2525 + 1)]; - float _2537 = _2529 * 0.5f; - _2547 = dot(float3((_2527 * _2527), _2527, 1.0f), float3(mad((_global_3[(_2525 + 2)]), 0.5f, mad(_2532, -1.0f, _2537)), (_2532 - _2529), mad(_2532, 0.5f, _2537))); - } else { - _2547 = ((_2487 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2550 = exp2(_2417 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2551 = exp2(_2482 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2552 = exp2(_2547 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1975) { - _2564 = mad(_34, _2552, mad(_33, _2551, (_2550 * _32))); - _2565 = mad(_37, _2552, mad(_36, _2551, (_2550 * _35))); - _2566 = mad(_40, _2552, mad(_39, _2551, (_2550 * _38))); - } else { - _2564 = _2550; - _2565 = _2551; - _2566 = _2552; - } - float _2576 = exp2(log2(_2564 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2577 = exp2(log2(_2565 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2578 = exp2(log2(_2566 * 9.999999747378752e-05f) * 0.1593017578125f); - _3343 = exp2(log2((1.0f / ((_2576 * 18.6875f) + 1.0f)) * ((_2576 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3344 = exp2(log2((1.0f / ((_2577 * 18.6875f) + 1.0f)) * ((_2577 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3345 = exp2(log2((1.0f / ((_2578 * 18.6875f) + 1.0f)) * ((_2578 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2611 = _1874 * 3.0f; - float _2612 = _1875 * 3.0f; - float _2615 = mad(0.17733481526374817f, _2612, mad(0.38297808170318604f, _2611, (_1873 * 1.31910240650177f))); - float _2618 = mad(0.09676162153482437f, _2612, mad(0.8134231567382812f, _2611, (_1873 * 0.2693769633769989f))); - float _2621 = mad(0.870704174041748f, _2612, mad(0.11154405772686005f, _2611, (_1873 * 0.05263196676969528f))); - float _2625 = max(max(_2615, _2618), _2621); - float _2630 = (max(_2625, 1.000000013351432e-10f) - max(min(min(_2615, _2618), _2621), 1.000000013351432e-10f)) / max(_2625, 0.009999999776482582f); - float _2643 = ((_2618 + _2615) + _2621) + (sqrt((((_2621 - _2618) * _2621) + ((_2618 - _2615) * _2618)) + ((_2615 - _2621) * _2615)) * 1.75f); - float _2644 = _2643 * 0.3333333432674408f; - float _2645 = _2630 + -0.4000000059604645f; - float _2646 = _2645 * 5.0f; - float _2650 = max((1.0f - abs(_2645 * 2.5f)), 0.0f); - float _2661 = ((float(((int)(uint)((bool)(_2646 > 0.0f))) - ((int)(uint)((bool)(_2646 < 0.0f)))) * (1.0f - (_2650 * _2650))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2644 <= 0.0533333346247673f)) { - if (!(_2644 >= 0.1599999964237213f)) { - _2670 = (((0.23999999463558197f / _2643) + -0.5f) * _2661); - } else { - _2670 = 0.0f; - } - } else { - _2670 = _2661; - } - float _2671 = _2670 + 1.0f; - float _2672 = _2671 * _2615; - float _2673 = _2671 * _2618; - float _2674 = _2671 * _2621; - do { - if (!((bool)(_2672 == _2673) && (bool)(_2673 == _2674))) { - float _2681 = ((_2672 * 2.0f) - _2673) - _2674; - float _2684 = ((_2618 - _2621) * 1.7320507764816284f) * _2671; - float _2686 = atan(_2684 / _2681); - bool _2689 = (_2681 < 0.0f); - bool _2690 = (_2681 == 0.0f); - bool _2691 = (_2684 >= 0.0f); - bool _2692 = (_2684 < 0.0f); - _2703 = select((_2691 && _2690), 90.0f, select((_2692 && _2690), -90.0f, (select((_2692 && _2689), (_2686 + -3.1415927410125732f), select((_2691 && _2689), (_2686 + 3.1415927410125732f), _2686)) * 57.2957763671875f))); - } else { - _2703 = 0.0f; - } - float _2708 = min(max(select((_2703 < 0.0f), (_2703 + 360.0f), _2703), 0.0f), 360.0f); - do { - if (_2708 < -180.0f) { - _2717 = (_2708 + 360.0f); - } else { - if (_2708 > 180.0f) { - _2717 = (_2708 + -360.0f); - } else { - _2717 = _2708; - } - } - do { - if ((bool)(_2717 > -67.5f) && (bool)(_2717 < 67.5f)) { - float _2723 = (_2717 + 67.5f) * 0.029629629105329514f; - int _2724 = int(_2723); - float _2726 = _2723 - float(_2724); - float _2727 = _2726 * _2726; - float _2728 = _2727 * _2726; - if (_2724 == 3) { - _2756 = (((0.1666666716337204f - (_2726 * 0.5f)) + (_2727 * 0.5f)) - (_2728 * 0.1666666716337204f)); - } else { - if (_2724 == 2) { - _2756 = ((0.6666666865348816f - _2727) + (_2728 * 0.5f)); - } else { - if (_2724 == 1) { - _2756 = ((0.1666666716337204f - (_2728 * 0.5f)) + ((_2727 + _2726) * 0.5f)); - } else { - _2756 = select((_2724 == 0), (_2728 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2756 = 0.0f; - } - float _2765 = min(max(((((_2630 * 0.27000001072883606f) * (0.029999999329447746f - _2672)) * _2756) + _2672), 0.0f), 65535.0f); - float _2766 = min(max(_2673, 0.0f), 65535.0f); - float _2767 = min(max(_2674, 0.0f), 65535.0f); - float _2780 = min(max(mad(-0.21492856740951538f, _2767, mad(-0.2365107536315918f, _2766, (_2765 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2781 = min(max(mad(-0.09967592358589172f, _2767, mad(1.17622971534729f, _2766, (_2765 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2782 = min(max(mad(0.9977163076400757f, _2767, mad(-0.006032449658960104f, _2766, (_2765 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2783 = dot(float3(_2780, _2781, _2782), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2790 = ((_2780 - _2783) * 0.9599999785423279f) + _2783; - float _2791 = ((_2781 - _2783) * 0.9599999785423279f) + _2783; - float _2792 = ((_2782 - _2783) * 0.9599999785423279f) + _2783; - float _2795 = log2(select((_2790 <= 0.0f), 6.103515625e-05f, _2790)); - float _2796 = _2795 * 0.3010300099849701f; - do { - if (!(_2796 <= -5.2601776123046875f)) { - if ((bool)(_2796 > -5.2601776123046875f) && (bool)(_2796 < -0.7447274923324585f)) { - float _2804 = (_2795 * 0.19999998807907104f) + 3.494786262512207f; - int _2805 = int(_2804); - float _2807 = _2804 - float(_2805); - float _2809 = _global_0[_2805]; - float _2812 = _global_0[(_2805 + 1)]; - float _2817 = _2809 * 0.5f; - _2849 = dot(float3((_2807 * _2807), _2807, 1.0f), float3(mad((_global_0[(_2805 + 2)]), 0.5f, mad(_2812, -1.0f, _2817)), (_2812 - _2809), mad(_2812, 0.5f, _2817))); - } else { - if ((bool)(_2796 >= -0.7447274923324585f) && (bool)(_2796 < 4.673812389373779f)) { - float _2829 = (_2795 * 0.1666666567325592f) + 0.4123218357563019f; - int _2830 = int(_2829); - float _2832 = _2829 - float(_2830); - float _2834 = _global_1[_2830]; - float _2837 = _global_1[(_2830 + 1)]; - float _2842 = _2834 * 0.5f; - _2849 = dot(float3((_2832 * _2832), _2832, 1.0f), float3(mad((_global_1[(_2830 + 2)]), 0.5f, mad(_2837, -1.0f, _2842)), (_2837 - _2834), mad(_2837, 0.5f, _2842))); - } else { - _2849 = 4.0f; - } - } - } else { - _2849 = -4.0f; - } - float _2851 = exp2(_2849 * 3.321928024291992f); - float _2854 = log2(select((_2791 <= 0.0f), 6.103515625e-05f, _2791)); - float _2855 = _2854 * 0.3010300099849701f; - do { - if (!(_2855 <= -5.2601776123046875f)) { - if ((bool)(_2855 > -5.2601776123046875f) && (bool)(_2855 < -0.7447274923324585f)) { - float _2863 = (_2854 * 0.19999998807907104f) + 3.494786262512207f; - int _2864 = int(_2863); - float _2866 = _2863 - float(_2864); - float _2868 = _global_0[_2864]; - float _2871 = _global_0[(_2864 + 1)]; - float _2876 = _2868 * 0.5f; - _2908 = dot(float3((_2866 * _2866), _2866, 1.0f), float3(mad((_global_0[(_2864 + 2)]), 0.5f, mad(_2871, -1.0f, _2876)), (_2871 - _2868), mad(_2871, 0.5f, _2876))); - } else { - if ((bool)(_2855 >= -0.7447274923324585f) && (bool)(_2855 < 4.673812389373779f)) { - float _2888 = (_2854 * 0.1666666567325592f) + 0.4123218357563019f; - int _2889 = int(_2888); - float _2891 = _2888 - float(_2889); - float _2893 = _global_1[_2889]; - float _2896 = _global_1[(_2889 + 1)]; - float _2901 = _2893 * 0.5f; - _2908 = dot(float3((_2891 * _2891), _2891, 1.0f), float3(mad((_global_1[(_2889 + 2)]), 0.5f, mad(_2896, -1.0f, _2901)), (_2896 - _2893), mad(_2896, 0.5f, _2901))); - } else { - _2908 = 4.0f; - } - } - } else { - _2908 = -4.0f; - } - float _2910 = exp2(_2908 * 3.321928024291992f); - float _2913 = log2(select((_2792 <= 0.0f), 6.103515625e-05f, _2792)); - float _2914 = _2913 * 0.3010300099849701f; - do { - if (!(_2914 <= -5.2601776123046875f)) { - if ((bool)(_2914 > -5.2601776123046875f) && (bool)(_2914 < -0.7447274923324585f)) { - float _2922 = (_2913 * 0.19999998807907104f) + 3.494786262512207f; - int _2923 = int(_2922); - float _2925 = _2922 - float(_2923); - float _2927 = _global_0[_2923]; - float _2930 = _global_0[(_2923 + 1)]; - float _2935 = _2927 * 0.5f; - _2967 = dot(float3((_2925 * _2925), _2925, 1.0f), float3(mad((_global_0[(_2923 + 2)]), 0.5f, mad(_2930, -1.0f, _2935)), (_2930 - _2927), mad(_2930, 0.5f, _2935))); - } else { - if ((bool)(_2914 >= -0.7447274923324585f) && (bool)(_2914 < 4.673812389373779f)) { - float _2947 = (_2913 * 0.1666666567325592f) + 0.4123218357563019f; - int _2948 = int(_2947); - float _2950 = _2947 - float(_2948); - float _2952 = _global_1[_2948]; - float _2955 = _global_1[(_2948 + 1)]; - float _2960 = _2952 * 0.5f; - _2967 = dot(float3((_2950 * _2950), _2950, 1.0f), float3(mad((_global_1[(_2948 + 2)]), 0.5f, mad(_2955, -1.0f, _2960)), (_2955 - _2952), mad(_2955, 0.5f, _2960))); - } else { - _2967 = 4.0f; - } - } - } else { - _2967 = -4.0f; - } - float _2969 = exp2(_2967 * 3.321928024291992f); - float _2972 = mad(0.16386906802654266f, _2969, mad(0.14067870378494263f, _2910, (_2851 * 0.6954522132873535f))); - float _2975 = mad(0.0955343171954155f, _2969, mad(0.8596711158752441f, _2910, (_2851 * 0.044794563204050064f))); - float _2978 = mad(1.0015007257461548f, _2969, mad(0.004025210160762072f, _2910, (_2851 * -0.005525882821530104f))); - float _2981 = mad(-0.21492856740951538f, _2978, mad(-0.2365107536315918f, _2975, (_2972 * 1.4514392614364624f))); - float _2984 = mad(-0.09967592358589172f, _2978, mad(1.17622971534729f, _2975, (_2972 * -0.07655377686023712f))); - float _2987 = mad(0.9977163076400757f, _2978, mad(-0.006032449658960104f, _2975, (_2972 * 0.008316148072481155f))); - float _2990 = log2(select((_2981 <= 0.0f), 9.999999747378752e-05f, _2981)); - float _2991 = _2990 * 0.3010300099849701f; - do { - if (!(_2991 <= -3.848327875137329f)) { - if ((bool)(_2991 > -3.848327875137329f) && (bool)(_2991 < 0.6812411546707153f)) { - float _2999 = (_2990 + 12.783867835998535f) * 0.46521204710006714f; - int _3000 = int(_2999); - float _3002 = _2999 - float(_3000); - float _3004 = _global_4[_3000]; - float _3007 = _global_4[(_3000 + 1)]; - float _3012 = _3004 * 0.5f; - _3047 = dot(float3((_3002 * _3002), _3002, 1.0f), float3(mad((_global_4[(_3000 + 2)]), 0.5f, mad(_3007, -1.0f, _3012)), (_3007 - _3004), mad(_3007, 0.5f, _3012))); - } else { - if ((bool)(_2991 >= 0.6812411546707153f) && (bool)(_2991 < 3.7613162994384766f)) { - float _3024 = (_2990 + -2.2630341053009033f) * 0.6841424107551575f; - int _3025 = int(_3024); - float _3027 = _3024 - float(_3025); - float _3029 = _global_5[_3025]; - float _3032 = _global_5[(_3025 + 1)]; - float _3037 = _3029 * 0.5f; - _3047 = dot(float3((_3027 * _3027), _3027, 1.0f), float3(mad((_global_5[(_3025 + 2)]), 0.5f, mad(_3032, -1.0f, _3037)), (_3032 - _3029), mad(_3032, 0.5f, _3037))); - } else { - _3047 = ((_2990 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3047 = -2.301030158996582f; - } - float _3049 = exp2(_3047 * 3.321928024291992f); - float _3052 = log2(select((_2984 <= 0.0f), 9.999999747378752e-05f, _2984)); - float _3053 = _3052 * 0.3010300099849701f; - do { - if (!(_3053 <= -3.848327875137329f)) { - if ((bool)(_3053 > -3.848327875137329f) && (bool)(_3053 < 0.6812411546707153f)) { - float _3061 = (_3052 + 12.783867835998535f) * 0.46521204710006714f; - int _3062 = int(_3061); - float _3064 = _3061 - float(_3062); - float _3066 = _global_4[_3062]; - float _3069 = _global_4[(_3062 + 1)]; - float _3074 = _3066 * 0.5f; - _3109 = dot(float3((_3064 * _3064), _3064, 1.0f), float3(mad((_global_4[(_3062 + 2)]), 0.5f, mad(_3069, -1.0f, _3074)), (_3069 - _3066), mad(_3069, 0.5f, _3074))); - } else { - if ((bool)(_3053 >= 0.6812411546707153f) && (bool)(_3053 < 3.7613162994384766f)) { - float _3086 = (_3052 + -2.2630341053009033f) * 0.6841424107551575f; - int _3087 = int(_3086); - float _3089 = _3086 - float(_3087); - float _3091 = _global_5[_3087]; - float _3094 = _global_5[(_3087 + 1)]; - float _3099 = _3091 * 0.5f; - _3109 = dot(float3((_3089 * _3089), _3089, 1.0f), float3(mad((_global_5[(_3087 + 2)]), 0.5f, mad(_3094, -1.0f, _3099)), (_3094 - _3091), mad(_3094, 0.5f, _3099))); - } else { - _3109 = ((_3052 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3109 = -2.301030158996582f; - } - float _3111 = exp2(_3109 * 3.321928024291992f); - float _3114 = log2(select((_2987 <= 0.0f), 9.999999747378752e-05f, _2987)); - float _3115 = _3114 * 0.3010300099849701f; - do { - if (!(_3115 <= -3.848327875137329f)) { - if ((bool)(_3115 > -3.848327875137329f) && (bool)(_3115 < 0.6812411546707153f)) { - float _3123 = (_3114 + 12.783867835998535f) * 0.46521204710006714f; - int _3124 = int(_3123); - float _3126 = _3123 - float(_3124); - float _3128 = _global_4[_3124]; - float _3131 = _global_4[(_3124 + 1)]; - float _3136 = _3128 * 0.5f; - _3171 = dot(float3((_3126 * _3126), _3126, 1.0f), float3(mad((_global_4[(_3124 + 2)]), 0.5f, mad(_3131, -1.0f, _3136)), (_3131 - _3128), mad(_3131, 0.5f, _3136))); - } else { - if ((bool)(_3115 >= 0.6812411546707153f) && (bool)(_3115 < 3.7613162994384766f)) { - float _3148 = (_3114 + -2.2630341053009033f) * 0.6841424107551575f; - int _3149 = int(_3148); - float _3151 = _3148 - float(_3149); - float _3153 = _global_5[_3149]; - float _3156 = _global_5[(_3149 + 1)]; - float _3161 = _3153 * 0.5f; - _3171 = dot(float3((_3151 * _3151), _3151, 1.0f), float3(mad((_global_5[(_3149 + 2)]), 0.5f, mad(_3156, -1.0f, _3161)), (_3156 - _3153), mad(_3156, 0.5f, _3161))); - } else { - _3171 = ((_3114 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3171 = -2.301030158996582f; - } - float _3173 = exp2(_3171 * 3.321928024291992f); - do { - if (!((uint)(cb0_074z) == 6)) { - _3185 = mad(_34, _3173, mad(_33, _3111, (_3049 * _32))); - _3186 = mad(_37, _3173, mad(_36, _3111, (_3049 * _35))); - _3187 = mad(_40, _3173, mad(_39, _3111, (_3049 * _38))); - } else { - _3185 = _3049; - _3186 = _3111; - _3187 = _3173; - } - float _3197 = exp2(log2(_3185 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3198 = exp2(log2(_3186 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3199 = exp2(log2(_3187 * 9.999999747378752e-05f) * 0.1593017578125f); - _3343 = exp2(log2((1.0f / ((_3197 * 18.6875f) + 1.0f)) * ((_3197 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3344 = exp2(log2((1.0f / ((_3198 * 18.6875f) + 1.0f)) * ((_3198 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3345 = exp2(log2((1.0f / ((_3199 * 18.6875f) + 1.0f)) * ((_3199 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 7) { - float _3232 = mad(0.04736635088920593f, _1875, mad(0.3395121395587921f, _1874, (_1873 * 0.613191545009613f))); - float _3235 = mad(0.01345000695437193f, _1875, mad(0.9163357615470886f, _1874, (_1873 * 0.07020691782236099f))); - float _3238 = mad(0.8696067929267883f, _1875, mad(0.1095672994852066f, _1874, (_1873 * 0.020618872717022896f))); - float _3257 = exp2(log2(mad(_34, _3238, mad(_33, _3235, (_3232 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3258 = exp2(log2(mad(_37, _3238, mad(_36, _3235, (_3232 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3259 = exp2(log2(mad(_40, _3238, mad(_39, _3235, (_3232 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3343 = exp2(log2((1.0f / ((_3257 * 18.6875f) + 1.0f)) * ((_3257 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3344 = exp2(log2((1.0f / ((_3258 * 18.6875f) + 1.0f)) * ((_3258 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3345 = exp2(log2((1.0f / ((_3259 * 18.6875f) + 1.0f)) * ((_3259 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3294 = mad(0.04736635088920593f, _1863, mad(0.3395121395587921f, _1862, (_1861 * 0.613191545009613f))); - float _3297 = mad(0.01345000695437193f, _1863, mad(0.9163357615470886f, _1862, (_1861 * 0.07020691782236099f))); - float _3300 = mad(0.8696067929267883f, _1863, mad(0.1095672994852066f, _1862, (_1861 * 0.020618872717022896f))); - _3343 = mad(_34, _3300, mad(_33, _3297, (_3294 * _32))); - _3344 = mad(_37, _3300, mad(_36, _3297, (_3294 * _35))); - _3345 = mad(_40, _3300, mad(_39, _3297, (_3294 * _38))); - } else { - float _3313 = mad(0.04736635088920593f, _1889, mad(0.3395121395587921f, _1888, (_1887 * 0.613191545009613f))); - float _3316 = mad(0.01345000695437193f, _1889, mad(0.9163357615470886f, _1888, (_1887 * 0.07020691782236099f))); - float _3319 = mad(0.8696067929267883f, _1889, mad(0.1095672994852066f, _1888, (_1887 * 0.020618872717022896f))); - float _3332 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3343 = exp2(log2(mad(_34, _3319, mad(_33, _3316, (_3313 * _32)))) * _3332); - _3344 = exp2(log2(mad(_37, _3319, mad(_36, _3316, (_3313 * _35)))) * _3332); - _3345 = exp2(log2(mad(_40, _3319, mad(_39, _3316, (_3313 * _38)))) * _3332); - } - } else { - _3343 = _1873; - _3344 = _1874; - _3345 = _1875; - } - } - } - } - } - } - SV_Target.x = (_3343 * 0.9523810148239136f); - SV_Target.y = (_3344 * 0.9523810148239136f); - SV_Target.z = (_3345 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1BCEF17C.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1BCEF17C.ps_6_0.hlsl deleted file mode 100644 index ff37ff8a6..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x1BCEF17C.ps_6_0.hlsl +++ /dev/null @@ -1,1514 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)SV_RenderTargetArrayIndex); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _340; - float _341; - float _342; - float _508; - float _509; - float _531; - float _532; - float _533; - float _678; - float _679; - float _700; - float _701; - float _702; - float _848; - float _849; - float _870; - float _871; - float _872; - float _1007; - float _1008; - float _1029; - float _1030; - float _1031; - float _1126; - float _1159; - float _1173; - float _1237; - float _1375; - float _1376; - float _1377; - float _1520; - float _1521; - float _1522; - float _1536; - float _1547; - float _1558; - float _1734; - float _1745; - float _1867; - float _1900; - float _1914; - float _1953; - float _2046; - float _2105; - float _2164; - float _2247; - float _2312; - float _2377; - float _2394; - float _2395; - float _2396; - float _2500; - float _2533; - float _2547; - float _2586; - float _2679; - float _2738; - float _2797; - float _2877; - float _2939; - float _3001; - float _3015; - float _3016; - float _3017; - float _3173; - float _3174; - float _3175; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _23 = ((uint)(cb0_074y) == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _157 = cb0_047y * 0.05000000074505806f; - float _160 = _132 - ((_157 * _142) * _156); - float _163 = ((_157 * _132) * _156) + _142; - float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); - float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); - float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _176 = max(_175, 1.000000013351432e-10f); - float _177 = _174 / _176; - float _180 = ((1.0f - _174) - _175) / _176; - float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); - float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); - float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); - float _193 = mad(_191, -0.7501999735832214f, 0.0f); - float _194 = mad(_191, 1.7135000228881836f, 0.0f); - float _195 = mad(_191, 0.03669999912381172f, -0.0f); - float _196 = mad(_192, 0.03889999911189079f, 0.0f); - float _197 = mad(_192, -0.06849999725818634f, 0.0f); - float _198 = mad(_192, 1.0296000242233276f, 0.0f); - float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); - float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); - float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); - float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); - float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); - float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); - float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); - float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); - float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); - float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); - float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); - float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); - float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); - float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); - float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); - float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); - float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); - float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); - float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); - float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); - float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); - float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); - float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); - float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); - // bool _300 = ((uint)(cb0_046x) == 0); - bool _300 = ((uint)(tm_flags.x) == 0); - if (_300) { - float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _306 = (_291 / _302) + -1.0f; - float _307 = (_294 / _302) + -1.0f; - float _308 = (_297 / _302) + -1.0f; - float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); - _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); - _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); - _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); - } else { - _340 = _291; - _341 = _294; - _342 = _297; - } - float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _357 = cb0_052w + cb0_057w; - float _371 = cb0_051w * cb0_056w; - float _385 = cb0_050w * cb0_055w; - float _399 = cb0_049w * cb0_054w; - float _413 = cb0_048w * cb0_053w; - float _417 = _340 - _343; - float _418 = _341 - _343; - float _419 = _342 - _343; - float _476 = cb0_073w + 1.0f; - float _480 = saturate(_476 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385)))))); - float _481 = saturate(_476 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385)))))); - float _482 = saturate(_476 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385)))))); - float _486 = max(_480, max(_481, _482)); - float _487 = _486 - min(_480, min(_481, _482)); - if (!(_487 == 0.0f)) { - float _490 = _487 / _486; - if (_480 == _486) { - _508 = ((_481 - _482) / _487); - _509 = _490; - } else { - if (_481 == _486) { - _508 = (((_482 - _480) / _487) + 2.0f); - _509 = _490; - } else { - if (_482 == _486) { - _508 = (((_480 - _481) / _487) + 4.0f); - _509 = _490; - } else { - _508 = 0.0f; - _509 = _490; - } - } - } - } else { - _508 = 0.0f; - _509 = 0.0f; - } - float _511 = cb0_073z + _508; - float _512 = floor(_511); - float _513 = _511 - _512; - float _514 = 1.0f - _509; - float _516 = 1.0f - (_513 * _509); - float _519 = 1.0f - ((1.0f - _513) * _509); - if (!(_512 == 0.0f)) { - if (!(_512 == 1.0f)) { - if (!(_512 == 2.0f)) { - if (!(_512 == 3.0f)) { - if (!(_512 == 4.0f)) { - _531 = 1.0f; - _532 = _514; - _533 = _516; - } else { - _531 = _519; - _532 = _514; - _533 = 1.0f; - } - } else { - _531 = _514; - _532 = _516; - _533 = 1.0f; - } - } else { - _531 = _514; - _532 = 1.0f; - _533 = _519; - } - } else { - _531 = _516; - _532 = 1.0f; - _533 = _514; - } - } else { - _531 = 1.0f; - _532 = _519; - _533 = _514; - } - float _539 = saturate(_343 / cb0_073x); - float _543 = (_539 * _539) * (3.0f - (_539 * 2.0f)); - float _544 = 1.0f - _543; - float _553 = cb0_052w + cb0_067w; - float _562 = cb0_051w * cb0_066w; - float _571 = cb0_050w * cb0_065w; - float _580 = cb0_049w * cb0_064w; - float _589 = cb0_048w * cb0_063w; - float _650 = saturate(_476 * (((cb0_052x + cb0_067x) + _553) + (((cb0_051x * cb0_066x) * _562) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _580) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _589) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _571)))))); - float _651 = saturate(_476 * (((cb0_052y + cb0_067y) + _553) + (((cb0_051y * cb0_066y) * _562) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _580) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _589) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _571)))))); - float _652 = saturate(_476 * (((cb0_052z + cb0_067z) + _553) + (((cb0_051z * cb0_066z) * _562) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _580) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _589) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _571)))))); - float _656 = max(_650, max(_651, _652)); - float _657 = _656 - min(_650, min(_651, _652)); - if (!(_657 == 0.0f)) { - float _660 = _657 / _656; - if (_650 == _656) { - _678 = ((_651 - _652) / _657); - _679 = _660; - } else { - if (_651 == _656) { - _678 = (((_652 - _650) / _657) + 2.0f); - _679 = _660; - } else { - if (_652 == _656) { - _678 = (((_650 - _651) / _657) + 4.0f); - _679 = _660; - } else { - _678 = 0.0f; - _679 = _660; - } - } - } - } else { - _678 = 0.0f; - _679 = 0.0f; - } - float _680 = cb0_073z + _678; - float _681 = floor(_680); - float _682 = _680 - _681; - float _683 = 1.0f - _679; - float _685 = 1.0f - (_682 * _679); - float _688 = 1.0f - ((1.0f - _682) * _679); - if (!(_681 == 0.0f)) { - if (!(_681 == 1.0f)) { - if (!(_681 == 2.0f)) { - if (!(_681 == 3.0f)) { - if (!(_681 == 4.0f)) { - _700 = 1.0f; - _701 = _683; - _702 = _685; - } else { - _700 = _688; - _701 = _683; - _702 = 1.0f; - } - } else { - _700 = _683; - _701 = _685; - _702 = 1.0f; - } - } else { - _700 = _683; - _701 = 1.0f; - _702 = _688; - } - } else { - _700 = _685; - _701 = 1.0f; - _702 = _683; - } - } else { - _700 = 1.0f; - _701 = _688; - _702 = _683; - } - float _710 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); - float _714 = (_710 * _710) * (3.0f - (_710 * 2.0f)); - float _723 = cb0_052w + cb0_062w; - float _732 = cb0_051w * cb0_061w; - float _741 = cb0_050w * cb0_060w; - float _750 = cb0_049w * cb0_059w; - float _759 = cb0_048w * cb0_058w; - float _820 = saturate(_476 * (((cb0_052x + cb0_062x) + _723) + (((cb0_051x * cb0_061x) * _732) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _750) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _759) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _741)))))); - float _821 = saturate(_476 * (((cb0_052y + cb0_062y) + _723) + (((cb0_051y * cb0_061y) * _732) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _750) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _759) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _741)))))); - float _822 = saturate(_476 * (((cb0_052z + cb0_062z) + _723) + (((cb0_051z * cb0_061z) * _732) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _750) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _759) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _741)))))); - float _826 = max(_820, max(_821, _822)); - float _827 = _826 - min(_820, min(_821, _822)); - if (!(_827 == 0.0f)) { - float _830 = _827 / _826; - if (_820 == _826) { - _848 = ((_821 - _822) / _827); - _849 = _830; - } else { - if (_821 == _826) { - _848 = (((_822 - _820) / _827) + 2.0f); - _849 = _830; - } else { - if (_822 == _826) { - _848 = (((_820 - _821) / _827) + 4.0f); - _849 = _830; - } else { - _848 = 0.0f; - _849 = _830; - } - } - } - } else { - _848 = 0.0f; - _849 = 0.0f; - } - float _850 = cb0_073z + _848; - float _851 = floor(_850); - float _852 = _850 - _851; - float _853 = 1.0f - _849; - float _855 = 1.0f - (_852 * _849); - float _858 = 1.0f - ((1.0f - _852) * _849); - if (!(_851 == 0.0f)) { - if (!(_851 == 1.0f)) { - if (!(_851 == 2.0f)) { - if (!(_851 == 3.0f)) { - if (!(_851 == 4.0f)) { - _870 = 1.0f; - _871 = _853; - _872 = _855; - } else { - _870 = _858; - _871 = _853; - _872 = 1.0f; - } - } else { - _870 = _853; - _871 = _855; - _872 = 1.0f; - } - } else { - _870 = _853; - _871 = 1.0f; - _872 = _858; - } - } else { - _870 = _855; - _871 = 1.0f; - _872 = _853; - } - } else { - _870 = 1.0f; - _871 = _858; - _872 = _853; - } - float _877 = _826 * (_543 - _714); - float _885 = (((_700 * _656) * _714) + ((_531 * _486) * _544)) + (_877 * _870); - float _887 = (((_701 * _656) * _714) + ((_532 * _486) * _544)) + (_877 * _871); - float _889 = (((_702 * _656) * _714) + ((_533 * _486) * _544)) + (_877 * _872); - float _915 = dot(float3(_885, _887, _889), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _979 = saturate(_476 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_885 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _980 = saturate(_476 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_887 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _981 = saturate(_476 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_889 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _985 = max(_979, max(_980, _981)); - float _986 = _985 - min(_979, min(_980, _981)); - if (!(_986 == 0.0f)) { - float _989 = _986 / _985; - if (_979 == _985) { - _1007 = ((_980 - _981) / _986); - _1008 = _989; - } else { - if (_980 == _985) { - _1007 = (((_981 - _979) / _986) + 2.0f); - _1008 = _989; - } else { - if (_981 == _985) { - _1007 = (((_979 - _980) / _986) + 4.0f); - _1008 = _989; - } else { - _1007 = 0.0f; - _1008 = _989; - } - } - } - } else { - _1007 = 0.0f; - _1008 = 0.0f; - } - float _1009 = cb0_073z + _1007; - float _1010 = floor(_1009); - float _1011 = _1009 - _1010; - float _1012 = 1.0f - _1008; - float _1014 = 1.0f - (_1011 * _1008); - float _1017 = 1.0f - ((1.0f - _1011) * _1008); - if (!(_1010 == 0.0f)) { - if (!(_1010 == 1.0f)) { - if (!(_1010 == 2.0f)) { - if (!(_1010 == 3.0f)) { - if (!(_1010 == 4.0f)) { - _1029 = 1.0f; - _1030 = _1012; - _1031 = _1014; - } else { - _1029 = _1017; - _1030 = _1012; - _1031 = 1.0f; - } - } else { - _1029 = _1012; - _1030 = _1014; - _1031 = 1.0f; - } - } else { - _1029 = _1012; - _1030 = 1.0f; - _1031 = _1017; - } - } else { - _1029 = _1014; - _1030 = 1.0f; - _1031 = _1012; - } - } else { - _1029 = 1.0f; - _1030 = _1017; - _1031 = _1012; - } - float _1032 = _1029 * _985; - float _1033 = _1030 * _985; - float _1034 = _1031 * _985; - float _1037 = mad(-0.0832584798336029f, _1034, mad(-0.6217905879020691f, _1033, (_1032 * 1.7050515413284302f))); - float _1040 = mad(-0.010548528283834457f, _1034, mad(1.1408027410507202f, _1033, (_1032 * -0.13025718927383423f))); - float _1043 = mad(1.152971863746643f, _1034, mad(-0.1289687603712082f, _1033, (_1032 * -0.024003278464078903f))); - float _1059 = ((mad(0.061360642313957214f, _1034, mad(-4.540197551250458e-09f, _1033, (_1032 * 0.9386394023895264f))) - _1032) * cb0_074z) + _1032; - float _1060 = ((mad(0.169205904006958f, _1034, mad(0.8307942152023315f, _1033, (_1032 * 6.775371730327606e-08f))) - _1033) * cb0_074z) + _1033; - float _1061 = (mad(-2.3283064365386963e-10f, _1033, (_1032 * -9.313225746154785e-10f)) * cb0_074z) + _1034; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1071 = mad(0.16386905312538147f, _1061, mad(0.14067868888378143f, _1060, (_1059 * 0.6954522132873535f))); - float _1074 = mad(0.0955343246459961f, _1061, mad(0.8596711158752441f, _1060, (_1059 * 0.044794581830501556f))); - float _1077 = mad(1.0015007257461548f, _1061, mad(0.004025210160762072f, _1060, (_1059 * -0.005525882821530104f))); - float _1081 = max(max(_1071, _1074), _1077); - float _1086 = (max(_1081, 1.000000013351432e-10f) - max(min(min(_1071, _1074), _1077), 1.000000013351432e-10f)) / max(_1081, 0.009999999776482582f); - float _1099 = ((_1074 + _1071) + _1077) + (sqrt((((_1077 - _1074) * _1077) + ((_1074 - _1071) * _1074)) + ((_1071 - _1077) * _1071)) * 1.75f); - float _1100 = _1099 * 0.3333333432674408f; - float _1101 = _1086 + -0.4000000059604645f; - float _1102 = _1101 * 5.0f; - float _1106 = max((1.0f - abs(_1101 * 2.5f)), 0.0f); - float _1117 = ((float(((int)(uint)((bool)(_1102 > 0.0f))) - ((int)(uint)((bool)(_1102 < 0.0f)))) * (1.0f - (_1106 * _1106))) + 1.0f) * 0.02500000037252903f; - if (!(_1100 <= 0.0533333346247673f)) { - if (!(_1100 >= 0.1599999964237213f)) { - _1126 = (((0.23999999463558197f / _1099) + -0.5f) * _1117); - } else { - _1126 = 0.0f; - } - } else { - _1126 = _1117; - } - float _1127 = _1126 + 1.0f; - float _1128 = _1127 * _1071; - float _1129 = _1127 * _1074; - float _1130 = _1127 * _1077; - if (!((bool)(_1128 == _1129) && (bool)(_1129 == _1130))) { - float _1137 = ((_1128 * 2.0f) - _1129) - _1130; - float _1140 = ((_1074 - _1077) * 1.7320507764816284f) * _1127; - float _1142 = atan(_1140 / _1137); - bool _1145 = (_1137 < 0.0f); - bool _1146 = (_1137 == 0.0f); - bool _1147 = (_1140 >= 0.0f); - bool _1148 = (_1140 < 0.0f); - _1159 = select((_1147 && _1146), 90.0f, select((_1148 && _1146), -90.0f, (select((_1148 && _1145), (_1142 + -3.1415927410125732f), select((_1147 && _1145), (_1142 + 3.1415927410125732f), _1142)) * 57.2957763671875f))); - } else { - _1159 = 0.0f; - } - float _1164 = min(max(select((_1159 < 0.0f), (_1159 + 360.0f), _1159), 0.0f), 360.0f); - if (_1164 < -180.0f) { - _1173 = (_1164 + 360.0f); - } else { - if (_1164 > 180.0f) { - _1173 = (_1164 + -360.0f); - } else { - _1173 = _1164; - } - } - float _1177 = saturate(1.0f - abs(_1173 * 0.014814814552664757f)); - float _1181 = (_1177 * _1177) * (3.0f - (_1177 * 2.0f)); - float _1187 = ((_1181 * _1181) * ((_1086 * 0.18000000715255737f) * (0.029999999329447746f - _1128))) + _1128; - float _1197 = max(0.0f, mad(-0.21492856740951538f, _1130, mad(-0.2365107536315918f, _1129, (_1187 * 1.4514392614364624f)))); - float _1198 = max(0.0f, mad(-0.09967592358589172f, _1130, mad(1.17622971534729f, _1129, (_1187 * -0.07655377686023712f)))); - float _1199 = max(0.0f, mad(0.9977163076400757f, _1130, mad(-0.006032449658960104f, _1129, (_1187 * 0.008316148072481155f)))); - float _1200 = dot(float3(_1197, _1198, _1199), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1214 = (cb0_036w + 1.0f) - cb0_036y; - float _1217 = cb0_037x + 1.0f; - float _1219 = _1217 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1237 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1228 = (cb0_036w + 0.18000000715255737f) / _1214; - _1237 = (-0.7447274923324585f - ((log2(_1228 / (2.0f - _1228)) * 0.3465735912322998f) * (_1214 / cb0_036x))); - } - float _1240 = ((1.0f - cb0_036y) / cb0_036x) - _1237; - float _1242 = (cb0_036z / cb0_036x) - _1240; - float _1246 = log2(lerp(_1200, _1197, 0.9599999785423279f)) * 0.3010300099849701f; - float _1247 = log2(lerp(_1200, _1198, 0.9599999785423279f)) * 0.3010300099849701f; - float _1248 = log2(lerp(_1200, _1199, 0.9599999785423279f)) * 0.3010300099849701f; - float _1252 = cb0_036x * (_1246 + _1240); - float _1253 = cb0_036x * (_1247 + _1240); - float _1254 = cb0_036x * (_1248 + _1240); - float _1255 = _1214 * 2.0f; - float _1257 = (cb0_036x * -2.0f) / _1214; - float _1258 = _1246 - _1237; - float _1259 = _1247 - _1237; - float _1260 = _1248 - _1237; - float _1279 = _1219 * 2.0f; - float _1281 = (cb0_036x * 2.0f) / _1219; - float _1306 = select((_1246 < _1237), ((_1255 / (exp2((_1258 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1252); - float _1307 = select((_1247 < _1237), ((_1255 / (exp2((_1259 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1253); - float _1308 = select((_1248 < _1237), ((_1255 / (exp2((_1260 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1254); - float _1315 = _1242 - _1237; - float _1319 = saturate(_1258 / _1315); - float _1320 = saturate(_1259 / _1315); - float _1321 = saturate(_1260 / _1315); - bool _1322 = (_1242 < _1237); - float _1326 = select(_1322, (1.0f - _1319), _1319); - float _1327 = select(_1322, (1.0f - _1320), _1320); - float _1328 = select(_1322, (1.0f - _1321), _1321); - float _1347 = (((_1326 * _1326) * (select((_1246 > _1242), (_1217 - (_1279 / (exp2(((_1246 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; - float _1348 = (((_1327 * _1327) * (select((_1247 > _1242), (_1217 - (_1279 / (exp2(((_1247 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1253) - _1307)) * (3.0f - (_1327 * 2.0f))) + _1307; - float _1349 = (((_1328 * _1328) * (select((_1248 > _1242), (_1217 - (_1279 / (exp2(((_1248 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; - float _1350 = dot(float3(_1347, _1348, _1349), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1375 = ((cb0_075x * (max(0.0f, (lerp(_1350, _1347, 0.9300000071525574f))) - _1059)) + _1059); - _1376 = ((cb0_075x * (max(0.0f, (lerp(_1350, _1348, 0.9300000071525574f))) - _1060)) + _1060); - _1377 = ((cb0_075x * (max(0.0f, (lerp(_1350, _1349, 0.9300000071525574f))) - _1061)) + _1061); - } else { - _1375 = _1059; - _1376 = _1060; - _1377 = _1061; - } - float _1393 = ((mad(-0.06537103652954102f, _1377, mad(1.451815478503704e-06f, _1376, (_1375 * 1.065374732017517f))) - _1375) * cb0_074z) + _1375; - float _1394 = ((mad(-0.20366770029067993f, _1377, mad(1.2036634683609009f, _1376, (_1375 * -2.57161445915699e-07f))) - _1376) * cb0_074z) + _1376; - float _1395 = ((mad(0.9999996423721313f, _1377, mad(2.0954757928848267e-08f, _1376, (_1375 * 1.862645149230957e-08f))) - _1377) * cb0_074z) + _1377; - [branch] - if (!_300) { - float _1438 = 1.0f / (dot(float3(_1037, _1040, _1043), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1448 = max(0.0f, (((_1438 * cb0_035x) + cb0_034x) * dot(float3(_1037, _1040, _1043), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1449 = max(0.0f, (((_1438 * cb0_035y) + cb0_034y) * dot(float3(_1037, _1040, _1043), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1450 = max(0.0f, (((_1438 * cb0_035z) + cb0_034z) * dot(float3(_1037, _1040, _1043), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1456 = max(0.0f, (cb0_031x - _1448)); - float _1457 = max(0.0f, (cb0_031x - _1449)); - float _1458 = max(0.0f, (cb0_031x - _1450)); - float _1460 = max(_1448, cb0_031z); - float _1461 = max(_1449, cb0_031z); - float _1462 = max(_1450, cb0_031z); - _1520 = (((((((cb0_032x * _1460) + cb0_032y) * (1.0f / (cb0_031w + _1460))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1448, cb0_031x), cb0_031z))) + ((cb0_028w * _1456) * (1.0f / (cb0_031y + _1456)))) + cb0_029w); - _1521 = ((((((1.0f / (cb0_031w + _1461)) * ((cb0_032x * _1461) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1449, cb0_031x), cb0_031z))) + ((cb0_028w * _1457) * (1.0f / (cb0_031y + _1457)))) + cb0_029w); - _1522 = ((((((1.0f / (cb0_031w + _1462)) * ((cb0_032x * _1462) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1450, cb0_031x), cb0_031z))) + ((cb0_028w * _1458) * (1.0f / (cb0_031y + _1458)))) + cb0_029w); - } else { - _1520 = max(0.0f, mad(-0.0832584798336029f, _1395, mad(-0.6217905879020691f, _1394, (_1393 * 1.7050515413284302f)))); - _1521 = max(0.0f, mad(-0.010548528283834457f, _1395, mad(1.1408027410507202f, _1394, (_1393 * -0.13025718927383423f)))); - _1522 = max(0.0f, mad(1.152971863746643f, _1395, mad(-0.1289687603712082f, _1394, (_1393 * -0.024003278464078903f)))); - } - float _1523 = saturate(_1520); - float _1524 = saturate(_1521); - float _1525 = saturate(_1522); - if (_1523 < 0.0031306699384003878f) { - _1536 = (_1523 * 12.920000076293945f); - } else { - _1536 = (((pow(_1523, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1524 < 0.0031306699384003878f) { - _1547 = (_1524 * 12.920000076293945f); - } else { - _1547 = (((pow(_1524, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1525 < 0.0031306699384003878f) { - _1558 = (_1525 * 12.920000076293945f); - } else { - _1558 = (((pow(_1525, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1562 = (_1547 * 0.9375f) + 0.03125f; - float _1570 = _1558 * 15.0f; - float _1571 = floor(_1570); - float _1572 = _1570 - _1571; - float _1574 = (_1571 + ((_1536 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1575 = t1.Sample(s1, float2(_1574, _1562)); - float _1579 = _1574 + 0.0625f; - float4 _1580 = t1.Sample(s1, float2(_1579, _1562)); - float _1596 = ((lerp(_1575.x, _1580.x, _1572)) * cb0_041x) + (cb0_040x * _1536); - float _1597 = ((lerp(_1575.y, _1580.y, _1572)) * cb0_041x) + (cb0_040x * _1547); - float _1598 = ((lerp(_1575.z, _1580.z, _1572)) * cb0_041x) + (cb0_040x * _1558); - float4 _1601 = t0.Sample(s0, float2(_1574, _1562)); - float4 _1605 = t0.Sample(s0, float2(_1579, _1562)); - float _1623 = cb0_038w * cb0_039z; - float _1630 = max(6.103519990574569e-05f, ((_1623 * ((_1601.x - _1596) + ((_1605.x - _1601.x) * _1572))) + _1596)); - float _1631 = max(6.103519990574569e-05f, ((_1623 * ((_1601.y - _1597) + ((_1605.y - _1601.y) * _1572))) + _1597)); - float _1632 = max(6.103519990574569e-05f, ((_1623 * ((_1601.z - _1598) + ((_1605.z - _1601.z) * _1572))) + _1598)); - float _1654 = select((_1630 > 0.040449999272823334f), exp2(log2((_1630 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1630 * 0.07739938050508499f)); - float _1655 = select((_1631 > 0.040449999272823334f), exp2(log2((_1631 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1631 * 0.07739938050508499f)); - float _1656 = select((_1632 > 0.040449999272823334f), exp2(log2((_1632 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1632 * 0.07739938050508499f)); - float _1682 = cb0_044y * (((cb0_026y + (cb0_026x * _1654)) * _1654) + cb0_026z); - float _1683 = cb0_044z * (((cb0_026y + (cb0_026x * _1655)) * _1655) + cb0_026z); - float _1684 = cb0_044w * (((cb0_026y + (cb0_026x * _1656)) * _1656) + cb0_026z); - float _1691 = ((cb0_045x - _1682) * cb0_045w) + _1682; - float _1692 = ((cb0_045y - _1683) * cb0_045w) + _1683; - float _1693 = ((cb0_045z - _1684) * cb0_045w) + _1684; - float _1694 = cb0_044y * _1037; - float _1695 = cb0_044z * _1040; - float _1696 = cb0_044w * _1043; - float _1703 = ((cb0_045x - _1694) * cb0_045w) + _1694; - float _1704 = ((cb0_045y - _1695) * cb0_045w) + _1695; - float _1705 = ((cb0_045z - _1696) * cb0_045w) + _1696; - float _1717 = exp2(log2(max(0.0f, _1691)) * cb0_027y); - float _1718 = exp2(log2(max(0.0f, _1692)) * cb0_027y); - float _1719 = exp2(log2(max(0.0f, _1693)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1717, _1718, _1719)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1717 < 0.0031306699384003878f) { - _1734 = (_1717 * 12.920000076293945f); - } else { - _1734 = (((pow(_1717, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1718 < 0.0031306699384003878f) { - _1745 = (_1718 * 12.920000076293945f); - } else { - _1745 = (((pow(_1718, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1719 < 0.0031306699384003878f) { - _3173 = _1734; - _3174 = _1745; - _3175 = (_1719 * 12.920000076293945f); - } else { - _3173 = _1734; - _3174 = _1745; - _3175 = (((pow(_1719, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1760 = mad(0.04736635088920593f, _1719, mad(0.3395121395587921f, _1718, (_1717 * 0.613191545009613f))); - float _1763 = mad(0.01345000695437193f, _1719, mad(0.9163357615470886f, _1718, (_1717 * 0.07020691782236099f))); - float _1766 = mad(0.8696067929267883f, _1719, mad(0.1095672994852066f, _1718, (_1717 * 0.020618872717022896f))); - float _1776 = max(6.103519990574569e-05f, mad(_36, _1766, mad(_35, _1763, (_1760 * _34)))); - float _1777 = max(6.103519990574569e-05f, mad(_39, _1766, mad(_38, _1763, (_1760 * _37)))); - float _1778 = max(6.103519990574569e-05f, mad(_42, _1766, mad(_41, _1763, (_1760 * _40)))); - _3173 = min((_1776 * 4.5f), ((exp2(log2(max(_1776, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3174 = min((_1777 * 4.5f), ((exp2(log2(max(_1777, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3175 = min((_1778 * 4.5f), ((exp2(log2(max(_1778, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1805 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1805) { - float _1808 = _1704 * 3.0f; - float _1809 = _1705 * 3.0f; - float _1812 = mad(0.17733481526374817f, _1809, mad(0.38297808170318604f, _1808, (_1703 * 1.31910240650177f))); - float _1815 = mad(0.09676162153482437f, _1809, mad(0.8134231567382812f, _1808, (_1703 * 0.2693769633769989f))); - float _1818 = mad(0.870704174041748f, _1809, mad(0.11154405772686005f, _1808, (_1703 * 0.05263196676969528f))); - float _1822 = max(max(_1812, _1815), _1818); - float _1827 = (max(_1822, 1.000000013351432e-10f) - max(min(min(_1812, _1815), _1818), 1.000000013351432e-10f)) / max(_1822, 0.009999999776482582f); - float _1840 = ((_1815 + _1812) + _1818) + (sqrt((((_1818 - _1815) * _1818) + ((_1815 - _1812) * _1815)) + ((_1812 - _1818) * _1812)) * 1.75f); - float _1841 = _1840 * 0.3333333432674408f; - float _1842 = _1827 + -0.4000000059604645f; - float _1843 = _1842 * 5.0f; - float _1847 = max((1.0f - abs(_1842 * 2.5f)), 0.0f); - float _1858 = ((float(((int)(uint)((bool)(_1843 > 0.0f))) - ((int)(uint)((bool)(_1843 < 0.0f)))) * (1.0f - (_1847 * _1847))) + 1.0f) * 0.02500000037252903f; - if (!(_1841 <= 0.0533333346247673f)) { - if (!(_1841 >= 0.1599999964237213f)) { - _1867 = (((0.23999999463558197f / _1840) + -0.5f) * _1858); - } else { - _1867 = 0.0f; - } - } else { - _1867 = _1858; - } - float _1868 = _1867 + 1.0f; - float _1869 = _1868 * _1812; - float _1870 = _1868 * _1815; - float _1871 = _1868 * _1818; - if (!((bool)(_1869 == _1870) && (bool)(_1870 == _1871))) { - float _1878 = ((_1869 * 2.0f) - _1870) - _1871; - float _1881 = ((_1815 - _1818) * 1.7320507764816284f) * _1868; - float _1883 = atan(_1881 / _1878); - bool _1886 = (_1878 < 0.0f); - bool _1887 = (_1878 == 0.0f); - bool _1888 = (_1881 >= 0.0f); - bool _1889 = (_1881 < 0.0f); - _1900 = select((_1888 && _1887), 90.0f, select((_1889 && _1887), -90.0f, (select((_1889 && _1886), (_1883 + -3.1415927410125732f), select((_1888 && _1886), (_1883 + 3.1415927410125732f), _1883)) * 57.2957763671875f))); - } else { - _1900 = 0.0f; - } - float _1905 = min(max(select((_1900 < 0.0f), (_1900 + 360.0f), _1900), 0.0f), 360.0f); - if (_1905 < -180.0f) { - _1914 = (_1905 + 360.0f); - } else { - if (_1905 > 180.0f) { - _1914 = (_1905 + -360.0f); - } else { - _1914 = _1905; - } - } - if ((bool)(_1914 > -67.5f) && (bool)(_1914 < 67.5f)) { - float _1920 = (_1914 + 67.5f) * 0.029629629105329514f; - int _1921 = int(_1920); - float _1923 = _1920 - float(_1921); - float _1924 = _1923 * _1923; - float _1925 = _1924 * _1923; - if (_1921 == 3) { - _1953 = (((0.1666666716337204f - (_1923 * 0.5f)) + (_1924 * 0.5f)) - (_1925 * 0.1666666716337204f)); - } else { - if (_1921 == 2) { - _1953 = ((0.6666666865348816f - _1924) + (_1925 * 0.5f)); - } else { - if (_1921 == 1) { - _1953 = (((_1925 * -0.5f) + 0.1666666716337204f) + ((_1924 + _1923) * 0.5f)); - } else { - _1953 = select((_1921 == 0), (_1925 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1953 = 0.0f; - } - float _1962 = min(max(((((_1827 * 0.27000001072883606f) * (0.029999999329447746f - _1869)) * _1953) + _1869), 0.0f), 65535.0f); - float _1963 = min(max(_1870, 0.0f), 65535.0f); - float _1964 = min(max(_1871, 0.0f), 65535.0f); - float _1977 = min(max(mad(-0.21492856740951538f, _1964, mad(-0.2365107536315918f, _1963, (_1962 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1978 = min(max(mad(-0.09967592358589172f, _1964, mad(1.17622971534729f, _1963, (_1962 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1979 = min(max(mad(0.9977163076400757f, _1964, mad(-0.006032449658960104f, _1963, (_1962 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1980 = dot(float3(_1977, _1978, _1979), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1987 = ((_1977 - _1980) * 0.9599999785423279f) + _1980; - float _1988 = ((_1978 - _1980) * 0.9599999785423279f) + _1980; - float _1989 = ((_1979 - _1980) * 0.9599999785423279f) + _1980; - float _1992 = log2(select((_1987 <= 0.0f), 6.103515625e-05f, _1987)); - float _1993 = _1992 * 0.3010300099849701f; - if (!(_1993 <= -5.2601776123046875f)) { - if ((bool)(_1993 > -5.2601776123046875f) && (bool)(_1993 < -0.7447274923324585f)) { - float _2001 = (_1992 * 0.19999998807907104f) + 3.494786262512207f; - int _2002 = int(_2001); - float _2004 = _2001 - float(_2002); - float _2006 = _global_0[_2002]; - float _2009 = _global_0[(_2002 + 1)]; - float _2014 = _2006 * 0.5f; - _2046 = dot(float3((_2004 * _2004), _2004, 1.0f), float3(mad((_global_0[(_2002 + 2)]), 0.5f, mad(_2009, -1.0f, _2014)), (_2009 - _2006), mad(_2009, 0.5f, _2014))); - } else { - if ((bool)(_1993 >= -0.7447274923324585f) && (bool)(_1993 < 4.673812389373779f)) { - float _2026 = (_1992 * 0.1666666567325592f) + 0.4123218357563019f; - int _2027 = int(_2026); - float _2029 = _2026 - float(_2027); - float _2031 = _global_1[_2027]; - float _2034 = _global_1[(_2027 + 1)]; - float _2039 = _2031 * 0.5f; - _2046 = dot(float3((_2029 * _2029), _2029, 1.0f), float3(mad((_global_1[(_2027 + 2)]), 0.5f, mad(_2034, -1.0f, _2039)), (_2034 - _2031), mad(_2034, 0.5f, _2039))); - } else { - _2046 = 4.0f; - } - } - } else { - _2046 = -4.0f; - } - float _2048 = exp2(_2046 * 3.321928024291992f); - float _2051 = log2(select((_1988 <= 0.0f), 6.103515625e-05f, _1988)); - float _2052 = _2051 * 0.3010300099849701f; - if (!(_2052 <= -5.2601776123046875f)) { - if ((bool)(_2052 > -5.2601776123046875f) && (bool)(_2052 < -0.7447274923324585f)) { - float _2060 = (_2051 * 0.19999998807907104f) + 3.494786262512207f; - int _2061 = int(_2060); - float _2063 = _2060 - float(_2061); - float _2065 = _global_0[_2061]; - float _2068 = _global_0[(_2061 + 1)]; - float _2073 = _2065 * 0.5f; - _2105 = dot(float3((_2063 * _2063), _2063, 1.0f), float3(mad((_global_0[(_2061 + 2)]), 0.5f, mad(_2068, -1.0f, _2073)), (_2068 - _2065), mad(_2068, 0.5f, _2073))); - } else { - if ((bool)(_2052 >= -0.7447274923324585f) && (bool)(_2052 < 4.673812389373779f)) { - float _2085 = (_2051 * 0.1666666567325592f) + 0.4123218357563019f; - int _2086 = int(_2085); - float _2088 = _2085 - float(_2086); - float _2090 = _global_1[_2086]; - float _2093 = _global_1[(_2086 + 1)]; - float _2098 = _2090 * 0.5f; - _2105 = dot(float3((_2088 * _2088), _2088, 1.0f), float3(mad((_global_1[(_2086 + 2)]), 0.5f, mad(_2093, -1.0f, _2098)), (_2093 - _2090), mad(_2093, 0.5f, _2098))); - } else { - _2105 = 4.0f; - } - } - } else { - _2105 = -4.0f; - } - float _2107 = exp2(_2105 * 3.321928024291992f); - float _2110 = log2(select((_1989 <= 0.0f), 6.103515625e-05f, _1989)); - float _2111 = _2110 * 0.3010300099849701f; - if (!(_2111 <= -5.2601776123046875f)) { - if ((bool)(_2111 > -5.2601776123046875f) && (bool)(_2111 < -0.7447274923324585f)) { - float _2119 = (_2110 * 0.19999998807907104f) + 3.494786262512207f; - int _2120 = int(_2119); - float _2122 = _2119 - float(_2120); - float _2124 = _global_0[_2120]; - float _2127 = _global_0[(_2120 + 1)]; - float _2132 = _2124 * 0.5f; - _2164 = dot(float3((_2122 * _2122), _2122, 1.0f), float3(mad((_global_0[(_2120 + 2)]), 0.5f, mad(_2127, -1.0f, _2132)), (_2127 - _2124), mad(_2127, 0.5f, _2132))); - } else { - if ((bool)(_2111 >= -0.7447274923324585f) && (bool)(_2111 < 4.673812389373779f)) { - float _2144 = (_2110 * 0.1666666567325592f) + 0.4123218357563019f; - int _2145 = int(_2144); - float _2147 = _2144 - float(_2145); - float _2149 = _global_1[_2145]; - float _2152 = _global_1[(_2145 + 1)]; - float _2157 = _2149 * 0.5f; - _2164 = dot(float3((_2147 * _2147), _2147, 1.0f), float3(mad((_global_1[(_2145 + 2)]), 0.5f, mad(_2152, -1.0f, _2157)), (_2152 - _2149), mad(_2152, 0.5f, _2157))); - } else { - _2164 = 4.0f; - } - } - } else { - _2164 = -4.0f; - } - float _2166 = exp2(_2164 * 3.321928024291992f); - float _2169 = mad(0.16386906802654266f, _2166, mad(0.14067870378494263f, _2107, (_2048 * 0.6954522132873535f))); - float _2172 = mad(0.0955343171954155f, _2166, mad(0.8596711158752441f, _2107, (_2048 * 0.044794563204050064f))); - float _2175 = mad(1.0015007257461548f, _2166, mad(0.004025210160762072f, _2107, (_2048 * -0.005525882821530104f))); - float _2178 = mad(-0.21492856740951538f, _2175, mad(-0.2365107536315918f, _2172, (_2169 * 1.4514392614364624f))); - float _2181 = mad(-0.09967592358589172f, _2175, mad(1.17622971534729f, _2172, (_2169 * -0.07655377686023712f))); - float _2184 = mad(0.9977163076400757f, _2175, mad(-0.006032449658960104f, _2172, (_2169 * 0.008316148072481155f))); - float _2187 = log2(select((_2178 <= 0.0f), 9.999999747378752e-05f, _2178)); - float _2188 = _2187 * 0.3010300099849701f; - if (!(!(_2188 <= -3.848327875137329f))) { - _2247 = ((_2187 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2188 > -3.848327875137329f) && (bool)(_2188 < 0.6812411546707153f)) { - float _2199 = (_2187 + 12.783867835998535f) * 0.46521204710006714f; - int _2200 = int(_2199); - float _2202 = _2199 - float(_2200); - float _2204 = _global_2[_2200]; - float _2207 = _global_2[(_2200 + 1)]; - float _2212 = _2204 * 0.5f; - _2247 = dot(float3((_2202 * _2202), _2202, 1.0f), float3(mad((_global_2[(_2200 + 2)]), 0.5f, mad(_2207, -1.0f, _2212)), (_2207 - _2204), mad(_2207, 0.5f, _2212))); - } else { - if ((bool)(_2188 >= 0.6812411546707153f) && (bool)(_2188 < 3.653702974319458f)) { - float _2224 = (_2187 + -2.2630341053009033f) * 0.7089107632637024f; - int _2225 = int(_2224); - float _2227 = _2224 - float(_2225); - float _2229 = _global_3[_2225]; - float _2232 = _global_3[(_2225 + 1)]; - float _2237 = _2229 * 0.5f; - _2247 = dot(float3((_2227 * _2227), _2227, 1.0f), float3(mad((_global_3[(_2225 + 2)]), 0.5f, mad(_2232, -1.0f, _2237)), (_2232 - _2229), mad(_2232, 0.5f, _2237))); - } else { - _2247 = ((_2187 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2252 = log2(select((_2181 <= 0.0f), 9.999999747378752e-05f, _2181)); - float _2253 = _2252 * 0.3010300099849701f; - if (!(!(_2253 <= -3.848327875137329f))) { - _2312 = ((_2252 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2253 > -3.848327875137329f) && (bool)(_2253 < 0.6812411546707153f)) { - float _2264 = (_2252 + 12.783867835998535f) * 0.46521204710006714f; - int _2265 = int(_2264); - float _2267 = _2264 - float(_2265); - float _2269 = _global_2[_2265]; - float _2272 = _global_2[(_2265 + 1)]; - float _2277 = _2269 * 0.5f; - _2312 = dot(float3((_2267 * _2267), _2267, 1.0f), float3(mad((_global_2[(_2265 + 2)]), 0.5f, mad(_2272, -1.0f, _2277)), (_2272 - _2269), mad(_2272, 0.5f, _2277))); - } else { - if ((bool)(_2253 >= 0.6812411546707153f) && (bool)(_2253 < 3.653702974319458f)) { - float _2289 = (_2252 + -2.2630341053009033f) * 0.7089107632637024f; - int _2290 = int(_2289); - float _2292 = _2289 - float(_2290); - float _2294 = _global_3[_2290]; - float _2297 = _global_3[(_2290 + 1)]; - float _2302 = _2294 * 0.5f; - _2312 = dot(float3((_2292 * _2292), _2292, 1.0f), float3(mad((_global_3[(_2290 + 2)]), 0.5f, mad(_2297, -1.0f, _2302)), (_2297 - _2294), mad(_2297, 0.5f, _2302))); - } else { - _2312 = ((_2252 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2317 = log2(select((_2184 <= 0.0f), 9.999999747378752e-05f, _2184)); - float _2318 = _2317 * 0.3010300099849701f; - if (!(!(_2318 <= -3.848327875137329f))) { - _2377 = ((_2317 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2318 > -3.848327875137329f) && (bool)(_2318 < 0.6812411546707153f)) { - float _2329 = (_2317 + 12.783867835998535f) * 0.46521204710006714f; - int _2330 = int(_2329); - float _2332 = _2329 - float(_2330); - float _2334 = _global_2[_2330]; - float _2337 = _global_2[(_2330 + 1)]; - float _2342 = _2334 * 0.5f; - _2377 = dot(float3((_2332 * _2332), _2332, 1.0f), float3(mad((_global_2[(_2330 + 2)]), 0.5f, mad(_2337, -1.0f, _2342)), (_2337 - _2334), mad(_2337, 0.5f, _2342))); - } else { - if ((bool)(_2318 >= 0.6812411546707153f) && (bool)(_2318 < 3.653702974319458f)) { - float _2354 = (_2317 + -2.2630341053009033f) * 0.7089107632637024f; - int _2355 = int(_2354); - float _2357 = _2354 - float(_2355); - float _2359 = _global_3[_2355]; - float _2362 = _global_3[(_2355 + 1)]; - float _2367 = _2359 * 0.5f; - _2377 = dot(float3((_2357 * _2357), _2357, 1.0f), float3(mad((_global_3[(_2355 + 2)]), 0.5f, mad(_2362, -1.0f, _2367)), (_2362 - _2359), mad(_2362, 0.5f, _2367))); - } else { - _2377 = ((_2317 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2380 = exp2(_2247 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2381 = exp2(_2312 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2382 = exp2(_2377 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1805) { - _2394 = mad(_36, _2382, mad(_35, _2381, (_2380 * _34))); - _2395 = mad(_39, _2382, mad(_38, _2381, (_2380 * _37))); - _2396 = mad(_42, _2382, mad(_41, _2381, (_2380 * _40))); - } else { - _2394 = _2380; - _2395 = _2381; - _2396 = _2382; - } - float _2406 = exp2(log2(_2394 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2407 = exp2(log2(_2395 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2408 = exp2(log2(_2396 * 9.999999747378752e-05f) * 0.1593017578125f); - _3173 = exp2(log2((1.0f / ((_2406 * 18.6875f) + 1.0f)) * ((_2406 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_2407 * 18.6875f) + 1.0f)) * ((_2407 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3175 = exp2(log2((1.0f / ((_2408 * 18.6875f) + 1.0f)) * ((_2408 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2441 = _1704 * 3.0f; - float _2442 = _1705 * 3.0f; - float _2445 = mad(0.17733481526374817f, _2442, mad(0.38297808170318604f, _2441, (_1703 * 1.31910240650177f))); - float _2448 = mad(0.09676162153482437f, _2442, mad(0.8134231567382812f, _2441, (_1703 * 0.2693769633769989f))); - float _2451 = mad(0.870704174041748f, _2442, mad(0.11154405772686005f, _2441, (_1703 * 0.05263196676969528f))); - float _2455 = max(max(_2445, _2448), _2451); - float _2460 = (max(_2455, 1.000000013351432e-10f) - max(min(min(_2445, _2448), _2451), 1.000000013351432e-10f)) / max(_2455, 0.009999999776482582f); - float _2473 = ((_2448 + _2445) + _2451) + (sqrt((((_2451 - _2448) * _2451) + ((_2448 - _2445) * _2448)) + ((_2445 - _2451) * _2445)) * 1.75f); - float _2474 = _2473 * 0.3333333432674408f; - float _2475 = _2460 + -0.4000000059604645f; - float _2476 = _2475 * 5.0f; - float _2480 = max((1.0f - abs(_2475 * 2.5f)), 0.0f); - float _2491 = ((float(((int)(uint)((bool)(_2476 > 0.0f))) - ((int)(uint)((bool)(_2476 < 0.0f)))) * (1.0f - (_2480 * _2480))) + 1.0f) * 0.02500000037252903f; - if (!(_2474 <= 0.0533333346247673f)) { - if (!(_2474 >= 0.1599999964237213f)) { - _2500 = (((0.23999999463558197f / _2473) + -0.5f) * _2491); - } else { - _2500 = 0.0f; - } - } else { - _2500 = _2491; - } - float _2501 = _2500 + 1.0f; - float _2502 = _2501 * _2445; - float _2503 = _2501 * _2448; - float _2504 = _2501 * _2451; - if (!((bool)(_2502 == _2503) && (bool)(_2503 == _2504))) { - float _2511 = ((_2502 * 2.0f) - _2503) - _2504; - float _2514 = ((_2448 - _2451) * 1.7320507764816284f) * _2501; - float _2516 = atan(_2514 / _2511); - bool _2519 = (_2511 < 0.0f); - bool _2520 = (_2511 == 0.0f); - bool _2521 = (_2514 >= 0.0f); - bool _2522 = (_2514 < 0.0f); - _2533 = select((_2521 && _2520), 90.0f, select((_2522 && _2520), -90.0f, (select((_2522 && _2519), (_2516 + -3.1415927410125732f), select((_2521 && _2519), (_2516 + 3.1415927410125732f), _2516)) * 57.2957763671875f))); - } else { - _2533 = 0.0f; - } - float _2538 = min(max(select((_2533 < 0.0f), (_2533 + 360.0f), _2533), 0.0f), 360.0f); - if (_2538 < -180.0f) { - _2547 = (_2538 + 360.0f); - } else { - if (_2538 > 180.0f) { - _2547 = (_2538 + -360.0f); - } else { - _2547 = _2538; - } - } - if ((bool)(_2547 > -67.5f) && (bool)(_2547 < 67.5f)) { - float _2553 = (_2547 + 67.5f) * 0.029629629105329514f; - int _2554 = int(_2553); - float _2556 = _2553 - float(_2554); - float _2557 = _2556 * _2556; - float _2558 = _2557 * _2556; - if (_2554 == 3) { - _2586 = (((0.1666666716337204f - (_2556 * 0.5f)) + (_2557 * 0.5f)) - (_2558 * 0.1666666716337204f)); - } else { - if (_2554 == 2) { - _2586 = ((0.6666666865348816f - _2557) + (_2558 * 0.5f)); - } else { - if (_2554 == 1) { - _2586 = (((_2558 * -0.5f) + 0.1666666716337204f) + ((_2557 + _2556) * 0.5f)); - } else { - _2586 = select((_2554 == 0), (_2558 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2586 = 0.0f; - } - float _2595 = min(max(((((_2460 * 0.27000001072883606f) * (0.029999999329447746f - _2502)) * _2586) + _2502), 0.0f), 65535.0f); - float _2596 = min(max(_2503, 0.0f), 65535.0f); - float _2597 = min(max(_2504, 0.0f), 65535.0f); - float _2610 = min(max(mad(-0.21492856740951538f, _2597, mad(-0.2365107536315918f, _2596, (_2595 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2611 = min(max(mad(-0.09967592358589172f, _2597, mad(1.17622971534729f, _2596, (_2595 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2612 = min(max(mad(0.9977163076400757f, _2597, mad(-0.006032449658960104f, _2596, (_2595 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2613 = dot(float3(_2610, _2611, _2612), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2620 = ((_2610 - _2613) * 0.9599999785423279f) + _2613; - float _2621 = ((_2611 - _2613) * 0.9599999785423279f) + _2613; - float _2622 = ((_2612 - _2613) * 0.9599999785423279f) + _2613; - float _2625 = log2(select((_2620 <= 0.0f), 6.103515625e-05f, _2620)); - float _2626 = _2625 * 0.3010300099849701f; - if (!(_2626 <= -5.2601776123046875f)) { - if ((bool)(_2626 > -5.2601776123046875f) && (bool)(_2626 < -0.7447274923324585f)) { - float _2634 = (_2625 * 0.19999998807907104f) + 3.494786262512207f; - int _2635 = int(_2634); - float _2637 = _2634 - float(_2635); - float _2639 = _global_0[_2635]; - float _2642 = _global_0[(_2635 + 1)]; - float _2647 = _2639 * 0.5f; - _2679 = dot(float3((_2637 * _2637), _2637, 1.0f), float3(mad((_global_0[(_2635 + 2)]), 0.5f, mad(_2642, -1.0f, _2647)), (_2642 - _2639), mad(_2642, 0.5f, _2647))); - } else { - if ((bool)(_2626 >= -0.7447274923324585f) && (bool)(_2626 < 4.673812389373779f)) { - float _2659 = (_2625 * 0.1666666567325592f) + 0.4123218357563019f; - int _2660 = int(_2659); - float _2662 = _2659 - float(_2660); - float _2664 = _global_1[_2660]; - float _2667 = _global_1[(_2660 + 1)]; - float _2672 = _2664 * 0.5f; - _2679 = dot(float3((_2662 * _2662), _2662, 1.0f), float3(mad((_global_1[(_2660 + 2)]), 0.5f, mad(_2667, -1.0f, _2672)), (_2667 - _2664), mad(_2667, 0.5f, _2672))); - } else { - _2679 = 4.0f; - } - } - } else { - _2679 = -4.0f; - } - float _2681 = exp2(_2679 * 3.321928024291992f); - float _2684 = log2(select((_2621 <= 0.0f), 6.103515625e-05f, _2621)); - float _2685 = _2684 * 0.3010300099849701f; - if (!(_2685 <= -5.2601776123046875f)) { - if ((bool)(_2685 > -5.2601776123046875f) && (bool)(_2685 < -0.7447274923324585f)) { - float _2693 = (_2684 * 0.19999998807907104f) + 3.494786262512207f; - int _2694 = int(_2693); - float _2696 = _2693 - float(_2694); - float _2698 = _global_0[_2694]; - float _2701 = _global_0[(_2694 + 1)]; - float _2706 = _2698 * 0.5f; - _2738 = dot(float3((_2696 * _2696), _2696, 1.0f), float3(mad((_global_0[(_2694 + 2)]), 0.5f, mad(_2701, -1.0f, _2706)), (_2701 - _2698), mad(_2701, 0.5f, _2706))); - } else { - if ((bool)(_2685 >= -0.7447274923324585f) && (bool)(_2685 < 4.673812389373779f)) { - float _2718 = (_2684 * 0.1666666567325592f) + 0.4123218357563019f; - int _2719 = int(_2718); - float _2721 = _2718 - float(_2719); - float _2723 = _global_1[_2719]; - float _2726 = _global_1[(_2719 + 1)]; - float _2731 = _2723 * 0.5f; - _2738 = dot(float3((_2721 * _2721), _2721, 1.0f), float3(mad((_global_1[(_2719 + 2)]), 0.5f, mad(_2726, -1.0f, _2731)), (_2726 - _2723), mad(_2726, 0.5f, _2731))); - } else { - _2738 = 4.0f; - } - } - } else { - _2738 = -4.0f; - } - float _2740 = exp2(_2738 * 3.321928024291992f); - float _2743 = log2(select((_2622 <= 0.0f), 6.103515625e-05f, _2622)); - float _2744 = _2743 * 0.3010300099849701f; - if (!(_2744 <= -5.2601776123046875f)) { - if ((bool)(_2744 > -5.2601776123046875f) && (bool)(_2744 < -0.7447274923324585f)) { - float _2752 = (_2743 * 0.19999998807907104f) + 3.494786262512207f; - int _2753 = int(_2752); - float _2755 = _2752 - float(_2753); - float _2757 = _global_0[_2753]; - float _2760 = _global_0[(_2753 + 1)]; - float _2765 = _2757 * 0.5f; - _2797 = dot(float3((_2755 * _2755), _2755, 1.0f), float3(mad((_global_0[(_2753 + 2)]), 0.5f, mad(_2760, -1.0f, _2765)), (_2760 - _2757), mad(_2760, 0.5f, _2765))); - } else { - if ((bool)(_2744 >= -0.7447274923324585f) && (bool)(_2744 < 4.673812389373779f)) { - float _2777 = (_2743 * 0.1666666567325592f) + 0.4123218357563019f; - int _2778 = int(_2777); - float _2780 = _2777 - float(_2778); - float _2782 = _global_1[_2778]; - float _2785 = _global_1[(_2778 + 1)]; - float _2790 = _2782 * 0.5f; - _2797 = dot(float3((_2780 * _2780), _2780, 1.0f), float3(mad((_global_1[(_2778 + 2)]), 0.5f, mad(_2785, -1.0f, _2790)), (_2785 - _2782), mad(_2785, 0.5f, _2790))); - } else { - _2797 = 4.0f; - } - } - } else { - _2797 = -4.0f; - } - float _2799 = exp2(_2797 * 3.321928024291992f); - float _2802 = mad(0.16386906802654266f, _2799, mad(0.14067870378494263f, _2740, (_2681 * 0.6954522132873535f))); - float _2805 = mad(0.0955343171954155f, _2799, mad(0.8596711158752441f, _2740, (_2681 * 0.044794563204050064f))); - float _2808 = mad(1.0015007257461548f, _2799, mad(0.004025210160762072f, _2740, (_2681 * -0.005525882821530104f))); - float _2811 = mad(-0.21492856740951538f, _2808, mad(-0.2365107536315918f, _2805, (_2802 * 1.4514392614364624f))); - float _2814 = mad(-0.09967592358589172f, _2808, mad(1.17622971534729f, _2805, (_2802 * -0.07655377686023712f))); - float _2817 = mad(0.9977163076400757f, _2808, mad(-0.006032449658960104f, _2805, (_2802 * 0.008316148072481155f))); - float _2820 = log2(select((_2811 <= 0.0f), 9.999999747378752e-05f, _2811)); - float _2821 = _2820 * 0.3010300099849701f; - if (!(_2821 <= -3.848327875137329f)) { - if ((bool)(_2821 > -3.848327875137329f) && (bool)(_2821 < 0.6812411546707153f)) { - float _2829 = (_2820 + 12.783867835998535f) * 0.46521204710006714f; - int _2830 = int(_2829); - float _2832 = _2829 - float(_2830); - float _2834 = _global_4[_2830]; - float _2837 = _global_4[(_2830 + 1)]; - float _2842 = _2834 * 0.5f; - _2877 = dot(float3((_2832 * _2832), _2832, 1.0f), float3(mad((_global_4[(_2830 + 2)]), 0.5f, mad(_2837, -1.0f, _2842)), (_2837 - _2834), mad(_2837, 0.5f, _2842))); - } else { - if ((bool)(_2821 >= 0.6812411546707153f) && (bool)(_2821 < 3.7613162994384766f)) { - float _2854 = (_2820 + -2.2630341053009033f) * 0.6841424107551575f; - int _2855 = int(_2854); - float _2857 = _2854 - float(_2855); - float _2859 = _global_5[_2855]; - float _2862 = _global_5[(_2855 + 1)]; - float _2867 = _2859 * 0.5f; - _2877 = dot(float3((_2857 * _2857), _2857, 1.0f), float3(mad((_global_5[(_2855 + 2)]), 0.5f, mad(_2862, -1.0f, _2867)), (_2862 - _2859), mad(_2862, 0.5f, _2867))); - } else { - _2877 = ((_2820 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2877 = -2.301030158996582f; - } - float _2879 = exp2(_2877 * 3.321928024291992f); - float _2882 = log2(select((_2814 <= 0.0f), 9.999999747378752e-05f, _2814)); - float _2883 = _2882 * 0.3010300099849701f; - if (!(_2883 <= -3.848327875137329f)) { - if ((bool)(_2883 > -3.848327875137329f) && (bool)(_2883 < 0.6812411546707153f)) { - float _2891 = (_2882 + 12.783867835998535f) * 0.46521204710006714f; - int _2892 = int(_2891); - float _2894 = _2891 - float(_2892); - float _2896 = _global_4[_2892]; - float _2899 = _global_4[(_2892 + 1)]; - float _2904 = _2896 * 0.5f; - _2939 = dot(float3((_2894 * _2894), _2894, 1.0f), float3(mad((_global_4[(_2892 + 2)]), 0.5f, mad(_2899, -1.0f, _2904)), (_2899 - _2896), mad(_2899, 0.5f, _2904))); - } else { - if ((bool)(_2883 >= 0.6812411546707153f) && (bool)(_2883 < 3.7613162994384766f)) { - float _2916 = (_2882 + -2.2630341053009033f) * 0.6841424107551575f; - int _2917 = int(_2916); - float _2919 = _2916 - float(_2917); - float _2921 = _global_5[_2917]; - float _2924 = _global_5[(_2917 + 1)]; - float _2929 = _2921 * 0.5f; - _2939 = dot(float3((_2919 * _2919), _2919, 1.0f), float3(mad((_global_5[(_2917 + 2)]), 0.5f, mad(_2924, -1.0f, _2929)), (_2924 - _2921), mad(_2924, 0.5f, _2929))); - } else { - _2939 = ((_2882 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2939 = -2.301030158996582f; - } - float _2941 = exp2(_2939 * 3.321928024291992f); - float _2944 = log2(select((_2817 <= 0.0f), 9.999999747378752e-05f, _2817)); - float _2945 = _2944 * 0.3010300099849701f; - if (!(_2945 <= -3.848327875137329f)) { - if ((bool)(_2945 > -3.848327875137329f) && (bool)(_2945 < 0.6812411546707153f)) { - float _2953 = (_2944 + 12.783867835998535f) * 0.46521204710006714f; - int _2954 = int(_2953); - float _2956 = _2953 - float(_2954); - float _2958 = _global_4[_2954]; - float _2961 = _global_4[(_2954 + 1)]; - float _2966 = _2958 * 0.5f; - _3001 = dot(float3((_2956 * _2956), _2956, 1.0f), float3(mad((_global_4[(_2954 + 2)]), 0.5f, mad(_2961, -1.0f, _2966)), (_2961 - _2958), mad(_2961, 0.5f, _2966))); - } else { - if ((bool)(_2945 >= 0.6812411546707153f) && (bool)(_2945 < 3.7613162994384766f)) { - float _2978 = (_2944 + -2.2630341053009033f) * 0.6841424107551575f; - int _2979 = int(_2978); - float _2981 = _2978 - float(_2979); - float _2983 = _global_5[_2979]; - float _2986 = _global_5[(_2979 + 1)]; - float _2991 = _2983 * 0.5f; - _3001 = dot(float3((_2981 * _2981), _2981, 1.0f), float3(mad((_global_5[(_2979 + 2)]), 0.5f, mad(_2986, -1.0f, _2991)), (_2986 - _2983), mad(_2986, 0.5f, _2991))); - } else { - _3001 = ((_2944 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3001 = -2.301030158996582f; - } - float _3003 = exp2(_3001 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _3015 = mad(_36, _3003, mad(_35, _2941, (_2879 * _34))); - _3016 = mad(_39, _3003, mad(_38, _2941, (_2879 * _37))); - _3017 = mad(_42, _3003, mad(_41, _2941, (_2879 * _40))); - } else { - _3015 = _2879; - _3016 = _2941; - _3017 = _3003; - } - float _3027 = exp2(log2(_3015 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3028 = exp2(log2(_3016 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3029 = exp2(log2(_3017 * 9.999999747378752e-05f) * 0.1593017578125f); - _3173 = exp2(log2((1.0f / ((_3027 * 18.6875f) + 1.0f)) * ((_3027 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_3028 * 18.6875f) + 1.0f)) * ((_3028 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3175 = exp2(log2((1.0f / ((_3029 * 18.6875f) + 1.0f)) * ((_3029 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _3062 = mad(0.04736635088920593f, _1705, mad(0.3395121395587921f, _1704, (_1703 * 0.613191545009613f))); - float _3065 = mad(0.01345000695437193f, _1705, mad(0.9163357615470886f, _1704, (_1703 * 0.07020691782236099f))); - float _3068 = mad(0.8696067929267883f, _1705, mad(0.1095672994852066f, _1704, (_1703 * 0.020618872717022896f))); - float _3087 = exp2(log2(mad(_36, _3068, mad(_35, _3065, (_3062 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3088 = exp2(log2(mad(_39, _3068, mad(_38, _3065, (_3062 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3089 = exp2(log2(mad(_42, _3068, mad(_41, _3065, (_3062 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3173 = exp2(log2((1.0f / ((_3087 * 18.6875f) + 1.0f)) * ((_3087 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_3088 * 18.6875f) + 1.0f)) * ((_3088 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3175 = exp2(log2((1.0f / ((_3089 * 18.6875f) + 1.0f)) * ((_3089 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _3124 = mad(0.04736635088920593f, _1693, mad(0.3395121395587921f, _1692, (_1691 * 0.613191545009613f))); - float _3127 = mad(0.01345000695437193f, _1693, mad(0.9163357615470886f, _1692, (_1691 * 0.07020691782236099f))); - float _3130 = mad(0.8696067929267883f, _1693, mad(0.1095672994852066f, _1692, (_1691 * 0.020618872717022896f))); - _3173 = mad(_36, _3130, mad(_35, _3127, (_3124 * _34))); - _3174 = mad(_39, _3130, mad(_38, _3127, (_3124 * _37))); - _3175 = mad(_42, _3130, mad(_41, _3127, (_3124 * _40))); - } else { - float _3143 = mad(0.04736635088920593f, _1719, mad(0.3395121395587921f, _1718, (_1717 * 0.613191545009613f))); - float _3146 = mad(0.01345000695437193f, _1719, mad(0.9163357615470886f, _1718, (_1717 * 0.07020691782236099f))); - float _3149 = mad(0.8696067929267883f, _1719, mad(0.1095672994852066f, _1718, (_1717 * 0.020618872717022896f))); - float _3162 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3173 = exp2(_3162 * log2(mad(_36, _3149, mad(_35, _3146, (_3143 * _34))))); - _3174 = exp2(_3162 * log2(mad(_39, _3149, mad(_38, _3146, (_3143 * _37))))); - _3175 = exp2(_3162 * log2(mad(_42, _3149, mad(_41, _3146, (_3143 * _40))))); - } - } else { - _3173 = _1703; - _3174 = _1704; - _3175 = _1705; - } - } - } - } - } - } - SV_Target.x = (_3173 * 0.9523810148239136f); - SV_Target.y = (_3174 * 0.9523810148239136f); - SV_Target.z = (_3175 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2581EB31.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2581EB31.ps_6_0.hlsl deleted file mode 100644 index 0208e6a9a..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2581EB31.ps_6_0.hlsl +++ /dev/null @@ -1,1571 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _339; - float _340; - float _341; - float _507; - float _508; - float _530; - float _531; - float _532; - float _671; - float _672; - float _693; - float _694; - float _695; - float _835; - float _836; - float _857; - float _858; - float _859; - float _996; - float _997; - float _1018; - float _1019; - float _1020; - float _1115; - float _1148; - float _1162; - float _1226; - float _1359; - float _1360; - float _1361; - float _1502; - float _1503; - float _1504; - float _1518; - float _1529; - float _1540; - float _1716; - float _1727; - float _1849; - float _1882; - float _1896; - float _1935; - float _2028; - float _2087; - float _2146; - float _2229; - float _2294; - float _2359; - float _2376; - float _2377; - float _2378; - float _2482; - float _2515; - float _2529; - float _2568; - float _2661; - float _2720; - float _2779; - float _2859; - float _2921; - float _2983; - float _2997; - float _2998; - float _2999; - float _3155; - float _3156; - float _3157; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _23 = (cb0_074w == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _158 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _160 = _132 - (_158 * _142); - float _162 = (_158 * _132) + _142; - float _167 = (4.0f - (_162 * 8.0f)) + (_160 * 2.0f); - float _173 = (((_160 * 3.0f) / _167) - _148) + select(_151, _148, _118); - float _174 = (((_162 * 2.0f) / _167) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _175 = max(_174, 1.000000013351432e-10f); - float _176 = _173 / _175; - float _179 = ((1.0f - _173) - _174) / _175; - float _189 = 0.9413792490959167f / mad(-0.16140000522136688f, _179, ((_176 * 0.8950999975204468f) + 0.266400009393692f)); - float _190 = 1.0404363870620728f / mad(0.03669999912381172f, _179, (1.7135000228881836f - (_176 * 0.7501999735832214f))); - float _191 = 1.089766502380371f / mad(1.0296000242233276f, _179, ((_176 * 0.03889999911189079f) + -0.06849999725818634f)); - float _192 = mad(_190, -0.7501999735832214f, 0.0f); - float _193 = mad(_190, 1.7135000228881836f, 0.0f); - float _194 = mad(_190, 0.03669999912381172f, -0.0f); - float _195 = mad(_191, 0.03889999911189079f, 0.0f); - float _196 = mad(_191, -0.06849999725818634f, 0.0f); - float _197 = mad(_191, 1.0296000242233276f, 0.0f); - float _200 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_189 * 0.883457362651825f))); - float _203 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_189 * 0.26293492317199707f))); - float _206 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_189 * -0.15930065512657166f))); - float _209 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_189 * 0.38695648312568665f))); - float _212 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_189 * 0.11516613513231277f))); - float _215 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_189 * -0.0697740763425827f))); - float _218 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_189 * -0.007634039502590895f))); - float _221 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_189 * -0.0022720457054674625f))); - float _224 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_189 * 0.0013765322510153055f))); - float _227 = mad(_206, 0.01933390088379383f, mad(_203, 0.2126729041337967f, (_200 * 0.4124563932418823f))); - float _230 = mad(_206, 0.11919199675321579f, mad(_203, 0.7151522040367126f, (_200 * 0.3575761020183563f))); - float _233 = mad(_206, 0.9503040909767151f, mad(_203, 0.07217500358819962f, (_200 * 0.18043750524520874f))); - float _236 = mad(_215, 0.01933390088379383f, mad(_212, 0.2126729041337967f, (_209 * 0.4124563932418823f))); - float _239 = mad(_215, 0.11919199675321579f, mad(_212, 0.7151522040367126f, (_209 * 0.3575761020183563f))); - float _242 = mad(_215, 0.9503040909767151f, mad(_212, 0.07217500358819962f, (_209 * 0.18043750524520874f))); - float _245 = mad(_224, 0.01933390088379383f, mad(_221, 0.2126729041337967f, (_218 * 0.4124563932418823f))); - float _248 = mad(_224, 0.11919199675321579f, mad(_221, 0.7151522040367126f, (_218 * 0.3575761020183563f))); - float _251 = mad(_224, 0.9503040909767151f, mad(_221, 0.07217500358819962f, (_218 * 0.18043750524520874f))); - float _281 = mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))) * _99))); - float _284 = mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))) * _99))); - float _287 = mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))) * _99))); - float _290 = mad(0.04736635088920593f, _287, mad(0.3395121395587921f, _284, (_281 * 0.613191545009613f))); - float _293 = mad(0.01345000695437193f, _287, mad(0.9163357615470886f, _284, (_281 * 0.07020691782236099f))); - float _296 = mad(0.8696067929267883f, _287, mad(0.1095672994852066f, _284, (_281 * 0.020618872717022896f))); - // bool _299 = (cb0_046x == 0); - bool _299 = (tm_flags.x == 0); - if (_299) { - float _301 = dot(float3(_290, _293, _296), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _305 = (_290 / _301) + -1.0f; - float _306 = (_293 / _301) + -1.0f; - float _307 = (_296 / _301) + -1.0f; - float _319 = (1.0f - exp2(((_301 * _301) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_305, _306, _307), float3(_305, _306, _307)) * -4.0f)); - _339 = (((mad(-0.06368283927440643f, _296, mad(-0.32929131388664246f, _293, (_290 * 1.370412826538086f))) - _290) * _319) + _290); - _340 = (((mad(-0.010861567221581936f, _296, mad(1.0970908403396606f, _293, (_290 * -0.08343426138162613f))) - _293) * _319) + _293); - _341 = (((mad(1.203694462776184f, _296, mad(-0.09862564504146576f, _293, (_290 * -0.02579325996339321f))) - _296) * _319) + _296); - } else { - _339 = _290; - _340 = _293; - _341 = _296; - } - float _342 = dot(float3(_339, _340, _341), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _356 = cb0_052w + cb0_057w; - float _370 = cb0_051w * cb0_056w; - float _384 = cb0_050w * cb0_055w; - float _398 = cb0_049w * cb0_054w; - float _409 = cb0_048w * cb0_053w; - float _413 = cb0_048x * (_339 - _342); - float _416 = cb0_048y * (_340 - _342); - float _419 = cb0_048z * (_341 - _342); - float _475 = cb0_073w + 1.0f; - float _479 = saturate(_475 * (((cb0_052x + cb0_057x) + _356) + (((cb0_051x * cb0_056x) * _370) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _398) * log2(max(0.0f, (((_413 * cb0_053x) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _384)))))); - float _480 = saturate(_475 * (((cb0_052y + cb0_057y) + _356) + (((cb0_051y * cb0_056y) * _370) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _398) * log2(max(0.0f, (((_416 * cb0_053y) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _384)))))); - float _481 = saturate(_475 * (((cb0_052z + cb0_057z) + _356) + (((cb0_051z * cb0_056z) * _370) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _398) * log2(max(0.0f, (((_419 * cb0_053z) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _384)))))); - float _485 = max(_479, max(_480, _481)); - float _486 = _485 - min(_479, min(_480, _481)); - if (!(_486 == 0.0f)) { - float _489 = _486 / _485; - if (_479 == _485) { - _507 = ((_480 - _481) / _486); - _508 = _489; - } else { - if (_480 == _485) { - _507 = (((_481 - _479) / _486) + 2.0f); - _508 = _489; - } else { - if (_481 == _485) { - _507 = (((_479 - _480) / _486) + 4.0f); - _508 = _489; - } else { - _507 = 0.0f; - _508 = _489; - } - } - } - } else { - _507 = 0.0f; - _508 = 0.0f; - } - float _510 = _507 + cb0_073z; - float _511 = floor(_510); - float _512 = _510 - _511; - float _513 = 1.0f - _508; - float _515 = 1.0f - (_512 * _508); - float _518 = 1.0f - ((1.0f - _512) * _508); - if (!(_511 == 0.0f)) { - if (!(_511 == 1.0f)) { - if (!(_511 == 2.0f)) { - if (!(_511 == 3.0f)) { - if (!(_511 == 4.0f)) { - _530 = 1.0f; - _531 = _513; - _532 = _515; - } else { - _530 = _518; - _531 = _513; - _532 = 1.0f; - } - } else { - _530 = _513; - _531 = _515; - _532 = 1.0f; - } - } else { - _530 = _513; - _531 = 1.0f; - _532 = _518; - } - } else { - _530 = _515; - _531 = 1.0f; - _532 = _513; - } - } else { - _530 = 1.0f; - _531 = _518; - _532 = _513; - } - float _535 = saturate(_342 / cb0_073x); - float _539 = (_535 * _535) * (3.0f - (_535 * 2.0f)); - float _549 = cb0_067w + cb0_052w; - float _558 = cb0_066w * cb0_051w; - float _567 = cb0_065w * cb0_050w; - float _576 = cb0_064w * cb0_049w; - float _582 = cb0_063w * cb0_048w; - float _643 = saturate((((cb0_067x + cb0_052x) + _549) + (((cb0_066x * cb0_051x) * _558) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _576) * log2(max(0.0f, (((_413 * cb0_063x) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _567))))) * _475); - float _644 = saturate((((cb0_067y + cb0_052y) + _549) + (((cb0_066y * cb0_051y) * _558) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _576) * log2(max(0.0f, (((_416 * cb0_063y) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _567))))) * _475); - float _645 = saturate((((cb0_067z + cb0_052z) + _549) + (((cb0_066z * cb0_051z) * _558) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _576) * log2(max(0.0f, (((_419 * cb0_063z) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _567))))) * _475); - float _649 = max(_643, max(_644, _645)); - float _650 = _649 - min(_643, min(_644, _645)); - if (!(_650 == 0.0f)) { - float _653 = _650 / _649; - if (_643 == _649) { - _671 = ((_644 - _645) / _650); - _672 = _653; - } else { - if (_644 == _649) { - _671 = (((_645 - _643) / _650) + 2.0f); - _672 = _653; - } else { - if (_645 == _649) { - _671 = (((_643 - _644) / _650) + 4.0f); - _672 = _653; - } else { - _671 = 0.0f; - _672 = _653; - } - } - } - } else { - _671 = 0.0f; - _672 = 0.0f; - } - float _673 = _671 + cb0_073z; - float _674 = floor(_673); - float _675 = _673 - _674; - float _676 = 1.0f - _672; - float _678 = 1.0f - (_675 * _672); - float _681 = 1.0f - ((1.0f - _675) * _672); - if (!(_674 == 0.0f)) { - if (!(_674 == 1.0f)) { - if (!(_674 == 2.0f)) { - if (!(_674 == 3.0f)) { - if (!(_674 == 4.0f)) { - _693 = 1.0f; - _694 = _676; - _695 = _678; - } else { - _693 = _681; - _694 = _676; - _695 = 1.0f; - } - } else { - _693 = _676; - _694 = _678; - _695 = 1.0f; - } - } else { - _693 = _676; - _694 = 1.0f; - _695 = _681; - } - } else { - _693 = _678; - _694 = 1.0f; - _695 = _676; - } - } else { - _693 = 1.0f; - _694 = _681; - _695 = _676; - } - float _700 = saturate((_342 - cb0_073y) / (1.0f - cb0_073y)); - float _704 = (_700 * _700) * (3.0f - (_700 * 2.0f)); - float _713 = cb0_062w + cb0_052w; - float _722 = cb0_061w * cb0_051w; - float _731 = cb0_060w * cb0_050w; - float _740 = cb0_059w * cb0_049w; - float _746 = cb0_058w * cb0_048w; - float _807 = saturate((((cb0_062x + cb0_052x) + _713) + (((cb0_061x * cb0_051x) * _722) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _740) * log2(max(0.0f, (((_413 * cb0_058x) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _731))))) * _475); - float _808 = saturate((((cb0_062y + cb0_052y) + _713) + (((cb0_061y * cb0_051y) * _722) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _740) * log2(max(0.0f, (((_416 * cb0_058y) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _731))))) * _475); - float _809 = saturate((((cb0_062z + cb0_052z) + _713) + (((cb0_061z * cb0_051z) * _722) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _740) * log2(max(0.0f, (((_419 * cb0_058z) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _731))))) * _475); - float _813 = max(_807, max(_808, _809)); - float _814 = _813 - min(_807, min(_808, _809)); - if (!(_814 == 0.0f)) { - float _817 = _814 / _813; - if (_807 == _813) { - _835 = ((_808 - _809) / _814); - _836 = _817; - } else { - if (_808 == _813) { - _835 = (((_809 - _807) / _814) + 2.0f); - _836 = _817; - } else { - if (_809 == _813) { - _835 = (((_807 - _808) / _814) + 4.0f); - _836 = _817; - } else { - _835 = 0.0f; - _836 = _817; - } - } - } - } else { - _835 = 0.0f; - _836 = 0.0f; - } - float _837 = _835 + cb0_073z; - float _838 = floor(_837); - float _839 = _837 - _838; - float _840 = 1.0f - _836; - float _842 = 1.0f - (_839 * _836); - float _845 = 1.0f - ((1.0f - _839) * _836); - if (!(_838 == 0.0f)) { - if (!(_838 == 1.0f)) { - if (!(_838 == 2.0f)) { - if (!(_838 == 3.0f)) { - if (!(_838 == 4.0f)) { - _857 = 1.0f; - _858 = _840; - _859 = _842; - } else { - _857 = _845; - _858 = _840; - _859 = 1.0f; - } - } else { - _857 = _840; - _858 = _842; - _859 = 1.0f; - } - } else { - _857 = _840; - _858 = 1.0f; - _859 = _845; - } - } else { - _857 = _842; - _858 = 1.0f; - _859 = _840; - } - } else { - _857 = 1.0f; - _858 = _845; - _859 = _840; - } - float _861 = (1.0f - _539) * _485; - float _865 = _813 * (_539 - _704); - float _869 = _704 * _649; - float _874 = ((_869 * _693) + (_861 * _530)) + (_857 * _865); - float _876 = ((_869 * _694) + (_861 * _531)) + (_858 * _865); - float _878 = ((_869 * _695) + (_861 * _532)) + (_859 * _865); - float _904 = dot(float3(_874, _876, _878), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _968 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_874 - _904)) + _904)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _475); - float _969 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_876 - _904)) + _904)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _475); - float _970 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_878 - _904)) + _904)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _475); - float _974 = max(_968, max(_969, _970)); - float _975 = _974 - min(_968, min(_969, _970)); - if (!(_975 == 0.0f)) { - float _978 = _975 / _974; - if (_968 == _974) { - _996 = ((_969 - _970) / _975); - _997 = _978; - } else { - if (_969 == _974) { - _996 = (((_970 - _968) / _975) + 2.0f); - _997 = _978; - } else { - if (_970 == _974) { - _996 = (((_968 - _969) / _975) + 4.0f); - _997 = _978; - } else { - _996 = 0.0f; - _997 = _978; - } - } - } - } else { - _996 = 0.0f; - _997 = 0.0f; - } - float _998 = _996 + cb0_073z; - float _999 = floor(_998); - float _1000 = _998 - _999; - float _1001 = 1.0f - _997; - float _1003 = 1.0f - (_1000 * _997); - float _1006 = 1.0f - ((1.0f - _1000) * _997); - if (!(_999 == 0.0f)) { - if (!(_999 == 1.0f)) { - if (!(_999 == 2.0f)) { - if (!(_999 == 3.0f)) { - if (!(_999 == 4.0f)) { - _1018 = 1.0f; - _1019 = _1001; - _1020 = _1003; - } else { - _1018 = _1006; - _1019 = _1001; - _1020 = 1.0f; - } - } else { - _1018 = _1001; - _1019 = _1003; - _1020 = 1.0f; - } - } else { - _1018 = _1001; - _1019 = 1.0f; - _1020 = _1006; - } - } else { - _1018 = _1003; - _1019 = 1.0f; - _1020 = _1001; - } - } else { - _1018 = 1.0f; - _1019 = _1006; - _1020 = _1001; - } - float _1021 = _1018 * _974; - float _1022 = _1019 * _974; - float _1023 = _1020 * _974; - float _1026 = mad(-0.0832584798336029f, _1023, mad(-0.6217905879020691f, _1022, (_1021 * 1.7050515413284302f))); - float _1029 = mad(-0.010548528283834457f, _1023, mad(1.1408027410507202f, _1022, (_1021 * -0.13025718927383423f))); - float _1032 = mad(1.152971863746643f, _1023, mad(-0.1289687603712082f, _1022, (_1021 * -0.024003278464078903f))); - float _1048 = ((mad(0.061360642313957214f, _1023, mad(-4.540197551250458e-09f, _1022, (_1021 * 0.9386394023895264f))) - _1021) * cb0_075x) + _1021; - float _1049 = ((mad(0.169205904006958f, _1023, mad(0.8307942152023315f, _1022, (_1021 * 6.775371730327606e-08f))) - _1022) * cb0_075x) + _1022; - float _1050 = (mad(-2.3283064365386963e-10f, _1022, (_1021 * -9.313225746154785e-10f)) * cb0_075x) + _1023; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _1060 = mad(0.16386905312538147f, _1050, mad(0.14067868888378143f, _1049, (_1048 * 0.6954522132873535f))); - float _1063 = mad(0.0955343246459961f, _1050, mad(0.8596711158752441f, _1049, (_1048 * 0.044794581830501556f))); - float _1066 = mad(1.0015007257461548f, _1050, mad(0.004025210160762072f, _1049, (_1048 * -0.005525882821530104f))); - float _1070 = max(max(_1060, _1063), _1066); - float _1075 = (max(_1070, 1.000000013351432e-10f) - max(min(min(_1060, _1063), _1066), 1.000000013351432e-10f)) / max(_1070, 0.009999999776482582f); - float _1088 = ((_1063 + _1060) + _1066) + (sqrt((((_1066 - _1063) * _1066) + ((_1063 - _1060) * _1063)) + ((_1060 - _1066) * _1060)) * 1.75f); - float _1089 = _1088 * 0.3333333432674408f; - float _1090 = _1075 + -0.4000000059604645f; - float _1091 = _1090 * 5.0f; - float _1095 = max((1.0f - abs(_1090 * 2.5f)), 0.0f); - float _1106 = ((float((int)(((int)(uint)((bool)(_1091 > 0.0f))) - ((int)(uint)((bool)(_1091 < 0.0f))))) * (1.0f - (_1095 * _1095))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1089 <= 0.0533333346247673f)) { - if (!(_1089 >= 0.1599999964237213f)) { - _1115 = (((0.23999999463558197f / _1088) + -0.5f) * _1106); - } else { - _1115 = 0.0f; - } - } else { - _1115 = _1106; - } - float _1116 = _1115 + 1.0f; - float _1117 = _1116 * _1060; - float _1118 = _1116 * _1063; - float _1119 = _1116 * _1066; - do { - if (!((bool)(_1117 == _1118) && (bool)(_1118 == _1119))) { - float _1126 = ((_1117 * 2.0f) - _1118) - _1119; - float _1129 = ((_1063 - _1066) * 1.7320507764816284f) * _1116; - float _1131 = atan(_1129 / _1126); - bool _1134 = (_1126 < 0.0f); - bool _1135 = (_1126 == 0.0f); - bool _1136 = (_1129 >= 0.0f); - bool _1137 = (_1129 < 0.0f); - _1148 = select((_1136 && _1135), 90.0f, select((_1137 && _1135), -90.0f, (select((_1137 && _1134), (_1131 + -3.1415927410125732f), select((_1136 && _1134), (_1131 + 3.1415927410125732f), _1131)) * 57.2957763671875f))); - } else { - _1148 = 0.0f; - } - float _1153 = min(max(select((_1148 < 0.0f), (_1148 + 360.0f), _1148), 0.0f), 360.0f); - do { - if (_1153 < -180.0f) { - _1162 = (_1153 + 360.0f); - } else { - if (_1153 > 180.0f) { - _1162 = (_1153 + -360.0f); - } else { - _1162 = _1153; - } - } - float _1166 = saturate(1.0f - abs(_1162 * 0.014814814552664757f)); - float _1170 = (_1166 * _1166) * (3.0f - (_1166 * 2.0f)); - float _1176 = ((_1170 * _1170) * ((_1075 * 0.18000000715255737f) * (0.029999999329447746f - _1117))) + _1117; - float _1186 = max(0.0f, mad(-0.21492856740951538f, _1119, mad(-0.2365107536315918f, _1118, (_1176 * 1.4514392614364624f)))); - float _1187 = max(0.0f, mad(-0.09967592358589172f, _1119, mad(1.17622971534729f, _1118, (_1176 * -0.07655377686023712f)))); - float _1188 = max(0.0f, mad(0.9977163076400757f, _1119, mad(-0.006032449658960104f, _1118, (_1176 * 0.008316148072481155f)))); - float _1189 = dot(float3(_1186, _1187, _1188), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1203 = (cb0_036w + 1.0f) - cb0_036y; - float _1206 = cb0_037x + 1.0f; - float _1208 = _1206 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1226 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1217 = (cb0_036w + 0.18000000715255737f) / _1203; - _1226 = (-0.7447274923324585f - ((log2(_1217 / (2.0f - _1217)) * 0.3465735912322998f) * (_1203 / cb0_036x))); - } - float _1229 = ((1.0f - cb0_036y) / cb0_036x) - _1226; - float _1231 = (cb0_036z / cb0_036x) - _1229; - float _1235 = log2(lerp(_1189, _1186, 0.9599999785423279f)) * 0.3010300099849701f; - float _1236 = log2(lerp(_1189, _1187, 0.9599999785423279f)) * 0.3010300099849701f; - float _1237 = log2(lerp(_1189, _1188, 0.9599999785423279f)) * 0.3010300099849701f; - float _1241 = (_1235 + _1229) * cb0_036x; - float _1242 = (_1236 + _1229) * cb0_036x; - float _1243 = (_1237 + _1229) * cb0_036x; - float _1244 = _1203 * 2.0f; - float _1247 = _1235 - _1226; - float _1248 = _1236 - _1226; - float _1249 = _1237 - _1226; - float _1250 = ((cb0_036x * -2.0f) / _1203) * 1.4426950216293335f; - float _1266 = _1208 * 2.0f; - float _1272 = ((cb0_036x * 2.0f) / _1208) * 1.4426950216293335f; - float _1291 = select((_1235 < _1226), ((_1244 / (exp2(_1250 * _1247) + 1.0f)) - cb0_036w), _1241); - float _1292 = select((_1236 < _1226), ((_1244 / (exp2(_1250 * _1248) + 1.0f)) - cb0_036w), _1242); - float _1293 = select((_1237 < _1226), ((_1244 / (exp2(_1250 * _1249) + 1.0f)) - cb0_036w), _1243); - float _1300 = _1231 - _1226; - float _1304 = saturate(_1247 / _1300); - float _1305 = saturate(_1248 / _1300); - float _1306 = saturate(_1249 / _1300); - bool _1307 = (_1231 < _1226); - float _1311 = select(_1307, (1.0f - _1304), _1304); - float _1312 = select(_1307, (1.0f - _1305), _1305); - float _1313 = select(_1307, (1.0f - _1306), _1306); - float _1332 = (((_1311 * _1311) * (select((_1235 > _1231), (_1206 - (_1266 / (exp2(_1272 * (_1235 - _1231)) + 1.0f))), _1241) - _1291)) * (3.0f - (_1311 * 2.0f))) + _1291; - float _1333 = (((_1312 * _1312) * (select((_1236 > _1231), (_1206 - (_1266 / (exp2(_1272 * (_1236 - _1231)) + 1.0f))), _1242) - _1292)) * (3.0f - (_1312 * 2.0f))) + _1292; - float _1334 = (((_1313 * _1313) * (select((_1237 > _1231), (_1206 - (_1266 / (exp2(_1272 * (_1237 - _1231)) + 1.0f))), _1243) - _1293)) * (3.0f - (_1313 * 2.0f))) + _1293; - float _1335 = dot(float3(_1332, _1333, _1334), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1359 = (((max(0.0f, (lerp(_1335, _1332, 0.9300000071525574f))) - _1048) * cb0_075z) + _1048); - _1360 = (((max(0.0f, (lerp(_1335, _1333, 0.9300000071525574f))) - _1049) * cb0_075z) + _1049); - _1361 = (((max(0.0f, (lerp(_1335, _1334, 0.9300000071525574f))) - _1050) * cb0_075z) + _1050); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1359 = _1048; - _1360 = _1049; - _1361 = _1050; - } - float _1377 = ((mad(-0.06537103652954102f, _1361, mad(1.451815478503704e-06f, _1360, (_1359 * 1.065374732017517f))) - _1359) * cb0_075x) + _1359; - float _1378 = ((mad(-0.20366770029067993f, _1361, mad(1.2036634683609009f, _1360, (_1359 * -2.57161445915699e-07f))) - _1360) * cb0_075x) + _1360; - float _1379 = ((mad(0.9999996423721313f, _1361, mad(2.0954757928848267e-08f, _1360, (_1359 * 1.862645149230957e-08f))) - _1361) * cb0_075x) + _1361; - [branch] - if (!_299) { - float _1422 = 1.0f / (dot(float3(_1026, _1029, _1032), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1432 = max(0.0f, (((_1422 * cb0_035x) + cb0_034x) * dot(float3(_1026, _1029, _1032), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1433 = max(0.0f, (((_1422 * cb0_035y) + cb0_034y) * dot(float3(_1026, _1029, _1032), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1434 = max(0.0f, (((_1422 * cb0_035z) + cb0_034z) * dot(float3(_1026, _1029, _1032), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1440 = max(0.0f, (cb0_031x - _1432)); - float _1441 = max(0.0f, (cb0_031x - _1433)); - float _1442 = max(0.0f, (cb0_031x - _1434)); - float _1444 = max(_1432, cb0_031z); - float _1445 = max(_1433, cb0_031z); - float _1446 = max(_1434, cb0_031z); - float _1491 = cb0_029w + -0.0020000000949949026f; - _1502 = ((((min(max(_1432, cb0_031x), cb0_031z) * cb0_030w) + _1491) + (((cb0_032x * _1444) + cb0_032y) * (1.0f / (_1444 + cb0_031w)))) + ((_1440 * cb0_028w) * (1.0f / (cb0_031y + _1440)))); - _1503 = ((((min(max(_1433, cb0_031x), cb0_031z) * cb0_030w) + _1491) + (((cb0_032x * _1445) + cb0_032y) * (1.0f / (_1445 + cb0_031w)))) + ((_1441 * cb0_028w) * (1.0f / (_1441 + cb0_031y)))); - _1504 = ((((min(max(_1434, cb0_031x), cb0_031z) * cb0_030w) + _1491) + ((1.0f / (_1446 + cb0_031w)) * ((cb0_032x * _1446) + cb0_032y))) + ((_1442 * cb0_028w) * (1.0f / (_1442 + cb0_031y)))); - } else { - _1502 = max(0.0f, mad(-0.0832584798336029f, _1379, mad(-0.6217905879020691f, _1378, (_1377 * 1.7050515413284302f)))); - _1503 = max(0.0f, mad(-0.010548528283834457f, _1379, mad(1.1408027410507202f, _1378, (_1377 * -0.13025718927383423f)))); - _1504 = max(0.0f, mad(1.152971863746643f, _1379, mad(-0.1289687603712082f, _1378, (_1377 * -0.024003278464078903f)))); - } - float _1505 = saturate(_1502); - float _1506 = saturate(_1503); - float _1507 = saturate(_1504); - if (_1505 < 0.0031306699384003878f) { - _1518 = (_1505 * 12.920000076293945f); - } else { - _1518 = (((pow(_1505, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1506 < 0.0031306699384003878f) { - _1529 = (_1506 * 12.920000076293945f); - } else { - _1529 = (((pow(_1506, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1507 < 0.0031306699384003878f) { - _1540 = (_1507 * 12.920000076293945f); - } else { - _1540 = (((pow(_1507, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1544 = (_1529 * 0.9375f) + 0.03125f; - float _1552 = _1540 * 15.0f; - float _1553 = floor(_1552); - float _1554 = _1552 - _1553; - float _1556 = (((_1518 * 0.9375f) + 0.03125f) + _1553) * 0.0625f; - float4 _1557 = t1.Sample(s1, float2(_1556, _1544)); - float _1561 = _1556 + 0.0625f; - float4 _1562 = t1.Sample(s1, float2(_1561, _1544)); - float _1578 = ((lerp(_1557.x, _1562.x, _1554)) * cb0_041x) + (cb0_040x * _1518); - float _1579 = ((lerp(_1557.y, _1562.y, _1554)) * cb0_041x) + (cb0_040x * _1529); - float _1580 = ((lerp(_1557.z, _1562.z, _1554)) * cb0_041x) + (cb0_040x * _1540); - float4 _1583 = t0.Sample(s0, float2(_1556, _1544)); - float4 _1587 = t0.Sample(s0, float2(_1561, _1544)); - float _1605 = cb0_038w * cb0_039z; - float _1612 = max(6.103519990574569e-05f, ((((_1583.x - _1578) + ((_1587.x - _1583.x) * _1554)) * _1605) + _1578)); - float _1613 = max(6.103519990574569e-05f, ((((_1583.y - _1579) + ((_1587.y - _1583.y) * _1554)) * _1605) + _1579)); - float _1614 = max(6.103519990574569e-05f, ((((_1583.z - _1580) + ((_1587.z - _1583.z) * _1554)) * _1605) + _1580)); - float _1636 = select((_1612 > 0.040449999272823334f), exp2(log2((_1612 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1612 * 0.07739938050508499f)); - float _1637 = select((_1613 > 0.040449999272823334f), exp2(log2((_1613 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1613 * 0.07739938050508499f)); - float _1638 = select((_1614 > 0.040449999272823334f), exp2(log2((_1614 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1614 * 0.07739938050508499f)); - float _1664 = ((((cb0_026x * _1636) + cb0_026y) * _1636) + cb0_026z) * cb0_044y; - float _1665 = ((((cb0_026x * _1637) + cb0_026y) * _1637) + cb0_026z) * cb0_044z; - float _1666 = ((((cb0_026x * _1638) + cb0_026y) * _1638) + cb0_026z) * cb0_044w; - float _1673 = ((cb0_045x - _1664) * cb0_045w) + _1664; - float _1674 = ((cb0_045y - _1665) * cb0_045w) + _1665; - float _1675 = ((cb0_045z - _1666) * cb0_045w) + _1666; - float _1676 = cb0_044y * _1026; - float _1677 = cb0_044z * _1029; - float _1678 = cb0_044w * _1032; - float _1685 = ((cb0_045x - _1676) * cb0_045w) + _1676; - float _1686 = ((cb0_045y - _1677) * cb0_045w) + _1677; - float _1687 = ((cb0_045z - _1678) * cb0_045w) + _1678; - float _1699 = exp2(log2(max(0.0f, _1673)) * cb0_027y); - float _1700 = exp2(log2(max(0.0f, _1674)) * cb0_027y); - float _1701 = exp2(log2(max(0.0f, _1675)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1699, _1700, _1701)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1699 < 0.0031306699384003878f) { - _1716 = (_1699 * 12.920000076293945f); - } else { - _1716 = (((pow(_1699, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1700 < 0.0031306699384003878f) { - _1727 = (_1700 * 12.920000076293945f); - } else { - _1727 = (((pow(_1700, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1701 < 0.0031306699384003878f) { - _3155 = _1716; - _3156 = _1727; - _3157 = (_1701 * 12.920000076293945f); - } else { - _3155 = _1716; - _3156 = _1727; - _3157 = (((pow(_1701, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1742 = mad(0.04736635088920593f, _1701, mad(0.3395121395587921f, _1700, (_1699 * 0.613191545009613f))); - float _1745 = mad(0.01345000695437193f, _1701, mad(0.9163357615470886f, _1700, (_1699 * 0.07020691782236099f))); - float _1748 = mad(0.8696067929267883f, _1701, mad(0.1095672994852066f, _1700, (_1699 * 0.020618872717022896f))); - float _1758 = max(6.103519990574569e-05f, mad(_36, _1748, mad(_35, _1745, (_1742 * _34)))); - float _1759 = max(6.103519990574569e-05f, mad(_39, _1748, mad(_38, _1745, (_1742 * _37)))); - float _1760 = max(6.103519990574569e-05f, mad(_42, _1748, mad(_41, _1745, (_1742 * _40)))); - _3155 = min((_1758 * 4.5f), ((exp2(log2(max(_1758, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3156 = min((_1759 * 4.5f), ((exp2(log2(max(_1759, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3157 = min((_1760 * 4.5f), ((exp2(log2(max(_1760, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1787 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1787) { - float _1790 = _1686 * 3.0f; - float _1791 = _1687 * 3.0f; - float _1794 = mad(0.17733481526374817f, _1791, mad(0.38297808170318604f, _1790, (_1685 * 1.31910240650177f))); - float _1797 = mad(0.09676162153482437f, _1791, mad(0.8134231567382812f, _1790, (_1685 * 0.2693769633769989f))); - float _1800 = mad(0.870704174041748f, _1791, mad(0.11154405772686005f, _1790, (_1685 * 0.05263196676969528f))); - float _1804 = max(max(_1794, _1797), _1800); - float _1809 = (max(_1804, 1.000000013351432e-10f) - max(min(min(_1794, _1797), _1800), 1.000000013351432e-10f)) / max(_1804, 0.009999999776482582f); - float _1822 = ((_1797 + _1794) + _1800) + (sqrt((((_1800 - _1797) * _1800) + ((_1797 - _1794) * _1797)) + ((_1794 - _1800) * _1794)) * 1.75f); - float _1823 = _1822 * 0.3333333432674408f; - float _1824 = _1809 + -0.4000000059604645f; - float _1825 = _1824 * 5.0f; - float _1829 = max((1.0f - abs(_1824 * 2.5f)), 0.0f); - float _1840 = ((float((int)(((int)(uint)((bool)(_1825 > 0.0f))) - ((int)(uint)((bool)(_1825 < 0.0f))))) * (1.0f - (_1829 * _1829))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1823 <= 0.0533333346247673f)) { - if (!(_1823 >= 0.1599999964237213f)) { - _1849 = (((0.23999999463558197f / _1822) + -0.5f) * _1840); - } else { - _1849 = 0.0f; - } - } else { - _1849 = _1840; - } - float _1850 = _1849 + 1.0f; - float _1851 = _1850 * _1794; - float _1852 = _1850 * _1797; - float _1853 = _1850 * _1800; - do { - if (!((bool)(_1851 == _1852) && (bool)(_1852 == _1853))) { - float _1860 = ((_1851 * 2.0f) - _1852) - _1853; - float _1863 = ((_1797 - _1800) * 1.7320507764816284f) * _1850; - float _1865 = atan(_1863 / _1860); - bool _1868 = (_1860 < 0.0f); - bool _1869 = (_1860 == 0.0f); - bool _1870 = (_1863 >= 0.0f); - bool _1871 = (_1863 < 0.0f); - _1882 = select((_1870 && _1869), 90.0f, select((_1871 && _1869), -90.0f, (select((_1871 && _1868), (_1865 + -3.1415927410125732f), select((_1870 && _1868), (_1865 + 3.1415927410125732f), _1865)) * 57.2957763671875f))); - } else { - _1882 = 0.0f; - } - float _1887 = min(max(select((_1882 < 0.0f), (_1882 + 360.0f), _1882), 0.0f), 360.0f); - do { - if (_1887 < -180.0f) { - _1896 = (_1887 + 360.0f); - } else { - if (_1887 > 180.0f) { - _1896 = (_1887 + -360.0f); - } else { - _1896 = _1887; - } - } - do { - if ((bool)(_1896 > -67.5f) && (bool)(_1896 < 67.5f)) { - float _1902 = (_1896 + 67.5f) * 0.029629629105329514f; - int _1903 = int(_1902); - float _1905 = _1902 - float((int)(_1903)); - float _1906 = _1905 * _1905; - float _1907 = _1906 * _1905; - if (_1903 == 3) { - _1935 = (((0.1666666716337204f - (_1905 * 0.5f)) + (_1906 * 0.5f)) - (_1907 * 0.1666666716337204f)); - } else { - if (_1903 == 2) { - _1935 = ((0.6666666865348816f - _1906) + (_1907 * 0.5f)); - } else { - if (_1903 == 1) { - _1935 = ((0.1666666716337204f - (_1907 * 0.5f)) + ((_1906 + _1905) * 0.5f)); - } else { - _1935 = select((_1903 == 0), (_1907 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1935 = 0.0f; - } - float _1944 = min(max(((((_1809 * 0.27000001072883606f) * (0.029999999329447746f - _1851)) * _1935) + _1851), 0.0f), 65535.0f); - float _1945 = min(max(_1852, 0.0f), 65535.0f); - float _1946 = min(max(_1853, 0.0f), 65535.0f); - float _1959 = min(max(mad(-0.21492856740951538f, _1946, mad(-0.2365107536315918f, _1945, (_1944 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1960 = min(max(mad(-0.09967592358589172f, _1946, mad(1.17622971534729f, _1945, (_1944 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1961 = min(max(mad(0.9977163076400757f, _1946, mad(-0.006032449658960104f, _1945, (_1944 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1962 = dot(float3(_1959, _1960, _1961), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1969 = ((_1959 - _1962) * 0.9599999785423279f) + _1962; - float _1970 = ((_1960 - _1962) * 0.9599999785423279f) + _1962; - float _1971 = ((_1961 - _1962) * 0.9599999785423279f) + _1962; - float _1974 = log2(select((_1969 <= 0.0f), 6.103515625e-05f, _1969)); - float _1975 = _1974 * 0.3010300099849701f; - do { - if (!(_1975 <= -5.2601776123046875f)) { - if ((bool)(_1975 > -5.2601776123046875f) && (bool)(_1975 < -0.7447274923324585f)) { - float _1983 = (_1974 * 0.19999998807907104f) + 3.494786262512207f; - int _1984 = int(_1983); - float _1986 = _1983 - float((int)(_1984)); - float _1988 = _global_0[_1984]; - float _1991 = _global_0[(_1984 + 1)]; - float _1996 = _1988 * 0.5f; - _2028 = dot(float3((_1986 * _1986), _1986, 1.0f), float3(mad((_global_0[(_1984 + 2)]), 0.5f, mad(_1991, -1.0f, _1996)), (_1991 - _1988), mad(_1991, 0.5f, _1996))); - } else { - if ((bool)(_1975 >= -0.7447274923324585f) && (bool)(_1975 < 4.673812389373779f)) { - float _2008 = (_1974 * 0.1666666567325592f) + 0.4123218357563019f; - int _2009 = int(_2008); - float _2011 = _2008 - float((int)(_2009)); - float _2013 = _global_1[_2009]; - float _2016 = _global_1[(_2009 + 1)]; - float _2021 = _2013 * 0.5f; - _2028 = dot(float3((_2011 * _2011), _2011, 1.0f), float3(mad((_global_1[(_2009 + 2)]), 0.5f, mad(_2016, -1.0f, _2021)), (_2016 - _2013), mad(_2016, 0.5f, _2021))); - } else { - _2028 = 4.0f; - } - } - } else { - _2028 = -4.0f; - } - float _2030 = exp2(_2028 * 3.321928024291992f); - float _2033 = log2(select((_1970 <= 0.0f), 6.103515625e-05f, _1970)); - float _2034 = _2033 * 0.3010300099849701f; - do { - if (!(_2034 <= -5.2601776123046875f)) { - if ((bool)(_2034 > -5.2601776123046875f) && (bool)(_2034 < -0.7447274923324585f)) { - float _2042 = (_2033 * 0.19999998807907104f) + 3.494786262512207f; - int _2043 = int(_2042); - float _2045 = _2042 - float((int)(_2043)); - float _2047 = _global_0[_2043]; - float _2050 = _global_0[(_2043 + 1)]; - float _2055 = _2047 * 0.5f; - _2087 = dot(float3((_2045 * _2045), _2045, 1.0f), float3(mad((_global_0[(_2043 + 2)]), 0.5f, mad(_2050, -1.0f, _2055)), (_2050 - _2047), mad(_2050, 0.5f, _2055))); - } else { - if ((bool)(_2034 >= -0.7447274923324585f) && (bool)(_2034 < 4.673812389373779f)) { - float _2067 = (_2033 * 0.1666666567325592f) + 0.4123218357563019f; - int _2068 = int(_2067); - float _2070 = _2067 - float((int)(_2068)); - float _2072 = _global_1[_2068]; - float _2075 = _global_1[(_2068 + 1)]; - float _2080 = _2072 * 0.5f; - _2087 = dot(float3((_2070 * _2070), _2070, 1.0f), float3(mad((_global_1[(_2068 + 2)]), 0.5f, mad(_2075, -1.0f, _2080)), (_2075 - _2072), mad(_2075, 0.5f, _2080))); - } else { - _2087 = 4.0f; - } - } - } else { - _2087 = -4.0f; - } - float _2089 = exp2(_2087 * 3.321928024291992f); - float _2092 = log2(select((_1971 <= 0.0f), 6.103515625e-05f, _1971)); - float _2093 = _2092 * 0.3010300099849701f; - do { - if (!(_2093 <= -5.2601776123046875f)) { - if ((bool)(_2093 > -5.2601776123046875f) && (bool)(_2093 < -0.7447274923324585f)) { - float _2101 = (_2092 * 0.19999998807907104f) + 3.494786262512207f; - int _2102 = int(_2101); - float _2104 = _2101 - float((int)(_2102)); - float _2106 = _global_0[_2102]; - float _2109 = _global_0[(_2102 + 1)]; - float _2114 = _2106 * 0.5f; - _2146 = dot(float3((_2104 * _2104), _2104, 1.0f), float3(mad((_global_0[(_2102 + 2)]), 0.5f, mad(_2109, -1.0f, _2114)), (_2109 - _2106), mad(_2109, 0.5f, _2114))); - } else { - if ((bool)(_2093 >= -0.7447274923324585f) && (bool)(_2093 < 4.673812389373779f)) { - float _2126 = (_2092 * 0.1666666567325592f) + 0.4123218357563019f; - int _2127 = int(_2126); - float _2129 = _2126 - float((int)(_2127)); - float _2131 = _global_1[_2127]; - float _2134 = _global_1[(_2127 + 1)]; - float _2139 = _2131 * 0.5f; - _2146 = dot(float3((_2129 * _2129), _2129, 1.0f), float3(mad((_global_1[(_2127 + 2)]), 0.5f, mad(_2134, -1.0f, _2139)), (_2134 - _2131), mad(_2134, 0.5f, _2139))); - } else { - _2146 = 4.0f; - } - } - } else { - _2146 = -4.0f; - } - float _2148 = exp2(_2146 * 3.321928024291992f); - float _2151 = mad(0.16386906802654266f, _2148, mad(0.14067870378494263f, _2089, (_2030 * 0.6954522132873535f))); - float _2154 = mad(0.0955343171954155f, _2148, mad(0.8596711158752441f, _2089, (_2030 * 0.044794563204050064f))); - float _2157 = mad(1.0015007257461548f, _2148, mad(0.004025210160762072f, _2089, (_2030 * -0.005525882821530104f))); - float _2160 = mad(-0.21492856740951538f, _2157, mad(-0.2365107536315918f, _2154, (_2151 * 1.4514392614364624f))); - float _2163 = mad(-0.09967592358589172f, _2157, mad(1.17622971534729f, _2154, (_2151 * -0.07655377686023712f))); - float _2166 = mad(0.9977163076400757f, _2157, mad(-0.006032449658960104f, _2154, (_2151 * 0.008316148072481155f))); - float _2169 = log2(select((_2160 <= 0.0f), 9.999999747378752e-05f, _2160)); - float _2170 = _2169 * 0.3010300099849701f; - do { - if (!(!(_2170 <= -3.848327875137329f))) { - _2229 = ((_2169 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2170 > -3.848327875137329f) && (bool)(_2170 < 0.6812411546707153f)) { - float _2181 = (_2169 + 12.783867835998535f) * 0.46521204710006714f; - int _2182 = int(_2181); - float _2184 = _2181 - float((int)(_2182)); - float _2186 = _global_2[_2182]; - float _2189 = _global_2[(_2182 + 1)]; - float _2194 = _2186 * 0.5f; - _2229 = dot(float3((_2184 * _2184), _2184, 1.0f), float3(mad((_global_2[(_2182 + 2)]), 0.5f, mad(_2189, -1.0f, _2194)), (_2189 - _2186), mad(_2189, 0.5f, _2194))); - } else { - if ((bool)(_2170 >= 0.6812411546707153f) && (bool)(_2170 < 3.653702974319458f)) { - float _2206 = (_2169 + -2.2630341053009033f) * 0.7089107632637024f; - int _2207 = int(_2206); - float _2209 = _2206 - float((int)(_2207)); - float _2211 = _global_3[_2207]; - float _2214 = _global_3[(_2207 + 1)]; - float _2219 = _2211 * 0.5f; - _2229 = dot(float3((_2209 * _2209), _2209, 1.0f), float3(mad((_global_3[(_2207 + 2)]), 0.5f, mad(_2214, -1.0f, _2219)), (_2214 - _2211), mad(_2214, 0.5f, _2219))); - } else { - _2229 = ((_2169 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2234 = log2(select((_2163 <= 0.0f), 9.999999747378752e-05f, _2163)); - float _2235 = _2234 * 0.3010300099849701f; - do { - if (!(!(_2235 <= -3.848327875137329f))) { - _2294 = ((_2234 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2235 > -3.848327875137329f) && (bool)(_2235 < 0.6812411546707153f)) { - float _2246 = (_2234 + 12.783867835998535f) * 0.46521204710006714f; - int _2247 = int(_2246); - float _2249 = _2246 - float((int)(_2247)); - float _2251 = _global_2[_2247]; - float _2254 = _global_2[(_2247 + 1)]; - float _2259 = _2251 * 0.5f; - _2294 = dot(float3((_2249 * _2249), _2249, 1.0f), float3(mad((_global_2[(_2247 + 2)]), 0.5f, mad(_2254, -1.0f, _2259)), (_2254 - _2251), mad(_2254, 0.5f, _2259))); - } else { - if ((bool)(_2235 >= 0.6812411546707153f) && (bool)(_2235 < 3.653702974319458f)) { - float _2271 = (_2234 + -2.2630341053009033f) * 0.7089107632637024f; - int _2272 = int(_2271); - float _2274 = _2271 - float((int)(_2272)); - float _2276 = _global_3[_2272]; - float _2279 = _global_3[(_2272 + 1)]; - float _2284 = _2276 * 0.5f; - _2294 = dot(float3((_2274 * _2274), _2274, 1.0f), float3(mad((_global_3[(_2272 + 2)]), 0.5f, mad(_2279, -1.0f, _2284)), (_2279 - _2276), mad(_2279, 0.5f, _2284))); - } else { - _2294 = ((_2234 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2299 = log2(select((_2166 <= 0.0f), 9.999999747378752e-05f, _2166)); - float _2300 = _2299 * 0.3010300099849701f; - do { - if (!(!(_2300 <= -3.848327875137329f))) { - _2359 = ((_2299 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2300 > -3.848327875137329f) && (bool)(_2300 < 0.6812411546707153f)) { - float _2311 = (_2299 + 12.783867835998535f) * 0.46521204710006714f; - int _2312 = int(_2311); - float _2314 = _2311 - float((int)(_2312)); - float _2316 = _global_2[_2312]; - float _2319 = _global_2[(_2312 + 1)]; - float _2324 = _2316 * 0.5f; - _2359 = dot(float3((_2314 * _2314), _2314, 1.0f), float3(mad((_global_2[(_2312 + 2)]), 0.5f, mad(_2319, -1.0f, _2324)), (_2319 - _2316), mad(_2319, 0.5f, _2324))); - } else { - if ((bool)(_2300 >= 0.6812411546707153f) && (bool)(_2300 < 3.653702974319458f)) { - float _2336 = (_2299 + -2.2630341053009033f) * 0.7089107632637024f; - int _2337 = int(_2336); - float _2339 = _2336 - float((int)(_2337)); - float _2341 = _global_3[_2337]; - float _2344 = _global_3[(_2337 + 1)]; - float _2349 = _2341 * 0.5f; - _2359 = dot(float3((_2339 * _2339), _2339, 1.0f), float3(mad((_global_3[(_2337 + 2)]), 0.5f, mad(_2344, -1.0f, _2349)), (_2344 - _2341), mad(_2344, 0.5f, _2349))); - } else { - _2359 = ((_2299 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2362 = exp2(_2229 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2363 = exp2(_2294 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2364 = exp2(_2359 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1787) { - _2376 = mad(_36, _2364, mad(_35, _2363, (_2362 * _34))); - _2377 = mad(_39, _2364, mad(_38, _2363, (_2362 * _37))); - _2378 = mad(_42, _2364, mad(_41, _2363, (_2362 * _40))); - } else { - _2376 = _2362; - _2377 = _2363; - _2378 = _2364; - } - float _2388 = exp2(log2(_2376 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2389 = exp2(log2(_2377 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2390 = exp2(log2(_2378 * 9.999999747378752e-05f) * 0.1593017578125f); - _3155 = exp2(log2((1.0f / ((_2388 * 18.6875f) + 1.0f)) * ((_2388 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3156 = exp2(log2((1.0f / ((_2389 * 18.6875f) + 1.0f)) * ((_2389 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3157 = exp2(log2((1.0f / ((_2390 * 18.6875f) + 1.0f)) * ((_2390 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2423 = _1686 * 3.0f; - float _2424 = _1687 * 3.0f; - float _2427 = mad(0.17733481526374817f, _2424, mad(0.38297808170318604f, _2423, (_1685 * 1.31910240650177f))); - float _2430 = mad(0.09676162153482437f, _2424, mad(0.8134231567382812f, _2423, (_1685 * 0.2693769633769989f))); - float _2433 = mad(0.870704174041748f, _2424, mad(0.11154405772686005f, _2423, (_1685 * 0.05263196676969528f))); - float _2437 = max(max(_2427, _2430), _2433); - float _2442 = (max(_2437, 1.000000013351432e-10f) - max(min(min(_2427, _2430), _2433), 1.000000013351432e-10f)) / max(_2437, 0.009999999776482582f); - float _2455 = ((_2430 + _2427) + _2433) + (sqrt((((_2433 - _2430) * _2433) + ((_2430 - _2427) * _2430)) + ((_2427 - _2433) * _2427)) * 1.75f); - float _2456 = _2455 * 0.3333333432674408f; - float _2457 = _2442 + -0.4000000059604645f; - float _2458 = _2457 * 5.0f; - float _2462 = max((1.0f - abs(_2457 * 2.5f)), 0.0f); - float _2473 = ((float((int)(((int)(uint)((bool)(_2458 > 0.0f))) - ((int)(uint)((bool)(_2458 < 0.0f))))) * (1.0f - (_2462 * _2462))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2456 <= 0.0533333346247673f)) { - if (!(_2456 >= 0.1599999964237213f)) { - _2482 = (((0.23999999463558197f / _2455) + -0.5f) * _2473); - } else { - _2482 = 0.0f; - } - } else { - _2482 = _2473; - } - float _2483 = _2482 + 1.0f; - float _2484 = _2483 * _2427; - float _2485 = _2483 * _2430; - float _2486 = _2483 * _2433; - do { - if (!((bool)(_2484 == _2485) && (bool)(_2485 == _2486))) { - float _2493 = ((_2484 * 2.0f) - _2485) - _2486; - float _2496 = ((_2430 - _2433) * 1.7320507764816284f) * _2483; - float _2498 = atan(_2496 / _2493); - bool _2501 = (_2493 < 0.0f); - bool _2502 = (_2493 == 0.0f); - bool _2503 = (_2496 >= 0.0f); - bool _2504 = (_2496 < 0.0f); - _2515 = select((_2503 && _2502), 90.0f, select((_2504 && _2502), -90.0f, (select((_2504 && _2501), (_2498 + -3.1415927410125732f), select((_2503 && _2501), (_2498 + 3.1415927410125732f), _2498)) * 57.2957763671875f))); - } else { - _2515 = 0.0f; - } - float _2520 = min(max(select((_2515 < 0.0f), (_2515 + 360.0f), _2515), 0.0f), 360.0f); - do { - if (_2520 < -180.0f) { - _2529 = (_2520 + 360.0f); - } else { - if (_2520 > 180.0f) { - _2529 = (_2520 + -360.0f); - } else { - _2529 = _2520; - } - } - do { - if ((bool)(_2529 > -67.5f) && (bool)(_2529 < 67.5f)) { - float _2535 = (_2529 + 67.5f) * 0.029629629105329514f; - int _2536 = int(_2535); - float _2538 = _2535 - float((int)(_2536)); - float _2539 = _2538 * _2538; - float _2540 = _2539 * _2538; - if (_2536 == 3) { - _2568 = (((0.1666666716337204f - (_2538 * 0.5f)) + (_2539 * 0.5f)) - (_2540 * 0.1666666716337204f)); - } else { - if (_2536 == 2) { - _2568 = ((0.6666666865348816f - _2539) + (_2540 * 0.5f)); - } else { - if (_2536 == 1) { - _2568 = ((0.1666666716337204f - (_2540 * 0.5f)) + ((_2539 + _2538) * 0.5f)); - } else { - _2568 = select((_2536 == 0), (_2540 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2568 = 0.0f; - } - float _2577 = min(max(((((_2442 * 0.27000001072883606f) * (0.029999999329447746f - _2484)) * _2568) + _2484), 0.0f), 65535.0f); - float _2578 = min(max(_2485, 0.0f), 65535.0f); - float _2579 = min(max(_2486, 0.0f), 65535.0f); - float _2592 = min(max(mad(-0.21492856740951538f, _2579, mad(-0.2365107536315918f, _2578, (_2577 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2593 = min(max(mad(-0.09967592358589172f, _2579, mad(1.17622971534729f, _2578, (_2577 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2594 = min(max(mad(0.9977163076400757f, _2579, mad(-0.006032449658960104f, _2578, (_2577 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2595 = dot(float3(_2592, _2593, _2594), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2602 = ((_2592 - _2595) * 0.9599999785423279f) + _2595; - float _2603 = ((_2593 - _2595) * 0.9599999785423279f) + _2595; - float _2604 = ((_2594 - _2595) * 0.9599999785423279f) + _2595; - float _2607 = log2(select((_2602 <= 0.0f), 6.103515625e-05f, _2602)); - float _2608 = _2607 * 0.3010300099849701f; - do { - if (!(_2608 <= -5.2601776123046875f)) { - if ((bool)(_2608 > -5.2601776123046875f) && (bool)(_2608 < -0.7447274923324585f)) { - float _2616 = (_2607 * 0.19999998807907104f) + 3.494786262512207f; - int _2617 = int(_2616); - float _2619 = _2616 - float((int)(_2617)); - float _2621 = _global_0[_2617]; - float _2624 = _global_0[(_2617 + 1)]; - float _2629 = _2621 * 0.5f; - _2661 = dot(float3((_2619 * _2619), _2619, 1.0f), float3(mad((_global_0[(_2617 + 2)]), 0.5f, mad(_2624, -1.0f, _2629)), (_2624 - _2621), mad(_2624, 0.5f, _2629))); - } else { - if ((bool)(_2608 >= -0.7447274923324585f) && (bool)(_2608 < 4.673812389373779f)) { - float _2641 = (_2607 * 0.1666666567325592f) + 0.4123218357563019f; - int _2642 = int(_2641); - float _2644 = _2641 - float((int)(_2642)); - float _2646 = _global_1[_2642]; - float _2649 = _global_1[(_2642 + 1)]; - float _2654 = _2646 * 0.5f; - _2661 = dot(float3((_2644 * _2644), _2644, 1.0f), float3(mad((_global_1[(_2642 + 2)]), 0.5f, mad(_2649, -1.0f, _2654)), (_2649 - _2646), mad(_2649, 0.5f, _2654))); - } else { - _2661 = 4.0f; - } - } - } else { - _2661 = -4.0f; - } - float _2663 = exp2(_2661 * 3.321928024291992f); - float _2666 = log2(select((_2603 <= 0.0f), 6.103515625e-05f, _2603)); - float _2667 = _2666 * 0.3010300099849701f; - do { - if (!(_2667 <= -5.2601776123046875f)) { - if ((bool)(_2667 > -5.2601776123046875f) && (bool)(_2667 < -0.7447274923324585f)) { - float _2675 = (_2666 * 0.19999998807907104f) + 3.494786262512207f; - int _2676 = int(_2675); - float _2678 = _2675 - float((int)(_2676)); - float _2680 = _global_0[_2676]; - float _2683 = _global_0[(_2676 + 1)]; - float _2688 = _2680 * 0.5f; - _2720 = dot(float3((_2678 * _2678), _2678, 1.0f), float3(mad((_global_0[(_2676 + 2)]), 0.5f, mad(_2683, -1.0f, _2688)), (_2683 - _2680), mad(_2683, 0.5f, _2688))); - } else { - if ((bool)(_2667 >= -0.7447274923324585f) && (bool)(_2667 < 4.673812389373779f)) { - float _2700 = (_2666 * 0.1666666567325592f) + 0.4123218357563019f; - int _2701 = int(_2700); - float _2703 = _2700 - float((int)(_2701)); - float _2705 = _global_1[_2701]; - float _2708 = _global_1[(_2701 + 1)]; - float _2713 = _2705 * 0.5f; - _2720 = dot(float3((_2703 * _2703), _2703, 1.0f), float3(mad((_global_1[(_2701 + 2)]), 0.5f, mad(_2708, -1.0f, _2713)), (_2708 - _2705), mad(_2708, 0.5f, _2713))); - } else { - _2720 = 4.0f; - } - } - } else { - _2720 = -4.0f; - } - float _2722 = exp2(_2720 * 3.321928024291992f); - float _2725 = log2(select((_2604 <= 0.0f), 6.103515625e-05f, _2604)); - float _2726 = _2725 * 0.3010300099849701f; - do { - if (!(_2726 <= -5.2601776123046875f)) { - if ((bool)(_2726 > -5.2601776123046875f) && (bool)(_2726 < -0.7447274923324585f)) { - float _2734 = (_2725 * 0.19999998807907104f) + 3.494786262512207f; - int _2735 = int(_2734); - float _2737 = _2734 - float((int)(_2735)); - float _2739 = _global_0[_2735]; - float _2742 = _global_0[(_2735 + 1)]; - float _2747 = _2739 * 0.5f; - _2779 = dot(float3((_2737 * _2737), _2737, 1.0f), float3(mad((_global_0[(_2735 + 2)]), 0.5f, mad(_2742, -1.0f, _2747)), (_2742 - _2739), mad(_2742, 0.5f, _2747))); - } else { - if ((bool)(_2726 >= -0.7447274923324585f) && (bool)(_2726 < 4.673812389373779f)) { - float _2759 = (_2725 * 0.1666666567325592f) + 0.4123218357563019f; - int _2760 = int(_2759); - float _2762 = _2759 - float((int)(_2760)); - float _2764 = _global_1[_2760]; - float _2767 = _global_1[(_2760 + 1)]; - float _2772 = _2764 * 0.5f; - _2779 = dot(float3((_2762 * _2762), _2762, 1.0f), float3(mad((_global_1[(_2760 + 2)]), 0.5f, mad(_2767, -1.0f, _2772)), (_2767 - _2764), mad(_2767, 0.5f, _2772))); - } else { - _2779 = 4.0f; - } - } - } else { - _2779 = -4.0f; - } - float _2781 = exp2(_2779 * 3.321928024291992f); - float _2784 = mad(0.16386906802654266f, _2781, mad(0.14067870378494263f, _2722, (_2663 * 0.6954522132873535f))); - float _2787 = mad(0.0955343171954155f, _2781, mad(0.8596711158752441f, _2722, (_2663 * 0.044794563204050064f))); - float _2790 = mad(1.0015007257461548f, _2781, mad(0.004025210160762072f, _2722, (_2663 * -0.005525882821530104f))); - float _2793 = mad(-0.21492856740951538f, _2790, mad(-0.2365107536315918f, _2787, (_2784 * 1.4514392614364624f))); - float _2796 = mad(-0.09967592358589172f, _2790, mad(1.17622971534729f, _2787, (_2784 * -0.07655377686023712f))); - float _2799 = mad(0.9977163076400757f, _2790, mad(-0.006032449658960104f, _2787, (_2784 * 0.008316148072481155f))); - float _2802 = log2(select((_2793 <= 0.0f), 9.999999747378752e-05f, _2793)); - float _2803 = _2802 * 0.3010300099849701f; - do { - if (!(_2803 <= -3.848327875137329f)) { - if ((bool)(_2803 > -3.848327875137329f) && (bool)(_2803 < 0.6812411546707153f)) { - float _2811 = (_2802 + 12.783867835998535f) * 0.46521204710006714f; - int _2812 = int(_2811); - float _2814 = _2811 - float((int)(_2812)); - float _2816 = _global_4[_2812]; - float _2819 = _global_4[(_2812 + 1)]; - float _2824 = _2816 * 0.5f; - _2859 = dot(float3((_2814 * _2814), _2814, 1.0f), float3(mad((_global_4[(_2812 + 2)]), 0.5f, mad(_2819, -1.0f, _2824)), (_2819 - _2816), mad(_2819, 0.5f, _2824))); - } else { - if ((bool)(_2803 >= 0.6812411546707153f) && (bool)(_2803 < 3.7613162994384766f)) { - float _2836 = (_2802 + -2.2630341053009033f) * 0.6841424107551575f; - int _2837 = int(_2836); - float _2839 = _2836 - float((int)(_2837)); - float _2841 = _global_5[_2837]; - float _2844 = _global_5[(_2837 + 1)]; - float _2849 = _2841 * 0.5f; - _2859 = dot(float3((_2839 * _2839), _2839, 1.0f), float3(mad((_global_5[(_2837 + 2)]), 0.5f, mad(_2844, -1.0f, _2849)), (_2844 - _2841), mad(_2844, 0.5f, _2849))); - } else { - _2859 = ((_2802 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2859 = -2.301030158996582f; - } - float _2861 = exp2(_2859 * 3.321928024291992f); - float _2864 = log2(select((_2796 <= 0.0f), 9.999999747378752e-05f, _2796)); - float _2865 = _2864 * 0.3010300099849701f; - do { - if (!(_2865 <= -3.848327875137329f)) { - if ((bool)(_2865 > -3.848327875137329f) && (bool)(_2865 < 0.6812411546707153f)) { - float _2873 = (_2864 + 12.783867835998535f) * 0.46521204710006714f; - int _2874 = int(_2873); - float _2876 = _2873 - float((int)(_2874)); - float _2878 = _global_4[_2874]; - float _2881 = _global_4[(_2874 + 1)]; - float _2886 = _2878 * 0.5f; - _2921 = dot(float3((_2876 * _2876), _2876, 1.0f), float3(mad((_global_4[(_2874 + 2)]), 0.5f, mad(_2881, -1.0f, _2886)), (_2881 - _2878), mad(_2881, 0.5f, _2886))); - } else { - if ((bool)(_2865 >= 0.6812411546707153f) && (bool)(_2865 < 3.7613162994384766f)) { - float _2898 = (_2864 + -2.2630341053009033f) * 0.6841424107551575f; - int _2899 = int(_2898); - float _2901 = _2898 - float((int)(_2899)); - float _2903 = _global_5[_2899]; - float _2906 = _global_5[(_2899 + 1)]; - float _2911 = _2903 * 0.5f; - _2921 = dot(float3((_2901 * _2901), _2901, 1.0f), float3(mad((_global_5[(_2899 + 2)]), 0.5f, mad(_2906, -1.0f, _2911)), (_2906 - _2903), mad(_2906, 0.5f, _2911))); - } else { - _2921 = ((_2864 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2921 = -2.301030158996582f; - } - float _2923 = exp2(_2921 * 3.321928024291992f); - float _2926 = log2(select((_2799 <= 0.0f), 9.999999747378752e-05f, _2799)); - float _2927 = _2926 * 0.3010300099849701f; - do { - if (!(_2927 <= -3.848327875137329f)) { - if ((bool)(_2927 > -3.848327875137329f) && (bool)(_2927 < 0.6812411546707153f)) { - float _2935 = (_2926 + 12.783867835998535f) * 0.46521204710006714f; - int _2936 = int(_2935); - float _2938 = _2935 - float((int)(_2936)); - float _2940 = _global_4[_2936]; - float _2943 = _global_4[(_2936 + 1)]; - float _2948 = _2940 * 0.5f; - _2983 = dot(float3((_2938 * _2938), _2938, 1.0f), float3(mad((_global_4[(_2936 + 2)]), 0.5f, mad(_2943, -1.0f, _2948)), (_2943 - _2940), mad(_2943, 0.5f, _2948))); - } else { - if ((bool)(_2927 >= 0.6812411546707153f) && (bool)(_2927 < 3.7613162994384766f)) { - float _2960 = (_2926 + -2.2630341053009033f) * 0.6841424107551575f; - int _2961 = int(_2960); - float _2963 = _2960 - float((int)(_2961)); - float _2965 = _global_5[_2961]; - float _2968 = _global_5[(_2961 + 1)]; - float _2973 = _2965 * 0.5f; - _2983 = dot(float3((_2963 * _2963), _2963, 1.0f), float3(mad((_global_5[(_2961 + 2)]), 0.5f, mad(_2968, -1.0f, _2973)), (_2968 - _2965), mad(_2968, 0.5f, _2973))); - } else { - _2983 = ((_2926 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2983 = -2.301030158996582f; - } - float _2985 = exp2(_2983 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _2997 = mad(_36, _2985, mad(_35, _2923, (_2861 * _34))); - _2998 = mad(_39, _2985, mad(_38, _2923, (_2861 * _37))); - _2999 = mad(_42, _2985, mad(_41, _2923, (_2861 * _40))); - } else { - _2997 = _2861; - _2998 = _2923; - _2999 = _2985; - } - float _3009 = exp2(log2(_2997 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3010 = exp2(log2(_2998 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3011 = exp2(log2(_2999 * 9.999999747378752e-05f) * 0.1593017578125f); - _3155 = exp2(log2((1.0f / ((_3009 * 18.6875f) + 1.0f)) * ((_3009 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3156 = exp2(log2((1.0f / ((_3010 * 18.6875f) + 1.0f)) * ((_3010 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3157 = exp2(log2((1.0f / ((_3011 * 18.6875f) + 1.0f)) * ((_3011 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _3044 = mad(0.04736635088920593f, _1687, mad(0.3395121395587921f, _1686, (_1685 * 0.613191545009613f))); - float _3047 = mad(0.01345000695437193f, _1687, mad(0.9163357615470886f, _1686, (_1685 * 0.07020691782236099f))); - float _3050 = mad(0.8696067929267883f, _1687, mad(0.1095672994852066f, _1686, (_1685 * 0.020618872717022896f))); - float _3069 = exp2(log2(mad(_36, _3050, mad(_35, _3047, (_3044 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3070 = exp2(log2(mad(_39, _3050, mad(_38, _3047, (_3044 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3071 = exp2(log2(mad(_42, _3050, mad(_41, _3047, (_3044 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3155 = exp2(log2((1.0f / ((_3069 * 18.6875f) + 1.0f)) * ((_3069 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3156 = exp2(log2((1.0f / ((_3070 * 18.6875f) + 1.0f)) * ((_3070 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3157 = exp2(log2((1.0f / ((_3071 * 18.6875f) + 1.0f)) * ((_3071 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _3106 = mad(0.04736635088920593f, _1675, mad(0.3395121395587921f, _1674, (_1673 * 0.613191545009613f))); - float _3109 = mad(0.01345000695437193f, _1675, mad(0.9163357615470886f, _1674, (_1673 * 0.07020691782236099f))); - float _3112 = mad(0.8696067929267883f, _1675, mad(0.1095672994852066f, _1674, (_1673 * 0.020618872717022896f))); - _3155 = mad(_36, _3112, mad(_35, _3109, (_3106 * _34))); - _3156 = mad(_39, _3112, mad(_38, _3109, (_3106 * _37))); - _3157 = mad(_42, _3112, mad(_41, _3109, (_3106 * _40))); - } else { - float _3125 = mad(0.04736635088920593f, _1701, mad(0.3395121395587921f, _1700, (_1699 * 0.613191545009613f))); - float _3128 = mad(0.01345000695437193f, _1701, mad(0.9163357615470886f, _1700, (_1699 * 0.07020691782236099f))); - float _3131 = mad(0.8696067929267883f, _1701, mad(0.1095672994852066f, _1700, (_1699 * 0.020618872717022896f))); - float _3144 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3155 = exp2(log2(mad(_36, _3131, mad(_35, _3128, (_3125 * _34)))) * _3144); - _3156 = exp2(log2(mad(_39, _3131, mad(_38, _3128, (_3125 * _37)))) * _3144); - _3157 = exp2(log2(mad(_42, _3131, mad(_41, _3128, (_3125 * _40)))) * _3144); - } - } else { - _3155 = _1685; - _3156 = _1686; - _3157 = _1687; - } - } - } - } - } - } - SV_Target.x = (_3155 * 0.9523810148239136f); - SV_Target.y = (_3156 * 0.9523810148239136f); - SV_Target.z = (_3157 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2CFBFE7A.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2CFBFE7A.ps_6_0.hlsl deleted file mode 100644 index 0eeb03ea3..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x2CFBFE7A.ps_6_0.hlsl +++ /dev/null @@ -1,1506 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _338; - float _339; - float _340; - float _506; - float _507; - float _529; - float _530; - float _531; - float _676; - float _677; - float _698; - float _699; - float _700; - float _846; - float _847; - float _868; - float _869; - float _870; - float _1005; - float _1006; - float _1027; - float _1028; - float _1029; - float _1124; - float _1157; - float _1171; - float _1235; - float _1373; - float _1374; - float _1375; - float _1518; - float _1519; - float _1520; - float _1534; - float _1545; - float _1556; - float _1707; - float _1718; - float _1840; - float _1873; - float _1887; - float _1926; - float _2019; - float _2078; - float _2137; - float _2220; - float _2285; - float _2350; - float _2367; - float _2368; - float _2369; - float _2473; - float _2506; - float _2520; - float _2559; - float _2652; - float _2711; - float _2770; - float _2850; - float _2912; - float _2974; - float _2988; - float _2989; - float _2990; - float _3146; - float _3147; - float _3148; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _21 = ((uint)(cb0_074y) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _155 = cb0_047y * 0.05000000074505806f; - float _158 = _130 - ((_155 * _140) * _154); - float _161 = ((_155 * _130) * _154) + _140; - float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); - float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); - float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _174 = max(_173, 1.000000013351432e-10f); - float _175 = _172 / _174; - float _178 = ((1.0f - _172) - _173) / _174; - float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); - float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); - float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); - float _191 = mad(_189, -0.7501999735832214f, 0.0f); - float _192 = mad(_189, 1.7135000228881836f, 0.0f); - float _193 = mad(_189, 0.03669999912381172f, -0.0f); - float _194 = mad(_190, 0.03889999911189079f, 0.0f); - float _195 = mad(_190, -0.06849999725818634f, 0.0f); - float _196 = mad(_190, 1.0296000242233276f, 0.0f); - float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); - float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); - float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); - float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); - float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); - float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); - float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); - float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); - float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); - float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); - float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); - float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); - float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); - float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); - float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); - float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); - float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); - float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); - float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); - float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); - float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); - float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); - float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); - float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); - // bool _298 = ((uint)(cb0_046x) == 0); - bool _298 = ((uint)(tm_flags.x) == 0); - if (_298) { - float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _304 = (_289 / _300) + -1.0f; - float _305 = (_292 / _300) + -1.0f; - float _306 = (_295 / _300) + -1.0f; - float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); - _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); - _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); - _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); - } else { - _338 = _289; - _339 = _292; - _340 = _295; - } - float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _355 = cb0_052w + cb0_057w; - float _369 = cb0_051w * cb0_056w; - float _383 = cb0_050w * cb0_055w; - float _397 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = _338 - _341; - float _416 = _339 - _341; - float _417 = _340 - _341; - float _474 = cb0_073w + 1.0f; - float _478 = saturate(_474 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383)))))); - float _479 = saturate(_474 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383)))))); - float _480 = saturate(_474 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383)))))); - float _484 = max(_478, max(_479, _480)); - float _485 = _484 - min(_478, min(_479, _480)); - if (!(_485 == 0.0f)) { - float _488 = _485 / _484; - if (_478 == _484) { - _506 = ((_479 - _480) / _485); - _507 = _488; - } else { - if (_479 == _484) { - _506 = (((_480 - _478) / _485) + 2.0f); - _507 = _488; - } else { - if (_480 == _484) { - _506 = (((_478 - _479) / _485) + 4.0f); - _507 = _488; - } else { - _506 = 0.0f; - _507 = _488; - } - } - } - } else { - _506 = 0.0f; - _507 = 0.0f; - } - float _509 = cb0_073z + _506; - float _510 = floor(_509); - float _511 = _509 - _510; - float _512 = 1.0f - _507; - float _514 = 1.0f - (_511 * _507); - float _517 = 1.0f - ((1.0f - _511) * _507); - if (!(_510 == 0.0f)) { - if (!(_510 == 1.0f)) { - if (!(_510 == 2.0f)) { - if (!(_510 == 3.0f)) { - if (!(_510 == 4.0f)) { - _529 = 1.0f; - _530 = _512; - _531 = _514; - } else { - _529 = _517; - _530 = _512; - _531 = 1.0f; - } - } else { - _529 = _512; - _530 = _514; - _531 = 1.0f; - } - } else { - _529 = _512; - _530 = 1.0f; - _531 = _517; - } - } else { - _529 = _514; - _530 = 1.0f; - _531 = _512; - } - } else { - _529 = 1.0f; - _530 = _517; - _531 = _512; - } - float _537 = saturate(_341 / cb0_073x); - float _541 = (_537 * _537) * (3.0f - (_537 * 2.0f)); - float _542 = 1.0f - _541; - float _551 = cb0_052w + cb0_067w; - float _560 = cb0_051w * cb0_066w; - float _569 = cb0_050w * cb0_065w; - float _578 = cb0_049w * cb0_064w; - float _587 = cb0_048w * cb0_063w; - float _648 = saturate(_474 * (((cb0_052x + cb0_067x) + _551) + (((cb0_051x * cb0_066x) * _560) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _578) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _587) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _569)))))); - float _649 = saturate(_474 * (((cb0_052y + cb0_067y) + _551) + (((cb0_051y * cb0_066y) * _560) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _578) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _587) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _569)))))); - float _650 = saturate(_474 * (((cb0_052z + cb0_067z) + _551) + (((cb0_051z * cb0_066z) * _560) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _578) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _587) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _569)))))); - float _654 = max(_648, max(_649, _650)); - float _655 = _654 - min(_648, min(_649, _650)); - if (!(_655 == 0.0f)) { - float _658 = _655 / _654; - if (_648 == _654) { - _676 = ((_649 - _650) / _655); - _677 = _658; - } else { - if (_649 == _654) { - _676 = (((_650 - _648) / _655) + 2.0f); - _677 = _658; - } else { - if (_650 == _654) { - _676 = (((_648 - _649) / _655) + 4.0f); - _677 = _658; - } else { - _676 = 0.0f; - _677 = _658; - } - } - } - } else { - _676 = 0.0f; - _677 = 0.0f; - } - float _678 = cb0_073z + _676; - float _679 = floor(_678); - float _680 = _678 - _679; - float _681 = 1.0f - _677; - float _683 = 1.0f - (_680 * _677); - float _686 = 1.0f - ((1.0f - _680) * _677); - if (!(_679 == 0.0f)) { - if (!(_679 == 1.0f)) { - if (!(_679 == 2.0f)) { - if (!(_679 == 3.0f)) { - if (!(_679 == 4.0f)) { - _698 = 1.0f; - _699 = _681; - _700 = _683; - } else { - _698 = _686; - _699 = _681; - _700 = 1.0f; - } - } else { - _698 = _681; - _699 = _683; - _700 = 1.0f; - } - } else { - _698 = _681; - _699 = 1.0f; - _700 = _686; - } - } else { - _698 = _683; - _699 = 1.0f; - _700 = _681; - } - } else { - _698 = 1.0f; - _699 = _686; - _700 = _681; - } - float _708 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); - float _712 = (_708 * _708) * (3.0f - (_708 * 2.0f)); - float _721 = cb0_052w + cb0_062w; - float _730 = cb0_051w * cb0_061w; - float _739 = cb0_050w * cb0_060w; - float _748 = cb0_049w * cb0_059w; - float _757 = cb0_048w * cb0_058w; - float _818 = saturate(_474 * (((cb0_052x + cb0_062x) + _721) + (((cb0_051x * cb0_061x) * _730) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _748) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _757) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _739)))))); - float _819 = saturate(_474 * (((cb0_052y + cb0_062y) + _721) + (((cb0_051y * cb0_061y) * _730) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _748) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _757) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _739)))))); - float _820 = saturate(_474 * (((cb0_052z + cb0_062z) + _721) + (((cb0_051z * cb0_061z) * _730) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _748) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _757) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _739)))))); - float _824 = max(_818, max(_819, _820)); - float _825 = _824 - min(_818, min(_819, _820)); - if (!(_825 == 0.0f)) { - float _828 = _825 / _824; - if (_818 == _824) { - _846 = ((_819 - _820) / _825); - _847 = _828; - } else { - if (_819 == _824) { - _846 = (((_820 - _818) / _825) + 2.0f); - _847 = _828; - } else { - if (_820 == _824) { - _846 = (((_818 - _819) / _825) + 4.0f); - _847 = _828; - } else { - _846 = 0.0f; - _847 = _828; - } - } - } - } else { - _846 = 0.0f; - _847 = 0.0f; - } - float _848 = cb0_073z + _846; - float _849 = floor(_848); - float _850 = _848 - _849; - float _851 = 1.0f - _847; - float _853 = 1.0f - (_850 * _847); - float _856 = 1.0f - ((1.0f - _850) * _847); - if (!(_849 == 0.0f)) { - if (!(_849 == 1.0f)) { - if (!(_849 == 2.0f)) { - if (!(_849 == 3.0f)) { - if (!(_849 == 4.0f)) { - _868 = 1.0f; - _869 = _851; - _870 = _853; - } else { - _868 = _856; - _869 = _851; - _870 = 1.0f; - } - } else { - _868 = _851; - _869 = _853; - _870 = 1.0f; - } - } else { - _868 = _851; - _869 = 1.0f; - _870 = _856; - } - } else { - _868 = _853; - _869 = 1.0f; - _870 = _851; - } - } else { - _868 = 1.0f; - _869 = _856; - _870 = _851; - } - float _875 = _824 * (_541 - _712); - float _883 = (((_698 * _654) * _712) + ((_529 * _484) * _542)) + (_875 * _868); - float _885 = (((_699 * _654) * _712) + ((_530 * _484) * _542)) + (_875 * _869); - float _887 = (((_700 * _654) * _712) + ((_531 * _484) * _542)) + (_875 * _870); - float _913 = dot(float3(_883, _885, _887), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _977 = saturate(_474 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_883 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _978 = saturate(_474 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_885 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _979 = saturate(_474 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_887 - _913)) + _913)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _983 = max(_977, max(_978, _979)); - float _984 = _983 - min(_977, min(_978, _979)); - if (!(_984 == 0.0f)) { - float _987 = _984 / _983; - if (_977 == _983) { - _1005 = ((_978 - _979) / _984); - _1006 = _987; - } else { - if (_978 == _983) { - _1005 = (((_979 - _977) / _984) + 2.0f); - _1006 = _987; - } else { - if (_979 == _983) { - _1005 = (((_977 - _978) / _984) + 4.0f); - _1006 = _987; - } else { - _1005 = 0.0f; - _1006 = _987; - } - } - } - } else { - _1005 = 0.0f; - _1006 = 0.0f; - } - float _1007 = cb0_073z + _1005; - float _1008 = floor(_1007); - float _1009 = _1007 - _1008; - float _1010 = 1.0f - _1006; - float _1012 = 1.0f - (_1009 * _1006); - float _1015 = 1.0f - ((1.0f - _1009) * _1006); - if (!(_1008 == 0.0f)) { - if (!(_1008 == 1.0f)) { - if (!(_1008 == 2.0f)) { - if (!(_1008 == 3.0f)) { - if (!(_1008 == 4.0f)) { - _1027 = 1.0f; - _1028 = _1010; - _1029 = _1012; - } else { - _1027 = _1015; - _1028 = _1010; - _1029 = 1.0f; - } - } else { - _1027 = _1010; - _1028 = _1012; - _1029 = 1.0f; - } - } else { - _1027 = _1010; - _1028 = 1.0f; - _1029 = _1015; - } - } else { - _1027 = _1012; - _1028 = 1.0f; - _1029 = _1010; - } - } else { - _1027 = 1.0f; - _1028 = _1015; - _1029 = _1010; - } - float _1030 = _1027 * _983; - float _1031 = _1028 * _983; - float _1032 = _1029 * _983; - float _1035 = mad(-0.0832584798336029f, _1032, mad(-0.6217905879020691f, _1031, (_1030 * 1.7050515413284302f))); - float _1038 = mad(-0.010548528283834457f, _1032, mad(1.1408027410507202f, _1031, (_1030 * -0.13025718927383423f))); - float _1041 = mad(1.152971863746643f, _1032, mad(-0.1289687603712082f, _1031, (_1030 * -0.024003278464078903f))); - float _1057 = ((mad(0.061360642313957214f, _1032, mad(-4.540197551250458e-09f, _1031, (_1030 * 0.9386394023895264f))) - _1030) * cb0_074z) + _1030; - float _1058 = ((mad(0.169205904006958f, _1032, mad(0.8307942152023315f, _1031, (_1030 * 6.775371730327606e-08f))) - _1031) * cb0_074z) + _1031; - float _1059 = (mad(-2.3283064365386963e-10f, _1031, (_1030 * -9.313225746154785e-10f)) * cb0_074z) + _1032; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1069 = mad(0.16386905312538147f, _1059, mad(0.14067868888378143f, _1058, (_1057 * 0.6954522132873535f))); - float _1072 = mad(0.0955343246459961f, _1059, mad(0.8596711158752441f, _1058, (_1057 * 0.044794581830501556f))); - float _1075 = mad(1.0015007257461548f, _1059, mad(0.004025210160762072f, _1058, (_1057 * -0.005525882821530104f))); - float _1079 = max(max(_1069, _1072), _1075); - float _1084 = (max(_1079, 1.000000013351432e-10f) - max(min(min(_1069, _1072), _1075), 1.000000013351432e-10f)) / max(_1079, 0.009999999776482582f); - float _1097 = ((_1072 + _1069) + _1075) + (sqrt((((_1075 - _1072) * _1075) + ((_1072 - _1069) * _1072)) + ((_1069 - _1075) * _1069)) * 1.75f); - float _1098 = _1097 * 0.3333333432674408f; - float _1099 = _1084 + -0.4000000059604645f; - float _1100 = _1099 * 5.0f; - float _1104 = max((1.0f - abs(_1099 * 2.5f)), 0.0f); - float _1115 = ((float(((int)(uint)((bool)(_1100 > 0.0f))) - ((int)(uint)((bool)(_1100 < 0.0f)))) * (1.0f - (_1104 * _1104))) + 1.0f) * 0.02500000037252903f; - if (!(_1098 <= 0.0533333346247673f)) { - if (!(_1098 >= 0.1599999964237213f)) { - _1124 = (((0.23999999463558197f / _1097) + -0.5f) * _1115); - } else { - _1124 = 0.0f; - } - } else { - _1124 = _1115; - } - float _1125 = _1124 + 1.0f; - float _1126 = _1125 * _1069; - float _1127 = _1125 * _1072; - float _1128 = _1125 * _1075; - if (!((bool)(_1126 == _1127) && (bool)(_1127 == _1128))) { - float _1135 = ((_1126 * 2.0f) - _1127) - _1128; - float _1138 = ((_1072 - _1075) * 1.7320507764816284f) * _1125; - float _1140 = atan(_1138 / _1135); - bool _1143 = (_1135 < 0.0f); - bool _1144 = (_1135 == 0.0f); - bool _1145 = (_1138 >= 0.0f); - bool _1146 = (_1138 < 0.0f); - _1157 = select((_1145 && _1144), 90.0f, select((_1146 && _1144), -90.0f, (select((_1146 && _1143), (_1140 + -3.1415927410125732f), select((_1145 && _1143), (_1140 + 3.1415927410125732f), _1140)) * 57.2957763671875f))); - } else { - _1157 = 0.0f; - } - float _1162 = min(max(select((_1157 < 0.0f), (_1157 + 360.0f), _1157), 0.0f), 360.0f); - if (_1162 < -180.0f) { - _1171 = (_1162 + 360.0f); - } else { - if (_1162 > 180.0f) { - _1171 = (_1162 + -360.0f); - } else { - _1171 = _1162; - } - } - float _1175 = saturate(1.0f - abs(_1171 * 0.014814814552664757f)); - float _1179 = (_1175 * _1175) * (3.0f - (_1175 * 2.0f)); - float _1185 = ((_1179 * _1179) * ((_1084 * 0.18000000715255737f) * (0.029999999329447746f - _1126))) + _1126; - float _1195 = max(0.0f, mad(-0.21492856740951538f, _1128, mad(-0.2365107536315918f, _1127, (_1185 * 1.4514392614364624f)))); - float _1196 = max(0.0f, mad(-0.09967592358589172f, _1128, mad(1.17622971534729f, _1127, (_1185 * -0.07655377686023712f)))); - float _1197 = max(0.0f, mad(0.9977163076400757f, _1128, mad(-0.006032449658960104f, _1127, (_1185 * 0.008316148072481155f)))); - float _1198 = dot(float3(_1195, _1196, _1197), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1212 = (cb0_036w + 1.0f) - cb0_036y; - float _1215 = cb0_037x + 1.0f; - float _1217 = _1215 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1235 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1226 = (cb0_036w + 0.18000000715255737f) / _1212; - _1235 = (-0.7447274923324585f - ((log2(_1226 / (2.0f - _1226)) * 0.3465735912322998f) * (_1212 / cb0_036x))); - } - float _1238 = ((1.0f - cb0_036y) / cb0_036x) - _1235; - float _1240 = (cb0_036z / cb0_036x) - _1238; - float _1244 = log2(lerp(_1198, _1195, 0.9599999785423279f)) * 0.3010300099849701f; - float _1245 = log2(lerp(_1198, _1196, 0.9599999785423279f)) * 0.3010300099849701f; - float _1246 = log2(lerp(_1198, _1197, 0.9599999785423279f)) * 0.3010300099849701f; - float _1250 = cb0_036x * (_1244 + _1238); - float _1251 = cb0_036x * (_1245 + _1238); - float _1252 = cb0_036x * (_1246 + _1238); - float _1253 = _1212 * 2.0f; - float _1255 = (cb0_036x * -2.0f) / _1212; - float _1256 = _1244 - _1235; - float _1257 = _1245 - _1235; - float _1258 = _1246 - _1235; - float _1277 = _1217 * 2.0f; - float _1279 = (cb0_036x * 2.0f) / _1217; - float _1304 = select((_1244 < _1235), ((_1253 / (exp2((_1256 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1250); - float _1305 = select((_1245 < _1235), ((_1253 / (exp2((_1257 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1251); - float _1306 = select((_1246 < _1235), ((_1253 / (exp2((_1258 * 1.4426950216293335f) * _1255) + 1.0f)) - cb0_036w), _1252); - float _1313 = _1240 - _1235; - float _1317 = saturate(_1256 / _1313); - float _1318 = saturate(_1257 / _1313); - float _1319 = saturate(_1258 / _1313); - bool _1320 = (_1240 < _1235); - float _1324 = select(_1320, (1.0f - _1317), _1317); - float _1325 = select(_1320, (1.0f - _1318), _1318); - float _1326 = select(_1320, (1.0f - _1319), _1319); - float _1345 = (((_1324 * _1324) * (select((_1244 > _1240), (_1215 - (_1277 / (exp2(((_1244 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1250) - _1304)) * (3.0f - (_1324 * 2.0f))) + _1304; - float _1346 = (((_1325 * _1325) * (select((_1245 > _1240), (_1215 - (_1277 / (exp2(((_1245 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1251) - _1305)) * (3.0f - (_1325 * 2.0f))) + _1305; - float _1347 = (((_1326 * _1326) * (select((_1246 > _1240), (_1215 - (_1277 / (exp2(((_1246 - _1240) * 1.4426950216293335f) * _1279) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; - float _1348 = dot(float3(_1345, _1346, _1347), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1373 = ((cb0_075x * (max(0.0f, (lerp(_1348, _1345, 0.9300000071525574f))) - _1057)) + _1057); - _1374 = ((cb0_075x * (max(0.0f, (lerp(_1348, _1346, 0.9300000071525574f))) - _1058)) + _1058); - _1375 = ((cb0_075x * (max(0.0f, (lerp(_1348, _1347, 0.9300000071525574f))) - _1059)) + _1059); - } else { - _1373 = _1057; - _1374 = _1058; - _1375 = _1059; - } - float _1391 = ((mad(-0.06537103652954102f, _1375, mad(1.451815478503704e-06f, _1374, (_1373 * 1.065374732017517f))) - _1373) * cb0_074z) + _1373; - float _1392 = ((mad(-0.20366770029067993f, _1375, mad(1.2036634683609009f, _1374, (_1373 * -2.57161445915699e-07f))) - _1374) * cb0_074z) + _1374; - float _1393 = ((mad(0.9999996423721313f, _1375, mad(2.0954757928848267e-08f, _1374, (_1373 * 1.862645149230957e-08f))) - _1375) * cb0_074z) + _1375; - [branch] - if (!_298) { - float _1436 = 1.0f / (dot(float3(_1035, _1038, _1041), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1446 = max(0.0f, (((_1436 * cb0_035x) + cb0_034x) * dot(float3(_1035, _1038, _1041), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1447 = max(0.0f, (((_1436 * cb0_035y) + cb0_034y) * dot(float3(_1035, _1038, _1041), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1448 = max(0.0f, (((_1436 * cb0_035z) + cb0_034z) * dot(float3(_1035, _1038, _1041), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1454 = max(0.0f, (cb0_031x - _1446)); - float _1455 = max(0.0f, (cb0_031x - _1447)); - float _1456 = max(0.0f, (cb0_031x - _1448)); - float _1458 = max(_1446, cb0_031z); - float _1459 = max(_1447, cb0_031z); - float _1460 = max(_1448, cb0_031z); - _1518 = (((((((cb0_032x * _1458) + cb0_032y) * (1.0f / (cb0_031w + _1458))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1446, cb0_031x), cb0_031z))) + ((cb0_028w * _1454) * (1.0f / (cb0_031y + _1454)))) + cb0_029w); - _1519 = ((((((1.0f / (cb0_031w + _1459)) * ((cb0_032x * _1459) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1447, cb0_031x), cb0_031z))) + ((cb0_028w * _1455) * (1.0f / (cb0_031y + _1455)))) + cb0_029w); - _1520 = ((((((1.0f / (cb0_031w + _1460)) * ((cb0_032x * _1460) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1448, cb0_031x), cb0_031z))) + ((cb0_028w * _1456) * (1.0f / (cb0_031y + _1456)))) + cb0_029w); - } else { - _1518 = max(0.0f, mad(-0.0832584798336029f, _1393, mad(-0.6217905879020691f, _1392, (_1391 * 1.7050515413284302f)))); - _1519 = max(0.0f, mad(-0.010548528283834457f, _1393, mad(1.1408027410507202f, _1392, (_1391 * -0.13025718927383423f)))); - _1520 = max(0.0f, mad(1.152971863746643f, _1393, mad(-0.1289687603712082f, _1392, (_1391 * -0.024003278464078903f)))); - } - float _1521 = saturate(_1518); - float _1522 = saturate(_1519); - float _1523 = saturate(_1520); - if (_1521 < 0.0031306699384003878f) { - _1534 = (_1521 * 12.920000076293945f); - } else { - _1534 = (((pow(_1521, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1522 < 0.0031306699384003878f) { - _1545 = (_1522 * 12.920000076293945f); - } else { - _1545 = (((pow(_1522, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1523 < 0.0031306699384003878f) { - _1556 = (_1523 * 12.920000076293945f); - } else { - _1556 = (((pow(_1523, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1560 = (_1545 * 0.9375f) + 0.03125f; - float _1563 = cb0_040x * _1534; - float _1564 = cb0_040x * _1545; - float _1565 = cb0_040x * _1556; - float _1568 = _1556 * 15.0f; - float _1569 = floor(_1568); - float _1570 = _1568 - _1569; - float _1572 = (((_1534 * 0.9375f) + 0.03125f) + _1569) * 0.0625f; - float4 _1573 = t0.Sample(s0, float2(_1572, _1560)); - float4 _1578 = t0.Sample(s0, float2((_1572 + 0.0625f), _1560)); - float _1596 = cb0_038w * cb0_039z; - float _1603 = max(6.103519990574569e-05f, ((_1596 * ((_1573.x - _1563) + ((_1578.x - _1573.x) * _1570))) + _1563)); - float _1604 = max(6.103519990574569e-05f, ((_1596 * ((_1573.y - _1564) + ((_1578.y - _1573.y) * _1570))) + _1564)); - float _1605 = max(6.103519990574569e-05f, ((_1596 * ((_1573.z - _1565) + ((_1578.z - _1573.z) * _1570))) + _1565)); - float _1627 = select((_1603 > 0.040449999272823334f), exp2(log2((_1603 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1603 * 0.07739938050508499f)); - float _1628 = select((_1604 > 0.040449999272823334f), exp2(log2((_1604 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1604 * 0.07739938050508499f)); - float _1629 = select((_1605 > 0.040449999272823334f), exp2(log2((_1605 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1605 * 0.07739938050508499f)); - float _1655 = cb0_044y * (((cb0_026y + (cb0_026x * _1627)) * _1627) + cb0_026z); - float _1656 = cb0_044z * (((cb0_026y + (cb0_026x * _1628)) * _1628) + cb0_026z); - float _1657 = cb0_044w * (((cb0_026y + (cb0_026x * _1629)) * _1629) + cb0_026z); - float _1664 = ((cb0_045x - _1655) * cb0_045w) + _1655; - float _1665 = ((cb0_045y - _1656) * cb0_045w) + _1656; - float _1666 = ((cb0_045z - _1657) * cb0_045w) + _1657; - float _1667 = cb0_044y * _1035; - float _1668 = cb0_044z * _1038; - float _1669 = cb0_044w * _1041; - float _1676 = ((cb0_045x - _1667) * cb0_045w) + _1667; - float _1677 = ((cb0_045y - _1668) * cb0_045w) + _1668; - float _1678 = ((cb0_045z - _1669) * cb0_045w) + _1669; - float _1690 = exp2(log2(max(0.0f, _1664)) * cb0_027y); - float _1691 = exp2(log2(max(0.0f, _1665)) * cb0_027y); - float _1692 = exp2(log2(max(0.0f, _1666)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1690, _1691, _1692)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1690 < 0.0031306699384003878f) { - _1707 = (_1690 * 12.920000076293945f); - } else { - _1707 = (((pow(_1690, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1691 < 0.0031306699384003878f) { - _1718 = (_1691 * 12.920000076293945f); - } else { - _1718 = (((pow(_1691, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1692 < 0.0031306699384003878f) { - _3146 = _1707; - _3147 = _1718; - _3148 = (_1692 * 12.920000076293945f); - } else { - _3146 = _1707; - _3147 = _1718; - _3148 = (((pow(_1692, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1733 = mad(0.04736635088920593f, _1692, mad(0.3395121395587921f, _1691, (_1690 * 0.613191545009613f))); - float _1736 = mad(0.01345000695437193f, _1692, mad(0.9163357615470886f, _1691, (_1690 * 0.07020691782236099f))); - float _1739 = mad(0.8696067929267883f, _1692, mad(0.1095672994852066f, _1691, (_1690 * 0.020618872717022896f))); - float _1749 = max(6.103519990574569e-05f, mad(_34, _1739, mad(_33, _1736, (_1733 * _32)))); - float _1750 = max(6.103519990574569e-05f, mad(_37, _1739, mad(_36, _1736, (_1733 * _35)))); - float _1751 = max(6.103519990574569e-05f, mad(_40, _1739, mad(_39, _1736, (_1733 * _38)))); - _3146 = min((_1749 * 4.5f), ((exp2(log2(max(_1749, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3147 = min((_1750 * 4.5f), ((exp2(log2(max(_1750, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3148 = min((_1751 * 4.5f), ((exp2(log2(max(_1751, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1778 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1778) { - float _1781 = _1677 * 3.0f; - float _1782 = _1678 * 3.0f; - float _1785 = mad(0.17733481526374817f, _1782, mad(0.38297808170318604f, _1781, (_1676 * 1.31910240650177f))); - float _1788 = mad(0.09676162153482437f, _1782, mad(0.8134231567382812f, _1781, (_1676 * 0.2693769633769989f))); - float _1791 = mad(0.870704174041748f, _1782, mad(0.11154405772686005f, _1781, (_1676 * 0.05263196676969528f))); - float _1795 = max(max(_1785, _1788), _1791); - float _1800 = (max(_1795, 1.000000013351432e-10f) - max(min(min(_1785, _1788), _1791), 1.000000013351432e-10f)) / max(_1795, 0.009999999776482582f); - float _1813 = ((_1788 + _1785) + _1791) + (sqrt((((_1791 - _1788) * _1791) + ((_1788 - _1785) * _1788)) + ((_1785 - _1791) * _1785)) * 1.75f); - float _1814 = _1813 * 0.3333333432674408f; - float _1815 = _1800 + -0.4000000059604645f; - float _1816 = _1815 * 5.0f; - float _1820 = max((1.0f - abs(_1815 * 2.5f)), 0.0f); - float _1831 = ((float(((int)(uint)((bool)(_1816 > 0.0f))) - ((int)(uint)((bool)(_1816 < 0.0f)))) * (1.0f - (_1820 * _1820))) + 1.0f) * 0.02500000037252903f; - if (!(_1814 <= 0.0533333346247673f)) { - if (!(_1814 >= 0.1599999964237213f)) { - _1840 = (((0.23999999463558197f / _1813) + -0.5f) * _1831); - } else { - _1840 = 0.0f; - } - } else { - _1840 = _1831; - } - float _1841 = _1840 + 1.0f; - float _1842 = _1841 * _1785; - float _1843 = _1841 * _1788; - float _1844 = _1841 * _1791; - if (!((bool)(_1842 == _1843) && (bool)(_1843 == _1844))) { - float _1851 = ((_1842 * 2.0f) - _1843) - _1844; - float _1854 = ((_1788 - _1791) * 1.7320507764816284f) * _1841; - float _1856 = atan(_1854 / _1851); - bool _1859 = (_1851 < 0.0f); - bool _1860 = (_1851 == 0.0f); - bool _1861 = (_1854 >= 0.0f); - bool _1862 = (_1854 < 0.0f); - _1873 = select((_1861 && _1860), 90.0f, select((_1862 && _1860), -90.0f, (select((_1862 && _1859), (_1856 + -3.1415927410125732f), select((_1861 && _1859), (_1856 + 3.1415927410125732f), _1856)) * 57.2957763671875f))); - } else { - _1873 = 0.0f; - } - float _1878 = min(max(select((_1873 < 0.0f), (_1873 + 360.0f), _1873), 0.0f), 360.0f); - if (_1878 < -180.0f) { - _1887 = (_1878 + 360.0f); - } else { - if (_1878 > 180.0f) { - _1887 = (_1878 + -360.0f); - } else { - _1887 = _1878; - } - } - if ((bool)(_1887 > -67.5f) && (bool)(_1887 < 67.5f)) { - float _1893 = (_1887 + 67.5f) * 0.029629629105329514f; - int _1894 = int(_1893); - float _1896 = _1893 - float(_1894); - float _1897 = _1896 * _1896; - float _1898 = _1897 * _1896; - if (_1894 == 3) { - _1926 = (((0.1666666716337204f - (_1896 * 0.5f)) + (_1897 * 0.5f)) - (_1898 * 0.1666666716337204f)); - } else { - if (_1894 == 2) { - _1926 = ((0.6666666865348816f - _1897) + (_1898 * 0.5f)); - } else { - if (_1894 == 1) { - _1926 = (((_1898 * -0.5f) + 0.1666666716337204f) + ((_1897 + _1896) * 0.5f)); - } else { - _1926 = select((_1894 == 0), (_1898 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1926 = 0.0f; - } - float _1935 = min(max(((((_1800 * 0.27000001072883606f) * (0.029999999329447746f - _1842)) * _1926) + _1842), 0.0f), 65535.0f); - float _1936 = min(max(_1843, 0.0f), 65535.0f); - float _1937 = min(max(_1844, 0.0f), 65535.0f); - float _1950 = min(max(mad(-0.21492856740951538f, _1937, mad(-0.2365107536315918f, _1936, (_1935 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1951 = min(max(mad(-0.09967592358589172f, _1937, mad(1.17622971534729f, _1936, (_1935 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1952 = min(max(mad(0.9977163076400757f, _1937, mad(-0.006032449658960104f, _1936, (_1935 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1953 = dot(float3(_1950, _1951, _1952), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1960 = ((_1950 - _1953) * 0.9599999785423279f) + _1953; - float _1961 = ((_1951 - _1953) * 0.9599999785423279f) + _1953; - float _1962 = ((_1952 - _1953) * 0.9599999785423279f) + _1953; - float _1965 = log2(select((_1960 <= 0.0f), 6.103515625e-05f, _1960)); - float _1966 = _1965 * 0.3010300099849701f; - if (!(_1966 <= -5.2601776123046875f)) { - if ((bool)(_1966 > -5.2601776123046875f) && (bool)(_1966 < -0.7447274923324585f)) { - float _1974 = (_1965 * 0.19999998807907104f) + 3.494786262512207f; - int _1975 = int(_1974); - float _1977 = _1974 - float(_1975); - float _1979 = _global_0[_1975]; - float _1982 = _global_0[(_1975 + 1)]; - float _1987 = _1979 * 0.5f; - _2019 = dot(float3((_1977 * _1977), _1977, 1.0f), float3(mad((_global_0[(_1975 + 2)]), 0.5f, mad(_1982, -1.0f, _1987)), (_1982 - _1979), mad(_1982, 0.5f, _1987))); - } else { - if ((bool)(_1966 >= -0.7447274923324585f) && (bool)(_1966 < 4.673812389373779f)) { - float _1999 = (_1965 * 0.1666666567325592f) + 0.4123218357563019f; - int _2000 = int(_1999); - float _2002 = _1999 - float(_2000); - float _2004 = _global_1[_2000]; - float _2007 = _global_1[(_2000 + 1)]; - float _2012 = _2004 * 0.5f; - _2019 = dot(float3((_2002 * _2002), _2002, 1.0f), float3(mad((_global_1[(_2000 + 2)]), 0.5f, mad(_2007, -1.0f, _2012)), (_2007 - _2004), mad(_2007, 0.5f, _2012))); - } else { - _2019 = 4.0f; - } - } - } else { - _2019 = -4.0f; - } - float _2021 = exp2(_2019 * 3.321928024291992f); - float _2024 = log2(select((_1961 <= 0.0f), 6.103515625e-05f, _1961)); - float _2025 = _2024 * 0.3010300099849701f; - if (!(_2025 <= -5.2601776123046875f)) { - if ((bool)(_2025 > -5.2601776123046875f) && (bool)(_2025 < -0.7447274923324585f)) { - float _2033 = (_2024 * 0.19999998807907104f) + 3.494786262512207f; - int _2034 = int(_2033); - float _2036 = _2033 - float(_2034); - float _2038 = _global_0[_2034]; - float _2041 = _global_0[(_2034 + 1)]; - float _2046 = _2038 * 0.5f; - _2078 = dot(float3((_2036 * _2036), _2036, 1.0f), float3(mad((_global_0[(_2034 + 2)]), 0.5f, mad(_2041, -1.0f, _2046)), (_2041 - _2038), mad(_2041, 0.5f, _2046))); - } else { - if ((bool)(_2025 >= -0.7447274923324585f) && (bool)(_2025 < 4.673812389373779f)) { - float _2058 = (_2024 * 0.1666666567325592f) + 0.4123218357563019f; - int _2059 = int(_2058); - float _2061 = _2058 - float(_2059); - float _2063 = _global_1[_2059]; - float _2066 = _global_1[(_2059 + 1)]; - float _2071 = _2063 * 0.5f; - _2078 = dot(float3((_2061 * _2061), _2061, 1.0f), float3(mad((_global_1[(_2059 + 2)]), 0.5f, mad(_2066, -1.0f, _2071)), (_2066 - _2063), mad(_2066, 0.5f, _2071))); - } else { - _2078 = 4.0f; - } - } - } else { - _2078 = -4.0f; - } - float _2080 = exp2(_2078 * 3.321928024291992f); - float _2083 = log2(select((_1962 <= 0.0f), 6.103515625e-05f, _1962)); - float _2084 = _2083 * 0.3010300099849701f; - if (!(_2084 <= -5.2601776123046875f)) { - if ((bool)(_2084 > -5.2601776123046875f) && (bool)(_2084 < -0.7447274923324585f)) { - float _2092 = (_2083 * 0.19999998807907104f) + 3.494786262512207f; - int _2093 = int(_2092); - float _2095 = _2092 - float(_2093); - float _2097 = _global_0[_2093]; - float _2100 = _global_0[(_2093 + 1)]; - float _2105 = _2097 * 0.5f; - _2137 = dot(float3((_2095 * _2095), _2095, 1.0f), float3(mad((_global_0[(_2093 + 2)]), 0.5f, mad(_2100, -1.0f, _2105)), (_2100 - _2097), mad(_2100, 0.5f, _2105))); - } else { - if ((bool)(_2084 >= -0.7447274923324585f) && (bool)(_2084 < 4.673812389373779f)) { - float _2117 = (_2083 * 0.1666666567325592f) + 0.4123218357563019f; - int _2118 = int(_2117); - float _2120 = _2117 - float(_2118); - float _2122 = _global_1[_2118]; - float _2125 = _global_1[(_2118 + 1)]; - float _2130 = _2122 * 0.5f; - _2137 = dot(float3((_2120 * _2120), _2120, 1.0f), float3(mad((_global_1[(_2118 + 2)]), 0.5f, mad(_2125, -1.0f, _2130)), (_2125 - _2122), mad(_2125, 0.5f, _2130))); - } else { - _2137 = 4.0f; - } - } - } else { - _2137 = -4.0f; - } - float _2139 = exp2(_2137 * 3.321928024291992f); - float _2142 = mad(0.16386906802654266f, _2139, mad(0.14067870378494263f, _2080, (_2021 * 0.6954522132873535f))); - float _2145 = mad(0.0955343171954155f, _2139, mad(0.8596711158752441f, _2080, (_2021 * 0.044794563204050064f))); - float _2148 = mad(1.0015007257461548f, _2139, mad(0.004025210160762072f, _2080, (_2021 * -0.005525882821530104f))); - float _2151 = mad(-0.21492856740951538f, _2148, mad(-0.2365107536315918f, _2145, (_2142 * 1.4514392614364624f))); - float _2154 = mad(-0.09967592358589172f, _2148, mad(1.17622971534729f, _2145, (_2142 * -0.07655377686023712f))); - float _2157 = mad(0.9977163076400757f, _2148, mad(-0.006032449658960104f, _2145, (_2142 * 0.008316148072481155f))); - float _2160 = log2(select((_2151 <= 0.0f), 9.999999747378752e-05f, _2151)); - float _2161 = _2160 * 0.3010300099849701f; - if (!(!(_2161 <= -3.848327875137329f))) { - _2220 = ((_2160 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2161 > -3.848327875137329f) && (bool)(_2161 < 0.6812411546707153f)) { - float _2172 = (_2160 + 12.783867835998535f) * 0.46521204710006714f; - int _2173 = int(_2172); - float _2175 = _2172 - float(_2173); - float _2177 = _global_2[_2173]; - float _2180 = _global_2[(_2173 + 1)]; - float _2185 = _2177 * 0.5f; - _2220 = dot(float3((_2175 * _2175), _2175, 1.0f), float3(mad((_global_2[(_2173 + 2)]), 0.5f, mad(_2180, -1.0f, _2185)), (_2180 - _2177), mad(_2180, 0.5f, _2185))); - } else { - if ((bool)(_2161 >= 0.6812411546707153f) && (bool)(_2161 < 3.653702974319458f)) { - float _2197 = (_2160 + -2.2630341053009033f) * 0.7089107632637024f; - int _2198 = int(_2197); - float _2200 = _2197 - float(_2198); - float _2202 = _global_3[_2198]; - float _2205 = _global_3[(_2198 + 1)]; - float _2210 = _2202 * 0.5f; - _2220 = dot(float3((_2200 * _2200), _2200, 1.0f), float3(mad((_global_3[(_2198 + 2)]), 0.5f, mad(_2205, -1.0f, _2210)), (_2205 - _2202), mad(_2205, 0.5f, _2210))); - } else { - _2220 = ((_2160 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2225 = log2(select((_2154 <= 0.0f), 9.999999747378752e-05f, _2154)); - float _2226 = _2225 * 0.3010300099849701f; - if (!(!(_2226 <= -3.848327875137329f))) { - _2285 = ((_2225 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2226 > -3.848327875137329f) && (bool)(_2226 < 0.6812411546707153f)) { - float _2237 = (_2225 + 12.783867835998535f) * 0.46521204710006714f; - int _2238 = int(_2237); - float _2240 = _2237 - float(_2238); - float _2242 = _global_2[_2238]; - float _2245 = _global_2[(_2238 + 1)]; - float _2250 = _2242 * 0.5f; - _2285 = dot(float3((_2240 * _2240), _2240, 1.0f), float3(mad((_global_2[(_2238 + 2)]), 0.5f, mad(_2245, -1.0f, _2250)), (_2245 - _2242), mad(_2245, 0.5f, _2250))); - } else { - if ((bool)(_2226 >= 0.6812411546707153f) && (bool)(_2226 < 3.653702974319458f)) { - float _2262 = (_2225 + -2.2630341053009033f) * 0.7089107632637024f; - int _2263 = int(_2262); - float _2265 = _2262 - float(_2263); - float _2267 = _global_3[_2263]; - float _2270 = _global_3[(_2263 + 1)]; - float _2275 = _2267 * 0.5f; - _2285 = dot(float3((_2265 * _2265), _2265, 1.0f), float3(mad((_global_3[(_2263 + 2)]), 0.5f, mad(_2270, -1.0f, _2275)), (_2270 - _2267), mad(_2270, 0.5f, _2275))); - } else { - _2285 = ((_2225 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2290 = log2(select((_2157 <= 0.0f), 9.999999747378752e-05f, _2157)); - float _2291 = _2290 * 0.3010300099849701f; - if (!(!(_2291 <= -3.848327875137329f))) { - _2350 = ((_2290 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2291 > -3.848327875137329f) && (bool)(_2291 < 0.6812411546707153f)) { - float _2302 = (_2290 + 12.783867835998535f) * 0.46521204710006714f; - int _2303 = int(_2302); - float _2305 = _2302 - float(_2303); - float _2307 = _global_2[_2303]; - float _2310 = _global_2[(_2303 + 1)]; - float _2315 = _2307 * 0.5f; - _2350 = dot(float3((_2305 * _2305), _2305, 1.0f), float3(mad((_global_2[(_2303 + 2)]), 0.5f, mad(_2310, -1.0f, _2315)), (_2310 - _2307), mad(_2310, 0.5f, _2315))); - } else { - if ((bool)(_2291 >= 0.6812411546707153f) && (bool)(_2291 < 3.653702974319458f)) { - float _2327 = (_2290 + -2.2630341053009033f) * 0.7089107632637024f; - int _2328 = int(_2327); - float _2330 = _2327 - float(_2328); - float _2332 = _global_3[_2328]; - float _2335 = _global_3[(_2328 + 1)]; - float _2340 = _2332 * 0.5f; - _2350 = dot(float3((_2330 * _2330), _2330, 1.0f), float3(mad((_global_3[(_2328 + 2)]), 0.5f, mad(_2335, -1.0f, _2340)), (_2335 - _2332), mad(_2335, 0.5f, _2340))); - } else { - _2350 = ((_2290 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2353 = exp2(_2220 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2354 = exp2(_2285 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2355 = exp2(_2350 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1778) { - _2367 = mad(_34, _2355, mad(_33, _2354, (_2353 * _32))); - _2368 = mad(_37, _2355, mad(_36, _2354, (_2353 * _35))); - _2369 = mad(_40, _2355, mad(_39, _2354, (_2353 * _38))); - } else { - _2367 = _2353; - _2368 = _2354; - _2369 = _2355; - } - float _2379 = exp2(log2(_2367 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2380 = exp2(log2(_2368 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2381 = exp2(log2(_2369 * 9.999999747378752e-05f) * 0.1593017578125f); - _3146 = exp2(log2((1.0f / ((_2379 * 18.6875f) + 1.0f)) * ((_2379 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_2380 * 18.6875f) + 1.0f)) * ((_2380 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3148 = exp2(log2((1.0f / ((_2381 * 18.6875f) + 1.0f)) * ((_2381 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2414 = _1677 * 3.0f; - float _2415 = _1678 * 3.0f; - float _2418 = mad(0.17733481526374817f, _2415, mad(0.38297808170318604f, _2414, (_1676 * 1.31910240650177f))); - float _2421 = mad(0.09676162153482437f, _2415, mad(0.8134231567382812f, _2414, (_1676 * 0.2693769633769989f))); - float _2424 = mad(0.870704174041748f, _2415, mad(0.11154405772686005f, _2414, (_1676 * 0.05263196676969528f))); - float _2428 = max(max(_2418, _2421), _2424); - float _2433 = (max(_2428, 1.000000013351432e-10f) - max(min(min(_2418, _2421), _2424), 1.000000013351432e-10f)) / max(_2428, 0.009999999776482582f); - float _2446 = ((_2421 + _2418) + _2424) + (sqrt((((_2424 - _2421) * _2424) + ((_2421 - _2418) * _2421)) + ((_2418 - _2424) * _2418)) * 1.75f); - float _2447 = _2446 * 0.3333333432674408f; - float _2448 = _2433 + -0.4000000059604645f; - float _2449 = _2448 * 5.0f; - float _2453 = max((1.0f - abs(_2448 * 2.5f)), 0.0f); - float _2464 = ((float(((int)(uint)((bool)(_2449 > 0.0f))) - ((int)(uint)((bool)(_2449 < 0.0f)))) * (1.0f - (_2453 * _2453))) + 1.0f) * 0.02500000037252903f; - if (!(_2447 <= 0.0533333346247673f)) { - if (!(_2447 >= 0.1599999964237213f)) { - _2473 = (((0.23999999463558197f / _2446) + -0.5f) * _2464); - } else { - _2473 = 0.0f; - } - } else { - _2473 = _2464; - } - float _2474 = _2473 + 1.0f; - float _2475 = _2474 * _2418; - float _2476 = _2474 * _2421; - float _2477 = _2474 * _2424; - if (!((bool)(_2475 == _2476) && (bool)(_2476 == _2477))) { - float _2484 = ((_2475 * 2.0f) - _2476) - _2477; - float _2487 = ((_2421 - _2424) * 1.7320507764816284f) * _2474; - float _2489 = atan(_2487 / _2484); - bool _2492 = (_2484 < 0.0f); - bool _2493 = (_2484 == 0.0f); - bool _2494 = (_2487 >= 0.0f); - bool _2495 = (_2487 < 0.0f); - _2506 = select((_2494 && _2493), 90.0f, select((_2495 && _2493), -90.0f, (select((_2495 && _2492), (_2489 + -3.1415927410125732f), select((_2494 && _2492), (_2489 + 3.1415927410125732f), _2489)) * 57.2957763671875f))); - } else { - _2506 = 0.0f; - } - float _2511 = min(max(select((_2506 < 0.0f), (_2506 + 360.0f), _2506), 0.0f), 360.0f); - if (_2511 < -180.0f) { - _2520 = (_2511 + 360.0f); - } else { - if (_2511 > 180.0f) { - _2520 = (_2511 + -360.0f); - } else { - _2520 = _2511; - } - } - if ((bool)(_2520 > -67.5f) && (bool)(_2520 < 67.5f)) { - float _2526 = (_2520 + 67.5f) * 0.029629629105329514f; - int _2527 = int(_2526); - float _2529 = _2526 - float(_2527); - float _2530 = _2529 * _2529; - float _2531 = _2530 * _2529; - if (_2527 == 3) { - _2559 = (((0.1666666716337204f - (_2529 * 0.5f)) + (_2530 * 0.5f)) - (_2531 * 0.1666666716337204f)); - } else { - if (_2527 == 2) { - _2559 = ((0.6666666865348816f - _2530) + (_2531 * 0.5f)); - } else { - if (_2527 == 1) { - _2559 = (((_2531 * -0.5f) + 0.1666666716337204f) + ((_2530 + _2529) * 0.5f)); - } else { - _2559 = select((_2527 == 0), (_2531 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2559 = 0.0f; - } - float _2568 = min(max(((((_2433 * 0.27000001072883606f) * (0.029999999329447746f - _2475)) * _2559) + _2475), 0.0f), 65535.0f); - float _2569 = min(max(_2476, 0.0f), 65535.0f); - float _2570 = min(max(_2477, 0.0f), 65535.0f); - float _2583 = min(max(mad(-0.21492856740951538f, _2570, mad(-0.2365107536315918f, _2569, (_2568 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2584 = min(max(mad(-0.09967592358589172f, _2570, mad(1.17622971534729f, _2569, (_2568 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2585 = min(max(mad(0.9977163076400757f, _2570, mad(-0.006032449658960104f, _2569, (_2568 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2586 = dot(float3(_2583, _2584, _2585), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2593 = ((_2583 - _2586) * 0.9599999785423279f) + _2586; - float _2594 = ((_2584 - _2586) * 0.9599999785423279f) + _2586; - float _2595 = ((_2585 - _2586) * 0.9599999785423279f) + _2586; - float _2598 = log2(select((_2593 <= 0.0f), 6.103515625e-05f, _2593)); - float _2599 = _2598 * 0.3010300099849701f; - if (!(_2599 <= -5.2601776123046875f)) { - if ((bool)(_2599 > -5.2601776123046875f) && (bool)(_2599 < -0.7447274923324585f)) { - float _2607 = (_2598 * 0.19999998807907104f) + 3.494786262512207f; - int _2608 = int(_2607); - float _2610 = _2607 - float(_2608); - float _2612 = _global_0[_2608]; - float _2615 = _global_0[(_2608 + 1)]; - float _2620 = _2612 * 0.5f; - _2652 = dot(float3((_2610 * _2610), _2610, 1.0f), float3(mad((_global_0[(_2608 + 2)]), 0.5f, mad(_2615, -1.0f, _2620)), (_2615 - _2612), mad(_2615, 0.5f, _2620))); - } else { - if ((bool)(_2599 >= -0.7447274923324585f) && (bool)(_2599 < 4.673812389373779f)) { - float _2632 = (_2598 * 0.1666666567325592f) + 0.4123218357563019f; - int _2633 = int(_2632); - float _2635 = _2632 - float(_2633); - float _2637 = _global_1[_2633]; - float _2640 = _global_1[(_2633 + 1)]; - float _2645 = _2637 * 0.5f; - _2652 = dot(float3((_2635 * _2635), _2635, 1.0f), float3(mad((_global_1[(_2633 + 2)]), 0.5f, mad(_2640, -1.0f, _2645)), (_2640 - _2637), mad(_2640, 0.5f, _2645))); - } else { - _2652 = 4.0f; - } - } - } else { - _2652 = -4.0f; - } - float _2654 = exp2(_2652 * 3.321928024291992f); - float _2657 = log2(select((_2594 <= 0.0f), 6.103515625e-05f, _2594)); - float _2658 = _2657 * 0.3010300099849701f; - if (!(_2658 <= -5.2601776123046875f)) { - if ((bool)(_2658 > -5.2601776123046875f) && (bool)(_2658 < -0.7447274923324585f)) { - float _2666 = (_2657 * 0.19999998807907104f) + 3.494786262512207f; - int _2667 = int(_2666); - float _2669 = _2666 - float(_2667); - float _2671 = _global_0[_2667]; - float _2674 = _global_0[(_2667 + 1)]; - float _2679 = _2671 * 0.5f; - _2711 = dot(float3((_2669 * _2669), _2669, 1.0f), float3(mad((_global_0[(_2667 + 2)]), 0.5f, mad(_2674, -1.0f, _2679)), (_2674 - _2671), mad(_2674, 0.5f, _2679))); - } else { - if ((bool)(_2658 >= -0.7447274923324585f) && (bool)(_2658 < 4.673812389373779f)) { - float _2691 = (_2657 * 0.1666666567325592f) + 0.4123218357563019f; - int _2692 = int(_2691); - float _2694 = _2691 - float(_2692); - float _2696 = _global_1[_2692]; - float _2699 = _global_1[(_2692 + 1)]; - float _2704 = _2696 * 0.5f; - _2711 = dot(float3((_2694 * _2694), _2694, 1.0f), float3(mad((_global_1[(_2692 + 2)]), 0.5f, mad(_2699, -1.0f, _2704)), (_2699 - _2696), mad(_2699, 0.5f, _2704))); - } else { - _2711 = 4.0f; - } - } - } else { - _2711 = -4.0f; - } - float _2713 = exp2(_2711 * 3.321928024291992f); - float _2716 = log2(select((_2595 <= 0.0f), 6.103515625e-05f, _2595)); - float _2717 = _2716 * 0.3010300099849701f; - if (!(_2717 <= -5.2601776123046875f)) { - if ((bool)(_2717 > -5.2601776123046875f) && (bool)(_2717 < -0.7447274923324585f)) { - float _2725 = (_2716 * 0.19999998807907104f) + 3.494786262512207f; - int _2726 = int(_2725); - float _2728 = _2725 - float(_2726); - float _2730 = _global_0[_2726]; - float _2733 = _global_0[(_2726 + 1)]; - float _2738 = _2730 * 0.5f; - _2770 = dot(float3((_2728 * _2728), _2728, 1.0f), float3(mad((_global_0[(_2726 + 2)]), 0.5f, mad(_2733, -1.0f, _2738)), (_2733 - _2730), mad(_2733, 0.5f, _2738))); - } else { - if ((bool)(_2717 >= -0.7447274923324585f) && (bool)(_2717 < 4.673812389373779f)) { - float _2750 = (_2716 * 0.1666666567325592f) + 0.4123218357563019f; - int _2751 = int(_2750); - float _2753 = _2750 - float(_2751); - float _2755 = _global_1[_2751]; - float _2758 = _global_1[(_2751 + 1)]; - float _2763 = _2755 * 0.5f; - _2770 = dot(float3((_2753 * _2753), _2753, 1.0f), float3(mad((_global_1[(_2751 + 2)]), 0.5f, mad(_2758, -1.0f, _2763)), (_2758 - _2755), mad(_2758, 0.5f, _2763))); - } else { - _2770 = 4.0f; - } - } - } else { - _2770 = -4.0f; - } - float _2772 = exp2(_2770 * 3.321928024291992f); - float _2775 = mad(0.16386906802654266f, _2772, mad(0.14067870378494263f, _2713, (_2654 * 0.6954522132873535f))); - float _2778 = mad(0.0955343171954155f, _2772, mad(0.8596711158752441f, _2713, (_2654 * 0.044794563204050064f))); - float _2781 = mad(1.0015007257461548f, _2772, mad(0.004025210160762072f, _2713, (_2654 * -0.005525882821530104f))); - float _2784 = mad(-0.21492856740951538f, _2781, mad(-0.2365107536315918f, _2778, (_2775 * 1.4514392614364624f))); - float _2787 = mad(-0.09967592358589172f, _2781, mad(1.17622971534729f, _2778, (_2775 * -0.07655377686023712f))); - float _2790 = mad(0.9977163076400757f, _2781, mad(-0.006032449658960104f, _2778, (_2775 * 0.008316148072481155f))); - float _2793 = log2(select((_2784 <= 0.0f), 9.999999747378752e-05f, _2784)); - float _2794 = _2793 * 0.3010300099849701f; - if (!(_2794 <= -3.848327875137329f)) { - if ((bool)(_2794 > -3.848327875137329f) && (bool)(_2794 < 0.6812411546707153f)) { - float _2802 = (_2793 + 12.783867835998535f) * 0.46521204710006714f; - int _2803 = int(_2802); - float _2805 = _2802 - float(_2803); - float _2807 = _global_4[_2803]; - float _2810 = _global_4[(_2803 + 1)]; - float _2815 = _2807 * 0.5f; - _2850 = dot(float3((_2805 * _2805), _2805, 1.0f), float3(mad((_global_4[(_2803 + 2)]), 0.5f, mad(_2810, -1.0f, _2815)), (_2810 - _2807), mad(_2810, 0.5f, _2815))); - } else { - if ((bool)(_2794 >= 0.6812411546707153f) && (bool)(_2794 < 3.7613162994384766f)) { - float _2827 = (_2793 + -2.2630341053009033f) * 0.6841424107551575f; - int _2828 = int(_2827); - float _2830 = _2827 - float(_2828); - float _2832 = _global_5[_2828]; - float _2835 = _global_5[(_2828 + 1)]; - float _2840 = _2832 * 0.5f; - _2850 = dot(float3((_2830 * _2830), _2830, 1.0f), float3(mad((_global_5[(_2828 + 2)]), 0.5f, mad(_2835, -1.0f, _2840)), (_2835 - _2832), mad(_2835, 0.5f, _2840))); - } else { - _2850 = ((_2793 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2850 = -2.301030158996582f; - } - float _2852 = exp2(_2850 * 3.321928024291992f); - float _2855 = log2(select((_2787 <= 0.0f), 9.999999747378752e-05f, _2787)); - float _2856 = _2855 * 0.3010300099849701f; - if (!(_2856 <= -3.848327875137329f)) { - if ((bool)(_2856 > -3.848327875137329f) && (bool)(_2856 < 0.6812411546707153f)) { - float _2864 = (_2855 + 12.783867835998535f) * 0.46521204710006714f; - int _2865 = int(_2864); - float _2867 = _2864 - float(_2865); - float _2869 = _global_4[_2865]; - float _2872 = _global_4[(_2865 + 1)]; - float _2877 = _2869 * 0.5f; - _2912 = dot(float3((_2867 * _2867), _2867, 1.0f), float3(mad((_global_4[(_2865 + 2)]), 0.5f, mad(_2872, -1.0f, _2877)), (_2872 - _2869), mad(_2872, 0.5f, _2877))); - } else { - if ((bool)(_2856 >= 0.6812411546707153f) && (bool)(_2856 < 3.7613162994384766f)) { - float _2889 = (_2855 + -2.2630341053009033f) * 0.6841424107551575f; - int _2890 = int(_2889); - float _2892 = _2889 - float(_2890); - float _2894 = _global_5[_2890]; - float _2897 = _global_5[(_2890 + 1)]; - float _2902 = _2894 * 0.5f; - _2912 = dot(float3((_2892 * _2892), _2892, 1.0f), float3(mad((_global_5[(_2890 + 2)]), 0.5f, mad(_2897, -1.0f, _2902)), (_2897 - _2894), mad(_2897, 0.5f, _2902))); - } else { - _2912 = ((_2855 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2912 = -2.301030158996582f; - } - float _2914 = exp2(_2912 * 3.321928024291992f); - float _2917 = log2(select((_2790 <= 0.0f), 9.999999747378752e-05f, _2790)); - float _2918 = _2917 * 0.3010300099849701f; - if (!(_2918 <= -3.848327875137329f)) { - if ((bool)(_2918 > -3.848327875137329f) && (bool)(_2918 < 0.6812411546707153f)) { - float _2926 = (_2917 + 12.783867835998535f) * 0.46521204710006714f; - int _2927 = int(_2926); - float _2929 = _2926 - float(_2927); - float _2931 = _global_4[_2927]; - float _2934 = _global_4[(_2927 + 1)]; - float _2939 = _2931 * 0.5f; - _2974 = dot(float3((_2929 * _2929), _2929, 1.0f), float3(mad((_global_4[(_2927 + 2)]), 0.5f, mad(_2934, -1.0f, _2939)), (_2934 - _2931), mad(_2934, 0.5f, _2939))); - } else { - if ((bool)(_2918 >= 0.6812411546707153f) && (bool)(_2918 < 3.7613162994384766f)) { - float _2951 = (_2917 + -2.2630341053009033f) * 0.6841424107551575f; - int _2952 = int(_2951); - float _2954 = _2951 - float(_2952); - float _2956 = _global_5[_2952]; - float _2959 = _global_5[(_2952 + 1)]; - float _2964 = _2956 * 0.5f; - _2974 = dot(float3((_2954 * _2954), _2954, 1.0f), float3(mad((_global_5[(_2952 + 2)]), 0.5f, mad(_2959, -1.0f, _2964)), (_2959 - _2956), mad(_2959, 0.5f, _2964))); - } else { - _2974 = ((_2917 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2974 = -2.301030158996582f; - } - float _2976 = exp2(_2974 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _2988 = mad(_34, _2976, mad(_33, _2914, (_2852 * _32))); - _2989 = mad(_37, _2976, mad(_36, _2914, (_2852 * _35))); - _2990 = mad(_40, _2976, mad(_39, _2914, (_2852 * _38))); - } else { - _2988 = _2852; - _2989 = _2914; - _2990 = _2976; - } - float _3000 = exp2(log2(_2988 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3001 = exp2(log2(_2989 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3002 = exp2(log2(_2990 * 9.999999747378752e-05f) * 0.1593017578125f); - _3146 = exp2(log2((1.0f / ((_3000 * 18.6875f) + 1.0f)) * ((_3000 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_3001 * 18.6875f) + 1.0f)) * ((_3001 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3148 = exp2(log2((1.0f / ((_3002 * 18.6875f) + 1.0f)) * ((_3002 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _3035 = mad(0.04736635088920593f, _1678, mad(0.3395121395587921f, _1677, (_1676 * 0.613191545009613f))); - float _3038 = mad(0.01345000695437193f, _1678, mad(0.9163357615470886f, _1677, (_1676 * 0.07020691782236099f))); - float _3041 = mad(0.8696067929267883f, _1678, mad(0.1095672994852066f, _1677, (_1676 * 0.020618872717022896f))); - float _3060 = exp2(log2(mad(_34, _3041, mad(_33, _3038, (_3035 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3061 = exp2(log2(mad(_37, _3041, mad(_36, _3038, (_3035 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3062 = exp2(log2(mad(_40, _3041, mad(_39, _3038, (_3035 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3146 = exp2(log2((1.0f / ((_3060 * 18.6875f) + 1.0f)) * ((_3060 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3147 = exp2(log2((1.0f / ((_3061 * 18.6875f) + 1.0f)) * ((_3061 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3148 = exp2(log2((1.0f / ((_3062 * 18.6875f) + 1.0f)) * ((_3062 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _3097 = mad(0.04736635088920593f, _1666, mad(0.3395121395587921f, _1665, (_1664 * 0.613191545009613f))); - float _3100 = mad(0.01345000695437193f, _1666, mad(0.9163357615470886f, _1665, (_1664 * 0.07020691782236099f))); - float _3103 = mad(0.8696067929267883f, _1666, mad(0.1095672994852066f, _1665, (_1664 * 0.020618872717022896f))); - _3146 = mad(_34, _3103, mad(_33, _3100, (_3097 * _32))); - _3147 = mad(_37, _3103, mad(_36, _3100, (_3097 * _35))); - _3148 = mad(_40, _3103, mad(_39, _3100, (_3097 * _38))); - } else { - float _3116 = mad(0.04736635088920593f, _1692, mad(0.3395121395587921f, _1691, (_1690 * 0.613191545009613f))); - float _3119 = mad(0.01345000695437193f, _1692, mad(0.9163357615470886f, _1691, (_1690 * 0.07020691782236099f))); - float _3122 = mad(0.8696067929267883f, _1692, mad(0.1095672994852066f, _1691, (_1690 * 0.020618872717022896f))); - float _3135 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3146 = exp2(_3135 * log2(mad(_34, _3122, mad(_33, _3119, (_3116 * _32))))); - _3147 = exp2(_3135 * log2(mad(_37, _3122, mad(_36, _3119, (_3116 * _35))))); - _3148 = exp2(_3135 * log2(mad(_40, _3122, mad(_39, _3119, (_3116 * _38))))); - } - } else { - _3146 = _1676; - _3147 = _1677; - _3148 = _1678; - } - } - } - } - } - } - SV_Target.x = (_3146 * 0.9523810148239136f); - SV_Target.y = (_3147 * 0.9523810148239136f); - SV_Target.z = (_3148 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x322D4D00.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x322D4D00.ps_6_0.hlsl deleted file mode 100644 index 6342ac9c2..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x322D4D00.ps_6_0.hlsl +++ /dev/null @@ -1,1219 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)SV_RenderTargetArrayIndex); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _340; - float _341; - float _342; - float _889; - float _922; - float _936; - float _1000; - float _1137; - float _1138; - float _1139; - float _1282; - float _1283; - float _1284; - float _1298; - float _1309; - float _1320; - float _1490; - float _1501; - float _1623; - float _1656; - float _1670; - float _1709; - float _1802; - float _1861; - float _1920; - float _2003; - float _2068; - float _2133; - float _2150; - float _2151; - float _2152; - float _2256; - float _2289; - float _2303; - float _2342; - float _2435; - float _2494; - float _2553; - float _2633; - float _2695; - float _2757; - float _2771; - float _2772; - float _2773; - float _2931; - float _2932; - float _2933; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _23 = ((uint)(cb0_074w) == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _157 = cb0_047y * 0.05000000074505806f; - float _160 = _132 - ((_157 * _142) * _156); - float _163 = ((_157 * _132) * _156) + _142; - float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); - float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); - float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _176 = max(_175, 1.000000013351432e-10f); - float _177 = _174 / _176; - float _180 = ((1.0f - _174) - _175) / _176; - float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); - float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); - float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); - float _193 = mad(_191, -0.7501999735832214f, 0.0f); - float _194 = mad(_191, 1.7135000228881836f, 0.0f); - float _195 = mad(_191, 0.03669999912381172f, -0.0f); - float _196 = mad(_192, 0.03889999911189079f, 0.0f); - float _197 = mad(_192, -0.06849999725818634f, 0.0f); - float _198 = mad(_192, 1.0296000242233276f, 0.0f); - float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); - float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); - float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); - float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); - float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); - float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); - float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); - float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); - float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); - float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); - float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); - float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); - float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); - float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); - float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); - float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); - float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); - float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); - float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); - float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); - float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); - float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); - float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); - float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); - // bool _300 = ((uint)(cb0_046x) == 0); - bool _300 = ((uint)(tm_flags.x) == 0); - if (_300) { - float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _306 = (_291 / _302) + -1.0f; - float _307 = (_294 / _302) + -1.0f; - float _308 = (_297 / _302) + -1.0f; - float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); - _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); - _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); - _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); - } else { - _340 = _291; - _341 = _294; - _342 = _297; - } - float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _357 = cb0_052w + cb0_057w; - float _371 = cb0_051w * cb0_056w; - float _385 = cb0_050w * cb0_055w; - float _399 = cb0_049w * cb0_054w; - float _413 = cb0_048w * cb0_053w; - float _417 = _340 - _343; - float _418 = _341 - _343; - float _419 = _342 - _343; - float _477 = saturate(_343 / cb0_073x); - float _481 = (_477 * _477) * (3.0f - (_477 * 2.0f)); - float _482 = 1.0f - _481; - float _491 = cb0_052w + cb0_067w; - float _500 = cb0_051w * cb0_066w; - float _509 = cb0_050w * cb0_065w; - float _518 = cb0_049w * cb0_064w; - float _527 = cb0_048w * cb0_063w; - float _589 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); - float _593 = (_589 * _589) * (3.0f - (_589 * 2.0f)); - float _602 = cb0_052w + cb0_062w; - float _611 = cb0_051w * cb0_061w; - float _620 = cb0_050w * cb0_060w; - float _629 = cb0_049w * cb0_059w; - float _638 = cb0_048w * cb0_058w; - float _696 = _481 - _593; - float _707 = ((_593 * (((cb0_052x + cb0_067x) + _491) + (((cb0_051x * cb0_066x) * _500) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _518) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _527) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _509)))))) + (_482 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385))))))) + ((((cb0_052x + cb0_062x) + _602) + (((cb0_051x * cb0_061x) * _611) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _629) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _638) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _620))))) * _696); - float _709 = ((_593 * (((cb0_052y + cb0_067y) + _491) + (((cb0_051y * cb0_066y) * _500) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _518) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _527) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _509)))))) + (_482 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385))))))) + ((((cb0_052y + cb0_062y) + _602) + (((cb0_051y * cb0_061y) * _611) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _629) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _638) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _620))))) * _696); - float _711 = ((_593 * (((cb0_052z + cb0_067z) + _491) + (((cb0_051z * cb0_066z) * _500) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _518) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _527) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _509)))))) + (_482 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385))))))) + ((((cb0_052z + cb0_062z) + _602) + (((cb0_051z * cb0_061z) * _611) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _629) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _638) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _620))))) * _696); - float _737 = dot(float3(_707, _709, _711), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _795 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_707 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _796 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_709 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _797 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_711 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _800 = mad(-0.0832584798336029f, _797, mad(-0.6217905879020691f, _796, (_795 * 1.7050515413284302f))); - float _803 = mad(-0.010548528283834457f, _797, mad(1.1408027410507202f, _796, (_795 * -0.13025718927383423f))); - float _806 = mad(1.152971863746643f, _797, mad(-0.1289687603712082f, _796, (_795 * -0.024003278464078903f))); - float _822 = ((mad(0.061360642313957214f, _797, mad(-4.540197551250458e-09f, _796, (_795 * 0.9386394023895264f))) - _795) * cb0_075x) + _795; - float _823 = ((mad(0.169205904006958f, _797, mad(0.8307942152023315f, _796, (_795 * 6.775371730327606e-08f))) - _796) * cb0_075x) + _796; - float _824 = (mad(-2.3283064365386963e-10f, _796, (_795 * -9.313225746154785e-10f)) * cb0_075x) + _797; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _834 = mad(0.16386905312538147f, _824, mad(0.14067868888378143f, _823, (_822 * 0.6954522132873535f))); - float _837 = mad(0.0955343246459961f, _824, mad(0.8596711158752441f, _823, (_822 * 0.044794581830501556f))); - float _840 = mad(1.0015007257461548f, _824, mad(0.004025210160762072f, _823, (_822 * -0.005525882821530104f))); - float _844 = max(max(_834, _837), _840); - float _849 = (max(_844, 1.000000013351432e-10f) - max(min(min(_834, _837), _840), 1.000000013351432e-10f)) / max(_844, 0.009999999776482582f); - float _862 = ((_837 + _834) + _840) + (sqrt((((_840 - _837) * _840) + ((_837 - _834) * _837)) + ((_834 - _840) * _834)) * 1.75f); - float _863 = _862 * 0.3333333432674408f; - float _864 = _849 + -0.4000000059604645f; - float _865 = _864 * 5.0f; - float _869 = max((1.0f - abs(_864 * 2.5f)), 0.0f); - float _880 = ((float(((int)(uint)((bool)(_865 > 0.0f))) - ((int)(uint)((bool)(_865 < 0.0f)))) * (1.0f - (_869 * _869))) + 1.0f) * 0.02500000037252903f; - if (!(_863 <= 0.0533333346247673f)) { - if (!(_863 >= 0.1599999964237213f)) { - _889 = (((0.23999999463558197f / _862) + -0.5f) * _880); - } else { - _889 = 0.0f; - } - } else { - _889 = _880; - } - float _890 = _889 + 1.0f; - float _891 = _890 * _834; - float _892 = _890 * _837; - float _893 = _890 * _840; - if (!((bool)(_891 == _892) && (bool)(_892 == _893))) { - float _900 = ((_891 * 2.0f) - _892) - _893; - float _903 = ((_837 - _840) * 1.7320507764816284f) * _890; - float _905 = atan(_903 / _900); - bool _908 = (_900 < 0.0f); - bool _909 = (_900 == 0.0f); - bool _910 = (_903 >= 0.0f); - bool _911 = (_903 < 0.0f); - _922 = select((_910 && _909), 90.0f, select((_911 && _909), -90.0f, (select((_911 && _908), (_905 + -3.1415927410125732f), select((_910 && _908), (_905 + 3.1415927410125732f), _905)) * 57.2957763671875f))); - } else { - _922 = 0.0f; - } - float _927 = min(max(select((_922 < 0.0f), (_922 + 360.0f), _922), 0.0f), 360.0f); - if (_927 < -180.0f) { - _936 = (_927 + 360.0f); - } else { - if (_927 > 180.0f) { - _936 = (_927 + -360.0f); - } else { - _936 = _927; - } - } - float _940 = saturate(1.0f - abs(_936 * 0.014814814552664757f)); - float _944 = (_940 * _940) * (3.0f - (_940 * 2.0f)); - float _950 = ((_944 * _944) * ((_849 * 0.18000000715255737f) * (0.029999999329447746f - _891))) + _891; - float _960 = max(0.0f, mad(-0.21492856740951538f, _893, mad(-0.2365107536315918f, _892, (_950 * 1.4514392614364624f)))); - float _961 = max(0.0f, mad(-0.09967592358589172f, _893, mad(1.17622971534729f, _892, (_950 * -0.07655377686023712f)))); - float _962 = max(0.0f, mad(0.9977163076400757f, _893, mad(-0.006032449658960104f, _892, (_950 * 0.008316148072481155f)))); - float _963 = dot(float3(_960, _961, _962), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _977 = (cb0_036w + 1.0f) - cb0_036y; - float _980 = cb0_037x + 1.0f; - float _982 = _980 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1000 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _991 = (cb0_036w + 0.18000000715255737f) / _977; - _1000 = (-0.7447274923324585f - ((log2(_991 / (2.0f - _991)) * 0.3465735912322998f) * (_977 / cb0_036x))); - } - float _1003 = ((1.0f - cb0_036y) / cb0_036x) - _1000; - float _1005 = (cb0_036z / cb0_036x) - _1003; - float _1009 = log2(lerp(_963, _960, 0.9599999785423279f)) * 0.3010300099849701f; - float _1010 = log2(lerp(_963, _961, 0.9599999785423279f)) * 0.3010300099849701f; - float _1011 = log2(lerp(_963, _962, 0.9599999785423279f)) * 0.3010300099849701f; - float _1015 = cb0_036x * (_1009 + _1003); - float _1016 = cb0_036x * (_1010 + _1003); - float _1017 = cb0_036x * (_1011 + _1003); - float _1018 = _977 * 2.0f; - float _1020 = (cb0_036x * -2.0f) / _977; - float _1021 = _1009 - _1000; - float _1022 = _1010 - _1000; - float _1023 = _1011 - _1000; - float _1042 = _982 * 2.0f; - float _1044 = (cb0_036x * 2.0f) / _982; - float _1069 = select((_1009 < _1000), ((_1018 / (exp2((_1021 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1015); - float _1070 = select((_1010 < _1000), ((_1018 / (exp2((_1022 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1016); - float _1071 = select((_1011 < _1000), ((_1018 / (exp2((_1023 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1017); - float _1078 = _1005 - _1000; - float _1082 = saturate(_1021 / _1078); - float _1083 = saturate(_1022 / _1078); - float _1084 = saturate(_1023 / _1078); - bool _1085 = (_1005 < _1000); - float _1089 = select(_1085, (1.0f - _1082), _1082); - float _1090 = select(_1085, (1.0f - _1083), _1083); - float _1091 = select(_1085, (1.0f - _1084), _1084); - float _1110 = (((_1089 * _1089) * (select((_1009 > _1005), (_980 - (_1042 / (exp2(((_1009 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; - float _1111 = (((_1090 * _1090) * (select((_1010 > _1005), (_980 - (_1042 / (exp2(((_1010 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1016) - _1070)) * (3.0f - (_1090 * 2.0f))) + _1070; - float _1112 = (((_1091 * _1091) * (select((_1011 > _1005), (_980 - (_1042 / (exp2(((_1011 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1017) - _1071)) * (3.0f - (_1091 * 2.0f))) + _1071; - float _1113 = dot(float3(_1110, _1111, _1112), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1137 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1110, 0.9300000071525574f))) - _822)) + _822); - _1138 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1111, 0.9300000071525574f))) - _823)) + _823); - _1139 = ((cb0_075z * (max(0.0f, (lerp(_1113, _1112, 0.9300000071525574f))) - _824)) + _824); - } else { - _1137 = _822; - _1138 = _823; - _1139 = _824; - } - float _1155 = ((mad(-0.06537103652954102f, _1139, mad(1.451815478503704e-06f, _1138, (_1137 * 1.065374732017517f))) - _1137) * cb0_075x) + _1137; - float _1156 = ((mad(-0.20366770029067993f, _1139, mad(1.2036634683609009f, _1138, (_1137 * -2.57161445915699e-07f))) - _1138) * cb0_075x) + _1138; - float _1157 = ((mad(0.9999996423721313f, _1139, mad(2.0954757928848267e-08f, _1138, (_1137 * 1.862645149230957e-08f))) - _1139) * cb0_075x) + _1139; - [branch] - if (!_300) { - float _1200 = 1.0f / (dot(float3(_800, _803, _806), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1210 = max(0.0f, (((_1200 * cb0_035x) + cb0_034x) * dot(float3(_800, _803, _806), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1211 = max(0.0f, (((_1200 * cb0_035y) + cb0_034y) * dot(float3(_800, _803, _806), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1212 = max(0.0f, (((_1200 * cb0_035z) + cb0_034z) * dot(float3(_800, _803, _806), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1218 = max(0.0f, (cb0_031x - _1210)); - float _1219 = max(0.0f, (cb0_031x - _1211)); - float _1220 = max(0.0f, (cb0_031x - _1212)); - float _1222 = max(_1210, cb0_031z); - float _1223 = max(_1211, cb0_031z); - float _1224 = max(_1212, cb0_031z); - _1282 = (((((((cb0_032x * _1222) + cb0_032y) * (1.0f / (cb0_031w + _1222))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1210, cb0_031x), cb0_031z))) + ((cb0_028w * _1218) * (1.0f / (cb0_031y + _1218)))) + cb0_029w); - _1283 = ((((((1.0f / (cb0_031w + _1223)) * ((cb0_032x * _1223) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1211, cb0_031x), cb0_031z))) + ((cb0_028w * _1219) * (1.0f / (cb0_031y + _1219)))) + cb0_029w); - _1284 = ((((((1.0f / (cb0_031w + _1224)) * ((cb0_032x * _1224) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1212, cb0_031x), cb0_031z))) + ((cb0_028w * _1220) * (1.0f / (cb0_031y + _1220)))) + cb0_029w); - } else { - _1282 = max(0.0f, mad(-0.0832584798336029f, _1157, mad(-0.6217905879020691f, _1156, (_1155 * 1.7050515413284302f)))); - _1283 = max(0.0f, mad(-0.010548528283834457f, _1157, mad(1.1408027410507202f, _1156, (_1155 * -0.13025718927383423f)))); - _1284 = max(0.0f, mad(1.152971863746643f, _1157, mad(-0.1289687603712082f, _1156, (_1155 * -0.024003278464078903f)))); - } - float _1285 = saturate(_1282); - float _1286 = saturate(_1283); - float _1287 = saturate(_1284); - if (_1285 < 0.0031306699384003878f) { - _1298 = (_1285 * 12.920000076293945f); - } else { - _1298 = (((pow(_1285, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1286 < 0.0031306699384003878f) { - _1309 = (_1286 * 12.920000076293945f); - } else { - _1309 = (((pow(_1286, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1287 < 0.0031306699384003878f) { - _1320 = (_1287 * 12.920000076293945f); - } else { - _1320 = (((pow(_1287, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1324 = (_1309 * 0.9375f) + 0.03125f; - float _1332 = _1320 * 15.0f; - float _1333 = floor(_1332); - float _1334 = _1332 - _1333; - float _1336 = (_1333 + ((_1298 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1337 = t0.Sample(s0, float2(_1336, _1324)); - float _1341 = _1336 + 0.0625f; - float4 _1342 = t0.Sample(s0, float2(_1341, _1324)); - float4 _1363 = t1.Sample(s1, float2(_1336, _1324)); - float4 _1367 = t1.Sample(s1, float2(_1341, _1324)); - float _1386 = max(6.103519990574569e-05f, ((((lerp(_1337.x, _1342.x, _1334)) * cb0_041x) + (cb0_040x * _1298)) + ((lerp(_1363.x, _1367.x, _1334)) * cb0_042x))); - float _1387 = max(6.103519990574569e-05f, ((((lerp(_1337.y, _1342.y, _1334)) * cb0_041x) + (cb0_040x * _1309)) + ((lerp(_1363.y, _1367.y, _1334)) * cb0_042x))); - float _1388 = max(6.103519990574569e-05f, ((((lerp(_1337.z, _1342.z, _1334)) * cb0_041x) + (cb0_040x * _1320)) + ((lerp(_1363.z, _1367.z, _1334)) * cb0_042x))); - float _1410 = select((_1386 > 0.040449999272823334f), exp2(log2((_1386 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1386 * 0.07739938050508499f)); - float _1411 = select((_1387 > 0.040449999272823334f), exp2(log2((_1387 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1387 * 0.07739938050508499f)); - float _1412 = select((_1388 > 0.040449999272823334f), exp2(log2((_1388 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1388 * 0.07739938050508499f)); - float _1438 = cb0_044y * (((cb0_026y + (cb0_026x * _1410)) * _1410) + cb0_026z); - float _1439 = cb0_044z * (((cb0_026y + (cb0_026x * _1411)) * _1411) + cb0_026z); - float _1440 = cb0_044w * (((cb0_026y + (cb0_026x * _1412)) * _1412) + cb0_026z); - float _1447 = ((cb0_045x - _1438) * cb0_045w) + _1438; - float _1448 = ((cb0_045y - _1439) * cb0_045w) + _1439; - float _1449 = ((cb0_045z - _1440) * cb0_045w) + _1440; - float _1450 = cb0_044y * _800; - float _1451 = cb0_044z * _803; - float _1452 = cb0_044w * _806; - float _1459 = ((cb0_045x - _1450) * cb0_045w) + _1450; - float _1460 = ((cb0_045y - _1451) * cb0_045w) + _1451; - float _1461 = ((cb0_045z - _1452) * cb0_045w) + _1452; - float _1473 = exp2(log2(max(0.0f, _1447)) * cb0_027y); - float _1474 = exp2(log2(max(0.0f, _1448)) * cb0_027y); - float _1475 = exp2(log2(max(0.0f, _1449)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1473, _1474, _1475)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1473 < 0.0031306699384003878f) { - _1490 = (_1473 * 12.920000076293945f); - } else { - _1490 = (((pow(_1473, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1474 < 0.0031306699384003878f) { - _1501 = (_1474 * 12.920000076293945f); - } else { - _1501 = (((pow(_1474, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1475 < 0.0031306699384003878f) { - _2931 = _1490; - _2932 = _1501; - _2933 = (_1475 * 12.920000076293945f); - } else { - _2931 = _1490; - _2932 = _1501; - _2933 = (((pow(_1475, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1516 = mad(0.04736635088920593f, _1475, mad(0.3395121395587921f, _1474, (_1473 * 0.613191545009613f))); - float _1519 = mad(0.01345000695437193f, _1475, mad(0.9163357615470886f, _1474, (_1473 * 0.07020691782236099f))); - float _1522 = mad(0.8696067929267883f, _1475, mad(0.1095672994852066f, _1474, (_1473 * 0.020618872717022896f))); - float _1532 = max(6.103519990574569e-05f, mad(_36, _1522, mad(_35, _1519, (_1516 * _34)))); - float _1533 = max(6.103519990574569e-05f, mad(_39, _1522, mad(_38, _1519, (_1516 * _37)))); - float _1534 = max(6.103519990574569e-05f, mad(_42, _1522, mad(_41, _1519, (_1516 * _40)))); - _2931 = min((_1532 * 4.5f), ((exp2(log2(max(_1532, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2932 = min((_1533 * 4.5f), ((exp2(log2(max(_1533, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2933 = min((_1534 * 4.5f), ((exp2(log2(max(_1534, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1561 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1561) { - float _1564 = _1460 * 3.0f; - float _1565 = _1461 * 3.0f; - float _1568 = mad(0.17733481526374817f, _1565, mad(0.38297808170318604f, _1564, (_1459 * 1.31910240650177f))); - float _1571 = mad(0.09676162153482437f, _1565, mad(0.8134231567382812f, _1564, (_1459 * 0.2693769633769989f))); - float _1574 = mad(0.870704174041748f, _1565, mad(0.11154405772686005f, _1564, (_1459 * 0.05263196676969528f))); - float _1578 = max(max(_1568, _1571), _1574); - float _1583 = (max(_1578, 1.000000013351432e-10f) - max(min(min(_1568, _1571), _1574), 1.000000013351432e-10f)) / max(_1578, 0.009999999776482582f); - float _1596 = ((_1571 + _1568) + _1574) + (sqrt((((_1574 - _1571) * _1574) + ((_1571 - _1568) * _1571)) + ((_1568 - _1574) * _1568)) * 1.75f); - float _1597 = _1596 * 0.3333333432674408f; - float _1598 = _1583 + -0.4000000059604645f; - float _1599 = _1598 * 5.0f; - float _1603 = max((1.0f - abs(_1598 * 2.5f)), 0.0f); - float _1614 = ((float(((int)(uint)((bool)(_1599 > 0.0f))) - ((int)(uint)((bool)(_1599 < 0.0f)))) * (1.0f - (_1603 * _1603))) + 1.0f) * 0.02500000037252903f; - if (!(_1597 <= 0.0533333346247673f)) { - if (!(_1597 >= 0.1599999964237213f)) { - _1623 = (((0.23999999463558197f / _1596) + -0.5f) * _1614); - } else { - _1623 = 0.0f; - } - } else { - _1623 = _1614; - } - float _1624 = _1623 + 1.0f; - float _1625 = _1624 * _1568; - float _1626 = _1624 * _1571; - float _1627 = _1624 * _1574; - if (!((bool)(_1625 == _1626) && (bool)(_1626 == _1627))) { - float _1634 = ((_1625 * 2.0f) - _1626) - _1627; - float _1637 = ((_1571 - _1574) * 1.7320507764816284f) * _1624; - float _1639 = atan(_1637 / _1634); - bool _1642 = (_1634 < 0.0f); - bool _1643 = (_1634 == 0.0f); - bool _1644 = (_1637 >= 0.0f); - bool _1645 = (_1637 < 0.0f); - _1656 = select((_1644 && _1643), 90.0f, select((_1645 && _1643), -90.0f, (select((_1645 && _1642), (_1639 + -3.1415927410125732f), select((_1644 && _1642), (_1639 + 3.1415927410125732f), _1639)) * 57.2957763671875f))); - } else { - _1656 = 0.0f; - } - float _1661 = min(max(select((_1656 < 0.0f), (_1656 + 360.0f), _1656), 0.0f), 360.0f); - if (_1661 < -180.0f) { - _1670 = (_1661 + 360.0f); - } else { - if (_1661 > 180.0f) { - _1670 = (_1661 + -360.0f); - } else { - _1670 = _1661; - } - } - if ((bool)(_1670 > -67.5f) && (bool)(_1670 < 67.5f)) { - float _1676 = (_1670 + 67.5f) * 0.029629629105329514f; - int _1677 = int(_1676); - float _1679 = _1676 - float(_1677); - float _1680 = _1679 * _1679; - float _1681 = _1680 * _1679; - if (_1677 == 3) { - _1709 = (((0.1666666716337204f - (_1679 * 0.5f)) + (_1680 * 0.5f)) - (_1681 * 0.1666666716337204f)); - } else { - if (_1677 == 2) { - _1709 = ((0.6666666865348816f - _1680) + (_1681 * 0.5f)); - } else { - if (_1677 == 1) { - _1709 = (((_1681 * -0.5f) + 0.1666666716337204f) + ((_1680 + _1679) * 0.5f)); - } else { - _1709 = select((_1677 == 0), (_1681 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1709 = 0.0f; - } - float _1718 = min(max(((((_1583 * 0.27000001072883606f) * (0.029999999329447746f - _1625)) * _1709) + _1625), 0.0f), 65535.0f); - float _1719 = min(max(_1626, 0.0f), 65535.0f); - float _1720 = min(max(_1627, 0.0f), 65535.0f); - float _1733 = min(max(mad(-0.21492856740951538f, _1720, mad(-0.2365107536315918f, _1719, (_1718 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1734 = min(max(mad(-0.09967592358589172f, _1720, mad(1.17622971534729f, _1719, (_1718 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1735 = min(max(mad(0.9977163076400757f, _1720, mad(-0.006032449658960104f, _1719, (_1718 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1736 = dot(float3(_1733, _1734, _1735), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1743 = ((_1733 - _1736) * 0.9599999785423279f) + _1736; - float _1744 = ((_1734 - _1736) * 0.9599999785423279f) + _1736; - float _1745 = ((_1735 - _1736) * 0.9599999785423279f) + _1736; - float _1748 = log2(select((_1743 <= 0.0f), 6.103515625e-05f, _1743)); - float _1749 = _1748 * 0.3010300099849701f; - if (!(_1749 <= -5.2601776123046875f)) { - if ((bool)(_1749 > -5.2601776123046875f) && (bool)(_1749 < -0.7447274923324585f)) { - float _1757 = (_1748 * 0.19999998807907104f) + 3.494786262512207f; - int _1758 = int(_1757); - float _1760 = _1757 - float(_1758); - float _1762 = _global_0[_1758]; - float _1765 = _global_0[(_1758 + 1)]; - float _1770 = _1762 * 0.5f; - _1802 = dot(float3((_1760 * _1760), _1760, 1.0f), float3(mad((_global_0[(_1758 + 2)]), 0.5f, mad(_1765, -1.0f, _1770)), (_1765 - _1762), mad(_1765, 0.5f, _1770))); - } else { - if ((bool)(_1749 >= -0.7447274923324585f) && (bool)(_1749 < 4.673812389373779f)) { - float _1782 = (_1748 * 0.1666666567325592f) + 0.4123218357563019f; - int _1783 = int(_1782); - float _1785 = _1782 - float(_1783); - float _1787 = _global_1[_1783]; - float _1790 = _global_1[(_1783 + 1)]; - float _1795 = _1787 * 0.5f; - _1802 = dot(float3((_1785 * _1785), _1785, 1.0f), float3(mad((_global_1[(_1783 + 2)]), 0.5f, mad(_1790, -1.0f, _1795)), (_1790 - _1787), mad(_1790, 0.5f, _1795))); - } else { - _1802 = 4.0f; - } - } - } else { - _1802 = -4.0f; - } - float _1804 = exp2(_1802 * 3.321928024291992f); - float _1807 = log2(select((_1744 <= 0.0f), 6.103515625e-05f, _1744)); - float _1808 = _1807 * 0.3010300099849701f; - if (!(_1808 <= -5.2601776123046875f)) { - if ((bool)(_1808 > -5.2601776123046875f) && (bool)(_1808 < -0.7447274923324585f)) { - float _1816 = (_1807 * 0.19999998807907104f) + 3.494786262512207f; - int _1817 = int(_1816); - float _1819 = _1816 - float(_1817); - float _1821 = _global_0[_1817]; - float _1824 = _global_0[(_1817 + 1)]; - float _1829 = _1821 * 0.5f; - _1861 = dot(float3((_1819 * _1819), _1819, 1.0f), float3(mad((_global_0[(_1817 + 2)]), 0.5f, mad(_1824, -1.0f, _1829)), (_1824 - _1821), mad(_1824, 0.5f, _1829))); - } else { - if ((bool)(_1808 >= -0.7447274923324585f) && (bool)(_1808 < 4.673812389373779f)) { - float _1841 = (_1807 * 0.1666666567325592f) + 0.4123218357563019f; - int _1842 = int(_1841); - float _1844 = _1841 - float(_1842); - float _1846 = _global_1[_1842]; - float _1849 = _global_1[(_1842 + 1)]; - float _1854 = _1846 * 0.5f; - _1861 = dot(float3((_1844 * _1844), _1844, 1.0f), float3(mad((_global_1[(_1842 + 2)]), 0.5f, mad(_1849, -1.0f, _1854)), (_1849 - _1846), mad(_1849, 0.5f, _1854))); - } else { - _1861 = 4.0f; - } - } - } else { - _1861 = -4.0f; - } - float _1863 = exp2(_1861 * 3.321928024291992f); - float _1866 = log2(select((_1745 <= 0.0f), 6.103515625e-05f, _1745)); - float _1867 = _1866 * 0.3010300099849701f; - if (!(_1867 <= -5.2601776123046875f)) { - if ((bool)(_1867 > -5.2601776123046875f) && (bool)(_1867 < -0.7447274923324585f)) { - float _1875 = (_1866 * 0.19999998807907104f) + 3.494786262512207f; - int _1876 = int(_1875); - float _1878 = _1875 - float(_1876); - float _1880 = _global_0[_1876]; - float _1883 = _global_0[(_1876 + 1)]; - float _1888 = _1880 * 0.5f; - _1920 = dot(float3((_1878 * _1878), _1878, 1.0f), float3(mad((_global_0[(_1876 + 2)]), 0.5f, mad(_1883, -1.0f, _1888)), (_1883 - _1880), mad(_1883, 0.5f, _1888))); - } else { - if ((bool)(_1867 >= -0.7447274923324585f) && (bool)(_1867 < 4.673812389373779f)) { - float _1900 = (_1866 * 0.1666666567325592f) + 0.4123218357563019f; - int _1901 = int(_1900); - float _1903 = _1900 - float(_1901); - float _1905 = _global_1[_1901]; - float _1908 = _global_1[(_1901 + 1)]; - float _1913 = _1905 * 0.5f; - _1920 = dot(float3((_1903 * _1903), _1903, 1.0f), float3(mad((_global_1[(_1901 + 2)]), 0.5f, mad(_1908, -1.0f, _1913)), (_1908 - _1905), mad(_1908, 0.5f, _1913))); - } else { - _1920 = 4.0f; - } - } - } else { - _1920 = -4.0f; - } - float _1922 = exp2(_1920 * 3.321928024291992f); - float _1925 = mad(0.16386906802654266f, _1922, mad(0.14067870378494263f, _1863, (_1804 * 0.6954522132873535f))); - float _1928 = mad(0.0955343171954155f, _1922, mad(0.8596711158752441f, _1863, (_1804 * 0.044794563204050064f))); - float _1931 = mad(1.0015007257461548f, _1922, mad(0.004025210160762072f, _1863, (_1804 * -0.005525882821530104f))); - float _1934 = mad(-0.21492856740951538f, _1931, mad(-0.2365107536315918f, _1928, (_1925 * 1.4514392614364624f))); - float _1937 = mad(-0.09967592358589172f, _1931, mad(1.17622971534729f, _1928, (_1925 * -0.07655377686023712f))); - float _1940 = mad(0.9977163076400757f, _1931, mad(-0.006032449658960104f, _1928, (_1925 * 0.008316148072481155f))); - float _1943 = log2(select((_1934 <= 0.0f), 9.999999747378752e-05f, _1934)); - float _1944 = _1943 * 0.3010300099849701f; - if (!(!(_1944 <= -3.848327875137329f))) { - _2003 = ((_1943 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1944 > -3.848327875137329f) && (bool)(_1944 < 0.6812411546707153f)) { - float _1955 = (_1943 + 12.783867835998535f) * 0.46521204710006714f; - int _1956 = int(_1955); - float _1958 = _1955 - float(_1956); - float _1960 = _global_2[_1956]; - float _1963 = _global_2[(_1956 + 1)]; - float _1968 = _1960 * 0.5f; - _2003 = dot(float3((_1958 * _1958), _1958, 1.0f), float3(mad((_global_2[(_1956 + 2)]), 0.5f, mad(_1963, -1.0f, _1968)), (_1963 - _1960), mad(_1963, 0.5f, _1968))); - } else { - if ((bool)(_1944 >= 0.6812411546707153f) && (bool)(_1944 < 3.653702974319458f)) { - float _1980 = (_1943 + -2.2630341053009033f) * 0.7089107632637024f; - int _1981 = int(_1980); - float _1983 = _1980 - float(_1981); - float _1985 = _global_3[_1981]; - float _1988 = _global_3[(_1981 + 1)]; - float _1993 = _1985 * 0.5f; - _2003 = dot(float3((_1983 * _1983), _1983, 1.0f), float3(mad((_global_3[(_1981 + 2)]), 0.5f, mad(_1988, -1.0f, _1993)), (_1988 - _1985), mad(_1988, 0.5f, _1993))); - } else { - _2003 = ((_1943 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2008 = log2(select((_1937 <= 0.0f), 9.999999747378752e-05f, _1937)); - float _2009 = _2008 * 0.3010300099849701f; - if (!(!(_2009 <= -3.848327875137329f))) { - _2068 = ((_2008 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2009 > -3.848327875137329f) && (bool)(_2009 < 0.6812411546707153f)) { - float _2020 = (_2008 + 12.783867835998535f) * 0.46521204710006714f; - int _2021 = int(_2020); - float _2023 = _2020 - float(_2021); - float _2025 = _global_2[_2021]; - float _2028 = _global_2[(_2021 + 1)]; - float _2033 = _2025 * 0.5f; - _2068 = dot(float3((_2023 * _2023), _2023, 1.0f), float3(mad((_global_2[(_2021 + 2)]), 0.5f, mad(_2028, -1.0f, _2033)), (_2028 - _2025), mad(_2028, 0.5f, _2033))); - } else { - if ((bool)(_2009 >= 0.6812411546707153f) && (bool)(_2009 < 3.653702974319458f)) { - float _2045 = (_2008 + -2.2630341053009033f) * 0.7089107632637024f; - int _2046 = int(_2045); - float _2048 = _2045 - float(_2046); - float _2050 = _global_3[_2046]; - float _2053 = _global_3[(_2046 + 1)]; - float _2058 = _2050 * 0.5f; - _2068 = dot(float3((_2048 * _2048), _2048, 1.0f), float3(mad((_global_3[(_2046 + 2)]), 0.5f, mad(_2053, -1.0f, _2058)), (_2053 - _2050), mad(_2053, 0.5f, _2058))); - } else { - _2068 = ((_2008 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2073 = log2(select((_1940 <= 0.0f), 9.999999747378752e-05f, _1940)); - float _2074 = _2073 * 0.3010300099849701f; - if (!(!(_2074 <= -3.848327875137329f))) { - _2133 = ((_2073 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2074 > -3.848327875137329f) && (bool)(_2074 < 0.6812411546707153f)) { - float _2085 = (_2073 + 12.783867835998535f) * 0.46521204710006714f; - int _2086 = int(_2085); - float _2088 = _2085 - float(_2086); - float _2090 = _global_2[_2086]; - float _2093 = _global_2[(_2086 + 1)]; - float _2098 = _2090 * 0.5f; - _2133 = dot(float3((_2088 * _2088), _2088, 1.0f), float3(mad((_global_2[(_2086 + 2)]), 0.5f, mad(_2093, -1.0f, _2098)), (_2093 - _2090), mad(_2093, 0.5f, _2098))); - } else { - if ((bool)(_2074 >= 0.6812411546707153f) && (bool)(_2074 < 3.653702974319458f)) { - float _2110 = (_2073 + -2.2630341053009033f) * 0.7089107632637024f; - int _2111 = int(_2110); - float _2113 = _2110 - float(_2111); - float _2115 = _global_3[_2111]; - float _2118 = _global_3[(_2111 + 1)]; - float _2123 = _2115 * 0.5f; - _2133 = dot(float3((_2113 * _2113), _2113, 1.0f), float3(mad((_global_3[(_2111 + 2)]), 0.5f, mad(_2118, -1.0f, _2123)), (_2118 - _2115), mad(_2118, 0.5f, _2123))); - } else { - _2133 = ((_2073 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2136 = exp2(_2003 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2137 = exp2(_2068 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2138 = exp2(_2133 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1561) { - _2150 = mad(_36, _2138, mad(_35, _2137, (_2136 * _34))); - _2151 = mad(_39, _2138, mad(_38, _2137, (_2136 * _37))); - _2152 = mad(_42, _2138, mad(_41, _2137, (_2136 * _40))); - } else { - _2150 = _2136; - _2151 = _2137; - _2152 = _2138; - } - float _2162 = exp2(log2(_2150 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2163 = exp2(log2(_2151 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2164 = exp2(log2(_2152 * 9.999999747378752e-05f) * 0.1593017578125f); - _2931 = exp2(log2((1.0f / ((_2162 * 18.6875f) + 1.0f)) * ((_2162 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2932 = exp2(log2((1.0f / ((_2163 * 18.6875f) + 1.0f)) * ((_2163 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2164 * 18.6875f) + 1.0f)) * ((_2164 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2197 = _1460 * 3.0f; - float _2198 = _1461 * 3.0f; - float _2201 = mad(0.17733481526374817f, _2198, mad(0.38297808170318604f, _2197, (_1459 * 1.31910240650177f))); - float _2204 = mad(0.09676162153482437f, _2198, mad(0.8134231567382812f, _2197, (_1459 * 0.2693769633769989f))); - float _2207 = mad(0.870704174041748f, _2198, mad(0.11154405772686005f, _2197, (_1459 * 0.05263196676969528f))); - float _2211 = max(max(_2201, _2204), _2207); - float _2216 = (max(_2211, 1.000000013351432e-10f) - max(min(min(_2201, _2204), _2207), 1.000000013351432e-10f)) / max(_2211, 0.009999999776482582f); - float _2229 = ((_2204 + _2201) + _2207) + (sqrt((((_2207 - _2204) * _2207) + ((_2204 - _2201) * _2204)) + ((_2201 - _2207) * _2201)) * 1.75f); - float _2230 = _2229 * 0.3333333432674408f; - float _2231 = _2216 + -0.4000000059604645f; - float _2232 = _2231 * 5.0f; - float _2236 = max((1.0f - abs(_2231 * 2.5f)), 0.0f); - float _2247 = ((float(((int)(uint)((bool)(_2232 > 0.0f))) - ((int)(uint)((bool)(_2232 < 0.0f)))) * (1.0f - (_2236 * _2236))) + 1.0f) * 0.02500000037252903f; - if (!(_2230 <= 0.0533333346247673f)) { - if (!(_2230 >= 0.1599999964237213f)) { - _2256 = (((0.23999999463558197f / _2229) + -0.5f) * _2247); - } else { - _2256 = 0.0f; - } - } else { - _2256 = _2247; - } - float _2257 = _2256 + 1.0f; - float _2258 = _2257 * _2201; - float _2259 = _2257 * _2204; - float _2260 = _2257 * _2207; - if (!((bool)(_2258 == _2259) && (bool)(_2259 == _2260))) { - float _2267 = ((_2258 * 2.0f) - _2259) - _2260; - float _2270 = ((_2204 - _2207) * 1.7320507764816284f) * _2257; - float _2272 = atan(_2270 / _2267); - bool _2275 = (_2267 < 0.0f); - bool _2276 = (_2267 == 0.0f); - bool _2277 = (_2270 >= 0.0f); - bool _2278 = (_2270 < 0.0f); - _2289 = select((_2277 && _2276), 90.0f, select((_2278 && _2276), -90.0f, (select((_2278 && _2275), (_2272 + -3.1415927410125732f), select((_2277 && _2275), (_2272 + 3.1415927410125732f), _2272)) * 57.2957763671875f))); - } else { - _2289 = 0.0f; - } - float _2294 = min(max(select((_2289 < 0.0f), (_2289 + 360.0f), _2289), 0.0f), 360.0f); - if (_2294 < -180.0f) { - _2303 = (_2294 + 360.0f); - } else { - if (_2294 > 180.0f) { - _2303 = (_2294 + -360.0f); - } else { - _2303 = _2294; - } - } - if ((bool)(_2303 > -67.5f) && (bool)(_2303 < 67.5f)) { - float _2309 = (_2303 + 67.5f) * 0.029629629105329514f; - int _2310 = int(_2309); - float _2312 = _2309 - float(_2310); - float _2313 = _2312 * _2312; - float _2314 = _2313 * _2312; - if (_2310 == 3) { - _2342 = (((0.1666666716337204f - (_2312 * 0.5f)) + (_2313 * 0.5f)) - (_2314 * 0.1666666716337204f)); - } else { - if (_2310 == 2) { - _2342 = ((0.6666666865348816f - _2313) + (_2314 * 0.5f)); - } else { - if (_2310 == 1) { - _2342 = (((_2314 * -0.5f) + 0.1666666716337204f) + ((_2313 + _2312) * 0.5f)); - } else { - _2342 = select((_2310 == 0), (_2314 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2342 = 0.0f; - } - float _2351 = min(max(((((_2216 * 0.27000001072883606f) * (0.029999999329447746f - _2258)) * _2342) + _2258), 0.0f), 65535.0f); - float _2352 = min(max(_2259, 0.0f), 65535.0f); - float _2353 = min(max(_2260, 0.0f), 65535.0f); - float _2366 = min(max(mad(-0.21492856740951538f, _2353, mad(-0.2365107536315918f, _2352, (_2351 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2367 = min(max(mad(-0.09967592358589172f, _2353, mad(1.17622971534729f, _2352, (_2351 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2368 = min(max(mad(0.9977163076400757f, _2353, mad(-0.006032449658960104f, _2352, (_2351 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2369 = dot(float3(_2366, _2367, _2368), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2376 = ((_2366 - _2369) * 0.9599999785423279f) + _2369; - float _2377 = ((_2367 - _2369) * 0.9599999785423279f) + _2369; - float _2378 = ((_2368 - _2369) * 0.9599999785423279f) + _2369; - float _2381 = log2(select((_2376 <= 0.0f), 6.103515625e-05f, _2376)); - float _2382 = _2381 * 0.3010300099849701f; - if (!(_2382 <= -5.2601776123046875f)) { - if ((bool)(_2382 > -5.2601776123046875f) && (bool)(_2382 < -0.7447274923324585f)) { - float _2390 = (_2381 * 0.19999998807907104f) + 3.494786262512207f; - int _2391 = int(_2390); - float _2393 = _2390 - float(_2391); - float _2395 = _global_0[_2391]; - float _2398 = _global_0[(_2391 + 1)]; - float _2403 = _2395 * 0.5f; - _2435 = dot(float3((_2393 * _2393), _2393, 1.0f), float3(mad((_global_0[(_2391 + 2)]), 0.5f, mad(_2398, -1.0f, _2403)), (_2398 - _2395), mad(_2398, 0.5f, _2403))); - } else { - if ((bool)(_2382 >= -0.7447274923324585f) && (bool)(_2382 < 4.673812389373779f)) { - float _2415 = (_2381 * 0.1666666567325592f) + 0.4123218357563019f; - int _2416 = int(_2415); - float _2418 = _2415 - float(_2416); - float _2420 = _global_1[_2416]; - float _2423 = _global_1[(_2416 + 1)]; - float _2428 = _2420 * 0.5f; - _2435 = dot(float3((_2418 * _2418), _2418, 1.0f), float3(mad((_global_1[(_2416 + 2)]), 0.5f, mad(_2423, -1.0f, _2428)), (_2423 - _2420), mad(_2423, 0.5f, _2428))); - } else { - _2435 = 4.0f; - } - } - } else { - _2435 = -4.0f; - } - float _2437 = exp2(_2435 * 3.321928024291992f); - float _2440 = log2(select((_2377 <= 0.0f), 6.103515625e-05f, _2377)); - float _2441 = _2440 * 0.3010300099849701f; - if (!(_2441 <= -5.2601776123046875f)) { - if ((bool)(_2441 > -5.2601776123046875f) && (bool)(_2441 < -0.7447274923324585f)) { - float _2449 = (_2440 * 0.19999998807907104f) + 3.494786262512207f; - int _2450 = int(_2449); - float _2452 = _2449 - float(_2450); - float _2454 = _global_0[_2450]; - float _2457 = _global_0[(_2450 + 1)]; - float _2462 = _2454 * 0.5f; - _2494 = dot(float3((_2452 * _2452), _2452, 1.0f), float3(mad((_global_0[(_2450 + 2)]), 0.5f, mad(_2457, -1.0f, _2462)), (_2457 - _2454), mad(_2457, 0.5f, _2462))); - } else { - if ((bool)(_2441 >= -0.7447274923324585f) && (bool)(_2441 < 4.673812389373779f)) { - float _2474 = (_2440 * 0.1666666567325592f) + 0.4123218357563019f; - int _2475 = int(_2474); - float _2477 = _2474 - float(_2475); - float _2479 = _global_1[_2475]; - float _2482 = _global_1[(_2475 + 1)]; - float _2487 = _2479 * 0.5f; - _2494 = dot(float3((_2477 * _2477), _2477, 1.0f), float3(mad((_global_1[(_2475 + 2)]), 0.5f, mad(_2482, -1.0f, _2487)), (_2482 - _2479), mad(_2482, 0.5f, _2487))); - } else { - _2494 = 4.0f; - } - } - } else { - _2494 = -4.0f; - } - float _2496 = exp2(_2494 * 3.321928024291992f); - float _2499 = log2(select((_2378 <= 0.0f), 6.103515625e-05f, _2378)); - float _2500 = _2499 * 0.3010300099849701f; - if (!(_2500 <= -5.2601776123046875f)) { - if ((bool)(_2500 > -5.2601776123046875f) && (bool)(_2500 < -0.7447274923324585f)) { - float _2508 = (_2499 * 0.19999998807907104f) + 3.494786262512207f; - int _2509 = int(_2508); - float _2511 = _2508 - float(_2509); - float _2513 = _global_0[_2509]; - float _2516 = _global_0[(_2509 + 1)]; - float _2521 = _2513 * 0.5f; - _2553 = dot(float3((_2511 * _2511), _2511, 1.0f), float3(mad((_global_0[(_2509 + 2)]), 0.5f, mad(_2516, -1.0f, _2521)), (_2516 - _2513), mad(_2516, 0.5f, _2521))); - } else { - if ((bool)(_2500 >= -0.7447274923324585f) && (bool)(_2500 < 4.673812389373779f)) { - float _2533 = (_2499 * 0.1666666567325592f) + 0.4123218357563019f; - int _2534 = int(_2533); - float _2536 = _2533 - float(_2534); - float _2538 = _global_1[_2534]; - float _2541 = _global_1[(_2534 + 1)]; - float _2546 = _2538 * 0.5f; - _2553 = dot(float3((_2536 * _2536), _2536, 1.0f), float3(mad((_global_1[(_2534 + 2)]), 0.5f, mad(_2541, -1.0f, _2546)), (_2541 - _2538), mad(_2541, 0.5f, _2546))); - } else { - _2553 = 4.0f; - } - } - } else { - _2553 = -4.0f; - } - float _2555 = exp2(_2553 * 3.321928024291992f); - float _2558 = mad(0.16386906802654266f, _2555, mad(0.14067870378494263f, _2496, (_2437 * 0.6954522132873535f))); - float _2561 = mad(0.0955343171954155f, _2555, mad(0.8596711158752441f, _2496, (_2437 * 0.044794563204050064f))); - float _2564 = mad(1.0015007257461548f, _2555, mad(0.004025210160762072f, _2496, (_2437 * -0.005525882821530104f))); - float _2567 = mad(-0.21492856740951538f, _2564, mad(-0.2365107536315918f, _2561, (_2558 * 1.4514392614364624f))); - float _2570 = mad(-0.09967592358589172f, _2564, mad(1.17622971534729f, _2561, (_2558 * -0.07655377686023712f))); - float _2573 = mad(0.9977163076400757f, _2564, mad(-0.006032449658960104f, _2561, (_2558 * 0.008316148072481155f))); - float _2576 = log2(select((_2567 <= 0.0f), 9.999999747378752e-05f, _2567)); - float _2577 = _2576 * 0.3010300099849701f; - if (!(_2577 <= -3.848327875137329f)) { - if ((bool)(_2577 > -3.848327875137329f) && (bool)(_2577 < 0.6812411546707153f)) { - float _2585 = (_2576 + 12.783867835998535f) * 0.46521204710006714f; - int _2586 = int(_2585); - float _2588 = _2585 - float(_2586); - float _2590 = _global_4[_2586]; - float _2593 = _global_4[(_2586 + 1)]; - float _2598 = _2590 * 0.5f; - _2633 = dot(float3((_2588 * _2588), _2588, 1.0f), float3(mad((_global_4[(_2586 + 2)]), 0.5f, mad(_2593, -1.0f, _2598)), (_2593 - _2590), mad(_2593, 0.5f, _2598))); - } else { - if ((bool)(_2577 >= 0.6812411546707153f) && (bool)(_2577 < 3.7613162994384766f)) { - float _2610 = (_2576 + -2.2630341053009033f) * 0.6841424107551575f; - int _2611 = int(_2610); - float _2613 = _2610 - float(_2611); - float _2615 = _global_5[_2611]; - float _2618 = _global_5[(_2611 + 1)]; - float _2623 = _2615 * 0.5f; - _2633 = dot(float3((_2613 * _2613), _2613, 1.0f), float3(mad((_global_5[(_2611 + 2)]), 0.5f, mad(_2618, -1.0f, _2623)), (_2618 - _2615), mad(_2618, 0.5f, _2623))); - } else { - _2633 = ((_2576 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2633 = -2.301030158996582f; - } - float _2635 = exp2(_2633 * 3.321928024291992f); - float _2638 = log2(select((_2570 <= 0.0f), 9.999999747378752e-05f, _2570)); - float _2639 = _2638 * 0.3010300099849701f; - if (!(_2639 <= -3.848327875137329f)) { - if ((bool)(_2639 > -3.848327875137329f) && (bool)(_2639 < 0.6812411546707153f)) { - float _2647 = (_2638 + 12.783867835998535f) * 0.46521204710006714f; - int _2648 = int(_2647); - float _2650 = _2647 - float(_2648); - float _2652 = _global_4[_2648]; - float _2655 = _global_4[(_2648 + 1)]; - float _2660 = _2652 * 0.5f; - _2695 = dot(float3((_2650 * _2650), _2650, 1.0f), float3(mad((_global_4[(_2648 + 2)]), 0.5f, mad(_2655, -1.0f, _2660)), (_2655 - _2652), mad(_2655, 0.5f, _2660))); - } else { - if ((bool)(_2639 >= 0.6812411546707153f) && (bool)(_2639 < 3.7613162994384766f)) { - float _2672 = (_2638 + -2.2630341053009033f) * 0.6841424107551575f; - int _2673 = int(_2672); - float _2675 = _2672 - float(_2673); - float _2677 = _global_5[_2673]; - float _2680 = _global_5[(_2673 + 1)]; - float _2685 = _2677 * 0.5f; - _2695 = dot(float3((_2675 * _2675), _2675, 1.0f), float3(mad((_global_5[(_2673 + 2)]), 0.5f, mad(_2680, -1.0f, _2685)), (_2680 - _2677), mad(_2680, 0.5f, _2685))); - } else { - _2695 = ((_2638 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2695 = -2.301030158996582f; - } - float _2697 = exp2(_2695 * 3.321928024291992f); - float _2700 = log2(select((_2573 <= 0.0f), 9.999999747378752e-05f, _2573)); - float _2701 = _2700 * 0.3010300099849701f; - if (!(_2701 <= -3.848327875137329f)) { - if ((bool)(_2701 > -3.848327875137329f) && (bool)(_2701 < 0.6812411546707153f)) { - float _2709 = (_2700 + 12.783867835998535f) * 0.46521204710006714f; - int _2710 = int(_2709); - float _2712 = _2709 - float(_2710); - float _2714 = _global_4[_2710]; - float _2717 = _global_4[(_2710 + 1)]; - float _2722 = _2714 * 0.5f; - _2757 = dot(float3((_2712 * _2712), _2712, 1.0f), float3(mad((_global_4[(_2710 + 2)]), 0.5f, mad(_2717, -1.0f, _2722)), (_2717 - _2714), mad(_2717, 0.5f, _2722))); - } else { - if ((bool)(_2701 >= 0.6812411546707153f) && (bool)(_2701 < 3.7613162994384766f)) { - float _2734 = (_2700 + -2.2630341053009033f) * 0.6841424107551575f; - int _2735 = int(_2734); - float _2737 = _2734 - float(_2735); - float _2739 = _global_5[_2735]; - float _2742 = _global_5[(_2735 + 1)]; - float _2747 = _2739 * 0.5f; - _2757 = dot(float3((_2737 * _2737), _2737, 1.0f), float3(mad((_global_5[(_2735 + 2)]), 0.5f, mad(_2742, -1.0f, _2747)), (_2742 - _2739), mad(_2742, 0.5f, _2747))); - } else { - _2757 = ((_2700 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2757 = -2.301030158996582f; - } - float _2759 = exp2(_2757 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _2771 = mad(_36, _2759, mad(_35, _2697, (_2635 * _34))); - _2772 = mad(_39, _2759, mad(_38, _2697, (_2635 * _37))); - _2773 = mad(_42, _2759, mad(_41, _2697, (_2635 * _40))); - } else { - _2771 = _2635; - _2772 = _2697; - _2773 = _2759; - } - float _2783 = exp2(log2(_2771 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2784 = exp2(log2(_2772 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2785 = exp2(log2(_2773 * 9.999999747378752e-05f) * 0.1593017578125f); - _2931 = exp2(log2((1.0f / ((_2783 * 18.6875f) + 1.0f)) * ((_2783 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2932 = exp2(log2((1.0f / ((_2784 * 18.6875f) + 1.0f)) * ((_2784 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2785 * 18.6875f) + 1.0f)) * ((_2785 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _2818 = mad(0.04736635088920593f, _1461, mad(0.3395121395587921f, _1460, (_1459 * 0.613191545009613f))); - float _2821 = mad(0.01345000695437193f, _1461, mad(0.9163357615470886f, _1460, (_1459 * 0.07020691782236099f))); - float _2824 = mad(0.8696067929267883f, _1461, mad(0.1095672994852066f, _1460, (_1459 * 0.020618872717022896f))); - float _2843 = exp2(log2(mad(_36, _2824, mad(_35, _2821, (_2818 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2844 = exp2(log2(mad(_39, _2824, mad(_38, _2821, (_2818 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2845 = exp2(log2(mad(_42, _2824, mad(_41, _2821, (_2818 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2931 = exp2(log2((1.0f / ((_2843 * 18.6875f) + 1.0f)) * ((_2843 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2932 = exp2(log2((1.0f / ((_2844 * 18.6875f) + 1.0f)) * ((_2844 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2845 * 18.6875f) + 1.0f)) * ((_2845 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _2880 = mad(0.04736635088920593f, _1449, mad(0.3395121395587921f, _1448, (_1447 * 0.613191545009613f))); - float _2883 = mad(0.01345000695437193f, _1449, mad(0.9163357615470886f, _1448, (_1447 * 0.07020691782236099f))); - float _2886 = mad(0.8696067929267883f, _1449, mad(0.1095672994852066f, _1448, (_1447 * 0.020618872717022896f))); - _2931 = mad(_36, _2886, mad(_35, _2883, (_2880 * _34))); - _2932 = mad(_39, _2886, mad(_38, _2883, (_2880 * _37))); - _2933 = mad(_42, _2886, mad(_41, _2883, (_2880 * _40))); - } else { - float _2899 = mad(0.04736635088920593f, _1475, mad(0.3395121395587921f, _1474, (_1473 * 0.613191545009613f))); - float _2902 = mad(0.01345000695437193f, _1475, mad(0.9163357615470886f, _1474, (_1473 * 0.07020691782236099f))); - float _2905 = mad(0.8696067929267883f, _1475, mad(0.1095672994852066f, _1474, (_1473 * 0.020618872717022896f))); - float _2920 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2931 = exp2(_2920 * log2(mad(_36, _2905, mad(_35, _2902, (_2899 * _34))))); - _2932 = exp2(_2920 * log2(mad(_39, _2905, mad(_38, _2902, (_2899 * _37))))); - _2933 = exp2(_2920 * log2(mad(_42, _2905, mad(_41, _2902, (_2899 * _40))))); - } - } else { - _2931 = _1459; - _2932 = _1460; - _2933 = _1461; - } - } - } - } - } - } - SV_Target.x = (_2931 * 0.9523810148239136f); - SV_Target.y = (_2932 * 0.9523810148239136f); - SV_Target.z = (_2933 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x36DE6039.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x36DE6039.ps_6_0.hlsl deleted file mode 100644 index 3c26ded9d..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x36DE6039.ps_6_0.hlsl +++ /dev/null @@ -1,1267 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _337; - float _338; - float _339; - float _880; - float _913; - float _927; - float _991; - float _1124; - float _1125; - float _1126; - float _1267; - float _1268; - float _1269; - float _1283; - float _1294; - float _1305; - float _1450; - float _1461; - float _1583; - float _1616; - float _1630; - float _1669; - float _1762; - float _1821; - float _1880; - float _1963; - float _2028; - float _2093; - float _2110; - float _2111; - float _2112; - float _2216; - float _2249; - float _2263; - float _2302; - float _2395; - float _2454; - float _2513; - float _2593; - float _2655; - float _2717; - float _2731; - float _2732; - float _2733; - float _2891; - float _2892; - float _2893; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _21 = (cb0_074w == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _156 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _158 = _130 - (_156 * _140); - float _160 = (_156 * _130) + _140; - float _165 = (4.0f - (_160 * 8.0f)) + (_158 * 2.0f); - float _171 = (((_158 * 3.0f) / _165) - _146) + select(_149, _146, _116); - float _172 = (((_160 * 2.0f) / _165) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _173 = max(_172, 1.000000013351432e-10f); - float _174 = _171 / _173; - float _177 = ((1.0f - _171) - _172) / _173; - float _187 = 0.9413792490959167f / mad(-0.16140000522136688f, _177, ((_174 * 0.8950999975204468f) + 0.266400009393692f)); - float _188 = 1.0404363870620728f / mad(0.03669999912381172f, _177, (1.7135000228881836f - (_174 * 0.7501999735832214f))); - float _189 = 1.089766502380371f / mad(1.0296000242233276f, _177, ((_174 * 0.03889999911189079f) + -0.06849999725818634f)); - float _190 = mad(_188, -0.7501999735832214f, 0.0f); - float _191 = mad(_188, 1.7135000228881836f, 0.0f); - float _192 = mad(_188, 0.03669999912381172f, -0.0f); - float _193 = mad(_189, 0.03889999911189079f, 0.0f); - float _194 = mad(_189, -0.06849999725818634f, 0.0f); - float _195 = mad(_189, 1.0296000242233276f, 0.0f); - float _198 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_187 * 0.883457362651825f))); - float _201 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_187 * 0.26293492317199707f))); - float _204 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_187 * -0.15930065512657166f))); - float _207 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_187 * 0.38695648312568665f))); - float _210 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_187 * 0.11516613513231277f))); - float _213 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_187 * -0.0697740763425827f))); - float _216 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_187 * -0.007634039502590895f))); - float _219 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_187 * -0.0022720457054674625f))); - float _222 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_187 * 0.0013765322510153055f))); - float _225 = mad(_204, 0.01933390088379383f, mad(_201, 0.2126729041337967f, (_198 * 0.4124563932418823f))); - float _228 = mad(_204, 0.11919199675321579f, mad(_201, 0.7151522040367126f, (_198 * 0.3575761020183563f))); - float _231 = mad(_204, 0.9503040909767151f, mad(_201, 0.07217500358819962f, (_198 * 0.18043750524520874f))); - float _234 = mad(_213, 0.01933390088379383f, mad(_210, 0.2126729041337967f, (_207 * 0.4124563932418823f))); - float _237 = mad(_213, 0.11919199675321579f, mad(_210, 0.7151522040367126f, (_207 * 0.3575761020183563f))); - float _240 = mad(_213, 0.9503040909767151f, mad(_210, 0.07217500358819962f, (_207 * 0.18043750524520874f))); - float _243 = mad(_222, 0.01933390088379383f, mad(_219, 0.2126729041337967f, (_216 * 0.4124563932418823f))); - float _246 = mad(_222, 0.11919199675321579f, mad(_219, 0.7151522040367126f, (_216 * 0.3575761020183563f))); - float _249 = mad(_222, 0.9503040909767151f, mad(_219, 0.07217500358819962f, (_216 * 0.18043750524520874f))); - float _279 = mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _243, mad(-1.5373831987380981f, _234, (_225 * 3.2409698963165283f))) * _97))); - float _282 = mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _243, mad(1.8759675025939941f, _234, (_225 * -0.9692436456680298f))) * _97))); - float _285 = mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _243, mad(-0.20397695899009705f, _234, (_225 * 0.05563008040189743f))) * _97))); - float _288 = mad(0.04736635088920593f, _285, mad(0.3395121395587921f, _282, (_279 * 0.613191545009613f))); - float _291 = mad(0.01345000695437193f, _285, mad(0.9163357615470886f, _282, (_279 * 0.07020691782236099f))); - float _294 = mad(0.8696067929267883f, _285, mad(0.1095672994852066f, _282, (_279 * 0.020618872717022896f))); - // bool _297 = (cb0_046x == 0); - bool _297 = (tm_flags.x == 0); - if (_297) { - float _299 = dot(float3(_288, _291, _294), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _303 = (_288 / _299) + -1.0f; - float _304 = (_291 / _299) + -1.0f; - float _305 = (_294 / _299) + -1.0f; - float _317 = (1.0f - exp2(((_299 * _299) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_303, _304, _305), float3(_303, _304, _305)) * -4.0f)); - _337 = (((mad(-0.06368283927440643f, _294, mad(-0.32929131388664246f, _291, (_288 * 1.370412826538086f))) - _288) * _317) + _288); - _338 = (((mad(-0.010861567221581936f, _294, mad(1.0970908403396606f, _291, (_288 * -0.08343426138162613f))) - _291) * _317) + _291); - _339 = (((mad(1.203694462776184f, _294, mad(-0.09862564504146576f, _291, (_288 * -0.02579325996339321f))) - _294) * _317) + _294); - } else { - _337 = _288; - _338 = _291; - _339 = _294; - } - float _340 = dot(float3(_337, _338, _339), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _354 = cb0_052w + cb0_057w; - float _368 = cb0_051w * cb0_056w; - float _382 = cb0_050w * cb0_055w; - float _396 = cb0_049w * cb0_054w; - float _407 = cb0_048w * cb0_053w; - float _411 = cb0_048x * (_337 - _340); - float _414 = cb0_048y * (_338 - _340); - float _417 = cb0_048z * (_339 - _340); - float _474 = saturate(_340 / cb0_073x); - float _478 = (_474 * _474) * (3.0f - (_474 * 2.0f)); - float _479 = 1.0f - _478; - float _488 = cb0_067w + cb0_052w; - float _497 = cb0_066w * cb0_051w; - float _506 = cb0_065w * cb0_050w; - float _515 = cb0_064w * cb0_049w; - float _521 = cb0_063w * cb0_048w; - float _583 = saturate((_340 - cb0_073y) / (1.0f - cb0_073y)); - float _587 = (_583 * _583) * (3.0f - (_583 * 2.0f)); - float _596 = cb0_062w + cb0_052w; - float _605 = cb0_061w * cb0_051w; - float _614 = cb0_060w * cb0_050w; - float _623 = cb0_059w * cb0_049w; - float _629 = cb0_058w * cb0_048w; - float _687 = _478 - _587; - float _698 = ((_587 * (((cb0_067x + cb0_052x) + _488) + (((cb0_066x * cb0_051x) * _497) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _515) * log2(max(0.0f, (((_411 * cb0_063x) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _506)))))) + (_479 * (((cb0_052x + cb0_057x) + _354) + (((cb0_051x * cb0_056x) * _368) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _396) * log2(max(0.0f, (((_411 * cb0_053x) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _382))))))) + ((((cb0_062x + cb0_052x) + _596) + (((cb0_061x * cb0_051x) * _605) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _623) * log2(max(0.0f, (((_411 * cb0_058x) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _614))))) * _687); - float _700 = ((_587 * (((cb0_067y + cb0_052y) + _488) + (((cb0_066y * cb0_051y) * _497) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _515) * log2(max(0.0f, (((_414 * cb0_063y) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _506)))))) + (_479 * (((cb0_052y + cb0_057y) + _354) + (((cb0_051y * cb0_056y) * _368) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _396) * log2(max(0.0f, (((_414 * cb0_053y) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _382))))))) + ((((cb0_062y + cb0_052y) + _596) + (((cb0_061y * cb0_051y) * _605) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _623) * log2(max(0.0f, (((_414 * cb0_058y) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _614))))) * _687); - float _702 = ((_587 * (((cb0_067z + cb0_052z) + _488) + (((cb0_066z * cb0_051z) * _497) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _515) * log2(max(0.0f, (((_417 * cb0_063z) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _506)))))) + (_479 * (((cb0_052z + cb0_057z) + _354) + (((cb0_051z * cb0_056z) * _368) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _396) * log2(max(0.0f, (((_417 * cb0_053z) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _382))))))) + ((((cb0_062z + cb0_052z) + _596) + (((cb0_061z * cb0_051z) * _605) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _623) * log2(max(0.0f, (((_417 * cb0_058z) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _614))))) * _687); - float _728 = dot(float3(_698, _700, _702), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _786 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_698 - _728)) + _728)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _787 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_700 - _728)) + _728)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _788 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_702 - _728)) + _728)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _791 = mad(-0.0832584798336029f, _788, mad(-0.6217905879020691f, _787, (_786 * 1.7050515413284302f))); - float _794 = mad(-0.010548528283834457f, _788, mad(1.1408027410507202f, _787, (_786 * -0.13025718927383423f))); - float _797 = mad(1.152971863746643f, _788, mad(-0.1289687603712082f, _787, (_786 * -0.024003278464078903f))); - float _813 = ((mad(0.061360642313957214f, _788, mad(-4.540197551250458e-09f, _787, (_786 * 0.9386394023895264f))) - _786) * cb0_075x) + _786; - float _814 = ((mad(0.169205904006958f, _788, mad(0.8307942152023315f, _787, (_786 * 6.775371730327606e-08f))) - _787) * cb0_075x) + _787; - float _815 = (mad(-2.3283064365386963e-10f, _787, (_786 * -9.313225746154785e-10f)) * cb0_075x) + _788; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _825 = mad(0.16386905312538147f, _815, mad(0.14067868888378143f, _814, (_813 * 0.6954522132873535f))); - float _828 = mad(0.0955343246459961f, _815, mad(0.8596711158752441f, _814, (_813 * 0.044794581830501556f))); - float _831 = mad(1.0015007257461548f, _815, mad(0.004025210160762072f, _814, (_813 * -0.005525882821530104f))); - float _835 = max(max(_825, _828), _831); - float _840 = (max(_835, 1.000000013351432e-10f) - max(min(min(_825, _828), _831), 1.000000013351432e-10f)) / max(_835, 0.009999999776482582f); - float _853 = ((_828 + _825) + _831) + (sqrt((((_831 - _828) * _831) + ((_828 - _825) * _828)) + ((_825 - _831) * _825)) * 1.75f); - float _854 = _853 * 0.3333333432674408f; - float _855 = _840 + -0.4000000059604645f; - float _856 = _855 * 5.0f; - float _860 = max((1.0f - abs(_855 * 2.5f)), 0.0f); - float _871 = ((float((int)(((int)(uint)((bool)(_856 > 0.0f))) - ((int)(uint)((bool)(_856 < 0.0f))))) * (1.0f - (_860 * _860))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_854 <= 0.0533333346247673f)) { - if (!(_854 >= 0.1599999964237213f)) { - _880 = (((0.23999999463558197f / _853) + -0.5f) * _871); - } else { - _880 = 0.0f; - } - } else { - _880 = _871; - } - float _881 = _880 + 1.0f; - float _882 = _881 * _825; - float _883 = _881 * _828; - float _884 = _881 * _831; - do { - if (!((bool)(_882 == _883) && (bool)(_883 == _884))) { - float _891 = ((_882 * 2.0f) - _883) - _884; - float _894 = ((_828 - _831) * 1.7320507764816284f) * _881; - float _896 = atan(_894 / _891); - bool _899 = (_891 < 0.0f); - bool _900 = (_891 == 0.0f); - bool _901 = (_894 >= 0.0f); - bool _902 = (_894 < 0.0f); - _913 = select((_901 && _900), 90.0f, select((_902 && _900), -90.0f, (select((_902 && _899), (_896 + -3.1415927410125732f), select((_901 && _899), (_896 + 3.1415927410125732f), _896)) * 57.2957763671875f))); - } else { - _913 = 0.0f; - } - float _918 = min(max(select((_913 < 0.0f), (_913 + 360.0f), _913), 0.0f), 360.0f); - do { - if (_918 < -180.0f) { - _927 = (_918 + 360.0f); - } else { - if (_918 > 180.0f) { - _927 = (_918 + -360.0f); - } else { - _927 = _918; - } - } - float _931 = saturate(1.0f - abs(_927 * 0.014814814552664757f)); - float _935 = (_931 * _931) * (3.0f - (_931 * 2.0f)); - float _941 = ((_935 * _935) * ((_840 * 0.18000000715255737f) * (0.029999999329447746f - _882))) + _882; - float _951 = max(0.0f, mad(-0.21492856740951538f, _884, mad(-0.2365107536315918f, _883, (_941 * 1.4514392614364624f)))); - float _952 = max(0.0f, mad(-0.09967592358589172f, _884, mad(1.17622971534729f, _883, (_941 * -0.07655377686023712f)))); - float _953 = max(0.0f, mad(0.9977163076400757f, _884, mad(-0.006032449658960104f, _883, (_941 * 0.008316148072481155f)))); - float _954 = dot(float3(_951, _952, _953), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _968 = (cb0_036w + 1.0f) - cb0_036y; - float _971 = cb0_037x + 1.0f; - float _973 = _971 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _991 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _982 = (cb0_036w + 0.18000000715255737f) / _968; - _991 = (-0.7447274923324585f - ((log2(_982 / (2.0f - _982)) * 0.3465735912322998f) * (_968 / cb0_036x))); - } - float _994 = ((1.0f - cb0_036y) / cb0_036x) - _991; - float _996 = (cb0_036z / cb0_036x) - _994; - float _1000 = log2(lerp(_954, _951, 0.9599999785423279f)) * 0.3010300099849701f; - float _1001 = log2(lerp(_954, _952, 0.9599999785423279f)) * 0.3010300099849701f; - float _1002 = log2(lerp(_954, _953, 0.9599999785423279f)) * 0.3010300099849701f; - float _1006 = (_1000 + _994) * cb0_036x; - float _1007 = (_1001 + _994) * cb0_036x; - float _1008 = (_1002 + _994) * cb0_036x; - float _1009 = _968 * 2.0f; - float _1012 = _1000 - _991; - float _1013 = _1001 - _991; - float _1014 = _1002 - _991; - float _1015 = ((cb0_036x * -2.0f) / _968) * 1.4426950216293335f; - float _1031 = _973 * 2.0f; - float _1037 = ((cb0_036x * 2.0f) / _973) * 1.4426950216293335f; - float _1056 = select((_1000 < _991), ((_1009 / (exp2(_1015 * _1012) + 1.0f)) - cb0_036w), _1006); - float _1057 = select((_1001 < _991), ((_1009 / (exp2(_1015 * _1013) + 1.0f)) - cb0_036w), _1007); - float _1058 = select((_1002 < _991), ((_1009 / (exp2(_1015 * _1014) + 1.0f)) - cb0_036w), _1008); - float _1065 = _996 - _991; - float _1069 = saturate(_1012 / _1065); - float _1070 = saturate(_1013 / _1065); - float _1071 = saturate(_1014 / _1065); - bool _1072 = (_996 < _991); - float _1076 = select(_1072, (1.0f - _1069), _1069); - float _1077 = select(_1072, (1.0f - _1070), _1070); - float _1078 = select(_1072, (1.0f - _1071), _1071); - float _1097 = (((_1076 * _1076) * (select((_1000 > _996), (_971 - (_1031 / (exp2(_1037 * (_1000 - _996)) + 1.0f))), _1006) - _1056)) * (3.0f - (_1076 * 2.0f))) + _1056; - float _1098 = (((_1077 * _1077) * (select((_1001 > _996), (_971 - (_1031 / (exp2(_1037 * (_1001 - _996)) + 1.0f))), _1007) - _1057)) * (3.0f - (_1077 * 2.0f))) + _1057; - float _1099 = (((_1078 * _1078) * (select((_1002 > _996), (_971 - (_1031 / (exp2(_1037 * (_1002 - _996)) + 1.0f))), _1008) - _1058)) * (3.0f - (_1078 * 2.0f))) + _1058; - float _1100 = dot(float3(_1097, _1098, _1099), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1124 = (((max(0.0f, (lerp(_1100, _1097, 0.9300000071525574f))) - _813) * cb0_075z) + _813); - _1125 = (((max(0.0f, (lerp(_1100, _1098, 0.9300000071525574f))) - _814) * cb0_075z) + _814); - _1126 = (((max(0.0f, (lerp(_1100, _1099, 0.9300000071525574f))) - _815) * cb0_075z) + _815); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1124 = _813; - _1125 = _814; - _1126 = _815; - } - float _1142 = ((mad(-0.06537103652954102f, _1126, mad(1.451815478503704e-06f, _1125, (_1124 * 1.065374732017517f))) - _1124) * cb0_075x) + _1124; - float _1143 = ((mad(-0.20366770029067993f, _1126, mad(1.2036634683609009f, _1125, (_1124 * -2.57161445915699e-07f))) - _1125) * cb0_075x) + _1125; - float _1144 = ((mad(0.9999996423721313f, _1126, mad(2.0954757928848267e-08f, _1125, (_1124 * 1.862645149230957e-08f))) - _1126) * cb0_075x) + _1126; - [branch] - if (!_297) { - float _1187 = 1.0f / (dot(float3(_791, _794, _797), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1197 = max(0.0f, (((_1187 * cb0_035x) + cb0_034x) * dot(float3(_791, _794, _797), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1198 = max(0.0f, (((_1187 * cb0_035y) + cb0_034y) * dot(float3(_791, _794, _797), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1199 = max(0.0f, (((_1187 * cb0_035z) + cb0_034z) * dot(float3(_791, _794, _797), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1205 = max(0.0f, (cb0_031x - _1197)); - float _1206 = max(0.0f, (cb0_031x - _1198)); - float _1207 = max(0.0f, (cb0_031x - _1199)); - float _1209 = max(_1197, cb0_031z); - float _1210 = max(_1198, cb0_031z); - float _1211 = max(_1199, cb0_031z); - float _1256 = cb0_029w + -0.0020000000949949026f; - _1267 = ((((min(max(_1197, cb0_031x), cb0_031z) * cb0_030w) + _1256) + (((cb0_032x * _1209) + cb0_032y) * (1.0f / (_1209 + cb0_031w)))) + ((_1205 * cb0_028w) * (1.0f / (cb0_031y + _1205)))); - _1268 = ((((min(max(_1198, cb0_031x), cb0_031z) * cb0_030w) + _1256) + (((cb0_032x * _1210) + cb0_032y) * (1.0f / (_1210 + cb0_031w)))) + ((_1206 * cb0_028w) * (1.0f / (_1206 + cb0_031y)))); - _1269 = ((((min(max(_1199, cb0_031x), cb0_031z) * cb0_030w) + _1256) + ((1.0f / (_1211 + cb0_031w)) * ((cb0_032x * _1211) + cb0_032y))) + ((_1207 * cb0_028w) * (1.0f / (_1207 + cb0_031y)))); - } else { - _1267 = max(0.0f, mad(-0.0832584798336029f, _1144, mad(-0.6217905879020691f, _1143, (_1142 * 1.7050515413284302f)))); - _1268 = max(0.0f, mad(-0.010548528283834457f, _1144, mad(1.1408027410507202f, _1143, (_1142 * -0.13025718927383423f)))); - _1269 = max(0.0f, mad(1.152971863746643f, _1144, mad(-0.1289687603712082f, _1143, (_1142 * -0.024003278464078903f)))); - } - float _1270 = saturate(_1267); - float _1271 = saturate(_1268); - float _1272 = saturate(_1269); - if (_1270 < 0.0031306699384003878f) { - _1283 = (_1270 * 12.920000076293945f); - } else { - _1283 = (((pow(_1270, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1271 < 0.0031306699384003878f) { - _1294 = (_1271 * 12.920000076293945f); - } else { - _1294 = (((pow(_1271, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1272 < 0.0031306699384003878f) { - _1305 = (_1272 * 12.920000076293945f); - } else { - _1305 = (((pow(_1272, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1309 = (_1294 * 0.9375f) + 0.03125f; - float _1317 = _1305 * 15.0f; - float _1318 = floor(_1317); - float _1319 = _1317 - _1318; - float _1321 = (((_1283 * 0.9375f) + 0.03125f) + _1318) * 0.0625f; - float4 _1322 = t0.Sample(s0, float2(_1321, _1309)); - float4 _1327 = t0.Sample(s0, float2((_1321 + 0.0625f), _1309)); - float _1346 = max(6.103519990574569e-05f, (((lerp(_1322.x, _1327.x, _1319)) * cb0_041x) + (cb0_040x * _1283))); - float _1347 = max(6.103519990574569e-05f, (((lerp(_1322.y, _1327.y, _1319)) * cb0_041x) + (cb0_040x * _1294))); - float _1348 = max(6.103519990574569e-05f, (((lerp(_1322.z, _1327.z, _1319)) * cb0_041x) + (cb0_040x * _1305))); - float _1370 = select((_1346 > 0.040449999272823334f), exp2(log2((_1346 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1346 * 0.07739938050508499f)); - float _1371 = select((_1347 > 0.040449999272823334f), exp2(log2((_1347 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1347 * 0.07739938050508499f)); - float _1372 = select((_1348 > 0.040449999272823334f), exp2(log2((_1348 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1348 * 0.07739938050508499f)); - float _1398 = ((((cb0_026x * _1370) + cb0_026y) * _1370) + cb0_026z) * cb0_044y; - float _1399 = ((((cb0_026x * _1371) + cb0_026y) * _1371) + cb0_026z) * cb0_044z; - float _1400 = ((((cb0_026x * _1372) + cb0_026y) * _1372) + cb0_026z) * cb0_044w; - float _1407 = ((cb0_045x - _1398) * cb0_045w) + _1398; - float _1408 = ((cb0_045y - _1399) * cb0_045w) + _1399; - float _1409 = ((cb0_045z - _1400) * cb0_045w) + _1400; - float _1410 = cb0_044y * _791; - float _1411 = cb0_044z * _794; - float _1412 = cb0_044w * _797; - float _1419 = ((cb0_045x - _1410) * cb0_045w) + _1410; - float _1420 = ((cb0_045y - _1411) * cb0_045w) + _1411; - float _1421 = ((cb0_045z - _1412) * cb0_045w) + _1412; - float _1433 = exp2(log2(max(0.0f, _1407)) * cb0_027y); - float _1434 = exp2(log2(max(0.0f, _1408)) * cb0_027y); - float _1435 = exp2(log2(max(0.0f, _1409)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1433, _1434, _1435)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1433 < 0.0031306699384003878f) { - _1450 = (_1433 * 12.920000076293945f); - } else { - _1450 = (((pow(_1433, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1434 < 0.0031306699384003878f) { - _1461 = (_1434 * 12.920000076293945f); - } else { - _1461 = (((pow(_1434, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1435 < 0.0031306699384003878f) { - _2891 = _1450; - _2892 = _1461; - _2893 = (_1435 * 12.920000076293945f); - } else { - _2891 = _1450; - _2892 = _1461; - _2893 = (((pow(_1435, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1476 = mad(0.04736635088920593f, _1435, mad(0.3395121395587921f, _1434, (_1433 * 0.613191545009613f))); - float _1479 = mad(0.01345000695437193f, _1435, mad(0.9163357615470886f, _1434, (_1433 * 0.07020691782236099f))); - float _1482 = mad(0.8696067929267883f, _1435, mad(0.1095672994852066f, _1434, (_1433 * 0.020618872717022896f))); - float _1492 = max(6.103519990574569e-05f, mad(_34, _1482, mad(_33, _1479, (_1476 * _32)))); - float _1493 = max(6.103519990574569e-05f, mad(_37, _1482, mad(_36, _1479, (_1476 * _35)))); - float _1494 = max(6.103519990574569e-05f, mad(_40, _1482, mad(_39, _1479, (_1476 * _38)))); - _2891 = min((_1492 * 4.5f), ((exp2(log2(max(_1492, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2892 = min((_1493 * 4.5f), ((exp2(log2(max(_1493, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2893 = min((_1494 * 4.5f), ((exp2(log2(max(_1494, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1521 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1521) { - float _1524 = _1420 * 3.0f; - float _1525 = _1421 * 3.0f; - float _1528 = mad(0.17733481526374817f, _1525, mad(0.38297808170318604f, _1524, (_1419 * 1.31910240650177f))); - float _1531 = mad(0.09676162153482437f, _1525, mad(0.8134231567382812f, _1524, (_1419 * 0.2693769633769989f))); - float _1534 = mad(0.870704174041748f, _1525, mad(0.11154405772686005f, _1524, (_1419 * 0.05263196676969528f))); - float _1538 = max(max(_1528, _1531), _1534); - float _1543 = (max(_1538, 1.000000013351432e-10f) - max(min(min(_1528, _1531), _1534), 1.000000013351432e-10f)) / max(_1538, 0.009999999776482582f); - float _1556 = ((_1531 + _1528) + _1534) + (sqrt((((_1534 - _1531) * _1534) + ((_1531 - _1528) * _1531)) + ((_1528 - _1534) * _1528)) * 1.75f); - float _1557 = _1556 * 0.3333333432674408f; - float _1558 = _1543 + -0.4000000059604645f; - float _1559 = _1558 * 5.0f; - float _1563 = max((1.0f - abs(_1558 * 2.5f)), 0.0f); - float _1574 = ((float((int)(((int)(uint)((bool)(_1559 > 0.0f))) - ((int)(uint)((bool)(_1559 < 0.0f))))) * (1.0f - (_1563 * _1563))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1557 <= 0.0533333346247673f)) { - if (!(_1557 >= 0.1599999964237213f)) { - _1583 = (((0.23999999463558197f / _1556) + -0.5f) * _1574); - } else { - _1583 = 0.0f; - } - } else { - _1583 = _1574; - } - float _1584 = _1583 + 1.0f; - float _1585 = _1584 * _1528; - float _1586 = _1584 * _1531; - float _1587 = _1584 * _1534; - do { - if (!((bool)(_1585 == _1586) && (bool)(_1586 == _1587))) { - float _1594 = ((_1585 * 2.0f) - _1586) - _1587; - float _1597 = ((_1531 - _1534) * 1.7320507764816284f) * _1584; - float _1599 = atan(_1597 / _1594); - bool _1602 = (_1594 < 0.0f); - bool _1603 = (_1594 == 0.0f); - bool _1604 = (_1597 >= 0.0f); - bool _1605 = (_1597 < 0.0f); - _1616 = select((_1604 && _1603), 90.0f, select((_1605 && _1603), -90.0f, (select((_1605 && _1602), (_1599 + -3.1415927410125732f), select((_1604 && _1602), (_1599 + 3.1415927410125732f), _1599)) * 57.2957763671875f))); - } else { - _1616 = 0.0f; - } - float _1621 = min(max(select((_1616 < 0.0f), (_1616 + 360.0f), _1616), 0.0f), 360.0f); - do { - if (_1621 < -180.0f) { - _1630 = (_1621 + 360.0f); - } else { - if (_1621 > 180.0f) { - _1630 = (_1621 + -360.0f); - } else { - _1630 = _1621; - } - } - do { - if ((bool)(_1630 > -67.5f) && (bool)(_1630 < 67.5f)) { - float _1636 = (_1630 + 67.5f) * 0.029629629105329514f; - int _1637 = int(_1636); - float _1639 = _1636 - float((int)(_1637)); - float _1640 = _1639 * _1639; - float _1641 = _1640 * _1639; - if (_1637 == 3) { - _1669 = (((0.1666666716337204f - (_1639 * 0.5f)) + (_1640 * 0.5f)) - (_1641 * 0.1666666716337204f)); - } else { - if (_1637 == 2) { - _1669 = ((0.6666666865348816f - _1640) + (_1641 * 0.5f)); - } else { - if (_1637 == 1) { - _1669 = ((0.1666666716337204f - (_1641 * 0.5f)) + ((_1640 + _1639) * 0.5f)); - } else { - _1669 = select((_1637 == 0), (_1641 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1669 = 0.0f; - } - float _1678 = min(max(((((_1543 * 0.27000001072883606f) * (0.029999999329447746f - _1585)) * _1669) + _1585), 0.0f), 65535.0f); - float _1679 = min(max(_1586, 0.0f), 65535.0f); - float _1680 = min(max(_1587, 0.0f), 65535.0f); - float _1693 = min(max(mad(-0.21492856740951538f, _1680, mad(-0.2365107536315918f, _1679, (_1678 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1694 = min(max(mad(-0.09967592358589172f, _1680, mad(1.17622971534729f, _1679, (_1678 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1695 = min(max(mad(0.9977163076400757f, _1680, mad(-0.006032449658960104f, _1679, (_1678 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1696 = dot(float3(_1693, _1694, _1695), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1703 = ((_1693 - _1696) * 0.9599999785423279f) + _1696; - float _1704 = ((_1694 - _1696) * 0.9599999785423279f) + _1696; - float _1705 = ((_1695 - _1696) * 0.9599999785423279f) + _1696; - float _1708 = log2(select((_1703 <= 0.0f), 6.103515625e-05f, _1703)); - float _1709 = _1708 * 0.3010300099849701f; - do { - if (!(_1709 <= -5.2601776123046875f)) { - if ((bool)(_1709 > -5.2601776123046875f) && (bool)(_1709 < -0.7447274923324585f)) { - float _1717 = (_1708 * 0.19999998807907104f) + 3.494786262512207f; - int _1718 = int(_1717); - float _1720 = _1717 - float((int)(_1718)); - float _1722 = _global_0[_1718]; - float _1725 = _global_0[(_1718 + 1)]; - float _1730 = _1722 * 0.5f; - _1762 = dot(float3((_1720 * _1720), _1720, 1.0f), float3(mad((_global_0[(_1718 + 2)]), 0.5f, mad(_1725, -1.0f, _1730)), (_1725 - _1722), mad(_1725, 0.5f, _1730))); - } else { - if ((bool)(_1709 >= -0.7447274923324585f) && (bool)(_1709 < 4.673812389373779f)) { - float _1742 = (_1708 * 0.1666666567325592f) + 0.4123218357563019f; - int _1743 = int(_1742); - float _1745 = _1742 - float((int)(_1743)); - float _1747 = _global_1[_1743]; - float _1750 = _global_1[(_1743 + 1)]; - float _1755 = _1747 * 0.5f; - _1762 = dot(float3((_1745 * _1745), _1745, 1.0f), float3(mad((_global_1[(_1743 + 2)]), 0.5f, mad(_1750, -1.0f, _1755)), (_1750 - _1747), mad(_1750, 0.5f, _1755))); - } else { - _1762 = 4.0f; - } - } - } else { - _1762 = -4.0f; - } - float _1764 = exp2(_1762 * 3.321928024291992f); - float _1767 = log2(select((_1704 <= 0.0f), 6.103515625e-05f, _1704)); - float _1768 = _1767 * 0.3010300099849701f; - do { - if (!(_1768 <= -5.2601776123046875f)) { - if ((bool)(_1768 > -5.2601776123046875f) && (bool)(_1768 < -0.7447274923324585f)) { - float _1776 = (_1767 * 0.19999998807907104f) + 3.494786262512207f; - int _1777 = int(_1776); - float _1779 = _1776 - float((int)(_1777)); - float _1781 = _global_0[_1777]; - float _1784 = _global_0[(_1777 + 1)]; - float _1789 = _1781 * 0.5f; - _1821 = dot(float3((_1779 * _1779), _1779, 1.0f), float3(mad((_global_0[(_1777 + 2)]), 0.5f, mad(_1784, -1.0f, _1789)), (_1784 - _1781), mad(_1784, 0.5f, _1789))); - } else { - if ((bool)(_1768 >= -0.7447274923324585f) && (bool)(_1768 < 4.673812389373779f)) { - float _1801 = (_1767 * 0.1666666567325592f) + 0.4123218357563019f; - int _1802 = int(_1801); - float _1804 = _1801 - float((int)(_1802)); - float _1806 = _global_1[_1802]; - float _1809 = _global_1[(_1802 + 1)]; - float _1814 = _1806 * 0.5f; - _1821 = dot(float3((_1804 * _1804), _1804, 1.0f), float3(mad((_global_1[(_1802 + 2)]), 0.5f, mad(_1809, -1.0f, _1814)), (_1809 - _1806), mad(_1809, 0.5f, _1814))); - } else { - _1821 = 4.0f; - } - } - } else { - _1821 = -4.0f; - } - float _1823 = exp2(_1821 * 3.321928024291992f); - float _1826 = log2(select((_1705 <= 0.0f), 6.103515625e-05f, _1705)); - float _1827 = _1826 * 0.3010300099849701f; - do { - if (!(_1827 <= -5.2601776123046875f)) { - if ((bool)(_1827 > -5.2601776123046875f) && (bool)(_1827 < -0.7447274923324585f)) { - float _1835 = (_1826 * 0.19999998807907104f) + 3.494786262512207f; - int _1836 = int(_1835); - float _1838 = _1835 - float((int)(_1836)); - float _1840 = _global_0[_1836]; - float _1843 = _global_0[(_1836 + 1)]; - float _1848 = _1840 * 0.5f; - _1880 = dot(float3((_1838 * _1838), _1838, 1.0f), float3(mad((_global_0[(_1836 + 2)]), 0.5f, mad(_1843, -1.0f, _1848)), (_1843 - _1840), mad(_1843, 0.5f, _1848))); - } else { - if ((bool)(_1827 >= -0.7447274923324585f) && (bool)(_1827 < 4.673812389373779f)) { - float _1860 = (_1826 * 0.1666666567325592f) + 0.4123218357563019f; - int _1861 = int(_1860); - float _1863 = _1860 - float((int)(_1861)); - float _1865 = _global_1[_1861]; - float _1868 = _global_1[(_1861 + 1)]; - float _1873 = _1865 * 0.5f; - _1880 = dot(float3((_1863 * _1863), _1863, 1.0f), float3(mad((_global_1[(_1861 + 2)]), 0.5f, mad(_1868, -1.0f, _1873)), (_1868 - _1865), mad(_1868, 0.5f, _1873))); - } else { - _1880 = 4.0f; - } - } - } else { - _1880 = -4.0f; - } - float _1882 = exp2(_1880 * 3.321928024291992f); - float _1885 = mad(0.16386906802654266f, _1882, mad(0.14067870378494263f, _1823, (_1764 * 0.6954522132873535f))); - float _1888 = mad(0.0955343171954155f, _1882, mad(0.8596711158752441f, _1823, (_1764 * 0.044794563204050064f))); - float _1891 = mad(1.0015007257461548f, _1882, mad(0.004025210160762072f, _1823, (_1764 * -0.005525882821530104f))); - float _1894 = mad(-0.21492856740951538f, _1891, mad(-0.2365107536315918f, _1888, (_1885 * 1.4514392614364624f))); - float _1897 = mad(-0.09967592358589172f, _1891, mad(1.17622971534729f, _1888, (_1885 * -0.07655377686023712f))); - float _1900 = mad(0.9977163076400757f, _1891, mad(-0.006032449658960104f, _1888, (_1885 * 0.008316148072481155f))); - float _1903 = log2(select((_1894 <= 0.0f), 9.999999747378752e-05f, _1894)); - float _1904 = _1903 * 0.3010300099849701f; - do { - if (!(!(_1904 <= -3.848327875137329f))) { - _1963 = ((_1903 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1904 > -3.848327875137329f) && (bool)(_1904 < 0.6812411546707153f)) { - float _1915 = (_1903 + 12.783867835998535f) * 0.46521204710006714f; - int _1916 = int(_1915); - float _1918 = _1915 - float((int)(_1916)); - float _1920 = _global_2[_1916]; - float _1923 = _global_2[(_1916 + 1)]; - float _1928 = _1920 * 0.5f; - _1963 = dot(float3((_1918 * _1918), _1918, 1.0f), float3(mad((_global_2[(_1916 + 2)]), 0.5f, mad(_1923, -1.0f, _1928)), (_1923 - _1920), mad(_1923, 0.5f, _1928))); - } else { - if ((bool)(_1904 >= 0.6812411546707153f) && (bool)(_1904 < 3.653702974319458f)) { - float _1940 = (_1903 + -2.2630341053009033f) * 0.7089107632637024f; - int _1941 = int(_1940); - float _1943 = _1940 - float((int)(_1941)); - float _1945 = _global_3[_1941]; - float _1948 = _global_3[(_1941 + 1)]; - float _1953 = _1945 * 0.5f; - _1963 = dot(float3((_1943 * _1943), _1943, 1.0f), float3(mad((_global_3[(_1941 + 2)]), 0.5f, mad(_1948, -1.0f, _1953)), (_1948 - _1945), mad(_1948, 0.5f, _1953))); - } else { - _1963 = ((_1903 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1968 = log2(select((_1897 <= 0.0f), 9.999999747378752e-05f, _1897)); - float _1969 = _1968 * 0.3010300099849701f; - do { - if (!(!(_1969 <= -3.848327875137329f))) { - _2028 = ((_1968 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1969 > -3.848327875137329f) && (bool)(_1969 < 0.6812411546707153f)) { - float _1980 = (_1968 + 12.783867835998535f) * 0.46521204710006714f; - int _1981 = int(_1980); - float _1983 = _1980 - float((int)(_1981)); - float _1985 = _global_2[_1981]; - float _1988 = _global_2[(_1981 + 1)]; - float _1993 = _1985 * 0.5f; - _2028 = dot(float3((_1983 * _1983), _1983, 1.0f), float3(mad((_global_2[(_1981 + 2)]), 0.5f, mad(_1988, -1.0f, _1993)), (_1988 - _1985), mad(_1988, 0.5f, _1993))); - } else { - if ((bool)(_1969 >= 0.6812411546707153f) && (bool)(_1969 < 3.653702974319458f)) { - float _2005 = (_1968 + -2.2630341053009033f) * 0.7089107632637024f; - int _2006 = int(_2005); - float _2008 = _2005 - float((int)(_2006)); - float _2010 = _global_3[_2006]; - float _2013 = _global_3[(_2006 + 1)]; - float _2018 = _2010 * 0.5f; - _2028 = dot(float3((_2008 * _2008), _2008, 1.0f), float3(mad((_global_3[(_2006 + 2)]), 0.5f, mad(_2013, -1.0f, _2018)), (_2013 - _2010), mad(_2013, 0.5f, _2018))); - } else { - _2028 = ((_1968 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2033 = log2(select((_1900 <= 0.0f), 9.999999747378752e-05f, _1900)); - float _2034 = _2033 * 0.3010300099849701f; - do { - if (!(!(_2034 <= -3.848327875137329f))) { - _2093 = ((_2033 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2034 > -3.848327875137329f) && (bool)(_2034 < 0.6812411546707153f)) { - float _2045 = (_2033 + 12.783867835998535f) * 0.46521204710006714f; - int _2046 = int(_2045); - float _2048 = _2045 - float((int)(_2046)); - float _2050 = _global_2[_2046]; - float _2053 = _global_2[(_2046 + 1)]; - float _2058 = _2050 * 0.5f; - _2093 = dot(float3((_2048 * _2048), _2048, 1.0f), float3(mad((_global_2[(_2046 + 2)]), 0.5f, mad(_2053, -1.0f, _2058)), (_2053 - _2050), mad(_2053, 0.5f, _2058))); - } else { - if ((bool)(_2034 >= 0.6812411546707153f) && (bool)(_2034 < 3.653702974319458f)) { - float _2070 = (_2033 + -2.2630341053009033f) * 0.7089107632637024f; - int _2071 = int(_2070); - float _2073 = _2070 - float((int)(_2071)); - float _2075 = _global_3[_2071]; - float _2078 = _global_3[(_2071 + 1)]; - float _2083 = _2075 * 0.5f; - _2093 = dot(float3((_2073 * _2073), _2073, 1.0f), float3(mad((_global_3[(_2071 + 2)]), 0.5f, mad(_2078, -1.0f, _2083)), (_2078 - _2075), mad(_2078, 0.5f, _2083))); - } else { - _2093 = ((_2033 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2096 = exp2(_1963 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2097 = exp2(_2028 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2098 = exp2(_2093 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1521) { - _2110 = mad(_34, _2098, mad(_33, _2097, (_2096 * _32))); - _2111 = mad(_37, _2098, mad(_36, _2097, (_2096 * _35))); - _2112 = mad(_40, _2098, mad(_39, _2097, (_2096 * _38))); - } else { - _2110 = _2096; - _2111 = _2097; - _2112 = _2098; - } - float _2122 = exp2(log2(_2110 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2123 = exp2(log2(_2111 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2124 = exp2(log2(_2112 * 9.999999747378752e-05f) * 0.1593017578125f); - _2891 = exp2(log2((1.0f / ((_2122 * 18.6875f) + 1.0f)) * ((_2122 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2892 = exp2(log2((1.0f / ((_2123 * 18.6875f) + 1.0f)) * ((_2123 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2893 = exp2(log2((1.0f / ((_2124 * 18.6875f) + 1.0f)) * ((_2124 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2157 = _1420 * 3.0f; - float _2158 = _1421 * 3.0f; - float _2161 = mad(0.17733481526374817f, _2158, mad(0.38297808170318604f, _2157, (_1419 * 1.31910240650177f))); - float _2164 = mad(0.09676162153482437f, _2158, mad(0.8134231567382812f, _2157, (_1419 * 0.2693769633769989f))); - float _2167 = mad(0.870704174041748f, _2158, mad(0.11154405772686005f, _2157, (_1419 * 0.05263196676969528f))); - float _2171 = max(max(_2161, _2164), _2167); - float _2176 = (max(_2171, 1.000000013351432e-10f) - max(min(min(_2161, _2164), _2167), 1.000000013351432e-10f)) / max(_2171, 0.009999999776482582f); - float _2189 = ((_2164 + _2161) + _2167) + (sqrt((((_2167 - _2164) * _2167) + ((_2164 - _2161) * _2164)) + ((_2161 - _2167) * _2161)) * 1.75f); - float _2190 = _2189 * 0.3333333432674408f; - float _2191 = _2176 + -0.4000000059604645f; - float _2192 = _2191 * 5.0f; - float _2196 = max((1.0f - abs(_2191 * 2.5f)), 0.0f); - float _2207 = ((float((int)(((int)(uint)((bool)(_2192 > 0.0f))) - ((int)(uint)((bool)(_2192 < 0.0f))))) * (1.0f - (_2196 * _2196))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2190 <= 0.0533333346247673f)) { - if (!(_2190 >= 0.1599999964237213f)) { - _2216 = (((0.23999999463558197f / _2189) + -0.5f) * _2207); - } else { - _2216 = 0.0f; - } - } else { - _2216 = _2207; - } - float _2217 = _2216 + 1.0f; - float _2218 = _2217 * _2161; - float _2219 = _2217 * _2164; - float _2220 = _2217 * _2167; - do { - if (!((bool)(_2218 == _2219) && (bool)(_2219 == _2220))) { - float _2227 = ((_2218 * 2.0f) - _2219) - _2220; - float _2230 = ((_2164 - _2167) * 1.7320507764816284f) * _2217; - float _2232 = atan(_2230 / _2227); - bool _2235 = (_2227 < 0.0f); - bool _2236 = (_2227 == 0.0f); - bool _2237 = (_2230 >= 0.0f); - bool _2238 = (_2230 < 0.0f); - _2249 = select((_2237 && _2236), 90.0f, select((_2238 && _2236), -90.0f, (select((_2238 && _2235), (_2232 + -3.1415927410125732f), select((_2237 && _2235), (_2232 + 3.1415927410125732f), _2232)) * 57.2957763671875f))); - } else { - _2249 = 0.0f; - } - float _2254 = min(max(select((_2249 < 0.0f), (_2249 + 360.0f), _2249), 0.0f), 360.0f); - do { - if (_2254 < -180.0f) { - _2263 = (_2254 + 360.0f); - } else { - if (_2254 > 180.0f) { - _2263 = (_2254 + -360.0f); - } else { - _2263 = _2254; - } - } - do { - if ((bool)(_2263 > -67.5f) && (bool)(_2263 < 67.5f)) { - float _2269 = (_2263 + 67.5f) * 0.029629629105329514f; - int _2270 = int(_2269); - float _2272 = _2269 - float((int)(_2270)); - float _2273 = _2272 * _2272; - float _2274 = _2273 * _2272; - if (_2270 == 3) { - _2302 = (((0.1666666716337204f - (_2272 * 0.5f)) + (_2273 * 0.5f)) - (_2274 * 0.1666666716337204f)); - } else { - if (_2270 == 2) { - _2302 = ((0.6666666865348816f - _2273) + (_2274 * 0.5f)); - } else { - if (_2270 == 1) { - _2302 = ((0.1666666716337204f - (_2274 * 0.5f)) + ((_2273 + _2272) * 0.5f)); - } else { - _2302 = select((_2270 == 0), (_2274 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2302 = 0.0f; - } - float _2311 = min(max(((((_2176 * 0.27000001072883606f) * (0.029999999329447746f - _2218)) * _2302) + _2218), 0.0f), 65535.0f); - float _2312 = min(max(_2219, 0.0f), 65535.0f); - float _2313 = min(max(_2220, 0.0f), 65535.0f); - float _2326 = min(max(mad(-0.21492856740951538f, _2313, mad(-0.2365107536315918f, _2312, (_2311 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2327 = min(max(mad(-0.09967592358589172f, _2313, mad(1.17622971534729f, _2312, (_2311 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2328 = min(max(mad(0.9977163076400757f, _2313, mad(-0.006032449658960104f, _2312, (_2311 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2329 = dot(float3(_2326, _2327, _2328), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2336 = ((_2326 - _2329) * 0.9599999785423279f) + _2329; - float _2337 = ((_2327 - _2329) * 0.9599999785423279f) + _2329; - float _2338 = ((_2328 - _2329) * 0.9599999785423279f) + _2329; - float _2341 = log2(select((_2336 <= 0.0f), 6.103515625e-05f, _2336)); - float _2342 = _2341 * 0.3010300099849701f; - do { - if (!(_2342 <= -5.2601776123046875f)) { - if ((bool)(_2342 > -5.2601776123046875f) && (bool)(_2342 < -0.7447274923324585f)) { - float _2350 = (_2341 * 0.19999998807907104f) + 3.494786262512207f; - int _2351 = int(_2350); - float _2353 = _2350 - float((int)(_2351)); - float _2355 = _global_0[_2351]; - float _2358 = _global_0[(_2351 + 1)]; - float _2363 = _2355 * 0.5f; - _2395 = dot(float3((_2353 * _2353), _2353, 1.0f), float3(mad((_global_0[(_2351 + 2)]), 0.5f, mad(_2358, -1.0f, _2363)), (_2358 - _2355), mad(_2358, 0.5f, _2363))); - } else { - if ((bool)(_2342 >= -0.7447274923324585f) && (bool)(_2342 < 4.673812389373779f)) { - float _2375 = (_2341 * 0.1666666567325592f) + 0.4123218357563019f; - int _2376 = int(_2375); - float _2378 = _2375 - float((int)(_2376)); - float _2380 = _global_1[_2376]; - float _2383 = _global_1[(_2376 + 1)]; - float _2388 = _2380 * 0.5f; - _2395 = dot(float3((_2378 * _2378), _2378, 1.0f), float3(mad((_global_1[(_2376 + 2)]), 0.5f, mad(_2383, -1.0f, _2388)), (_2383 - _2380), mad(_2383, 0.5f, _2388))); - } else { - _2395 = 4.0f; - } - } - } else { - _2395 = -4.0f; - } - float _2397 = exp2(_2395 * 3.321928024291992f); - float _2400 = log2(select((_2337 <= 0.0f), 6.103515625e-05f, _2337)); - float _2401 = _2400 * 0.3010300099849701f; - do { - if (!(_2401 <= -5.2601776123046875f)) { - if ((bool)(_2401 > -5.2601776123046875f) && (bool)(_2401 < -0.7447274923324585f)) { - float _2409 = (_2400 * 0.19999998807907104f) + 3.494786262512207f; - int _2410 = int(_2409); - float _2412 = _2409 - float((int)(_2410)); - float _2414 = _global_0[_2410]; - float _2417 = _global_0[(_2410 + 1)]; - float _2422 = _2414 * 0.5f; - _2454 = dot(float3((_2412 * _2412), _2412, 1.0f), float3(mad((_global_0[(_2410 + 2)]), 0.5f, mad(_2417, -1.0f, _2422)), (_2417 - _2414), mad(_2417, 0.5f, _2422))); - } else { - if ((bool)(_2401 >= -0.7447274923324585f) && (bool)(_2401 < 4.673812389373779f)) { - float _2434 = (_2400 * 0.1666666567325592f) + 0.4123218357563019f; - int _2435 = int(_2434); - float _2437 = _2434 - float((int)(_2435)); - float _2439 = _global_1[_2435]; - float _2442 = _global_1[(_2435 + 1)]; - float _2447 = _2439 * 0.5f; - _2454 = dot(float3((_2437 * _2437), _2437, 1.0f), float3(mad((_global_1[(_2435 + 2)]), 0.5f, mad(_2442, -1.0f, _2447)), (_2442 - _2439), mad(_2442, 0.5f, _2447))); - } else { - _2454 = 4.0f; - } - } - } else { - _2454 = -4.0f; - } - float _2456 = exp2(_2454 * 3.321928024291992f); - float _2459 = log2(select((_2338 <= 0.0f), 6.103515625e-05f, _2338)); - float _2460 = _2459 * 0.3010300099849701f; - do { - if (!(_2460 <= -5.2601776123046875f)) { - if ((bool)(_2460 > -5.2601776123046875f) && (bool)(_2460 < -0.7447274923324585f)) { - float _2468 = (_2459 * 0.19999998807907104f) + 3.494786262512207f; - int _2469 = int(_2468); - float _2471 = _2468 - float((int)(_2469)); - float _2473 = _global_0[_2469]; - float _2476 = _global_0[(_2469 + 1)]; - float _2481 = _2473 * 0.5f; - _2513 = dot(float3((_2471 * _2471), _2471, 1.0f), float3(mad((_global_0[(_2469 + 2)]), 0.5f, mad(_2476, -1.0f, _2481)), (_2476 - _2473), mad(_2476, 0.5f, _2481))); - } else { - if ((bool)(_2460 >= -0.7447274923324585f) && (bool)(_2460 < 4.673812389373779f)) { - float _2493 = (_2459 * 0.1666666567325592f) + 0.4123218357563019f; - int _2494 = int(_2493); - float _2496 = _2493 - float((int)(_2494)); - float _2498 = _global_1[_2494]; - float _2501 = _global_1[(_2494 + 1)]; - float _2506 = _2498 * 0.5f; - _2513 = dot(float3((_2496 * _2496), _2496, 1.0f), float3(mad((_global_1[(_2494 + 2)]), 0.5f, mad(_2501, -1.0f, _2506)), (_2501 - _2498), mad(_2501, 0.5f, _2506))); - } else { - _2513 = 4.0f; - } - } - } else { - _2513 = -4.0f; - } - float _2515 = exp2(_2513 * 3.321928024291992f); - float _2518 = mad(0.16386906802654266f, _2515, mad(0.14067870378494263f, _2456, (_2397 * 0.6954522132873535f))); - float _2521 = mad(0.0955343171954155f, _2515, mad(0.8596711158752441f, _2456, (_2397 * 0.044794563204050064f))); - float _2524 = mad(1.0015007257461548f, _2515, mad(0.004025210160762072f, _2456, (_2397 * -0.005525882821530104f))); - float _2527 = mad(-0.21492856740951538f, _2524, mad(-0.2365107536315918f, _2521, (_2518 * 1.4514392614364624f))); - float _2530 = mad(-0.09967592358589172f, _2524, mad(1.17622971534729f, _2521, (_2518 * -0.07655377686023712f))); - float _2533 = mad(0.9977163076400757f, _2524, mad(-0.006032449658960104f, _2521, (_2518 * 0.008316148072481155f))); - float _2536 = log2(select((_2527 <= 0.0f), 9.999999747378752e-05f, _2527)); - float _2537 = _2536 * 0.3010300099849701f; - do { - if (!(_2537 <= -3.848327875137329f)) { - if ((bool)(_2537 > -3.848327875137329f) && (bool)(_2537 < 0.6812411546707153f)) { - float _2545 = (_2536 + 12.783867835998535f) * 0.46521204710006714f; - int _2546 = int(_2545); - float _2548 = _2545 - float((int)(_2546)); - float _2550 = _global_4[_2546]; - float _2553 = _global_4[(_2546 + 1)]; - float _2558 = _2550 * 0.5f; - _2593 = dot(float3((_2548 * _2548), _2548, 1.0f), float3(mad((_global_4[(_2546 + 2)]), 0.5f, mad(_2553, -1.0f, _2558)), (_2553 - _2550), mad(_2553, 0.5f, _2558))); - } else { - if ((bool)(_2537 >= 0.6812411546707153f) && (bool)(_2537 < 3.7613162994384766f)) { - float _2570 = (_2536 + -2.2630341053009033f) * 0.6841424107551575f; - int _2571 = int(_2570); - float _2573 = _2570 - float((int)(_2571)); - float _2575 = _global_5[_2571]; - float _2578 = _global_5[(_2571 + 1)]; - float _2583 = _2575 * 0.5f; - _2593 = dot(float3((_2573 * _2573), _2573, 1.0f), float3(mad((_global_5[(_2571 + 2)]), 0.5f, mad(_2578, -1.0f, _2583)), (_2578 - _2575), mad(_2578, 0.5f, _2583))); - } else { - _2593 = ((_2536 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2593 = -2.301030158996582f; - } - float _2595 = exp2(_2593 * 3.321928024291992f); - float _2598 = log2(select((_2530 <= 0.0f), 9.999999747378752e-05f, _2530)); - float _2599 = _2598 * 0.3010300099849701f; - do { - if (!(_2599 <= -3.848327875137329f)) { - if ((bool)(_2599 > -3.848327875137329f) && (bool)(_2599 < 0.6812411546707153f)) { - float _2607 = (_2598 + 12.783867835998535f) * 0.46521204710006714f; - int _2608 = int(_2607); - float _2610 = _2607 - float((int)(_2608)); - float _2612 = _global_4[_2608]; - float _2615 = _global_4[(_2608 + 1)]; - float _2620 = _2612 * 0.5f; - _2655 = dot(float3((_2610 * _2610), _2610, 1.0f), float3(mad((_global_4[(_2608 + 2)]), 0.5f, mad(_2615, -1.0f, _2620)), (_2615 - _2612), mad(_2615, 0.5f, _2620))); - } else { - if ((bool)(_2599 >= 0.6812411546707153f) && (bool)(_2599 < 3.7613162994384766f)) { - float _2632 = (_2598 + -2.2630341053009033f) * 0.6841424107551575f; - int _2633 = int(_2632); - float _2635 = _2632 - float((int)(_2633)); - float _2637 = _global_5[_2633]; - float _2640 = _global_5[(_2633 + 1)]; - float _2645 = _2637 * 0.5f; - _2655 = dot(float3((_2635 * _2635), _2635, 1.0f), float3(mad((_global_5[(_2633 + 2)]), 0.5f, mad(_2640, -1.0f, _2645)), (_2640 - _2637), mad(_2640, 0.5f, _2645))); - } else { - _2655 = ((_2598 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2655 = -2.301030158996582f; - } - float _2657 = exp2(_2655 * 3.321928024291992f); - float _2660 = log2(select((_2533 <= 0.0f), 9.999999747378752e-05f, _2533)); - float _2661 = _2660 * 0.3010300099849701f; - do { - if (!(_2661 <= -3.848327875137329f)) { - if ((bool)(_2661 > -3.848327875137329f) && (bool)(_2661 < 0.6812411546707153f)) { - float _2669 = (_2660 + 12.783867835998535f) * 0.46521204710006714f; - int _2670 = int(_2669); - float _2672 = _2669 - float((int)(_2670)); - float _2674 = _global_4[_2670]; - float _2677 = _global_4[(_2670 + 1)]; - float _2682 = _2674 * 0.5f; - _2717 = dot(float3((_2672 * _2672), _2672, 1.0f), float3(mad((_global_4[(_2670 + 2)]), 0.5f, mad(_2677, -1.0f, _2682)), (_2677 - _2674), mad(_2677, 0.5f, _2682))); - } else { - if ((bool)(_2661 >= 0.6812411546707153f) && (bool)(_2661 < 3.7613162994384766f)) { - float _2694 = (_2660 + -2.2630341053009033f) * 0.6841424107551575f; - int _2695 = int(_2694); - float _2697 = _2694 - float((int)(_2695)); - float _2699 = _global_5[_2695]; - float _2702 = _global_5[(_2695 + 1)]; - float _2707 = _2699 * 0.5f; - _2717 = dot(float3((_2697 * _2697), _2697, 1.0f), float3(mad((_global_5[(_2695 + 2)]), 0.5f, mad(_2702, -1.0f, _2707)), (_2702 - _2699), mad(_2702, 0.5f, _2707))); - } else { - _2717 = ((_2660 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2717 = -2.301030158996582f; - } - float _2719 = exp2(_2717 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _2731 = mad(_34, _2719, mad(_33, _2657, (_2595 * _32))); - _2732 = mad(_37, _2719, mad(_36, _2657, (_2595 * _35))); - _2733 = mad(_40, _2719, mad(_39, _2657, (_2595 * _38))); - } else { - _2731 = _2595; - _2732 = _2657; - _2733 = _2719; - } - float _2743 = exp2(log2(_2731 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2744 = exp2(log2(_2732 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2745 = exp2(log2(_2733 * 9.999999747378752e-05f) * 0.1593017578125f); - _2891 = exp2(log2((1.0f / ((_2743 * 18.6875f) + 1.0f)) * ((_2743 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2892 = exp2(log2((1.0f / ((_2744 * 18.6875f) + 1.0f)) * ((_2744 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2893 = exp2(log2((1.0f / ((_2745 * 18.6875f) + 1.0f)) * ((_2745 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _2778 = mad(0.04736635088920593f, _1421, mad(0.3395121395587921f, _1420, (_1419 * 0.613191545009613f))); - float _2781 = mad(0.01345000695437193f, _1421, mad(0.9163357615470886f, _1420, (_1419 * 0.07020691782236099f))); - float _2784 = mad(0.8696067929267883f, _1421, mad(0.1095672994852066f, _1420, (_1419 * 0.020618872717022896f))); - float _2803 = exp2(log2(mad(_34, _2784, mad(_33, _2781, (_2778 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2804 = exp2(log2(mad(_37, _2784, mad(_36, _2781, (_2778 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2805 = exp2(log2(mad(_40, _2784, mad(_39, _2781, (_2778 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2891 = exp2(log2((1.0f / ((_2803 * 18.6875f) + 1.0f)) * ((_2803 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2892 = exp2(log2((1.0f / ((_2804 * 18.6875f) + 1.0f)) * ((_2804 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2893 = exp2(log2((1.0f / ((_2805 * 18.6875f) + 1.0f)) * ((_2805 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _2840 = mad(0.04736635088920593f, _1409, mad(0.3395121395587921f, _1408, (_1407 * 0.613191545009613f))); - float _2843 = mad(0.01345000695437193f, _1409, mad(0.9163357615470886f, _1408, (_1407 * 0.07020691782236099f))); - float _2846 = mad(0.8696067929267883f, _1409, mad(0.1095672994852066f, _1408, (_1407 * 0.020618872717022896f))); - _2891 = mad(_34, _2846, mad(_33, _2843, (_2840 * _32))); - _2892 = mad(_37, _2846, mad(_36, _2843, (_2840 * _35))); - _2893 = mad(_40, _2846, mad(_39, _2843, (_2840 * _38))); - } else { - float _2859 = mad(0.04736635088920593f, _1435, mad(0.3395121395587921f, _1434, (_1433 * 0.613191545009613f))); - float _2862 = mad(0.01345000695437193f, _1435, mad(0.9163357615470886f, _1434, (_1433 * 0.07020691782236099f))); - float _2865 = mad(0.8696067929267883f, _1435, mad(0.1095672994852066f, _1434, (_1433 * 0.020618872717022896f))); - float _2880 = (cb0_038w * (0.4545454680919647f - cb0_027z)) + cb0_027z; - _2891 = exp2(_2880 * log2(mad(_34, _2865, mad(_33, _2862, (_2859 * _32))))); - _2892 = exp2(_2880 * log2(mad(_37, _2865, mad(_36, _2862, (_2859 * _35))))); - _2893 = exp2(_2880 * log2(mad(_40, _2865, mad(_39, _2862, (_2859 * _38))))); - } - } else { - _2891 = _1419; - _2892 = _1420; - _2893 = _1421; - } - } - } - } - } - } - SV_Target.x = (_2891 * 0.9523810148239136f); - SV_Target.y = (_2892 * 0.9523810148239136f); - SV_Target.z = (_2893 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x44F17E34.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x44F17E34.ps_6_0.hlsl deleted file mode 100644 index 076a1f77f..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x44F17E34.ps_6_0.hlsl +++ /dev/null @@ -1,1521 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -Texture2D t2 : register(t2); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -SamplerState s2 : register(s2); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _11 = TEXCOORD.x + -0.015625f; - float _12 = TEXCOORD.y + -0.015625f; - float _15 = float((uint)SV_RenderTargetArrayIndex); - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _43; - float _44; - float _101; - float _102; - float _103; - float _342; - float _343; - float _344; - float _510; - float _511; - float _533; - float _534; - float _535; - float _680; - float _681; - float _702; - float _703; - float _704; - float _850; - float _851; - float _872; - float _873; - float _874; - float _1009; - float _1010; - float _1031; - float _1032; - float _1033; - float _1128; - float _1161; - float _1175; - float _1239; - float _1377; - float _1378; - float _1379; - float _1522; - float _1523; - float _1524; - float _1538; - float _1549; - float _1560; - float _1761; - float _1772; - float _1894; - float _1927; - float _1941; - float _1980; - float _2073; - float _2132; - float _2191; - float _2274; - float _2339; - float _2404; - float _2421; - float _2422; - float _2423; - float _2527; - float _2560; - float _2574; - float _2613; - float _2706; - float _2765; - float _2824; - float _2904; - float _2966; - float _3028; - float _3042; - float _3043; - float _3044; - float _3200; - float _3201; - float _3202; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _25 = ((uint)(cb0_074y) == 4); - _36 = select(_25, 1.0f, 1.7050515413284302f); - _37 = select(_25, 0.0f, -0.6217905879020691f); - _38 = select(_25, 0.0f, -0.0832584798336029f); - _39 = select(_25, 0.0f, -0.13025718927383423f); - _40 = select(_25, 1.0f, 1.1408027410507202f); - _41 = select(_25, 0.0f, -0.010548528283834457f); - _42 = select(_25, 0.0f, -0.024003278464078903f); - _43 = select(_25, 0.0f, -0.1289687603712082f); - _44 = select(_25, 1.0f, 1.152971863746643f); - } else { - _36 = 0.6954522132873535f; - _37 = 0.14067870378494263f; - _38 = 0.16386906802654266f; - _39 = 0.044794563204050064f; - _40 = 0.8596711158752441f; - _41 = 0.0955343171954155f; - _42 = -0.005525882821530104f; - _43 = 0.004025210160762072f; - _44 = 1.0015007257461548f; - } - } else { - _36 = 1.02579927444458f; - _37 = -0.020052503794431686f; - _38 = -0.0057713985443115234f; - _39 = -0.0022350111976265907f; - _40 = 1.0045825242996216f; - _41 = -0.002352306619286537f; - _42 = -0.005014004185795784f; - _43 = -0.025293385609984398f; - _44 = 1.0304402112960815f; - } - } else { - _36 = 1.379158854484558f; - _37 = -0.3088507056236267f; - _38 = -0.07034677267074585f; - _39 = -0.06933528929948807f; - _40 = 1.0822921991348267f; - _41 = -0.012962047010660172f; - _42 = -0.002159259282052517f; - _43 = -0.045465391129255295f; - _44 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _54 = exp2(log2(_11 * 1.0322580337524414f) * 0.012683313339948654f); - float _55 = exp2(log2(_12 * 1.0322580337524414f) * 0.012683313339948654f); - float _56 = exp2(log2(_15 * 0.032258063554763794f) * 0.012683313339948654f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _102 = (exp2(log2(max(0.0f, (_55 + -0.8359375f)) / (18.8515625f - (_55 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _103 = (exp2(log2(max(0.0f, (_56 + -0.8359375f)) / (18.8515625f - (_56 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _101 = ((exp2((_11 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _102 = ((exp2((_12 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _103 = ((exp2((_15 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _106 = cb0_047x * 1.0005563497543335f; - float _120 = select((_106 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _106) + 99.11000061035156f) / _106) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _106) + 247.47999572753906f) / _106) + 0.23703999817371368f)); - float _134 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _144 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _149 = ((_134 * 2.0f) + 4.0f) - (_144 * 8.0f); - float _150 = (_134 * 3.0f) / _149; - float _152 = (_144 * 2.0f) / _149; - bool _153 = (cb0_047x < 4000.0f); - float _158 = rsqrt(dot(float2(_134, _144), float2(_134, _144))); - float _159 = cb0_047y * 0.05000000074505806f; - float _162 = _134 - ((_159 * _144) * _158); - float _165 = ((_159 * _134) * _158) + _144; - float _170 = (4.0f - (_165 * 8.0f)) + (_162 * 2.0f); - float _176 = (((_162 * 3.0f) / _170) - _150) + select(_153, _150, _120); - float _177 = (((_165 * 2.0f) / _170) - _152) + select(_153, _152, (((_120 * 2.869999885559082f) + -0.2750000059604645f) - ((_120 * _120) * 3.0f))); - float _178 = max(_177, 1.000000013351432e-10f); - float _179 = _176 / _178; - float _182 = ((1.0f - _176) - _177) / _178; - float _192 = 0.9413792490959167f / mad(-0.16140000522136688f, _182, ((_179 * 0.8950999975204468f) + 0.266400009393692f)); - float _193 = 1.0404363870620728f / mad(0.03669999912381172f, _182, (1.7135000228881836f - (_179 * 0.7501999735832214f))); - float _194 = 1.089766502380371f / mad(1.0296000242233276f, _182, ((_179 * 0.03889999911189079f) + -0.06849999725818634f)); - float _195 = mad(_193, -0.7501999735832214f, 0.0f); - float _196 = mad(_193, 1.7135000228881836f, 0.0f); - float _197 = mad(_193, 0.03669999912381172f, -0.0f); - float _198 = mad(_194, 0.03889999911189079f, 0.0f); - float _199 = mad(_194, -0.06849999725818634f, 0.0f); - float _200 = mad(_194, 1.0296000242233276f, 0.0f); - float _203 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_192 * 0.883457362651825f))); - float _206 = mad(0.1599626988172531f, _199, mad(-0.1470542997121811f, _196, (_192 * 0.26293492317199707f))); - float _209 = mad(0.1599626988172531f, _200, mad(-0.1470542997121811f, _197, (_192 * -0.15930065512657166f))); - float _212 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_192 * 0.38695648312568665f))); - float _215 = mad(0.04929120093584061f, _199, mad(0.5183603167533875f, _196, (_192 * 0.11516613513231277f))); - float _218 = mad(0.04929120093584061f, _200, mad(0.5183603167533875f, _197, (_192 * -0.0697740763425827f))); - float _221 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_192 * -0.007634039502590895f))); - float _224 = mad(0.9684867262840271f, _199, mad(0.04004279896616936f, _196, (_192 * -0.0022720457054674625f))); - float _227 = mad(0.9684867262840271f, _200, mad(0.04004279896616936f, _197, (_192 * 0.0013765322510153055f))); - float _230 = mad(_209, 0.01933390088379383f, mad(_206, 0.2126729041337967f, (_203 * 0.4124563932418823f))); - float _233 = mad(_209, 0.11919199675321579f, mad(_206, 0.7151522040367126f, (_203 * 0.3575761020183563f))); - float _236 = mad(_209, 0.9503040909767151f, mad(_206, 0.07217500358819962f, (_203 * 0.18043750524520874f))); - float _239 = mad(_218, 0.01933390088379383f, mad(_215, 0.2126729041337967f, (_212 * 0.4124563932418823f))); - float _242 = mad(_218, 0.11919199675321579f, mad(_215, 0.7151522040367126f, (_212 * 0.3575761020183563f))); - float _245 = mad(_218, 0.9503040909767151f, mad(_215, 0.07217500358819962f, (_212 * 0.18043750524520874f))); - float _248 = mad(_227, 0.01933390088379383f, mad(_224, 0.2126729041337967f, (_221 * 0.4124563932418823f))); - float _251 = mad(_227, 0.11919199675321579f, mad(_224, 0.7151522040367126f, (_221 * 0.3575761020183563f))); - float _254 = mad(_227, 0.9503040909767151f, mad(_224, 0.07217500358819962f, (_221 * 0.18043750524520874f))); - float _284 = mad(mad(-0.4986107647418976f, _254, mad(-1.5373831987380981f, _245, (_236 * 3.2409698963165283f))), _103, mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _102, (mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))) * _101))); - float _287 = mad(mad(0.04155505821108818f, _254, mad(1.8759675025939941f, _245, (_236 * -0.9692436456680298f))), _103, mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _102, (mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))) * _101))); - float _290 = mad(mad(1.056971549987793f, _254, mad(-0.20397695899009705f, _245, (_236 * 0.05563008040189743f))), _103, mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _102, (mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))) * _101))); - float _293 = mad(0.04736635088920593f, _290, mad(0.3395121395587921f, _287, (_284 * 0.613191545009613f))); - float _296 = mad(0.01345000695437193f, _290, mad(0.9163357615470886f, _287, (_284 * 0.07020691782236099f))); - float _299 = mad(0.8696067929267883f, _290, mad(0.1095672994852066f, _287, (_284 * 0.020618872717022896f))); - // bool _302 = ((uint)(cb0_046x) == 0); - bool _302 = ((uint)(tm_flags.x) == 0); - if (_302) { - float _304 = dot(float3(_293, _296, _299), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _308 = (_293 / _304) + -1.0f; - float _309 = (_296 / _304) + -1.0f; - float _310 = (_299 / _304) + -1.0f; - float _322 = (1.0f - exp2(((_304 * _304) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_308, _309, _310), float3(_308, _309, _310)) * -4.0f)); - _342 = (((mad(-0.06368283927440643f, _299, mad(-0.32929131388664246f, _296, (_293 * 1.370412826538086f))) - _293) * _322) + _293); - _343 = (((mad(-0.010861567221581936f, _299, mad(1.0970908403396606f, _296, (_293 * -0.08343426138162613f))) - _296) * _322) + _296); - _344 = (((mad(1.203694462776184f, _299, mad(-0.09862564504146576f, _296, (_293 * -0.02579325996339321f))) - _299) * _322) + _299); - } else { - _342 = _293; - _343 = _296; - _344 = _299; - } - float _345 = dot(float3(_342, _343, _344), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _359 = cb0_052w + cb0_057w; - float _373 = cb0_051w * cb0_056w; - float _387 = cb0_050w * cb0_055w; - float _401 = cb0_049w * cb0_054w; - float _415 = cb0_048w * cb0_053w; - float _419 = _342 - _345; - float _420 = _343 - _345; - float _421 = _344 - _345; - float _478 = cb0_073w + 1.0f; - float _482 = saturate(_478 * (((cb0_052x + cb0_057x) + _359) + (((cb0_051x * cb0_056x) * _373) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _401) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _415) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _387)))))); - float _483 = saturate(_478 * (((cb0_052y + cb0_057y) + _359) + (((cb0_051y * cb0_056y) * _373) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _401) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _415) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _387)))))); - float _484 = saturate(_478 * (((cb0_052z + cb0_057z) + _359) + (((cb0_051z * cb0_056z) * _373) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _401) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _415) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _387)))))); - float _488 = max(_482, max(_483, _484)); - float _489 = _488 - min(_482, min(_483, _484)); - if (!(_489 == 0.0f)) { - float _492 = _489 / _488; - if (_482 == _488) { - _510 = ((_483 - _484) / _489); - _511 = _492; - } else { - if (_483 == _488) { - _510 = (((_484 - _482) / _489) + 2.0f); - _511 = _492; - } else { - if (_484 == _488) { - _510 = (((_482 - _483) / _489) + 4.0f); - _511 = _492; - } else { - _510 = 0.0f; - _511 = _492; - } - } - } - } else { - _510 = 0.0f; - _511 = 0.0f; - } - float _513 = cb0_073z + _510; - float _514 = floor(_513); - float _515 = _513 - _514; - float _516 = 1.0f - _511; - float _518 = 1.0f - (_515 * _511); - float _521 = 1.0f - ((1.0f - _515) * _511); - if (!(_514 == 0.0f)) { - if (!(_514 == 1.0f)) { - if (!(_514 == 2.0f)) { - if (!(_514 == 3.0f)) { - if (!(_514 == 4.0f)) { - _533 = 1.0f; - _534 = _516; - _535 = _518; - } else { - _533 = _521; - _534 = _516; - _535 = 1.0f; - } - } else { - _533 = _516; - _534 = _518; - _535 = 1.0f; - } - } else { - _533 = _516; - _534 = 1.0f; - _535 = _521; - } - } else { - _533 = _518; - _534 = 1.0f; - _535 = _516; - } - } else { - _533 = 1.0f; - _534 = _521; - _535 = _516; - } - float _541 = saturate(_345 / cb0_073x); - float _545 = (_541 * _541) * (3.0f - (_541 * 2.0f)); - float _546 = 1.0f - _545; - float _555 = cb0_052w + cb0_067w; - float _564 = cb0_051w * cb0_066w; - float _573 = cb0_050w * cb0_065w; - float _582 = cb0_049w * cb0_064w; - float _591 = cb0_048w * cb0_063w; - float _652 = saturate(_478 * (((cb0_052x + cb0_067x) + _555) + (((cb0_051x * cb0_066x) * _564) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _582) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _591) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _573)))))); - float _653 = saturate(_478 * (((cb0_052y + cb0_067y) + _555) + (((cb0_051y * cb0_066y) * _564) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _582) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _591) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _573)))))); - float _654 = saturate(_478 * (((cb0_052z + cb0_067z) + _555) + (((cb0_051z * cb0_066z) * _564) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _582) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _591) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _573)))))); - float _658 = max(_652, max(_653, _654)); - float _659 = _658 - min(_652, min(_653, _654)); - if (!(_659 == 0.0f)) { - float _662 = _659 / _658; - if (_652 == _658) { - _680 = ((_653 - _654) / _659); - _681 = _662; - } else { - if (_653 == _658) { - _680 = (((_654 - _652) / _659) + 2.0f); - _681 = _662; - } else { - if (_654 == _658) { - _680 = (((_652 - _653) / _659) + 4.0f); - _681 = _662; - } else { - _680 = 0.0f; - _681 = _662; - } - } - } - } else { - _680 = 0.0f; - _681 = 0.0f; - } - float _682 = cb0_073z + _680; - float _683 = floor(_682); - float _684 = _682 - _683; - float _685 = 1.0f - _681; - float _687 = 1.0f - (_684 * _681); - float _690 = 1.0f - ((1.0f - _684) * _681); - if (!(_683 == 0.0f)) { - if (!(_683 == 1.0f)) { - if (!(_683 == 2.0f)) { - if (!(_683 == 3.0f)) { - if (!(_683 == 4.0f)) { - _702 = 1.0f; - _703 = _685; - _704 = _687; - } else { - _702 = _690; - _703 = _685; - _704 = 1.0f; - } - } else { - _702 = _685; - _703 = _687; - _704 = 1.0f; - } - } else { - _702 = _685; - _703 = 1.0f; - _704 = _690; - } - } else { - _702 = _687; - _703 = 1.0f; - _704 = _685; - } - } else { - _702 = 1.0f; - _703 = _690; - _704 = _685; - } - float _712 = saturate((_345 - cb0_073y) / (1.0f - cb0_073y)); - float _716 = (_712 * _712) * (3.0f - (_712 * 2.0f)); - float _725 = cb0_052w + cb0_062w; - float _734 = cb0_051w * cb0_061w; - float _743 = cb0_050w * cb0_060w; - float _752 = cb0_049w * cb0_059w; - float _761 = cb0_048w * cb0_058w; - float _822 = saturate(_478 * (((cb0_052x + cb0_062x) + _725) + (((cb0_051x * cb0_061x) * _734) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _752) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _761) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _743)))))); - float _823 = saturate(_478 * (((cb0_052y + cb0_062y) + _725) + (((cb0_051y * cb0_061y) * _734) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _752) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _761) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _743)))))); - float _824 = saturate(_478 * (((cb0_052z + cb0_062z) + _725) + (((cb0_051z * cb0_061z) * _734) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _752) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _761) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _743)))))); - float _828 = max(_822, max(_823, _824)); - float _829 = _828 - min(_822, min(_823, _824)); - if (!(_829 == 0.0f)) { - float _832 = _829 / _828; - if (_822 == _828) { - _850 = ((_823 - _824) / _829); - _851 = _832; - } else { - if (_823 == _828) { - _850 = (((_824 - _822) / _829) + 2.0f); - _851 = _832; - } else { - if (_824 == _828) { - _850 = (((_822 - _823) / _829) + 4.0f); - _851 = _832; - } else { - _850 = 0.0f; - _851 = _832; - } - } - } - } else { - _850 = 0.0f; - _851 = 0.0f; - } - float _852 = cb0_073z + _850; - float _853 = floor(_852); - float _854 = _852 - _853; - float _855 = 1.0f - _851; - float _857 = 1.0f - (_854 * _851); - float _860 = 1.0f - ((1.0f - _854) * _851); - if (!(_853 == 0.0f)) { - if (!(_853 == 1.0f)) { - if (!(_853 == 2.0f)) { - if (!(_853 == 3.0f)) { - if (!(_853 == 4.0f)) { - _872 = 1.0f; - _873 = _855; - _874 = _857; - } else { - _872 = _860; - _873 = _855; - _874 = 1.0f; - } - } else { - _872 = _855; - _873 = _857; - _874 = 1.0f; - } - } else { - _872 = _855; - _873 = 1.0f; - _874 = _860; - } - } else { - _872 = _857; - _873 = 1.0f; - _874 = _855; - } - } else { - _872 = 1.0f; - _873 = _860; - _874 = _855; - } - float _879 = _828 * (_545 - _716); - float _887 = (((_702 * _658) * _716) + ((_533 * _488) * _546)) + (_879 * _872); - float _889 = (((_703 * _658) * _716) + ((_534 * _488) * _546)) + (_879 * _873); - float _891 = (((_704 * _658) * _716) + ((_535 * _488) * _546)) + (_879 * _874); - float _917 = dot(float3(_887, _889, _891), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _981 = saturate(_478 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_887 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _982 = saturate(_478 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_889 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _983 = saturate(_478 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_891 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _987 = max(_981, max(_982, _983)); - float _988 = _987 - min(_981, min(_982, _983)); - if (!(_988 == 0.0f)) { - float _991 = _988 / _987; - if (_981 == _987) { - _1009 = ((_982 - _983) / _988); - _1010 = _991; - } else { - if (_982 == _987) { - _1009 = (((_983 - _981) / _988) + 2.0f); - _1010 = _991; - } else { - if (_983 == _987) { - _1009 = (((_981 - _982) / _988) + 4.0f); - _1010 = _991; - } else { - _1009 = 0.0f; - _1010 = _991; - } - } - } - } else { - _1009 = 0.0f; - _1010 = 0.0f; - } - float _1011 = cb0_073z + _1009; - float _1012 = floor(_1011); - float _1013 = _1011 - _1012; - float _1014 = 1.0f - _1010; - float _1016 = 1.0f - (_1013 * _1010); - float _1019 = 1.0f - ((1.0f - _1013) * _1010); - if (!(_1012 == 0.0f)) { - if (!(_1012 == 1.0f)) { - if (!(_1012 == 2.0f)) { - if (!(_1012 == 3.0f)) { - if (!(_1012 == 4.0f)) { - _1031 = 1.0f; - _1032 = _1014; - _1033 = _1016; - } else { - _1031 = _1019; - _1032 = _1014; - _1033 = 1.0f; - } - } else { - _1031 = _1014; - _1032 = _1016; - _1033 = 1.0f; - } - } else { - _1031 = _1014; - _1032 = 1.0f; - _1033 = _1019; - } - } else { - _1031 = _1016; - _1032 = 1.0f; - _1033 = _1014; - } - } else { - _1031 = 1.0f; - _1032 = _1019; - _1033 = _1014; - } - float _1034 = _1031 * _987; - float _1035 = _1032 * _987; - float _1036 = _1033 * _987; - float _1039 = mad(-0.0832584798336029f, _1036, mad(-0.6217905879020691f, _1035, (_1034 * 1.7050515413284302f))); - float _1042 = mad(-0.010548528283834457f, _1036, mad(1.1408027410507202f, _1035, (_1034 * -0.13025718927383423f))); - float _1045 = mad(1.152971863746643f, _1036, mad(-0.1289687603712082f, _1035, (_1034 * -0.024003278464078903f))); - float _1061 = ((mad(0.061360642313957214f, _1036, mad(-4.540197551250458e-09f, _1035, (_1034 * 0.9386394023895264f))) - _1034) * cb0_074z) + _1034; - float _1062 = ((mad(0.169205904006958f, _1036, mad(0.8307942152023315f, _1035, (_1034 * 6.775371730327606e-08f))) - _1035) * cb0_074z) + _1035; - float _1063 = (mad(-2.3283064365386963e-10f, _1035, (_1034 * -9.313225746154785e-10f)) * cb0_074z) + _1036; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1073 = mad(0.16386905312538147f, _1063, mad(0.14067868888378143f, _1062, (_1061 * 0.6954522132873535f))); - float _1076 = mad(0.0955343246459961f, _1063, mad(0.8596711158752441f, _1062, (_1061 * 0.044794581830501556f))); - float _1079 = mad(1.0015007257461548f, _1063, mad(0.004025210160762072f, _1062, (_1061 * -0.005525882821530104f))); - float _1083 = max(max(_1073, _1076), _1079); - float _1088 = (max(_1083, 1.000000013351432e-10f) - max(min(min(_1073, _1076), _1079), 1.000000013351432e-10f)) / max(_1083, 0.009999999776482582f); - float _1101 = ((_1076 + _1073) + _1079) + (sqrt((((_1079 - _1076) * _1079) + ((_1076 - _1073) * _1076)) + ((_1073 - _1079) * _1073)) * 1.75f); - float _1102 = _1101 * 0.3333333432674408f; - float _1103 = _1088 + -0.4000000059604645f; - float _1104 = _1103 * 5.0f; - float _1108 = max((1.0f - abs(_1103 * 2.5f)), 0.0f); - float _1119 = ((float(((int)(uint)((bool)(_1104 > 0.0f))) - ((int)(uint)((bool)(_1104 < 0.0f)))) * (1.0f - (_1108 * _1108))) + 1.0f) * 0.02500000037252903f; - if (!(_1102 <= 0.0533333346247673f)) { - if (!(_1102 >= 0.1599999964237213f)) { - _1128 = (((0.23999999463558197f / _1101) + -0.5f) * _1119); - } else { - _1128 = 0.0f; - } - } else { - _1128 = _1119; - } - float _1129 = _1128 + 1.0f; - float _1130 = _1129 * _1073; - float _1131 = _1129 * _1076; - float _1132 = _1129 * _1079; - if (!((bool)(_1130 == _1131) && (bool)(_1131 == _1132))) { - float _1139 = ((_1130 * 2.0f) - _1131) - _1132; - float _1142 = ((_1076 - _1079) * 1.7320507764816284f) * _1129; - float _1144 = atan(_1142 / _1139); - bool _1147 = (_1139 < 0.0f); - bool _1148 = (_1139 == 0.0f); - bool _1149 = (_1142 >= 0.0f); - bool _1150 = (_1142 < 0.0f); - _1161 = select((_1149 && _1148), 90.0f, select((_1150 && _1148), -90.0f, (select((_1150 && _1147), (_1144 + -3.1415927410125732f), select((_1149 && _1147), (_1144 + 3.1415927410125732f), _1144)) * 57.2957763671875f))); - } else { - _1161 = 0.0f; - } - float _1166 = min(max(select((_1161 < 0.0f), (_1161 + 360.0f), _1161), 0.0f), 360.0f); - if (_1166 < -180.0f) { - _1175 = (_1166 + 360.0f); - } else { - if (_1166 > 180.0f) { - _1175 = (_1166 + -360.0f); - } else { - _1175 = _1166; - } - } - float _1179 = saturate(1.0f - abs(_1175 * 0.014814814552664757f)); - float _1183 = (_1179 * _1179) * (3.0f - (_1179 * 2.0f)); - float _1189 = ((_1183 * _1183) * ((_1088 * 0.18000000715255737f) * (0.029999999329447746f - _1130))) + _1130; - float _1199 = max(0.0f, mad(-0.21492856740951538f, _1132, mad(-0.2365107536315918f, _1131, (_1189 * 1.4514392614364624f)))); - float _1200 = max(0.0f, mad(-0.09967592358589172f, _1132, mad(1.17622971534729f, _1131, (_1189 * -0.07655377686023712f)))); - float _1201 = max(0.0f, mad(0.9977163076400757f, _1132, mad(-0.006032449658960104f, _1131, (_1189 * 0.008316148072481155f)))); - float _1202 = dot(float3(_1199, _1200, _1201), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1216 = (cb0_036w + 1.0f) - cb0_036y; - float _1219 = cb0_037x + 1.0f; - float _1221 = _1219 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1239 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1230 = (cb0_036w + 0.18000000715255737f) / _1216; - _1239 = (-0.7447274923324585f - ((log2(_1230 / (2.0f - _1230)) * 0.3465735912322998f) * (_1216 / cb0_036x))); - } - float _1242 = ((1.0f - cb0_036y) / cb0_036x) - _1239; - float _1244 = (cb0_036z / cb0_036x) - _1242; - float _1248 = log2(lerp(_1202, _1199, 0.9599999785423279f)) * 0.3010300099849701f; - float _1249 = log2(lerp(_1202, _1200, 0.9599999785423279f)) * 0.3010300099849701f; - float _1250 = log2(lerp(_1202, _1201, 0.9599999785423279f)) * 0.3010300099849701f; - float _1254 = cb0_036x * (_1248 + _1242); - float _1255 = cb0_036x * (_1249 + _1242); - float _1256 = cb0_036x * (_1250 + _1242); - float _1257 = _1216 * 2.0f; - float _1259 = (cb0_036x * -2.0f) / _1216; - float _1260 = _1248 - _1239; - float _1261 = _1249 - _1239; - float _1262 = _1250 - _1239; - float _1281 = _1221 * 2.0f; - float _1283 = (cb0_036x * 2.0f) / _1221; - float _1308 = select((_1248 < _1239), ((_1257 / (exp2((_1260 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1254); - float _1309 = select((_1249 < _1239), ((_1257 / (exp2((_1261 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1255); - float _1310 = select((_1250 < _1239), ((_1257 / (exp2((_1262 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1256); - float _1317 = _1244 - _1239; - float _1321 = saturate(_1260 / _1317); - float _1322 = saturate(_1261 / _1317); - float _1323 = saturate(_1262 / _1317); - bool _1324 = (_1244 < _1239); - float _1328 = select(_1324, (1.0f - _1321), _1321); - float _1329 = select(_1324, (1.0f - _1322), _1322); - float _1330 = select(_1324, (1.0f - _1323), _1323); - float _1349 = (((_1328 * _1328) * (select((_1248 > _1244), (_1219 - (_1281 / (exp2(((_1248 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; - float _1350 = (((_1329 * _1329) * (select((_1249 > _1244), (_1219 - (_1281 / (exp2(((_1249 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1255) - _1309)) * (3.0f - (_1329 * 2.0f))) + _1309; - float _1351 = (((_1330 * _1330) * (select((_1250 > _1244), (_1219 - (_1281 / (exp2(((_1250 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1256) - _1310)) * (3.0f - (_1330 * 2.0f))) + _1310; - float _1352 = dot(float3(_1349, _1350, _1351), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1377 = ((cb0_075x * (max(0.0f, (lerp(_1352, _1349, 0.9300000071525574f))) - _1061)) + _1061); - _1378 = ((cb0_075x * (max(0.0f, (lerp(_1352, _1350, 0.9300000071525574f))) - _1062)) + _1062); - _1379 = ((cb0_075x * (max(0.0f, (lerp(_1352, _1351, 0.9300000071525574f))) - _1063)) + _1063); - } else { - _1377 = _1061; - _1378 = _1062; - _1379 = _1063; - } - float _1395 = ((mad(-0.06537103652954102f, _1379, mad(1.451815478503704e-06f, _1378, (_1377 * 1.065374732017517f))) - _1377) * cb0_074z) + _1377; - float _1396 = ((mad(-0.20366770029067993f, _1379, mad(1.2036634683609009f, _1378, (_1377 * -2.57161445915699e-07f))) - _1378) * cb0_074z) + _1378; - float _1397 = ((mad(0.9999996423721313f, _1379, mad(2.0954757928848267e-08f, _1378, (_1377 * 1.862645149230957e-08f))) - _1379) * cb0_074z) + _1379; - [branch] - if (!_302) { - float _1440 = 1.0f / (dot(float3(_1039, _1042, _1045), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1450 = max(0.0f, (((_1440 * cb0_035x) + cb0_034x) * dot(float3(_1039, _1042, _1045), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1451 = max(0.0f, (((_1440 * cb0_035y) + cb0_034y) * dot(float3(_1039, _1042, _1045), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1452 = max(0.0f, (((_1440 * cb0_035z) + cb0_034z) * dot(float3(_1039, _1042, _1045), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1458 = max(0.0f, (cb0_031x - _1450)); - float _1459 = max(0.0f, (cb0_031x - _1451)); - float _1460 = max(0.0f, (cb0_031x - _1452)); - float _1462 = max(_1450, cb0_031z); - float _1463 = max(_1451, cb0_031z); - float _1464 = max(_1452, cb0_031z); - _1522 = (((((((cb0_032x * _1462) + cb0_032y) * (1.0f / (cb0_031w + _1462))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1450, cb0_031x), cb0_031z))) + ((cb0_028w * _1458) * (1.0f / (cb0_031y + _1458)))) + cb0_029w); - _1523 = ((((((1.0f / (cb0_031w + _1463)) * ((cb0_032x * _1463) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1451, cb0_031x), cb0_031z))) + ((cb0_028w * _1459) * (1.0f / (cb0_031y + _1459)))) + cb0_029w); - _1524 = ((((((1.0f / (cb0_031w + _1464)) * ((cb0_032x * _1464) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1452, cb0_031x), cb0_031z))) + ((cb0_028w * _1460) * (1.0f / (cb0_031y + _1460)))) + cb0_029w); - } else { - _1522 = max(0.0f, mad(-0.0832584798336029f, _1397, mad(-0.6217905879020691f, _1396, (_1395 * 1.7050515413284302f)))); - _1523 = max(0.0f, mad(-0.010548528283834457f, _1397, mad(1.1408027410507202f, _1396, (_1395 * -0.13025718927383423f)))); - _1524 = max(0.0f, mad(1.152971863746643f, _1397, mad(-0.1289687603712082f, _1396, (_1395 * -0.024003278464078903f)))); - } - float _1525 = saturate(_1522); - float _1526 = saturate(_1523); - float _1527 = saturate(_1524); - if (_1525 < 0.0031306699384003878f) { - _1538 = (_1525 * 12.920000076293945f); - } else { - _1538 = (((pow(_1525, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1526 < 0.0031306699384003878f) { - _1549 = (_1526 * 12.920000076293945f); - } else { - _1549 = (((pow(_1526, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1527 < 0.0031306699384003878f) { - _1560 = (_1527 * 12.920000076293945f); - } else { - _1560 = (((pow(_1527, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1564 = (_1549 * 0.9375f) + 0.03125f; - float _1572 = _1560 * 15.0f; - float _1573 = floor(_1572); - float _1574 = _1572 - _1573; - float _1576 = (_1573 + ((_1538 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1577 = t1.Sample(s1, float2(_1576, _1564)); - float _1581 = _1576 + 0.0625f; - float4 _1582 = t1.Sample(s1, float2(_1581, _1564)); - float4 _1603 = t2.Sample(s2, float2(_1576, _1564)); - float4 _1607 = t2.Sample(s2, float2(_1581, _1564)); - float _1623 = (((lerp(_1577.x, _1582.x, _1574)) * cb0_041x) + (cb0_040x * _1538)) + ((lerp(_1603.x, _1607.x, _1574)) * cb0_042x); - float _1624 = (((lerp(_1577.y, _1582.y, _1574)) * cb0_041x) + (cb0_040x * _1549)) + ((lerp(_1603.y, _1607.y, _1574)) * cb0_042x); - float _1625 = (((lerp(_1577.z, _1582.z, _1574)) * cb0_041x) + (cb0_040x * _1560)) + ((lerp(_1603.z, _1607.z, _1574)) * cb0_042x); - float4 _1628 = t0.Sample(s0, float2(_1576, _1564)); - float4 _1632 = t0.Sample(s0, float2(_1581, _1564)); - float _1650 = cb0_038w * cb0_039z; - float _1657 = max(6.103519990574569e-05f, ((_1650 * ((_1628.x - _1623) + ((_1632.x - _1628.x) * _1574))) + _1623)); - float _1658 = max(6.103519990574569e-05f, ((_1650 * ((_1628.y - _1624) + ((_1632.y - _1628.y) * _1574))) + _1624)); - float _1659 = max(6.103519990574569e-05f, ((_1650 * ((_1628.z - _1625) + ((_1632.z - _1628.z) * _1574))) + _1625)); - float _1681 = select((_1657 > 0.040449999272823334f), exp2(log2((_1657 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1657 * 0.07739938050508499f)); - float _1682 = select((_1658 > 0.040449999272823334f), exp2(log2((_1658 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1658 * 0.07739938050508499f)); - float _1683 = select((_1659 > 0.040449999272823334f), exp2(log2((_1659 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1659 * 0.07739938050508499f)); - float _1709 = cb0_044y * (((cb0_026y + (cb0_026x * _1681)) * _1681) + cb0_026z); - float _1710 = cb0_044z * (((cb0_026y + (cb0_026x * _1682)) * _1682) + cb0_026z); - float _1711 = cb0_044w * (((cb0_026y + (cb0_026x * _1683)) * _1683) + cb0_026z); - float _1718 = ((cb0_045x - _1709) * cb0_045w) + _1709; - float _1719 = ((cb0_045y - _1710) * cb0_045w) + _1710; - float _1720 = ((cb0_045z - _1711) * cb0_045w) + _1711; - float _1721 = cb0_044y * _1039; - float _1722 = cb0_044z * _1042; - float _1723 = cb0_044w * _1045; - float _1730 = ((cb0_045x - _1721) * cb0_045w) + _1721; - float _1731 = ((cb0_045y - _1722) * cb0_045w) + _1722; - float _1732 = ((cb0_045z - _1723) * cb0_045w) + _1723; - float _1744 = exp2(log2(max(0.0f, _1718)) * cb0_027y); - float _1745 = exp2(log2(max(0.0f, _1719)) * cb0_027y); - float _1746 = exp2(log2(max(0.0f, _1720)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1744, _1745, _1746)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1744 < 0.0031306699384003878f) { - _1761 = (_1744 * 12.920000076293945f); - } else { - _1761 = (((pow(_1744, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1745 < 0.0031306699384003878f) { - _1772 = (_1745 * 12.920000076293945f); - } else { - _1772 = (((pow(_1745, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1746 < 0.0031306699384003878f) { - _3200 = _1761; - _3201 = _1772; - _3202 = (_1746 * 12.920000076293945f); - } else { - _3200 = _1761; - _3201 = _1772; - _3202 = (((pow(_1746, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1787 = mad(0.04736635088920593f, _1746, mad(0.3395121395587921f, _1745, (_1744 * 0.613191545009613f))); - float _1790 = mad(0.01345000695437193f, _1746, mad(0.9163357615470886f, _1745, (_1744 * 0.07020691782236099f))); - float _1793 = mad(0.8696067929267883f, _1746, mad(0.1095672994852066f, _1745, (_1744 * 0.020618872717022896f))); - float _1803 = max(6.103519990574569e-05f, mad(_38, _1793, mad(_37, _1790, (_1787 * _36)))); - float _1804 = max(6.103519990574569e-05f, mad(_41, _1793, mad(_40, _1790, (_1787 * _39)))); - float _1805 = max(6.103519990574569e-05f, mad(_44, _1793, mad(_43, _1790, (_1787 * _42)))); - _3200 = min((_1803 * 4.5f), ((exp2(log2(max(_1803, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3201 = min((_1804 * 4.5f), ((exp2(log2(max(_1804, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3202 = min((_1805 * 4.5f), ((exp2(log2(max(_1805, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1832 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1832) { - float _1835 = _1731 * 3.0f; - float _1836 = _1732 * 3.0f; - float _1839 = mad(0.17733481526374817f, _1836, mad(0.38297808170318604f, _1835, (_1730 * 1.31910240650177f))); - float _1842 = mad(0.09676162153482437f, _1836, mad(0.8134231567382812f, _1835, (_1730 * 0.2693769633769989f))); - float _1845 = mad(0.870704174041748f, _1836, mad(0.11154405772686005f, _1835, (_1730 * 0.05263196676969528f))); - float _1849 = max(max(_1839, _1842), _1845); - float _1854 = (max(_1849, 1.000000013351432e-10f) - max(min(min(_1839, _1842), _1845), 1.000000013351432e-10f)) / max(_1849, 0.009999999776482582f); - float _1867 = ((_1842 + _1839) + _1845) + (sqrt((((_1845 - _1842) * _1845) + ((_1842 - _1839) * _1842)) + ((_1839 - _1845) * _1839)) * 1.75f); - float _1868 = _1867 * 0.3333333432674408f; - float _1869 = _1854 + -0.4000000059604645f; - float _1870 = _1869 * 5.0f; - float _1874 = max((1.0f - abs(_1869 * 2.5f)), 0.0f); - float _1885 = ((float(((int)(uint)((bool)(_1870 > 0.0f))) - ((int)(uint)((bool)(_1870 < 0.0f)))) * (1.0f - (_1874 * _1874))) + 1.0f) * 0.02500000037252903f; - if (!(_1868 <= 0.0533333346247673f)) { - if (!(_1868 >= 0.1599999964237213f)) { - _1894 = (((0.23999999463558197f / _1867) + -0.5f) * _1885); - } else { - _1894 = 0.0f; - } - } else { - _1894 = _1885; - } - float _1895 = _1894 + 1.0f; - float _1896 = _1895 * _1839; - float _1897 = _1895 * _1842; - float _1898 = _1895 * _1845; - if (!((bool)(_1896 == _1897) && (bool)(_1897 == _1898))) { - float _1905 = ((_1896 * 2.0f) - _1897) - _1898; - float _1908 = ((_1842 - _1845) * 1.7320507764816284f) * _1895; - float _1910 = atan(_1908 / _1905); - bool _1913 = (_1905 < 0.0f); - bool _1914 = (_1905 == 0.0f); - bool _1915 = (_1908 >= 0.0f); - bool _1916 = (_1908 < 0.0f); - _1927 = select((_1915 && _1914), 90.0f, select((_1916 && _1914), -90.0f, (select((_1916 && _1913), (_1910 + -3.1415927410125732f), select((_1915 && _1913), (_1910 + 3.1415927410125732f), _1910)) * 57.2957763671875f))); - } else { - _1927 = 0.0f; - } - float _1932 = min(max(select((_1927 < 0.0f), (_1927 + 360.0f), _1927), 0.0f), 360.0f); - if (_1932 < -180.0f) { - _1941 = (_1932 + 360.0f); - } else { - if (_1932 > 180.0f) { - _1941 = (_1932 + -360.0f); - } else { - _1941 = _1932; - } - } - if ((bool)(_1941 > -67.5f) && (bool)(_1941 < 67.5f)) { - float _1947 = (_1941 + 67.5f) * 0.029629629105329514f; - int _1948 = int(_1947); - float _1950 = _1947 - float(_1948); - float _1951 = _1950 * _1950; - float _1952 = _1951 * _1950; - if (_1948 == 3) { - _1980 = (((0.1666666716337204f - (_1950 * 0.5f)) + (_1951 * 0.5f)) - (_1952 * 0.1666666716337204f)); - } else { - if (_1948 == 2) { - _1980 = ((0.6666666865348816f - _1951) + (_1952 * 0.5f)); - } else { - if (_1948 == 1) { - _1980 = (((_1952 * -0.5f) + 0.1666666716337204f) + ((_1951 + _1950) * 0.5f)); - } else { - _1980 = select((_1948 == 0), (_1952 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1980 = 0.0f; - } - float _1989 = min(max(((((_1854 * 0.27000001072883606f) * (0.029999999329447746f - _1896)) * _1980) + _1896), 0.0f), 65535.0f); - float _1990 = min(max(_1897, 0.0f), 65535.0f); - float _1991 = min(max(_1898, 0.0f), 65535.0f); - float _2004 = min(max(mad(-0.21492856740951538f, _1991, mad(-0.2365107536315918f, _1990, (_1989 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2005 = min(max(mad(-0.09967592358589172f, _1991, mad(1.17622971534729f, _1990, (_1989 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2006 = min(max(mad(0.9977163076400757f, _1991, mad(-0.006032449658960104f, _1990, (_1989 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2007 = dot(float3(_2004, _2005, _2006), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2014 = ((_2004 - _2007) * 0.9599999785423279f) + _2007; - float _2015 = ((_2005 - _2007) * 0.9599999785423279f) + _2007; - float _2016 = ((_2006 - _2007) * 0.9599999785423279f) + _2007; - float _2019 = log2(select((_2014 <= 0.0f), 6.103515625e-05f, _2014)); - float _2020 = _2019 * 0.3010300099849701f; - if (!(_2020 <= -5.2601776123046875f)) { - if ((bool)(_2020 > -5.2601776123046875f) && (bool)(_2020 < -0.7447274923324585f)) { - float _2028 = (_2019 * 0.19999998807907104f) + 3.494786262512207f; - int _2029 = int(_2028); - float _2031 = _2028 - float(_2029); - float _2033 = _global_0[_2029]; - float _2036 = _global_0[(_2029 + 1)]; - float _2041 = _2033 * 0.5f; - _2073 = dot(float3((_2031 * _2031), _2031, 1.0f), float3(mad((_global_0[(_2029 + 2)]), 0.5f, mad(_2036, -1.0f, _2041)), (_2036 - _2033), mad(_2036, 0.5f, _2041))); - } else { - if ((bool)(_2020 >= -0.7447274923324585f) && (bool)(_2020 < 4.673812389373779f)) { - float _2053 = (_2019 * 0.1666666567325592f) + 0.4123218357563019f; - int _2054 = int(_2053); - float _2056 = _2053 - float(_2054); - float _2058 = _global_1[_2054]; - float _2061 = _global_1[(_2054 + 1)]; - float _2066 = _2058 * 0.5f; - _2073 = dot(float3((_2056 * _2056), _2056, 1.0f), float3(mad((_global_1[(_2054 + 2)]), 0.5f, mad(_2061, -1.0f, _2066)), (_2061 - _2058), mad(_2061, 0.5f, _2066))); - } else { - _2073 = 4.0f; - } - } - } else { - _2073 = -4.0f; - } - float _2075 = exp2(_2073 * 3.321928024291992f); - float _2078 = log2(select((_2015 <= 0.0f), 6.103515625e-05f, _2015)); - float _2079 = _2078 * 0.3010300099849701f; - if (!(_2079 <= -5.2601776123046875f)) { - if ((bool)(_2079 > -5.2601776123046875f) && (bool)(_2079 < -0.7447274923324585f)) { - float _2087 = (_2078 * 0.19999998807907104f) + 3.494786262512207f; - int _2088 = int(_2087); - float _2090 = _2087 - float(_2088); - float _2092 = _global_0[_2088]; - float _2095 = _global_0[(_2088 + 1)]; - float _2100 = _2092 * 0.5f; - _2132 = dot(float3((_2090 * _2090), _2090, 1.0f), float3(mad((_global_0[(_2088 + 2)]), 0.5f, mad(_2095, -1.0f, _2100)), (_2095 - _2092), mad(_2095, 0.5f, _2100))); - } else { - if ((bool)(_2079 >= -0.7447274923324585f) && (bool)(_2079 < 4.673812389373779f)) { - float _2112 = (_2078 * 0.1666666567325592f) + 0.4123218357563019f; - int _2113 = int(_2112); - float _2115 = _2112 - float(_2113); - float _2117 = _global_1[_2113]; - float _2120 = _global_1[(_2113 + 1)]; - float _2125 = _2117 * 0.5f; - _2132 = dot(float3((_2115 * _2115), _2115, 1.0f), float3(mad((_global_1[(_2113 + 2)]), 0.5f, mad(_2120, -1.0f, _2125)), (_2120 - _2117), mad(_2120, 0.5f, _2125))); - } else { - _2132 = 4.0f; - } - } - } else { - _2132 = -4.0f; - } - float _2134 = exp2(_2132 * 3.321928024291992f); - float _2137 = log2(select((_2016 <= 0.0f), 6.103515625e-05f, _2016)); - float _2138 = _2137 * 0.3010300099849701f; - if (!(_2138 <= -5.2601776123046875f)) { - if ((bool)(_2138 > -5.2601776123046875f) && (bool)(_2138 < -0.7447274923324585f)) { - float _2146 = (_2137 * 0.19999998807907104f) + 3.494786262512207f; - int _2147 = int(_2146); - float _2149 = _2146 - float(_2147); - float _2151 = _global_0[_2147]; - float _2154 = _global_0[(_2147 + 1)]; - float _2159 = _2151 * 0.5f; - _2191 = dot(float3((_2149 * _2149), _2149, 1.0f), float3(mad((_global_0[(_2147 + 2)]), 0.5f, mad(_2154, -1.0f, _2159)), (_2154 - _2151), mad(_2154, 0.5f, _2159))); - } else { - if ((bool)(_2138 >= -0.7447274923324585f) && (bool)(_2138 < 4.673812389373779f)) { - float _2171 = (_2137 * 0.1666666567325592f) + 0.4123218357563019f; - int _2172 = int(_2171); - float _2174 = _2171 - float(_2172); - float _2176 = _global_1[_2172]; - float _2179 = _global_1[(_2172 + 1)]; - float _2184 = _2176 * 0.5f; - _2191 = dot(float3((_2174 * _2174), _2174, 1.0f), float3(mad((_global_1[(_2172 + 2)]), 0.5f, mad(_2179, -1.0f, _2184)), (_2179 - _2176), mad(_2179, 0.5f, _2184))); - } else { - _2191 = 4.0f; - } - } - } else { - _2191 = -4.0f; - } - float _2193 = exp2(_2191 * 3.321928024291992f); - float _2196 = mad(0.16386906802654266f, _2193, mad(0.14067870378494263f, _2134, (_2075 * 0.6954522132873535f))); - float _2199 = mad(0.0955343171954155f, _2193, mad(0.8596711158752441f, _2134, (_2075 * 0.044794563204050064f))); - float _2202 = mad(1.0015007257461548f, _2193, mad(0.004025210160762072f, _2134, (_2075 * -0.005525882821530104f))); - float _2205 = mad(-0.21492856740951538f, _2202, mad(-0.2365107536315918f, _2199, (_2196 * 1.4514392614364624f))); - float _2208 = mad(-0.09967592358589172f, _2202, mad(1.17622971534729f, _2199, (_2196 * -0.07655377686023712f))); - float _2211 = mad(0.9977163076400757f, _2202, mad(-0.006032449658960104f, _2199, (_2196 * 0.008316148072481155f))); - float _2214 = log2(select((_2205 <= 0.0f), 9.999999747378752e-05f, _2205)); - float _2215 = _2214 * 0.3010300099849701f; - if (!(!(_2215 <= -3.848327875137329f))) { - _2274 = ((_2214 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2215 > -3.848327875137329f) && (bool)(_2215 < 0.6812411546707153f)) { - float _2226 = (_2214 + 12.783867835998535f) * 0.46521204710006714f; - int _2227 = int(_2226); - float _2229 = _2226 - float(_2227); - float _2231 = _global_2[_2227]; - float _2234 = _global_2[(_2227 + 1)]; - float _2239 = _2231 * 0.5f; - _2274 = dot(float3((_2229 * _2229), _2229, 1.0f), float3(mad((_global_2[(_2227 + 2)]), 0.5f, mad(_2234, -1.0f, _2239)), (_2234 - _2231), mad(_2234, 0.5f, _2239))); - } else { - if ((bool)(_2215 >= 0.6812411546707153f) && (bool)(_2215 < 3.653702974319458f)) { - float _2251 = (_2214 + -2.2630341053009033f) * 0.7089107632637024f; - int _2252 = int(_2251); - float _2254 = _2251 - float(_2252); - float _2256 = _global_3[_2252]; - float _2259 = _global_3[(_2252 + 1)]; - float _2264 = _2256 * 0.5f; - _2274 = dot(float3((_2254 * _2254), _2254, 1.0f), float3(mad((_global_3[(_2252 + 2)]), 0.5f, mad(_2259, -1.0f, _2264)), (_2259 - _2256), mad(_2259, 0.5f, _2264))); - } else { - _2274 = ((_2214 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2279 = log2(select((_2208 <= 0.0f), 9.999999747378752e-05f, _2208)); - float _2280 = _2279 * 0.3010300099849701f; - if (!(!(_2280 <= -3.848327875137329f))) { - _2339 = ((_2279 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2280 > -3.848327875137329f) && (bool)(_2280 < 0.6812411546707153f)) { - float _2291 = (_2279 + 12.783867835998535f) * 0.46521204710006714f; - int _2292 = int(_2291); - float _2294 = _2291 - float(_2292); - float _2296 = _global_2[_2292]; - float _2299 = _global_2[(_2292 + 1)]; - float _2304 = _2296 * 0.5f; - _2339 = dot(float3((_2294 * _2294), _2294, 1.0f), float3(mad((_global_2[(_2292 + 2)]), 0.5f, mad(_2299, -1.0f, _2304)), (_2299 - _2296), mad(_2299, 0.5f, _2304))); - } else { - if ((bool)(_2280 >= 0.6812411546707153f) && (bool)(_2280 < 3.653702974319458f)) { - float _2316 = (_2279 + -2.2630341053009033f) * 0.7089107632637024f; - int _2317 = int(_2316); - float _2319 = _2316 - float(_2317); - float _2321 = _global_3[_2317]; - float _2324 = _global_3[(_2317 + 1)]; - float _2329 = _2321 * 0.5f; - _2339 = dot(float3((_2319 * _2319), _2319, 1.0f), float3(mad((_global_3[(_2317 + 2)]), 0.5f, mad(_2324, -1.0f, _2329)), (_2324 - _2321), mad(_2324, 0.5f, _2329))); - } else { - _2339 = ((_2279 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2344 = log2(select((_2211 <= 0.0f), 9.999999747378752e-05f, _2211)); - float _2345 = _2344 * 0.3010300099849701f; - if (!(!(_2345 <= -3.848327875137329f))) { - _2404 = ((_2344 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2345 > -3.848327875137329f) && (bool)(_2345 < 0.6812411546707153f)) { - float _2356 = (_2344 + 12.783867835998535f) * 0.46521204710006714f; - int _2357 = int(_2356); - float _2359 = _2356 - float(_2357); - float _2361 = _global_2[_2357]; - float _2364 = _global_2[(_2357 + 1)]; - float _2369 = _2361 * 0.5f; - _2404 = dot(float3((_2359 * _2359), _2359, 1.0f), float3(mad((_global_2[(_2357 + 2)]), 0.5f, mad(_2364, -1.0f, _2369)), (_2364 - _2361), mad(_2364, 0.5f, _2369))); - } else { - if ((bool)(_2345 >= 0.6812411546707153f) && (bool)(_2345 < 3.653702974319458f)) { - float _2381 = (_2344 + -2.2630341053009033f) * 0.7089107632637024f; - int _2382 = int(_2381); - float _2384 = _2381 - float(_2382); - float _2386 = _global_3[_2382]; - float _2389 = _global_3[(_2382 + 1)]; - float _2394 = _2386 * 0.5f; - _2404 = dot(float3((_2384 * _2384), _2384, 1.0f), float3(mad((_global_3[(_2382 + 2)]), 0.5f, mad(_2389, -1.0f, _2394)), (_2389 - _2386), mad(_2389, 0.5f, _2394))); - } else { - _2404 = ((_2344 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2407 = exp2(_2274 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2408 = exp2(_2339 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2409 = exp2(_2404 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1832) { - _2421 = mad(_38, _2409, mad(_37, _2408, (_2407 * _36))); - _2422 = mad(_41, _2409, mad(_40, _2408, (_2407 * _39))); - _2423 = mad(_44, _2409, mad(_43, _2408, (_2407 * _42))); - } else { - _2421 = _2407; - _2422 = _2408; - _2423 = _2409; - } - float _2433 = exp2(log2(_2421 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2434 = exp2(log2(_2422 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2435 = exp2(log2(_2423 * 9.999999747378752e-05f) * 0.1593017578125f); - _3200 = exp2(log2((1.0f / ((_2433 * 18.6875f) + 1.0f)) * ((_2433 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_2434 * 18.6875f) + 1.0f)) * ((_2434 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3202 = exp2(log2((1.0f / ((_2435 * 18.6875f) + 1.0f)) * ((_2435 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2468 = _1731 * 3.0f; - float _2469 = _1732 * 3.0f; - float _2472 = mad(0.17733481526374817f, _2469, mad(0.38297808170318604f, _2468, (_1730 * 1.31910240650177f))); - float _2475 = mad(0.09676162153482437f, _2469, mad(0.8134231567382812f, _2468, (_1730 * 0.2693769633769989f))); - float _2478 = mad(0.870704174041748f, _2469, mad(0.11154405772686005f, _2468, (_1730 * 0.05263196676969528f))); - float _2482 = max(max(_2472, _2475), _2478); - float _2487 = (max(_2482, 1.000000013351432e-10f) - max(min(min(_2472, _2475), _2478), 1.000000013351432e-10f)) / max(_2482, 0.009999999776482582f); - float _2500 = ((_2475 + _2472) + _2478) + (sqrt((((_2478 - _2475) * _2478) + ((_2475 - _2472) * _2475)) + ((_2472 - _2478) * _2472)) * 1.75f); - float _2501 = _2500 * 0.3333333432674408f; - float _2502 = _2487 + -0.4000000059604645f; - float _2503 = _2502 * 5.0f; - float _2507 = max((1.0f - abs(_2502 * 2.5f)), 0.0f); - float _2518 = ((float(((int)(uint)((bool)(_2503 > 0.0f))) - ((int)(uint)((bool)(_2503 < 0.0f)))) * (1.0f - (_2507 * _2507))) + 1.0f) * 0.02500000037252903f; - if (!(_2501 <= 0.0533333346247673f)) { - if (!(_2501 >= 0.1599999964237213f)) { - _2527 = (((0.23999999463558197f / _2500) + -0.5f) * _2518); - } else { - _2527 = 0.0f; - } - } else { - _2527 = _2518; - } - float _2528 = _2527 + 1.0f; - float _2529 = _2528 * _2472; - float _2530 = _2528 * _2475; - float _2531 = _2528 * _2478; - if (!((bool)(_2529 == _2530) && (bool)(_2530 == _2531))) { - float _2538 = ((_2529 * 2.0f) - _2530) - _2531; - float _2541 = ((_2475 - _2478) * 1.7320507764816284f) * _2528; - float _2543 = atan(_2541 / _2538); - bool _2546 = (_2538 < 0.0f); - bool _2547 = (_2538 == 0.0f); - bool _2548 = (_2541 >= 0.0f); - bool _2549 = (_2541 < 0.0f); - _2560 = select((_2548 && _2547), 90.0f, select((_2549 && _2547), -90.0f, (select((_2549 && _2546), (_2543 + -3.1415927410125732f), select((_2548 && _2546), (_2543 + 3.1415927410125732f), _2543)) * 57.2957763671875f))); - } else { - _2560 = 0.0f; - } - float _2565 = min(max(select((_2560 < 0.0f), (_2560 + 360.0f), _2560), 0.0f), 360.0f); - if (_2565 < -180.0f) { - _2574 = (_2565 + 360.0f); - } else { - if (_2565 > 180.0f) { - _2574 = (_2565 + -360.0f); - } else { - _2574 = _2565; - } - } - if ((bool)(_2574 > -67.5f) && (bool)(_2574 < 67.5f)) { - float _2580 = (_2574 + 67.5f) * 0.029629629105329514f; - int _2581 = int(_2580); - float _2583 = _2580 - float(_2581); - float _2584 = _2583 * _2583; - float _2585 = _2584 * _2583; - if (_2581 == 3) { - _2613 = (((0.1666666716337204f - (_2583 * 0.5f)) + (_2584 * 0.5f)) - (_2585 * 0.1666666716337204f)); - } else { - if (_2581 == 2) { - _2613 = ((0.6666666865348816f - _2584) + (_2585 * 0.5f)); - } else { - if (_2581 == 1) { - _2613 = (((_2585 * -0.5f) + 0.1666666716337204f) + ((_2584 + _2583) * 0.5f)); - } else { - _2613 = select((_2581 == 0), (_2585 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2613 = 0.0f; - } - float _2622 = min(max(((((_2487 * 0.27000001072883606f) * (0.029999999329447746f - _2529)) * _2613) + _2529), 0.0f), 65535.0f); - float _2623 = min(max(_2530, 0.0f), 65535.0f); - float _2624 = min(max(_2531, 0.0f), 65535.0f); - float _2637 = min(max(mad(-0.21492856740951538f, _2624, mad(-0.2365107536315918f, _2623, (_2622 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2638 = min(max(mad(-0.09967592358589172f, _2624, mad(1.17622971534729f, _2623, (_2622 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2639 = min(max(mad(0.9977163076400757f, _2624, mad(-0.006032449658960104f, _2623, (_2622 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2640 = dot(float3(_2637, _2638, _2639), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2647 = ((_2637 - _2640) * 0.9599999785423279f) + _2640; - float _2648 = ((_2638 - _2640) * 0.9599999785423279f) + _2640; - float _2649 = ((_2639 - _2640) * 0.9599999785423279f) + _2640; - float _2652 = log2(select((_2647 <= 0.0f), 6.103515625e-05f, _2647)); - float _2653 = _2652 * 0.3010300099849701f; - if (!(_2653 <= -5.2601776123046875f)) { - if ((bool)(_2653 > -5.2601776123046875f) && (bool)(_2653 < -0.7447274923324585f)) { - float _2661 = (_2652 * 0.19999998807907104f) + 3.494786262512207f; - int _2662 = int(_2661); - float _2664 = _2661 - float(_2662); - float _2666 = _global_0[_2662]; - float _2669 = _global_0[(_2662 + 1)]; - float _2674 = _2666 * 0.5f; - _2706 = dot(float3((_2664 * _2664), _2664, 1.0f), float3(mad((_global_0[(_2662 + 2)]), 0.5f, mad(_2669, -1.0f, _2674)), (_2669 - _2666), mad(_2669, 0.5f, _2674))); - } else { - if ((bool)(_2653 >= -0.7447274923324585f) && (bool)(_2653 < 4.673812389373779f)) { - float _2686 = (_2652 * 0.1666666567325592f) + 0.4123218357563019f; - int _2687 = int(_2686); - float _2689 = _2686 - float(_2687); - float _2691 = _global_1[_2687]; - float _2694 = _global_1[(_2687 + 1)]; - float _2699 = _2691 * 0.5f; - _2706 = dot(float3((_2689 * _2689), _2689, 1.0f), float3(mad((_global_1[(_2687 + 2)]), 0.5f, mad(_2694, -1.0f, _2699)), (_2694 - _2691), mad(_2694, 0.5f, _2699))); - } else { - _2706 = 4.0f; - } - } - } else { - _2706 = -4.0f; - } - float _2708 = exp2(_2706 * 3.321928024291992f); - float _2711 = log2(select((_2648 <= 0.0f), 6.103515625e-05f, _2648)); - float _2712 = _2711 * 0.3010300099849701f; - if (!(_2712 <= -5.2601776123046875f)) { - if ((bool)(_2712 > -5.2601776123046875f) && (bool)(_2712 < -0.7447274923324585f)) { - float _2720 = (_2711 * 0.19999998807907104f) + 3.494786262512207f; - int _2721 = int(_2720); - float _2723 = _2720 - float(_2721); - float _2725 = _global_0[_2721]; - float _2728 = _global_0[(_2721 + 1)]; - float _2733 = _2725 * 0.5f; - _2765 = dot(float3((_2723 * _2723), _2723, 1.0f), float3(mad((_global_0[(_2721 + 2)]), 0.5f, mad(_2728, -1.0f, _2733)), (_2728 - _2725), mad(_2728, 0.5f, _2733))); - } else { - if ((bool)(_2712 >= -0.7447274923324585f) && (bool)(_2712 < 4.673812389373779f)) { - float _2745 = (_2711 * 0.1666666567325592f) + 0.4123218357563019f; - int _2746 = int(_2745); - float _2748 = _2745 - float(_2746); - float _2750 = _global_1[_2746]; - float _2753 = _global_1[(_2746 + 1)]; - float _2758 = _2750 * 0.5f; - _2765 = dot(float3((_2748 * _2748), _2748, 1.0f), float3(mad((_global_1[(_2746 + 2)]), 0.5f, mad(_2753, -1.0f, _2758)), (_2753 - _2750), mad(_2753, 0.5f, _2758))); - } else { - _2765 = 4.0f; - } - } - } else { - _2765 = -4.0f; - } - float _2767 = exp2(_2765 * 3.321928024291992f); - float _2770 = log2(select((_2649 <= 0.0f), 6.103515625e-05f, _2649)); - float _2771 = _2770 * 0.3010300099849701f; - if (!(_2771 <= -5.2601776123046875f)) { - if ((bool)(_2771 > -5.2601776123046875f) && (bool)(_2771 < -0.7447274923324585f)) { - float _2779 = (_2770 * 0.19999998807907104f) + 3.494786262512207f; - int _2780 = int(_2779); - float _2782 = _2779 - float(_2780); - float _2784 = _global_0[_2780]; - float _2787 = _global_0[(_2780 + 1)]; - float _2792 = _2784 * 0.5f; - _2824 = dot(float3((_2782 * _2782), _2782, 1.0f), float3(mad((_global_0[(_2780 + 2)]), 0.5f, mad(_2787, -1.0f, _2792)), (_2787 - _2784), mad(_2787, 0.5f, _2792))); - } else { - if ((bool)(_2771 >= -0.7447274923324585f) && (bool)(_2771 < 4.673812389373779f)) { - float _2804 = (_2770 * 0.1666666567325592f) + 0.4123218357563019f; - int _2805 = int(_2804); - float _2807 = _2804 - float(_2805); - float _2809 = _global_1[_2805]; - float _2812 = _global_1[(_2805 + 1)]; - float _2817 = _2809 * 0.5f; - _2824 = dot(float3((_2807 * _2807), _2807, 1.0f), float3(mad((_global_1[(_2805 + 2)]), 0.5f, mad(_2812, -1.0f, _2817)), (_2812 - _2809), mad(_2812, 0.5f, _2817))); - } else { - _2824 = 4.0f; - } - } - } else { - _2824 = -4.0f; - } - float _2826 = exp2(_2824 * 3.321928024291992f); - float _2829 = mad(0.16386906802654266f, _2826, mad(0.14067870378494263f, _2767, (_2708 * 0.6954522132873535f))); - float _2832 = mad(0.0955343171954155f, _2826, mad(0.8596711158752441f, _2767, (_2708 * 0.044794563204050064f))); - float _2835 = mad(1.0015007257461548f, _2826, mad(0.004025210160762072f, _2767, (_2708 * -0.005525882821530104f))); - float _2838 = mad(-0.21492856740951538f, _2835, mad(-0.2365107536315918f, _2832, (_2829 * 1.4514392614364624f))); - float _2841 = mad(-0.09967592358589172f, _2835, mad(1.17622971534729f, _2832, (_2829 * -0.07655377686023712f))); - float _2844 = mad(0.9977163076400757f, _2835, mad(-0.006032449658960104f, _2832, (_2829 * 0.008316148072481155f))); - float _2847 = log2(select((_2838 <= 0.0f), 9.999999747378752e-05f, _2838)); - float _2848 = _2847 * 0.3010300099849701f; - if (!(_2848 <= -3.848327875137329f)) { - if ((bool)(_2848 > -3.848327875137329f) && (bool)(_2848 < 0.6812411546707153f)) { - float _2856 = (_2847 + 12.783867835998535f) * 0.46521204710006714f; - int _2857 = int(_2856); - float _2859 = _2856 - float(_2857); - float _2861 = _global_4[_2857]; - float _2864 = _global_4[(_2857 + 1)]; - float _2869 = _2861 * 0.5f; - _2904 = dot(float3((_2859 * _2859), _2859, 1.0f), float3(mad((_global_4[(_2857 + 2)]), 0.5f, mad(_2864, -1.0f, _2869)), (_2864 - _2861), mad(_2864, 0.5f, _2869))); - } else { - if ((bool)(_2848 >= 0.6812411546707153f) && (bool)(_2848 < 3.7613162994384766f)) { - float _2881 = (_2847 + -2.2630341053009033f) * 0.6841424107551575f; - int _2882 = int(_2881); - float _2884 = _2881 - float(_2882); - float _2886 = _global_5[_2882]; - float _2889 = _global_5[(_2882 + 1)]; - float _2894 = _2886 * 0.5f; - _2904 = dot(float3((_2884 * _2884), _2884, 1.0f), float3(mad((_global_5[(_2882 + 2)]), 0.5f, mad(_2889, -1.0f, _2894)), (_2889 - _2886), mad(_2889, 0.5f, _2894))); - } else { - _2904 = ((_2847 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2904 = -2.301030158996582f; - } - float _2906 = exp2(_2904 * 3.321928024291992f); - float _2909 = log2(select((_2841 <= 0.0f), 9.999999747378752e-05f, _2841)); - float _2910 = _2909 * 0.3010300099849701f; - if (!(_2910 <= -3.848327875137329f)) { - if ((bool)(_2910 > -3.848327875137329f) && (bool)(_2910 < 0.6812411546707153f)) { - float _2918 = (_2909 + 12.783867835998535f) * 0.46521204710006714f; - int _2919 = int(_2918); - float _2921 = _2918 - float(_2919); - float _2923 = _global_4[_2919]; - float _2926 = _global_4[(_2919 + 1)]; - float _2931 = _2923 * 0.5f; - _2966 = dot(float3((_2921 * _2921), _2921, 1.0f), float3(mad((_global_4[(_2919 + 2)]), 0.5f, mad(_2926, -1.0f, _2931)), (_2926 - _2923), mad(_2926, 0.5f, _2931))); - } else { - if ((bool)(_2910 >= 0.6812411546707153f) && (bool)(_2910 < 3.7613162994384766f)) { - float _2943 = (_2909 + -2.2630341053009033f) * 0.6841424107551575f; - int _2944 = int(_2943); - float _2946 = _2943 - float(_2944); - float _2948 = _global_5[_2944]; - float _2951 = _global_5[(_2944 + 1)]; - float _2956 = _2948 * 0.5f; - _2966 = dot(float3((_2946 * _2946), _2946, 1.0f), float3(mad((_global_5[(_2944 + 2)]), 0.5f, mad(_2951, -1.0f, _2956)), (_2951 - _2948), mad(_2951, 0.5f, _2956))); - } else { - _2966 = ((_2909 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2966 = -2.301030158996582f; - } - float _2968 = exp2(_2966 * 3.321928024291992f); - float _2971 = log2(select((_2844 <= 0.0f), 9.999999747378752e-05f, _2844)); - float _2972 = _2971 * 0.3010300099849701f; - if (!(_2972 <= -3.848327875137329f)) { - if ((bool)(_2972 > -3.848327875137329f) && (bool)(_2972 < 0.6812411546707153f)) { - float _2980 = (_2971 + 12.783867835998535f) * 0.46521204710006714f; - int _2981 = int(_2980); - float _2983 = _2980 - float(_2981); - float _2985 = _global_4[_2981]; - float _2988 = _global_4[(_2981 + 1)]; - float _2993 = _2985 * 0.5f; - _3028 = dot(float3((_2983 * _2983), _2983, 1.0f), float3(mad((_global_4[(_2981 + 2)]), 0.5f, mad(_2988, -1.0f, _2993)), (_2988 - _2985), mad(_2988, 0.5f, _2993))); - } else { - if ((bool)(_2972 >= 0.6812411546707153f) && (bool)(_2972 < 3.7613162994384766f)) { - float _3005 = (_2971 + -2.2630341053009033f) * 0.6841424107551575f; - int _3006 = int(_3005); - float _3008 = _3005 - float(_3006); - float _3010 = _global_5[_3006]; - float _3013 = _global_5[(_3006 + 1)]; - float _3018 = _3010 * 0.5f; - _3028 = dot(float3((_3008 * _3008), _3008, 1.0f), float3(mad((_global_5[(_3006 + 2)]), 0.5f, mad(_3013, -1.0f, _3018)), (_3013 - _3010), mad(_3013, 0.5f, _3018))); - } else { - _3028 = ((_2971 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3028 = -2.301030158996582f; - } - float _3030 = exp2(_3028 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _3042 = mad(_38, _3030, mad(_37, _2968, (_2906 * _36))); - _3043 = mad(_41, _3030, mad(_40, _2968, (_2906 * _39))); - _3044 = mad(_44, _3030, mad(_43, _2968, (_2906 * _42))); - } else { - _3042 = _2906; - _3043 = _2968; - _3044 = _3030; - } - float _3054 = exp2(log2(_3042 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3055 = exp2(log2(_3043 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3056 = exp2(log2(_3044 * 9.999999747378752e-05f) * 0.1593017578125f); - _3200 = exp2(log2((1.0f / ((_3054 * 18.6875f) + 1.0f)) * ((_3054 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_3055 * 18.6875f) + 1.0f)) * ((_3055 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3202 = exp2(log2((1.0f / ((_3056 * 18.6875f) + 1.0f)) * ((_3056 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _3089 = mad(0.04736635088920593f, _1732, mad(0.3395121395587921f, _1731, (_1730 * 0.613191545009613f))); - float _3092 = mad(0.01345000695437193f, _1732, mad(0.9163357615470886f, _1731, (_1730 * 0.07020691782236099f))); - float _3095 = mad(0.8696067929267883f, _1732, mad(0.1095672994852066f, _1731, (_1730 * 0.020618872717022896f))); - float _3114 = exp2(log2(mad(_38, _3095, mad(_37, _3092, (_3089 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3115 = exp2(log2(mad(_41, _3095, mad(_40, _3092, (_3089 * _39))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3116 = exp2(log2(mad(_44, _3095, mad(_43, _3092, (_3089 * _42))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3200 = exp2(log2((1.0f / ((_3114 * 18.6875f) + 1.0f)) * ((_3114 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_3115 * 18.6875f) + 1.0f)) * ((_3115 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3202 = exp2(log2((1.0f / ((_3116 * 18.6875f) + 1.0f)) * ((_3116 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _3151 = mad(0.04736635088920593f, _1720, mad(0.3395121395587921f, _1719, (_1718 * 0.613191545009613f))); - float _3154 = mad(0.01345000695437193f, _1720, mad(0.9163357615470886f, _1719, (_1718 * 0.07020691782236099f))); - float _3157 = mad(0.8696067929267883f, _1720, mad(0.1095672994852066f, _1719, (_1718 * 0.020618872717022896f))); - _3200 = mad(_38, _3157, mad(_37, _3154, (_3151 * _36))); - _3201 = mad(_41, _3157, mad(_40, _3154, (_3151 * _39))); - _3202 = mad(_44, _3157, mad(_43, _3154, (_3151 * _42))); - } else { - float _3170 = mad(0.04736635088920593f, _1746, mad(0.3395121395587921f, _1745, (_1744 * 0.613191545009613f))); - float _3173 = mad(0.01345000695437193f, _1746, mad(0.9163357615470886f, _1745, (_1744 * 0.07020691782236099f))); - float _3176 = mad(0.8696067929267883f, _1746, mad(0.1095672994852066f, _1745, (_1744 * 0.020618872717022896f))); - float _3189 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3200 = exp2(_3189 * log2(mad(_38, _3176, mad(_37, _3173, (_3170 * _36))))); - _3201 = exp2(_3189 * log2(mad(_41, _3176, mad(_40, _3173, (_3170 * _39))))); - _3202 = exp2(_3189 * log2(mad(_44, _3176, mad(_43, _3173, (_3170 * _42))))); - } - } else { - _3200 = _1730; - _3201 = _1731; - _3202 = _1732; - } - } - } - } - } - } - SV_Target.x = (_3200 * 0.9523810148239136f); - SV_Target.y = (_3201 * 0.9523810148239136f); - SV_Target.z = (_3202 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x5A750625.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x5A750625.ps_6_0.hlsl deleted file mode 100644 index 291404220..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x5A750625.ps_6_0.hlsl +++ /dev/null @@ -1,1171 +0,0 @@ -#include "../common.hlsl" - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _5 = TEXCOORD.x + -0.015625f; - float _6 = TEXCOORD.y + -0.015625f; - float _9 = float((uint)SV_RenderTargetArrayIndex); - float _30; - float _31; - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _95; - float _96; - float _97; - float _336; - float _337; - float _338; - float _885; - float _918; - float _932; - float _996; - float _1134; - float _1135; - float _1136; - float _1279; - float _1280; - float _1281; - float _1357; - float _1368; - float _1490; - float _1523; - float _1537; - float _1576; - float _1669; - float _1728; - float _1787; - float _1870; - float _1935; - float _2000; - float _2017; - float _2018; - float _2019; - float _2123; - float _2156; - float _2170; - float _2209; - float _2302; - float _2361; - float _2420; - float _2500; - float _2562; - float _2624; - float _2638; - float _2639; - float _2640; - float _2798; - float _2799; - float _2800; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _19 = ((uint)(cb0_074y) == 4); - _30 = select(_19, 1.0f, 1.7050515413284302f); - _31 = select(_19, 0.0f, -0.6217905879020691f); - _32 = select(_19, 0.0f, -0.0832584798336029f); - _33 = select(_19, 0.0f, -0.13025718927383423f); - _34 = select(_19, 1.0f, 1.1408027410507202f); - _35 = select(_19, 0.0f, -0.010548528283834457f); - _36 = select(_19, 0.0f, -0.024003278464078903f); - _37 = select(_19, 0.0f, -0.1289687603712082f); - _38 = select(_19, 1.0f, 1.152971863746643f); - } else { - _30 = 0.6954522132873535f; - _31 = 0.14067870378494263f; - _32 = 0.16386906802654266f; - _33 = 0.044794563204050064f; - _34 = 0.8596711158752441f; - _35 = 0.0955343171954155f; - _36 = -0.005525882821530104f; - _37 = 0.004025210160762072f; - _38 = 1.0015007257461548f; - } - } else { - _30 = 1.02579927444458f; - _31 = -0.020052503794431686f; - _32 = -0.0057713985443115234f; - _33 = -0.0022350111976265907f; - _34 = 1.0045825242996216f; - _35 = -0.002352306619286537f; - _36 = -0.005014004185795784f; - _37 = -0.025293385609984398f; - _38 = 1.0304402112960815f; - } - } else { - _30 = 1.379158854484558f; - _31 = -0.3088507056236267f; - _32 = -0.07034677267074585f; - _33 = -0.06933528929948807f; - _34 = 1.0822921991348267f; - _35 = -0.012962047010660172f; - _36 = -0.002159259282052517f; - _37 = -0.045465391129255295f; - _38 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _48 = exp2(log2(_5 * 1.0322580337524414f) * 0.012683313339948654f); - float _49 = exp2(log2(_6 * 1.0322580337524414f) * 0.012683313339948654f); - float _50 = exp2(log2(_9 * 0.032258063554763794f) * 0.012683313339948654f); - _95 = (exp2(log2(max(0.0f, (_48 + -0.8359375f)) / (18.8515625f - (_48 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _96 = (exp2(log2(max(0.0f, (_49 + -0.8359375f)) / (18.8515625f - (_49 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _95 = ((exp2((_5 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _96 = ((exp2((_6 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _97 = ((exp2((_9 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _100 = cb0_047x * 1.0005563497543335f; - float _114 = select((_100 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _100) + 99.11000061035156f) / _100) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _100) + 247.47999572753906f) / _100) + 0.23703999817371368f)); - float _128 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _138 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _143 = ((_128 * 2.0f) + 4.0f) - (_138 * 8.0f); - float _144 = (_128 * 3.0f) / _143; - float _146 = (_138 * 2.0f) / _143; - bool _147 = (cb0_047x < 4000.0f); - float _152 = rsqrt(dot(float2(_128, _138), float2(_128, _138))); - float _153 = cb0_047y * 0.05000000074505806f; - float _156 = _128 - ((_153 * _138) * _152); - float _159 = ((_153 * _128) * _152) + _138; - float _164 = (4.0f - (_159 * 8.0f)) + (_156 * 2.0f); - float _170 = (((_156 * 3.0f) / _164) - _144) + select(_147, _144, _114); - float _171 = (((_159 * 2.0f) / _164) - _146) + select(_147, _146, (((_114 * 2.869999885559082f) + -0.2750000059604645f) - ((_114 * _114) * 3.0f))); - float _172 = max(_171, 1.000000013351432e-10f); - float _173 = _170 / _172; - float _176 = ((1.0f - _170) - _171) / _172; - float _186 = 0.9413792490959167f / mad(-0.16140000522136688f, _176, ((_173 * 0.8950999975204468f) + 0.266400009393692f)); - float _187 = 1.0404363870620728f / mad(0.03669999912381172f, _176, (1.7135000228881836f - (_173 * 0.7501999735832214f))); - float _188 = 1.089766502380371f / mad(1.0296000242233276f, _176, ((_173 * 0.03889999911189079f) + -0.06849999725818634f)); - float _189 = mad(_187, -0.7501999735832214f, 0.0f); - float _190 = mad(_187, 1.7135000228881836f, 0.0f); - float _191 = mad(_187, 0.03669999912381172f, -0.0f); - float _192 = mad(_188, 0.03889999911189079f, 0.0f); - float _193 = mad(_188, -0.06849999725818634f, 0.0f); - float _194 = mad(_188, 1.0296000242233276f, 0.0f); - float _197 = mad(0.1599626988172531f, _192, mad(-0.1470542997121811f, _189, (_186 * 0.883457362651825f))); - float _200 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_186 * 0.26293492317199707f))); - float _203 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_186 * -0.15930065512657166f))); - float _206 = mad(0.04929120093584061f, _192, mad(0.5183603167533875f, _189, (_186 * 0.38695648312568665f))); - float _209 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_186 * 0.11516613513231277f))); - float _212 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_186 * -0.0697740763425827f))); - float _215 = mad(0.9684867262840271f, _192, mad(0.04004279896616936f, _189, (_186 * -0.007634039502590895f))); - float _218 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_186 * -0.0022720457054674625f))); - float _221 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_186 * 0.0013765322510153055f))); - float _224 = mad(_203, 0.01933390088379383f, mad(_200, 0.2126729041337967f, (_197 * 0.4124563932418823f))); - float _227 = mad(_203, 0.11919199675321579f, mad(_200, 0.7151522040367126f, (_197 * 0.3575761020183563f))); - float _230 = mad(_203, 0.9503040909767151f, mad(_200, 0.07217500358819962f, (_197 * 0.18043750524520874f))); - float _233 = mad(_212, 0.01933390088379383f, mad(_209, 0.2126729041337967f, (_206 * 0.4124563932418823f))); - float _236 = mad(_212, 0.11919199675321579f, mad(_209, 0.7151522040367126f, (_206 * 0.3575761020183563f))); - float _239 = mad(_212, 0.9503040909767151f, mad(_209, 0.07217500358819962f, (_206 * 0.18043750524520874f))); - float _242 = mad(_221, 0.01933390088379383f, mad(_218, 0.2126729041337967f, (_215 * 0.4124563932418823f))); - float _245 = mad(_221, 0.11919199675321579f, mad(_218, 0.7151522040367126f, (_215 * 0.3575761020183563f))); - float _248 = mad(_221, 0.9503040909767151f, mad(_218, 0.07217500358819962f, (_215 * 0.18043750524520874f))); - float _278 = mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _97, mad(mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))), _96, (mad(-0.4986107647418976f, _242, mad(-1.5373831987380981f, _233, (_224 * 3.2409698963165283f))) * _95))); - float _281 = mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _97, mad(mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))), _96, (mad(0.04155505821108818f, _242, mad(1.8759675025939941f, _233, (_224 * -0.9692436456680298f))) * _95))); - float _284 = mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _97, mad(mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))), _96, (mad(1.056971549987793f, _242, mad(-0.20397695899009705f, _233, (_224 * 0.05563008040189743f))) * _95))); - float _287 = mad(0.04736635088920593f, _284, mad(0.3395121395587921f, _281, (_278 * 0.613191545009613f))); - float _290 = mad(0.01345000695437193f, _284, mad(0.9163357615470886f, _281, (_278 * 0.07020691782236099f))); - float _293 = mad(0.8696067929267883f, _284, mad(0.1095672994852066f, _281, (_278 * 0.020618872717022896f))); - // bool _296 = ((uint)(cb0_046x) == 0); - bool _296 = ((uint)(tm_flags.x) == 0); - if (_296) { - float _298 = dot(float3(_287, _290, _293), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _302 = (_287 / _298) + -1.0f; - float _303 = (_290 / _298) + -1.0f; - float _304 = (_293 / _298) + -1.0f; - float _316 = (1.0f - exp2(((_298 * _298) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_302, _303, _304), float3(_302, _303, _304)) * -4.0f)); - _336 = (((mad(-0.06368283927440643f, _293, mad(-0.32929131388664246f, _290, (_287 * 1.370412826538086f))) - _287) * _316) + _287); - _337 = (((mad(-0.010861567221581936f, _293, mad(1.0970908403396606f, _290, (_287 * -0.08343426138162613f))) - _290) * _316) + _290); - _338 = (((mad(1.203694462776184f, _293, mad(-0.09862564504146576f, _290, (_287 * -0.02579325996339321f))) - _293) * _316) + _293); - } else { - _336 = _287; - _337 = _290; - _338 = _293; - } - float _339 = dot(float3(_336, _337, _338), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _353 = cb0_052w + cb0_057w; - float _367 = cb0_051w * cb0_056w; - float _381 = cb0_050w * cb0_055w; - float _395 = cb0_049w * cb0_054w; - float _409 = cb0_048w * cb0_053w; - float _413 = _336 - _339; - float _414 = _337 - _339; - float _415 = _338 - _339; - float _473 = saturate(_339 / cb0_073x); - float _477 = (_473 * _473) * (3.0f - (_473 * 2.0f)); - float _478 = 1.0f - _477; - float _487 = cb0_052w + cb0_067w; - float _496 = cb0_051w * cb0_066w; - float _505 = cb0_050w * cb0_065w; - float _514 = cb0_049w * cb0_064w; - float _523 = cb0_048w * cb0_063w; - float _585 = saturate((_339 - cb0_073y) / (1.0f - cb0_073y)); - float _589 = (_585 * _585) * (3.0f - (_585 * 2.0f)); - float _598 = cb0_052w + cb0_062w; - float _607 = cb0_051w * cb0_061w; - float _616 = cb0_050w * cb0_060w; - float _625 = cb0_049w * cb0_059w; - float _634 = cb0_048w * cb0_058w; - float _692 = _477 - _589; - float _703 = ((_589 * (((cb0_052x + cb0_067x) + _487) + (((cb0_051x * cb0_066x) * _496) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _514) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _523) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _505)))))) + (_478 * (((cb0_052x + cb0_057x) + _353) + (((cb0_051x * cb0_056x) * _367) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _395) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _409) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _381))))))) + ((((cb0_052x + cb0_062x) + _598) + (((cb0_051x * cb0_061x) * _607) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _625) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _634) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _616))))) * _692); - float _705 = ((_589 * (((cb0_052y + cb0_067y) + _487) + (((cb0_051y * cb0_066y) * _496) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _514) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _523) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _505)))))) + (_478 * (((cb0_052y + cb0_057y) + _353) + (((cb0_051y * cb0_056y) * _367) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _395) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _409) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _381))))))) + ((((cb0_052y + cb0_062y) + _598) + (((cb0_051y * cb0_061y) * _607) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _625) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _634) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _616))))) * _692); - float _707 = ((_589 * (((cb0_052z + cb0_067z) + _487) + (((cb0_051z * cb0_066z) * _496) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _514) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _523) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _505)))))) + (_478 * (((cb0_052z + cb0_057z) + _353) + (((cb0_051z * cb0_056z) * _367) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _395) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _409) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _381))))))) + ((((cb0_052z + cb0_062z) + _598) + (((cb0_051z * cb0_061z) * _607) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _625) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _634) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _616))))) * _692); - float _733 = dot(float3(_703, _705, _707), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _791 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_703 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _792 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_705 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _793 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_707 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _796 = mad(-0.0832584798336029f, _793, mad(-0.6217905879020691f, _792, (_791 * 1.7050515413284302f))); - float _799 = mad(-0.010548528283834457f, _793, mad(1.1408027410507202f, _792, (_791 * -0.13025718927383423f))); - float _802 = mad(1.152971863746643f, _793, mad(-0.1289687603712082f, _792, (_791 * -0.024003278464078903f))); - float _818 = ((mad(0.061360642313957214f, _793, mad(-4.540197551250458e-09f, _792, (_791 * 0.9386394023895264f))) - _791) * cb0_074z) + _791; - float _819 = ((mad(0.169205904006958f, _793, mad(0.8307942152023315f, _792, (_791 * 6.775371730327606e-08f))) - _792) * cb0_074z) + _792; - float _820 = (mad(-2.3283064365386963e-10f, _792, (_791 * -9.313225746154785e-10f)) * cb0_074z) + _793; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _830 = mad(0.16386905312538147f, _820, mad(0.14067868888378143f, _819, (_818 * 0.6954522132873535f))); - float _833 = mad(0.0955343246459961f, _820, mad(0.8596711158752441f, _819, (_818 * 0.044794581830501556f))); - float _836 = mad(1.0015007257461548f, _820, mad(0.004025210160762072f, _819, (_818 * -0.005525882821530104f))); - float _840 = max(max(_830, _833), _836); - float _845 = (max(_840, 1.000000013351432e-10f) - max(min(min(_830, _833), _836), 1.000000013351432e-10f)) / max(_840, 0.009999999776482582f); - float _858 = ((_833 + _830) + _836) + (sqrt((((_836 - _833) * _836) + ((_833 - _830) * _833)) + ((_830 - _836) * _830)) * 1.75f); - float _859 = _858 * 0.3333333432674408f; - float _860 = _845 + -0.4000000059604645f; - float _861 = _860 * 5.0f; - float _865 = max((1.0f - abs(_860 * 2.5f)), 0.0f); - float _876 = ((float(((int)(uint)((bool)(_861 > 0.0f))) - ((int)(uint)((bool)(_861 < 0.0f)))) * (1.0f - (_865 * _865))) + 1.0f) * 0.02500000037252903f; - if (!(_859 <= 0.0533333346247673f)) { - if (!(_859 >= 0.1599999964237213f)) { - _885 = (((0.23999999463558197f / _858) + -0.5f) * _876); - } else { - _885 = 0.0f; - } - } else { - _885 = _876; - } - float _886 = _885 + 1.0f; - float _887 = _886 * _830; - float _888 = _886 * _833; - float _889 = _886 * _836; - if (!((bool)(_887 == _888) && (bool)(_888 == _889))) { - float _896 = ((_887 * 2.0f) - _888) - _889; - float _899 = ((_833 - _836) * 1.7320507764816284f) * _886; - float _901 = atan(_899 / _896); - bool _904 = (_896 < 0.0f); - bool _905 = (_896 == 0.0f); - bool _906 = (_899 >= 0.0f); - bool _907 = (_899 < 0.0f); - _918 = select((_906 && _905), 90.0f, select((_907 && _905), -90.0f, (select((_907 && _904), (_901 + -3.1415927410125732f), select((_906 && _904), (_901 + 3.1415927410125732f), _901)) * 57.2957763671875f))); - } else { - _918 = 0.0f; - } - float _923 = min(max(select((_918 < 0.0f), (_918 + 360.0f), _918), 0.0f), 360.0f); - if (_923 < -180.0f) { - _932 = (_923 + 360.0f); - } else { - if (_923 > 180.0f) { - _932 = (_923 + -360.0f); - } else { - _932 = _923; - } - } - float _936 = saturate(1.0f - abs(_932 * 0.014814814552664757f)); - float _940 = (_936 * _936) * (3.0f - (_936 * 2.0f)); - float _946 = ((_940 * _940) * ((_845 * 0.18000000715255737f) * (0.029999999329447746f - _887))) + _887; - float _956 = max(0.0f, mad(-0.21492856740951538f, _889, mad(-0.2365107536315918f, _888, (_946 * 1.4514392614364624f)))); - float _957 = max(0.0f, mad(-0.09967592358589172f, _889, mad(1.17622971534729f, _888, (_946 * -0.07655377686023712f)))); - float _958 = max(0.0f, mad(0.9977163076400757f, _889, mad(-0.006032449658960104f, _888, (_946 * 0.008316148072481155f)))); - float _959 = dot(float3(_956, _957, _958), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _973 = (cb0_036w + 1.0f) - cb0_036y; - float _976 = cb0_037x + 1.0f; - float _978 = _976 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _996 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _987 = (cb0_036w + 0.18000000715255737f) / _973; - _996 = (-0.7447274923324585f - ((log2(_987 / (2.0f - _987)) * 0.3465735912322998f) * (_973 / cb0_036x))); - } - float _999 = ((1.0f - cb0_036y) / cb0_036x) - _996; - float _1001 = (cb0_036z / cb0_036x) - _999; - float _1005 = log2(lerp(_959, _956, 0.9599999785423279f)) * 0.3010300099849701f; - float _1006 = log2(lerp(_959, _957, 0.9599999785423279f)) * 0.3010300099849701f; - float _1007 = log2(lerp(_959, _958, 0.9599999785423279f)) * 0.3010300099849701f; - float _1011 = cb0_036x * (_1005 + _999); - float _1012 = cb0_036x * (_1006 + _999); - float _1013 = cb0_036x * (_1007 + _999); - float _1014 = _973 * 2.0f; - float _1016 = (cb0_036x * -2.0f) / _973; - float _1017 = _1005 - _996; - float _1018 = _1006 - _996; - float _1019 = _1007 - _996; - float _1038 = _978 * 2.0f; - float _1040 = (cb0_036x * 2.0f) / _978; - float _1065 = select((_1005 < _996), ((_1014 / (exp2((_1017 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1011); - float _1066 = select((_1006 < _996), ((_1014 / (exp2((_1018 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1012); - float _1067 = select((_1007 < _996), ((_1014 / (exp2((_1019 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1013); - float _1074 = _1001 - _996; - float _1078 = saturate(_1017 / _1074); - float _1079 = saturate(_1018 / _1074); - float _1080 = saturate(_1019 / _1074); - bool _1081 = (_1001 < _996); - float _1085 = select(_1081, (1.0f - _1078), _1078); - float _1086 = select(_1081, (1.0f - _1079), _1079); - float _1087 = select(_1081, (1.0f - _1080), _1080); - float _1106 = (((_1085 * _1085) * (select((_1005 > _1001), (_976 - (_1038 / (exp2(((_1005 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1011) - _1065)) * (3.0f - (_1085 * 2.0f))) + _1065; - float _1107 = (((_1086 * _1086) * (select((_1006 > _1001), (_976 - (_1038 / (exp2(((_1006 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1012) - _1066)) * (3.0f - (_1086 * 2.0f))) + _1066; - float _1108 = (((_1087 * _1087) * (select((_1007 > _1001), (_976 - (_1038 / (exp2(((_1007 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; - float _1109 = dot(float3(_1106, _1107, _1108), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1134 = ((cb0_075x * (max(0.0f, (lerp(_1109, _1106, 0.9300000071525574f))) - _818)) + _818); - _1135 = ((cb0_075x * (max(0.0f, (lerp(_1109, _1107, 0.9300000071525574f))) - _819)) + _819); - _1136 = ((cb0_075x * (max(0.0f, (lerp(_1109, _1108, 0.9300000071525574f))) - _820)) + _820); - } else { - _1134 = _818; - _1135 = _819; - _1136 = _820; - } - float _1152 = ((mad(-0.06537103652954102f, _1136, mad(1.451815478503704e-06f, _1135, (_1134 * 1.065374732017517f))) - _1134) * cb0_074z) + _1134; - float _1153 = ((mad(-0.20366770029067993f, _1136, mad(1.2036634683609009f, _1135, (_1134 * -2.57161445915699e-07f))) - _1135) * cb0_074z) + _1135; - float _1154 = ((mad(0.9999996423721313f, _1136, mad(2.0954757928848267e-08f, _1135, (_1134 * 1.862645149230957e-08f))) - _1136) * cb0_074z) + _1136; - [branch] - if (!_296) { - float _1197 = 1.0f / (dot(float3(_796, _799, _802), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1207 = max(0.0f, (((_1197 * cb0_035x) + cb0_034x) * dot(float3(_796, _799, _802), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1208 = max(0.0f, (((_1197 * cb0_035y) + cb0_034y) * dot(float3(_796, _799, _802), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1209 = max(0.0f, (((_1197 * cb0_035z) + cb0_034z) * dot(float3(_796, _799, _802), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1215 = max(0.0f, (cb0_031x - _1207)); - float _1216 = max(0.0f, (cb0_031x - _1208)); - float _1217 = max(0.0f, (cb0_031x - _1209)); - float _1219 = max(_1207, cb0_031z); - float _1220 = max(_1208, cb0_031z); - float _1221 = max(_1209, cb0_031z); - _1279 = (((((((cb0_032x * _1219) + cb0_032y) * (1.0f / (cb0_031w + _1219))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1207, cb0_031x), cb0_031z))) + ((cb0_028w * _1215) * (1.0f / (cb0_031y + _1215)))) + cb0_029w); - _1280 = ((((((1.0f / (cb0_031w + _1220)) * ((cb0_032x * _1220) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1208, cb0_031x), cb0_031z))) + ((cb0_028w * _1216) * (1.0f / (cb0_031y + _1216)))) + cb0_029w); - _1281 = ((((((1.0f / (cb0_031w + _1221)) * ((cb0_032x * _1221) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1209, cb0_031x), cb0_031z))) + ((cb0_028w * _1217) * (1.0f / (cb0_031y + _1217)))) + cb0_029w); - } else { - _1279 = max(0.0f, mad(-0.0832584798336029f, _1154, mad(-0.6217905879020691f, _1153, (_1152 * 1.7050515413284302f)))); - _1280 = max(0.0f, mad(-0.010548528283834457f, _1154, mad(1.1408027410507202f, _1153, (_1152 * -0.13025718927383423f)))); - _1281 = max(0.0f, mad(1.152971863746643f, _1154, mad(-0.1289687603712082f, _1153, (_1152 * -0.024003278464078903f)))); - } - float _1307 = cb0_044y * (((cb0_026y + (cb0_026x * _1279)) * _1279) + cb0_026z); - float _1308 = cb0_044z * (((cb0_026y + (cb0_026x * _1280)) * _1280) + cb0_026z); - float _1309 = cb0_044w * (((cb0_026y + (cb0_026x * _1281)) * _1281) + cb0_026z); - float _1316 = ((cb0_045x - _1307) * cb0_045w) + _1307; - float _1317 = ((cb0_045y - _1308) * cb0_045w) + _1308; - float _1318 = ((cb0_045z - _1309) * cb0_045w) + _1309; - float _1319 = cb0_044y * _796; - float _1320 = cb0_044z * _799; - float _1321 = cb0_044w * _802; - float _1328 = ((cb0_045x - _1319) * cb0_045w) + _1319; - float _1329 = ((cb0_045y - _1320) * cb0_045w) + _1320; - float _1330 = ((cb0_045z - _1321) * cb0_045w) + _1321; - float _1342 = exp2(log2(max(0.0f, _1316)) * cb0_027y); - float _1343 = exp2(log2(max(0.0f, _1317)) * cb0_027y); - float _1344 = exp2(log2(max(0.0f, _1318)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1342, _1343, _1344)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1342 < 0.0031306699384003878f) { - _1357 = (_1342 * 12.920000076293945f); - } else { - _1357 = (((pow(_1342, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1343 < 0.0031306699384003878f) { - _1368 = (_1343 * 12.920000076293945f); - } else { - _1368 = (((pow(_1343, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1344 < 0.0031306699384003878f) { - _2798 = _1357; - _2799 = _1368; - _2800 = (_1344 * 12.920000076293945f); - } else { - _2798 = _1357; - _2799 = _1368; - _2800 = (((pow(_1344, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1383 = mad(0.04736635088920593f, _1344, mad(0.3395121395587921f, _1343, (_1342 * 0.613191545009613f))); - float _1386 = mad(0.01345000695437193f, _1344, mad(0.9163357615470886f, _1343, (_1342 * 0.07020691782236099f))); - float _1389 = mad(0.8696067929267883f, _1344, mad(0.1095672994852066f, _1343, (_1342 * 0.020618872717022896f))); - float _1399 = max(6.103519990574569e-05f, mad(_32, _1389, mad(_31, _1386, (_1383 * _30)))); - float _1400 = max(6.103519990574569e-05f, mad(_35, _1389, mad(_34, _1386, (_1383 * _33)))); - float _1401 = max(6.103519990574569e-05f, mad(_38, _1389, mad(_37, _1386, (_1383 * _36)))); - _2798 = min((_1399 * 4.5f), ((exp2(log2(max(_1399, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2799 = min((_1400 * 4.5f), ((exp2(log2(max(_1400, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2800 = min((_1401 * 4.5f), ((exp2(log2(max(_1401, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1428 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1428) { - float _1431 = _1329 * 3.0f; - float _1432 = _1330 * 3.0f; - float _1435 = mad(0.17733481526374817f, _1432, mad(0.38297808170318604f, _1431, (_1328 * 1.31910240650177f))); - float _1438 = mad(0.09676162153482437f, _1432, mad(0.8134231567382812f, _1431, (_1328 * 0.2693769633769989f))); - float _1441 = mad(0.870704174041748f, _1432, mad(0.11154405772686005f, _1431, (_1328 * 0.05263196676969528f))); - float _1445 = max(max(_1435, _1438), _1441); - float _1450 = (max(_1445, 1.000000013351432e-10f) - max(min(min(_1435, _1438), _1441), 1.000000013351432e-10f)) / max(_1445, 0.009999999776482582f); - float _1463 = ((_1438 + _1435) + _1441) + (sqrt((((_1441 - _1438) * _1441) + ((_1438 - _1435) * _1438)) + ((_1435 - _1441) * _1435)) * 1.75f); - float _1464 = _1463 * 0.3333333432674408f; - float _1465 = _1450 + -0.4000000059604645f; - float _1466 = _1465 * 5.0f; - float _1470 = max((1.0f - abs(_1465 * 2.5f)), 0.0f); - float _1481 = ((float(((int)(uint)((bool)(_1466 > 0.0f))) - ((int)(uint)((bool)(_1466 < 0.0f)))) * (1.0f - (_1470 * _1470))) + 1.0f) * 0.02500000037252903f; - if (!(_1464 <= 0.0533333346247673f)) { - if (!(_1464 >= 0.1599999964237213f)) { - _1490 = (((0.23999999463558197f / _1463) + -0.5f) * _1481); - } else { - _1490 = 0.0f; - } - } else { - _1490 = _1481; - } - float _1491 = _1490 + 1.0f; - float _1492 = _1491 * _1435; - float _1493 = _1491 * _1438; - float _1494 = _1491 * _1441; - if (!((bool)(_1492 == _1493) && (bool)(_1493 == _1494))) { - float _1501 = ((_1492 * 2.0f) - _1493) - _1494; - float _1504 = ((_1438 - _1441) * 1.7320507764816284f) * _1491; - float _1506 = atan(_1504 / _1501); - bool _1509 = (_1501 < 0.0f); - bool _1510 = (_1501 == 0.0f); - bool _1511 = (_1504 >= 0.0f); - bool _1512 = (_1504 < 0.0f); - _1523 = select((_1511 && _1510), 90.0f, select((_1512 && _1510), -90.0f, (select((_1512 && _1509), (_1506 + -3.1415927410125732f), select((_1511 && _1509), (_1506 + 3.1415927410125732f), _1506)) * 57.2957763671875f))); - } else { - _1523 = 0.0f; - } - float _1528 = min(max(select((_1523 < 0.0f), (_1523 + 360.0f), _1523), 0.0f), 360.0f); - if (_1528 < -180.0f) { - _1537 = (_1528 + 360.0f); - } else { - if (_1528 > 180.0f) { - _1537 = (_1528 + -360.0f); - } else { - _1537 = _1528; - } - } - if ((bool)(_1537 > -67.5f) && (bool)(_1537 < 67.5f)) { - float _1543 = (_1537 + 67.5f) * 0.029629629105329514f; - int _1544 = int(_1543); - float _1546 = _1543 - float(_1544); - float _1547 = _1546 * _1546; - float _1548 = _1547 * _1546; - if (_1544 == 3) { - _1576 = (((0.1666666716337204f - (_1546 * 0.5f)) + (_1547 * 0.5f)) - (_1548 * 0.1666666716337204f)); - } else { - if (_1544 == 2) { - _1576 = ((0.6666666865348816f - _1547) + (_1548 * 0.5f)); - } else { - if (_1544 == 1) { - _1576 = (((_1548 * -0.5f) + 0.1666666716337204f) + ((_1547 + _1546) * 0.5f)); - } else { - _1576 = select((_1544 == 0), (_1548 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1576 = 0.0f; - } - float _1585 = min(max(((((_1450 * 0.27000001072883606f) * (0.029999999329447746f - _1492)) * _1576) + _1492), 0.0f), 65535.0f); - float _1586 = min(max(_1493, 0.0f), 65535.0f); - float _1587 = min(max(_1494, 0.0f), 65535.0f); - float _1600 = min(max(mad(-0.21492856740951538f, _1587, mad(-0.2365107536315918f, _1586, (_1585 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1601 = min(max(mad(-0.09967592358589172f, _1587, mad(1.17622971534729f, _1586, (_1585 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1602 = min(max(mad(0.9977163076400757f, _1587, mad(-0.006032449658960104f, _1586, (_1585 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1603 = dot(float3(_1600, _1601, _1602), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1610 = ((_1600 - _1603) * 0.9599999785423279f) + _1603; - float _1611 = ((_1601 - _1603) * 0.9599999785423279f) + _1603; - float _1612 = ((_1602 - _1603) * 0.9599999785423279f) + _1603; - float _1615 = log2(select((_1610 <= 0.0f), 6.103515625e-05f, _1610)); - float _1616 = _1615 * 0.3010300099849701f; - if (!(_1616 <= -5.2601776123046875f)) { - if ((bool)(_1616 > -5.2601776123046875f) && (bool)(_1616 < -0.7447274923324585f)) { - float _1624 = (_1615 * 0.19999998807907104f) + 3.494786262512207f; - int _1625 = int(_1624); - float _1627 = _1624 - float(_1625); - float _1629 = _global_0[_1625]; - float _1632 = _global_0[(_1625 + 1)]; - float _1637 = _1629 * 0.5f; - _1669 = dot(float3((_1627 * _1627), _1627, 1.0f), float3(mad((_global_0[(_1625 + 2)]), 0.5f, mad(_1632, -1.0f, _1637)), (_1632 - _1629), mad(_1632, 0.5f, _1637))); - } else { - if ((bool)(_1616 >= -0.7447274923324585f) && (bool)(_1616 < 4.673812389373779f)) { - float _1649 = (_1615 * 0.1666666567325592f) + 0.4123218357563019f; - int _1650 = int(_1649); - float _1652 = _1649 - float(_1650); - float _1654 = _global_1[_1650]; - float _1657 = _global_1[(_1650 + 1)]; - float _1662 = _1654 * 0.5f; - _1669 = dot(float3((_1652 * _1652), _1652, 1.0f), float3(mad((_global_1[(_1650 + 2)]), 0.5f, mad(_1657, -1.0f, _1662)), (_1657 - _1654), mad(_1657, 0.5f, _1662))); - } else { - _1669 = 4.0f; - } - } - } else { - _1669 = -4.0f; - } - float _1671 = exp2(_1669 * 3.321928024291992f); - float _1674 = log2(select((_1611 <= 0.0f), 6.103515625e-05f, _1611)); - float _1675 = _1674 * 0.3010300099849701f; - if (!(_1675 <= -5.2601776123046875f)) { - if ((bool)(_1675 > -5.2601776123046875f) && (bool)(_1675 < -0.7447274923324585f)) { - float _1683 = (_1674 * 0.19999998807907104f) + 3.494786262512207f; - int _1684 = int(_1683); - float _1686 = _1683 - float(_1684); - float _1688 = _global_0[_1684]; - float _1691 = _global_0[(_1684 + 1)]; - float _1696 = _1688 * 0.5f; - _1728 = dot(float3((_1686 * _1686), _1686, 1.0f), float3(mad((_global_0[(_1684 + 2)]), 0.5f, mad(_1691, -1.0f, _1696)), (_1691 - _1688), mad(_1691, 0.5f, _1696))); - } else { - if ((bool)(_1675 >= -0.7447274923324585f) && (bool)(_1675 < 4.673812389373779f)) { - float _1708 = (_1674 * 0.1666666567325592f) + 0.4123218357563019f; - int _1709 = int(_1708); - float _1711 = _1708 - float(_1709); - float _1713 = _global_1[_1709]; - float _1716 = _global_1[(_1709 + 1)]; - float _1721 = _1713 * 0.5f; - _1728 = dot(float3((_1711 * _1711), _1711, 1.0f), float3(mad((_global_1[(_1709 + 2)]), 0.5f, mad(_1716, -1.0f, _1721)), (_1716 - _1713), mad(_1716, 0.5f, _1721))); - } else { - _1728 = 4.0f; - } - } - } else { - _1728 = -4.0f; - } - float _1730 = exp2(_1728 * 3.321928024291992f); - float _1733 = log2(select((_1612 <= 0.0f), 6.103515625e-05f, _1612)); - float _1734 = _1733 * 0.3010300099849701f; - if (!(_1734 <= -5.2601776123046875f)) { - if ((bool)(_1734 > -5.2601776123046875f) && (bool)(_1734 < -0.7447274923324585f)) { - float _1742 = (_1733 * 0.19999998807907104f) + 3.494786262512207f; - int _1743 = int(_1742); - float _1745 = _1742 - float(_1743); - float _1747 = _global_0[_1743]; - float _1750 = _global_0[(_1743 + 1)]; - float _1755 = _1747 * 0.5f; - _1787 = dot(float3((_1745 * _1745), _1745, 1.0f), float3(mad((_global_0[(_1743 + 2)]), 0.5f, mad(_1750, -1.0f, _1755)), (_1750 - _1747), mad(_1750, 0.5f, _1755))); - } else { - if ((bool)(_1734 >= -0.7447274923324585f) && (bool)(_1734 < 4.673812389373779f)) { - float _1767 = (_1733 * 0.1666666567325592f) + 0.4123218357563019f; - int _1768 = int(_1767); - float _1770 = _1767 - float(_1768); - float _1772 = _global_1[_1768]; - float _1775 = _global_1[(_1768 + 1)]; - float _1780 = _1772 * 0.5f; - _1787 = dot(float3((_1770 * _1770), _1770, 1.0f), float3(mad((_global_1[(_1768 + 2)]), 0.5f, mad(_1775, -1.0f, _1780)), (_1775 - _1772), mad(_1775, 0.5f, _1780))); - } else { - _1787 = 4.0f; - } - } - } else { - _1787 = -4.0f; - } - float _1789 = exp2(_1787 * 3.321928024291992f); - float _1792 = mad(0.16386906802654266f, _1789, mad(0.14067870378494263f, _1730, (_1671 * 0.6954522132873535f))); - float _1795 = mad(0.0955343171954155f, _1789, mad(0.8596711158752441f, _1730, (_1671 * 0.044794563204050064f))); - float _1798 = mad(1.0015007257461548f, _1789, mad(0.004025210160762072f, _1730, (_1671 * -0.005525882821530104f))); - float _1801 = mad(-0.21492856740951538f, _1798, mad(-0.2365107536315918f, _1795, (_1792 * 1.4514392614364624f))); - float _1804 = mad(-0.09967592358589172f, _1798, mad(1.17622971534729f, _1795, (_1792 * -0.07655377686023712f))); - float _1807 = mad(0.9977163076400757f, _1798, mad(-0.006032449658960104f, _1795, (_1792 * 0.008316148072481155f))); - float _1810 = log2(select((_1801 <= 0.0f), 9.999999747378752e-05f, _1801)); - float _1811 = _1810 * 0.3010300099849701f; - if (!(!(_1811 <= -3.848327875137329f))) { - _1870 = ((_1810 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1811 > -3.848327875137329f) && (bool)(_1811 < 0.6812411546707153f)) { - float _1822 = (_1810 + 12.783867835998535f) * 0.46521204710006714f; - int _1823 = int(_1822); - float _1825 = _1822 - float(_1823); - float _1827 = _global_2[_1823]; - float _1830 = _global_2[(_1823 + 1)]; - float _1835 = _1827 * 0.5f; - _1870 = dot(float3((_1825 * _1825), _1825, 1.0f), float3(mad((_global_2[(_1823 + 2)]), 0.5f, mad(_1830, -1.0f, _1835)), (_1830 - _1827), mad(_1830, 0.5f, _1835))); - } else { - if ((bool)(_1811 >= 0.6812411546707153f) && (bool)(_1811 < 3.653702974319458f)) { - float _1847 = (_1810 + -2.2630341053009033f) * 0.7089107632637024f; - int _1848 = int(_1847); - float _1850 = _1847 - float(_1848); - float _1852 = _global_3[_1848]; - float _1855 = _global_3[(_1848 + 1)]; - float _1860 = _1852 * 0.5f; - _1870 = dot(float3((_1850 * _1850), _1850, 1.0f), float3(mad((_global_3[(_1848 + 2)]), 0.5f, mad(_1855, -1.0f, _1860)), (_1855 - _1852), mad(_1855, 0.5f, _1860))); - } else { - _1870 = ((_1810 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1875 = log2(select((_1804 <= 0.0f), 9.999999747378752e-05f, _1804)); - float _1876 = _1875 * 0.3010300099849701f; - if (!(!(_1876 <= -3.848327875137329f))) { - _1935 = ((_1875 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1876 > -3.848327875137329f) && (bool)(_1876 < 0.6812411546707153f)) { - float _1887 = (_1875 + 12.783867835998535f) * 0.46521204710006714f; - int _1888 = int(_1887); - float _1890 = _1887 - float(_1888); - float _1892 = _global_2[_1888]; - float _1895 = _global_2[(_1888 + 1)]; - float _1900 = _1892 * 0.5f; - _1935 = dot(float3((_1890 * _1890), _1890, 1.0f), float3(mad((_global_2[(_1888 + 2)]), 0.5f, mad(_1895, -1.0f, _1900)), (_1895 - _1892), mad(_1895, 0.5f, _1900))); - } else { - if ((bool)(_1876 >= 0.6812411546707153f) && (bool)(_1876 < 3.653702974319458f)) { - float _1912 = (_1875 + -2.2630341053009033f) * 0.7089107632637024f; - int _1913 = int(_1912); - float _1915 = _1912 - float(_1913); - float _1917 = _global_3[_1913]; - float _1920 = _global_3[(_1913 + 1)]; - float _1925 = _1917 * 0.5f; - _1935 = dot(float3((_1915 * _1915), _1915, 1.0f), float3(mad((_global_3[(_1913 + 2)]), 0.5f, mad(_1920, -1.0f, _1925)), (_1920 - _1917), mad(_1920, 0.5f, _1925))); - } else { - _1935 = ((_1875 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1940 = log2(select((_1807 <= 0.0f), 9.999999747378752e-05f, _1807)); - float _1941 = _1940 * 0.3010300099849701f; - if (!(!(_1941 <= -3.848327875137329f))) { - _2000 = ((_1940 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1941 > -3.848327875137329f) && (bool)(_1941 < 0.6812411546707153f)) { - float _1952 = (_1940 + 12.783867835998535f) * 0.46521204710006714f; - int _1953 = int(_1952); - float _1955 = _1952 - float(_1953); - float _1957 = _global_2[_1953]; - float _1960 = _global_2[(_1953 + 1)]; - float _1965 = _1957 * 0.5f; - _2000 = dot(float3((_1955 * _1955), _1955, 1.0f), float3(mad((_global_2[(_1953 + 2)]), 0.5f, mad(_1960, -1.0f, _1965)), (_1960 - _1957), mad(_1960, 0.5f, _1965))); - } else { - if ((bool)(_1941 >= 0.6812411546707153f) && (bool)(_1941 < 3.653702974319458f)) { - float _1977 = (_1940 + -2.2630341053009033f) * 0.7089107632637024f; - int _1978 = int(_1977); - float _1980 = _1977 - float(_1978); - float _1982 = _global_3[_1978]; - float _1985 = _global_3[(_1978 + 1)]; - float _1990 = _1982 * 0.5f; - _2000 = dot(float3((_1980 * _1980), _1980, 1.0f), float3(mad((_global_3[(_1978 + 2)]), 0.5f, mad(_1985, -1.0f, _1990)), (_1985 - _1982), mad(_1985, 0.5f, _1990))); - } else { - _2000 = ((_1940 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2003 = exp2(_1870 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2004 = exp2(_1935 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2005 = exp2(_2000 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1428) { - _2017 = mad(_32, _2005, mad(_31, _2004, (_2003 * _30))); - _2018 = mad(_35, _2005, mad(_34, _2004, (_2003 * _33))); - _2019 = mad(_38, _2005, mad(_37, _2004, (_2003 * _36))); - } else { - _2017 = _2003; - _2018 = _2004; - _2019 = _2005; - } - float _2029 = exp2(log2(_2017 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2030 = exp2(log2(_2018 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2031 = exp2(log2(_2019 * 9.999999747378752e-05f) * 0.1593017578125f); - _2798 = exp2(log2((1.0f / ((_2029 * 18.6875f) + 1.0f)) * ((_2029 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2030 * 18.6875f) + 1.0f)) * ((_2030 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2800 = exp2(log2((1.0f / ((_2031 * 18.6875f) + 1.0f)) * ((_2031 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2064 = _1329 * 3.0f; - float _2065 = _1330 * 3.0f; - float _2068 = mad(0.17733481526374817f, _2065, mad(0.38297808170318604f, _2064, (_1328 * 1.31910240650177f))); - float _2071 = mad(0.09676162153482437f, _2065, mad(0.8134231567382812f, _2064, (_1328 * 0.2693769633769989f))); - float _2074 = mad(0.870704174041748f, _2065, mad(0.11154405772686005f, _2064, (_1328 * 0.05263196676969528f))); - float _2078 = max(max(_2068, _2071), _2074); - float _2083 = (max(_2078, 1.000000013351432e-10f) - max(min(min(_2068, _2071), _2074), 1.000000013351432e-10f)) / max(_2078, 0.009999999776482582f); - float _2096 = ((_2071 + _2068) + _2074) + (sqrt((((_2074 - _2071) * _2074) + ((_2071 - _2068) * _2071)) + ((_2068 - _2074) * _2068)) * 1.75f); - float _2097 = _2096 * 0.3333333432674408f; - float _2098 = _2083 + -0.4000000059604645f; - float _2099 = _2098 * 5.0f; - float _2103 = max((1.0f - abs(_2098 * 2.5f)), 0.0f); - float _2114 = ((float(((int)(uint)((bool)(_2099 > 0.0f))) - ((int)(uint)((bool)(_2099 < 0.0f)))) * (1.0f - (_2103 * _2103))) + 1.0f) * 0.02500000037252903f; - if (!(_2097 <= 0.0533333346247673f)) { - if (!(_2097 >= 0.1599999964237213f)) { - _2123 = (((0.23999999463558197f / _2096) + -0.5f) * _2114); - } else { - _2123 = 0.0f; - } - } else { - _2123 = _2114; - } - float _2124 = _2123 + 1.0f; - float _2125 = _2124 * _2068; - float _2126 = _2124 * _2071; - float _2127 = _2124 * _2074; - if (!((bool)(_2125 == _2126) && (bool)(_2126 == _2127))) { - float _2134 = ((_2125 * 2.0f) - _2126) - _2127; - float _2137 = ((_2071 - _2074) * 1.7320507764816284f) * _2124; - float _2139 = atan(_2137 / _2134); - bool _2142 = (_2134 < 0.0f); - bool _2143 = (_2134 == 0.0f); - bool _2144 = (_2137 >= 0.0f); - bool _2145 = (_2137 < 0.0f); - _2156 = select((_2144 && _2143), 90.0f, select((_2145 && _2143), -90.0f, (select((_2145 && _2142), (_2139 + -3.1415927410125732f), select((_2144 && _2142), (_2139 + 3.1415927410125732f), _2139)) * 57.2957763671875f))); - } else { - _2156 = 0.0f; - } - float _2161 = min(max(select((_2156 < 0.0f), (_2156 + 360.0f), _2156), 0.0f), 360.0f); - if (_2161 < -180.0f) { - _2170 = (_2161 + 360.0f); - } else { - if (_2161 > 180.0f) { - _2170 = (_2161 + -360.0f); - } else { - _2170 = _2161; - } - } - if ((bool)(_2170 > -67.5f) && (bool)(_2170 < 67.5f)) { - float _2176 = (_2170 + 67.5f) * 0.029629629105329514f; - int _2177 = int(_2176); - float _2179 = _2176 - float(_2177); - float _2180 = _2179 * _2179; - float _2181 = _2180 * _2179; - if (_2177 == 3) { - _2209 = (((0.1666666716337204f - (_2179 * 0.5f)) + (_2180 * 0.5f)) - (_2181 * 0.1666666716337204f)); - } else { - if (_2177 == 2) { - _2209 = ((0.6666666865348816f - _2180) + (_2181 * 0.5f)); - } else { - if (_2177 == 1) { - _2209 = (((_2181 * -0.5f) + 0.1666666716337204f) + ((_2180 + _2179) * 0.5f)); - } else { - _2209 = select((_2177 == 0), (_2181 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2209 = 0.0f; - } - float _2218 = min(max(((((_2083 * 0.27000001072883606f) * (0.029999999329447746f - _2125)) * _2209) + _2125), 0.0f), 65535.0f); - float _2219 = min(max(_2126, 0.0f), 65535.0f); - float _2220 = min(max(_2127, 0.0f), 65535.0f); - float _2233 = min(max(mad(-0.21492856740951538f, _2220, mad(-0.2365107536315918f, _2219, (_2218 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2234 = min(max(mad(-0.09967592358589172f, _2220, mad(1.17622971534729f, _2219, (_2218 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2235 = min(max(mad(0.9977163076400757f, _2220, mad(-0.006032449658960104f, _2219, (_2218 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2236 = dot(float3(_2233, _2234, _2235), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2243 = ((_2233 - _2236) * 0.9599999785423279f) + _2236; - float _2244 = ((_2234 - _2236) * 0.9599999785423279f) + _2236; - float _2245 = ((_2235 - _2236) * 0.9599999785423279f) + _2236; - float _2248 = log2(select((_2243 <= 0.0f), 6.103515625e-05f, _2243)); - float _2249 = _2248 * 0.3010300099849701f; - if (!(_2249 <= -5.2601776123046875f)) { - if ((bool)(_2249 > -5.2601776123046875f) && (bool)(_2249 < -0.7447274923324585f)) { - float _2257 = (_2248 * 0.19999998807907104f) + 3.494786262512207f; - int _2258 = int(_2257); - float _2260 = _2257 - float(_2258); - float _2262 = _global_0[_2258]; - float _2265 = _global_0[(_2258 + 1)]; - float _2270 = _2262 * 0.5f; - _2302 = dot(float3((_2260 * _2260), _2260, 1.0f), float3(mad((_global_0[(_2258 + 2)]), 0.5f, mad(_2265, -1.0f, _2270)), (_2265 - _2262), mad(_2265, 0.5f, _2270))); - } else { - if ((bool)(_2249 >= -0.7447274923324585f) && (bool)(_2249 < 4.673812389373779f)) { - float _2282 = (_2248 * 0.1666666567325592f) + 0.4123218357563019f; - int _2283 = int(_2282); - float _2285 = _2282 - float(_2283); - float _2287 = _global_1[_2283]; - float _2290 = _global_1[(_2283 + 1)]; - float _2295 = _2287 * 0.5f; - _2302 = dot(float3((_2285 * _2285), _2285, 1.0f), float3(mad((_global_1[(_2283 + 2)]), 0.5f, mad(_2290, -1.0f, _2295)), (_2290 - _2287), mad(_2290, 0.5f, _2295))); - } else { - _2302 = 4.0f; - } - } - } else { - _2302 = -4.0f; - } - float _2304 = exp2(_2302 * 3.321928024291992f); - float _2307 = log2(select((_2244 <= 0.0f), 6.103515625e-05f, _2244)); - float _2308 = _2307 * 0.3010300099849701f; - if (!(_2308 <= -5.2601776123046875f)) { - if ((bool)(_2308 > -5.2601776123046875f) && (bool)(_2308 < -0.7447274923324585f)) { - float _2316 = (_2307 * 0.19999998807907104f) + 3.494786262512207f; - int _2317 = int(_2316); - float _2319 = _2316 - float(_2317); - float _2321 = _global_0[_2317]; - float _2324 = _global_0[(_2317 + 1)]; - float _2329 = _2321 * 0.5f; - _2361 = dot(float3((_2319 * _2319), _2319, 1.0f), float3(mad((_global_0[(_2317 + 2)]), 0.5f, mad(_2324, -1.0f, _2329)), (_2324 - _2321), mad(_2324, 0.5f, _2329))); - } else { - if ((bool)(_2308 >= -0.7447274923324585f) && (bool)(_2308 < 4.673812389373779f)) { - float _2341 = (_2307 * 0.1666666567325592f) + 0.4123218357563019f; - int _2342 = int(_2341); - float _2344 = _2341 - float(_2342); - float _2346 = _global_1[_2342]; - float _2349 = _global_1[(_2342 + 1)]; - float _2354 = _2346 * 0.5f; - _2361 = dot(float3((_2344 * _2344), _2344, 1.0f), float3(mad((_global_1[(_2342 + 2)]), 0.5f, mad(_2349, -1.0f, _2354)), (_2349 - _2346), mad(_2349, 0.5f, _2354))); - } else { - _2361 = 4.0f; - } - } - } else { - _2361 = -4.0f; - } - float _2363 = exp2(_2361 * 3.321928024291992f); - float _2366 = log2(select((_2245 <= 0.0f), 6.103515625e-05f, _2245)); - float _2367 = _2366 * 0.3010300099849701f; - if (!(_2367 <= -5.2601776123046875f)) { - if ((bool)(_2367 > -5.2601776123046875f) && (bool)(_2367 < -0.7447274923324585f)) { - float _2375 = (_2366 * 0.19999998807907104f) + 3.494786262512207f; - int _2376 = int(_2375); - float _2378 = _2375 - float(_2376); - float _2380 = _global_0[_2376]; - float _2383 = _global_0[(_2376 + 1)]; - float _2388 = _2380 * 0.5f; - _2420 = dot(float3((_2378 * _2378), _2378, 1.0f), float3(mad((_global_0[(_2376 + 2)]), 0.5f, mad(_2383, -1.0f, _2388)), (_2383 - _2380), mad(_2383, 0.5f, _2388))); - } else { - if ((bool)(_2367 >= -0.7447274923324585f) && (bool)(_2367 < 4.673812389373779f)) { - float _2400 = (_2366 * 0.1666666567325592f) + 0.4123218357563019f; - int _2401 = int(_2400); - float _2403 = _2400 - float(_2401); - float _2405 = _global_1[_2401]; - float _2408 = _global_1[(_2401 + 1)]; - float _2413 = _2405 * 0.5f; - _2420 = dot(float3((_2403 * _2403), _2403, 1.0f), float3(mad((_global_1[(_2401 + 2)]), 0.5f, mad(_2408, -1.0f, _2413)), (_2408 - _2405), mad(_2408, 0.5f, _2413))); - } else { - _2420 = 4.0f; - } - } - } else { - _2420 = -4.0f; - } - float _2422 = exp2(_2420 * 3.321928024291992f); - float _2425 = mad(0.16386906802654266f, _2422, mad(0.14067870378494263f, _2363, (_2304 * 0.6954522132873535f))); - float _2428 = mad(0.0955343171954155f, _2422, mad(0.8596711158752441f, _2363, (_2304 * 0.044794563204050064f))); - float _2431 = mad(1.0015007257461548f, _2422, mad(0.004025210160762072f, _2363, (_2304 * -0.005525882821530104f))); - float _2434 = mad(-0.21492856740951538f, _2431, mad(-0.2365107536315918f, _2428, (_2425 * 1.4514392614364624f))); - float _2437 = mad(-0.09967592358589172f, _2431, mad(1.17622971534729f, _2428, (_2425 * -0.07655377686023712f))); - float _2440 = mad(0.9977163076400757f, _2431, mad(-0.006032449658960104f, _2428, (_2425 * 0.008316148072481155f))); - float _2443 = log2(select((_2434 <= 0.0f), 9.999999747378752e-05f, _2434)); - float _2444 = _2443 * 0.3010300099849701f; - if (!(_2444 <= -3.848327875137329f)) { - if ((bool)(_2444 > -3.848327875137329f) && (bool)(_2444 < 0.6812411546707153f)) { - float _2452 = (_2443 + 12.783867835998535f) * 0.46521204710006714f; - int _2453 = int(_2452); - float _2455 = _2452 - float(_2453); - float _2457 = _global_4[_2453]; - float _2460 = _global_4[(_2453 + 1)]; - float _2465 = _2457 * 0.5f; - _2500 = dot(float3((_2455 * _2455), _2455, 1.0f), float3(mad((_global_4[(_2453 + 2)]), 0.5f, mad(_2460, -1.0f, _2465)), (_2460 - _2457), mad(_2460, 0.5f, _2465))); - } else { - if ((bool)(_2444 >= 0.6812411546707153f) && (bool)(_2444 < 3.7613162994384766f)) { - float _2477 = (_2443 + -2.2630341053009033f) * 0.6841424107551575f; - int _2478 = int(_2477); - float _2480 = _2477 - float(_2478); - float _2482 = _global_5[_2478]; - float _2485 = _global_5[(_2478 + 1)]; - float _2490 = _2482 * 0.5f; - _2500 = dot(float3((_2480 * _2480), _2480, 1.0f), float3(mad((_global_5[(_2478 + 2)]), 0.5f, mad(_2485, -1.0f, _2490)), (_2485 - _2482), mad(_2485, 0.5f, _2490))); - } else { - _2500 = ((_2443 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2500 = -2.301030158996582f; - } - float _2502 = exp2(_2500 * 3.321928024291992f); - float _2505 = log2(select((_2437 <= 0.0f), 9.999999747378752e-05f, _2437)); - float _2506 = _2505 * 0.3010300099849701f; - if (!(_2506 <= -3.848327875137329f)) { - if ((bool)(_2506 > -3.848327875137329f) && (bool)(_2506 < 0.6812411546707153f)) { - float _2514 = (_2505 + 12.783867835998535f) * 0.46521204710006714f; - int _2515 = int(_2514); - float _2517 = _2514 - float(_2515); - float _2519 = _global_4[_2515]; - float _2522 = _global_4[(_2515 + 1)]; - float _2527 = _2519 * 0.5f; - _2562 = dot(float3((_2517 * _2517), _2517, 1.0f), float3(mad((_global_4[(_2515 + 2)]), 0.5f, mad(_2522, -1.0f, _2527)), (_2522 - _2519), mad(_2522, 0.5f, _2527))); - } else { - if ((bool)(_2506 >= 0.6812411546707153f) && (bool)(_2506 < 3.7613162994384766f)) { - float _2539 = (_2505 + -2.2630341053009033f) * 0.6841424107551575f; - int _2540 = int(_2539); - float _2542 = _2539 - float(_2540); - float _2544 = _global_5[_2540]; - float _2547 = _global_5[(_2540 + 1)]; - float _2552 = _2544 * 0.5f; - _2562 = dot(float3((_2542 * _2542), _2542, 1.0f), float3(mad((_global_5[(_2540 + 2)]), 0.5f, mad(_2547, -1.0f, _2552)), (_2547 - _2544), mad(_2547, 0.5f, _2552))); - } else { - _2562 = ((_2505 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2562 = -2.301030158996582f; - } - float _2564 = exp2(_2562 * 3.321928024291992f); - float _2567 = log2(select((_2440 <= 0.0f), 9.999999747378752e-05f, _2440)); - float _2568 = _2567 * 0.3010300099849701f; - if (!(_2568 <= -3.848327875137329f)) { - if ((bool)(_2568 > -3.848327875137329f) && (bool)(_2568 < 0.6812411546707153f)) { - float _2576 = (_2567 + 12.783867835998535f) * 0.46521204710006714f; - int _2577 = int(_2576); - float _2579 = _2576 - float(_2577); - float _2581 = _global_4[_2577]; - float _2584 = _global_4[(_2577 + 1)]; - float _2589 = _2581 * 0.5f; - _2624 = dot(float3((_2579 * _2579), _2579, 1.0f), float3(mad((_global_4[(_2577 + 2)]), 0.5f, mad(_2584, -1.0f, _2589)), (_2584 - _2581), mad(_2584, 0.5f, _2589))); - } else { - if ((bool)(_2568 >= 0.6812411546707153f) && (bool)(_2568 < 3.7613162994384766f)) { - float _2601 = (_2567 + -2.2630341053009033f) * 0.6841424107551575f; - int _2602 = int(_2601); - float _2604 = _2601 - float(_2602); - float _2606 = _global_5[_2602]; - float _2609 = _global_5[(_2602 + 1)]; - float _2614 = _2606 * 0.5f; - _2624 = dot(float3((_2604 * _2604), _2604, 1.0f), float3(mad((_global_5[(_2602 + 2)]), 0.5f, mad(_2609, -1.0f, _2614)), (_2609 - _2606), mad(_2609, 0.5f, _2614))); - } else { - _2624 = ((_2567 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2624 = -2.301030158996582f; - } - float _2626 = exp2(_2624 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _2638 = mad(_32, _2626, mad(_31, _2564, (_2502 * _30))); - _2639 = mad(_35, _2626, mad(_34, _2564, (_2502 * _33))); - _2640 = mad(_38, _2626, mad(_37, _2564, (_2502 * _36))); - } else { - _2638 = _2502; - _2639 = _2564; - _2640 = _2626; - } - float _2650 = exp2(log2(_2638 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2651 = exp2(log2(_2639 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2652 = exp2(log2(_2640 * 9.999999747378752e-05f) * 0.1593017578125f); - _2798 = exp2(log2((1.0f / ((_2650 * 18.6875f) + 1.0f)) * ((_2650 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2651 * 18.6875f) + 1.0f)) * ((_2651 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2800 = exp2(log2((1.0f / ((_2652 * 18.6875f) + 1.0f)) * ((_2652 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _2685 = mad(0.04736635088920593f, _1330, mad(0.3395121395587921f, _1329, (_1328 * 0.613191545009613f))); - float _2688 = mad(0.01345000695437193f, _1330, mad(0.9163357615470886f, _1329, (_1328 * 0.07020691782236099f))); - float _2691 = mad(0.8696067929267883f, _1330, mad(0.1095672994852066f, _1329, (_1328 * 0.020618872717022896f))); - float _2710 = exp2(log2(mad(_32, _2691, mad(_31, _2688, (_2685 * _30))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2711 = exp2(log2(mad(_35, _2691, mad(_34, _2688, (_2685 * _33))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2712 = exp2(log2(mad(_38, _2691, mad(_37, _2688, (_2685 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2798 = exp2(log2((1.0f / ((_2710 * 18.6875f) + 1.0f)) * ((_2710 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2711 * 18.6875f) + 1.0f)) * ((_2711 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2800 = exp2(log2((1.0f / ((_2712 * 18.6875f) + 1.0f)) * ((_2712 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _2747 = mad(0.04736635088920593f, _1318, mad(0.3395121395587921f, _1317, (_1316 * 0.613191545009613f))); - float _2750 = mad(0.01345000695437193f, _1318, mad(0.9163357615470886f, _1317, (_1316 * 0.07020691782236099f))); - float _2753 = mad(0.8696067929267883f, _1318, mad(0.1095672994852066f, _1317, (_1316 * 0.020618872717022896f))); - _2798 = mad(_32, _2753, mad(_31, _2750, (_2747 * _30))); - _2799 = mad(_35, _2753, mad(_34, _2750, (_2747 * _33))); - _2800 = mad(_38, _2753, mad(_37, _2750, (_2747 * _36))); - } else { - float _2766 = mad(0.04736635088920593f, _1344, mad(0.3395121395587921f, _1343, (_1342 * 0.613191545009613f))); - float _2769 = mad(0.01345000695437193f, _1344, mad(0.9163357615470886f, _1343, (_1342 * 0.07020691782236099f))); - float _2772 = mad(0.8696067929267883f, _1344, mad(0.1095672994852066f, _1343, (_1342 * 0.020618872717022896f))); - float _2787 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2798 = exp2(_2787 * log2(mad(_32, _2772, mad(_31, _2769, (_2766 * _30))))); - _2799 = exp2(_2787 * log2(mad(_35, _2772, mad(_34, _2769, (_2766 * _33))))); - _2800 = exp2(_2787 * log2(mad(_38, _2772, mad(_37, _2769, (_2766 * _36))))); - } - } else { - _2798 = _1328; - _2799 = _1329; - _2800 = _1330; - } - } - } - } - } - } - SV_Target.x = (_2798 * 0.9523810148239136f); - SV_Target.y = (_2799 * 0.9523810148239136f); - SV_Target.z = (_2800 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x6015A202.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x6015A202.ps_6_0.hlsl deleted file mode 100644 index d0e6b7725..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x6015A202.ps_6_0.hlsl +++ /dev/null @@ -1,1275 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _339; - float _340; - float _341; - float _882; - float _915; - float _929; - float _993; - float _1126; - float _1127; - float _1128; - float _1269; - float _1270; - float _1271; - float _1285; - float _1296; - float _1307; - float _1477; - float _1488; - float _1610; - float _1643; - float _1657; - float _1696; - float _1789; - float _1848; - float _1907; - float _1990; - float _2055; - float _2120; - float _2137; - float _2138; - float _2139; - float _2243; - float _2276; - float _2290; - float _2329; - float _2422; - float _2481; - float _2540; - float _2620; - float _2682; - float _2744; - float _2758; - float _2759; - float _2760; - float _2918; - float _2919; - float _2920; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _23 = (cb0_074w == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _158 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _160 = _132 - (_158 * _142); - float _162 = (_158 * _132) + _142; - float _167 = (4.0f - (_162 * 8.0f)) + (_160 * 2.0f); - float _173 = (((_160 * 3.0f) / _167) - _148) + select(_151, _148, _118); - float _174 = (((_162 * 2.0f) / _167) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _175 = max(_174, 1.000000013351432e-10f); - float _176 = _173 / _175; - float _179 = ((1.0f - _173) - _174) / _175; - float _189 = 0.9413792490959167f / mad(-0.16140000522136688f, _179, ((_176 * 0.8950999975204468f) + 0.266400009393692f)); - float _190 = 1.0404363870620728f / mad(0.03669999912381172f, _179, (1.7135000228881836f - (_176 * 0.7501999735832214f))); - float _191 = 1.089766502380371f / mad(1.0296000242233276f, _179, ((_176 * 0.03889999911189079f) + -0.06849999725818634f)); - float _192 = mad(_190, -0.7501999735832214f, 0.0f); - float _193 = mad(_190, 1.7135000228881836f, 0.0f); - float _194 = mad(_190, 0.03669999912381172f, -0.0f); - float _195 = mad(_191, 0.03889999911189079f, 0.0f); - float _196 = mad(_191, -0.06849999725818634f, 0.0f); - float _197 = mad(_191, 1.0296000242233276f, 0.0f); - float _200 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_189 * 0.883457362651825f))); - float _203 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_189 * 0.26293492317199707f))); - float _206 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_189 * -0.15930065512657166f))); - float _209 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_189 * 0.38695648312568665f))); - float _212 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_189 * 0.11516613513231277f))); - float _215 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_189 * -0.0697740763425827f))); - float _218 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_189 * -0.007634039502590895f))); - float _221 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_189 * -0.0022720457054674625f))); - float _224 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_189 * 0.0013765322510153055f))); - float _227 = mad(_206, 0.01933390088379383f, mad(_203, 0.2126729041337967f, (_200 * 0.4124563932418823f))); - float _230 = mad(_206, 0.11919199675321579f, mad(_203, 0.7151522040367126f, (_200 * 0.3575761020183563f))); - float _233 = mad(_206, 0.9503040909767151f, mad(_203, 0.07217500358819962f, (_200 * 0.18043750524520874f))); - float _236 = mad(_215, 0.01933390088379383f, mad(_212, 0.2126729041337967f, (_209 * 0.4124563932418823f))); - float _239 = mad(_215, 0.11919199675321579f, mad(_212, 0.7151522040367126f, (_209 * 0.3575761020183563f))); - float _242 = mad(_215, 0.9503040909767151f, mad(_212, 0.07217500358819962f, (_209 * 0.18043750524520874f))); - float _245 = mad(_224, 0.01933390088379383f, mad(_221, 0.2126729041337967f, (_218 * 0.4124563932418823f))); - float _248 = mad(_224, 0.11919199675321579f, mad(_221, 0.7151522040367126f, (_218 * 0.3575761020183563f))); - float _251 = mad(_224, 0.9503040909767151f, mad(_221, 0.07217500358819962f, (_218 * 0.18043750524520874f))); - float _281 = mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))) * _99))); - float _284 = mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))) * _99))); - float _287 = mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))) * _99))); - float _290 = mad(0.04736635088920593f, _287, mad(0.3395121395587921f, _284, (_281 * 0.613191545009613f))); - float _293 = mad(0.01345000695437193f, _287, mad(0.9163357615470886f, _284, (_281 * 0.07020691782236099f))); - float _296 = mad(0.8696067929267883f, _287, mad(0.1095672994852066f, _284, (_281 * 0.020618872717022896f))); - // bool _299 = (cb0_046x == 0); - bool _299 = (tm_flags.x == 0); - if (_299) { - float _301 = dot(float3(_290, _293, _296), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _305 = (_290 / _301) + -1.0f; - float _306 = (_293 / _301) + -1.0f; - float _307 = (_296 / _301) + -1.0f; - float _319 = (1.0f - exp2(((_301 * _301) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_305, _306, _307), float3(_305, _306, _307)) * -4.0f)); - _339 = (((mad(-0.06368283927440643f, _296, mad(-0.32929131388664246f, _293, (_290 * 1.370412826538086f))) - _290) * _319) + _290); - _340 = (((mad(-0.010861567221581936f, _296, mad(1.0970908403396606f, _293, (_290 * -0.08343426138162613f))) - _293) * _319) + _293); - _341 = (((mad(1.203694462776184f, _296, mad(-0.09862564504146576f, _293, (_290 * -0.02579325996339321f))) - _296) * _319) + _296); - } else { - _339 = _290; - _340 = _293; - _341 = _296; - } - float _342 = dot(float3(_339, _340, _341), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _356 = cb0_052w + cb0_057w; - float _370 = cb0_051w * cb0_056w; - float _384 = cb0_050w * cb0_055w; - float _398 = cb0_049w * cb0_054w; - float _409 = cb0_048w * cb0_053w; - float _413 = cb0_048x * (_339 - _342); - float _416 = cb0_048y * (_340 - _342); - float _419 = cb0_048z * (_341 - _342); - float _476 = saturate(_342 / cb0_073x); - float _480 = (_476 * _476) * (3.0f - (_476 * 2.0f)); - float _481 = 1.0f - _480; - float _490 = cb0_067w + cb0_052w; - float _499 = cb0_066w * cb0_051w; - float _508 = cb0_065w * cb0_050w; - float _517 = cb0_064w * cb0_049w; - float _523 = cb0_063w * cb0_048w; - float _585 = saturate((_342 - cb0_073y) / (1.0f - cb0_073y)); - float _589 = (_585 * _585) * (3.0f - (_585 * 2.0f)); - float _598 = cb0_062w + cb0_052w; - float _607 = cb0_061w * cb0_051w; - float _616 = cb0_060w * cb0_050w; - float _625 = cb0_059w * cb0_049w; - float _631 = cb0_058w * cb0_048w; - float _689 = _480 - _589; - float _700 = ((_589 * (((cb0_067x + cb0_052x) + _490) + (((cb0_066x * cb0_051x) * _499) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _517) * log2(max(0.0f, (((_413 * cb0_063x) * _523) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _508)))))) + (_481 * (((cb0_052x + cb0_057x) + _356) + (((cb0_051x * cb0_056x) * _370) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _398) * log2(max(0.0f, (((_413 * cb0_053x) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _384))))))) + ((((cb0_062x + cb0_052x) + _598) + (((cb0_061x * cb0_051x) * _607) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _625) * log2(max(0.0f, (((_413 * cb0_058x) * _631) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _616))))) * _689); - float _702 = ((_589 * (((cb0_067y + cb0_052y) + _490) + (((cb0_066y * cb0_051y) * _499) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _517) * log2(max(0.0f, (((_416 * cb0_063y) * _523) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _508)))))) + (_481 * (((cb0_052y + cb0_057y) + _356) + (((cb0_051y * cb0_056y) * _370) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _398) * log2(max(0.0f, (((_416 * cb0_053y) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _384))))))) + ((((cb0_062y + cb0_052y) + _598) + (((cb0_061y * cb0_051y) * _607) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _625) * log2(max(0.0f, (((_416 * cb0_058y) * _631) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _616))))) * _689); - float _704 = ((_589 * (((cb0_067z + cb0_052z) + _490) + (((cb0_066z * cb0_051z) * _499) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _517) * log2(max(0.0f, (((_419 * cb0_063z) * _523) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _508)))))) + (_481 * (((cb0_052z + cb0_057z) + _356) + (((cb0_051z * cb0_056z) * _370) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _398) * log2(max(0.0f, (((_419 * cb0_053z) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _384))))))) + ((((cb0_062z + cb0_052z) + _598) + (((cb0_061z * cb0_051z) * _607) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _625) * log2(max(0.0f, (((_419 * cb0_058z) * _631) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _616))))) * _689); - float _730 = dot(float3(_700, _702, _704), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _788 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_700 - _730)) + _730)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _789 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_702 - _730)) + _730)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _790 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_704 - _730)) + _730)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _793 = mad(-0.0832584798336029f, _790, mad(-0.6217905879020691f, _789, (_788 * 1.7050515413284302f))); - float _796 = mad(-0.010548528283834457f, _790, mad(1.1408027410507202f, _789, (_788 * -0.13025718927383423f))); - float _799 = mad(1.152971863746643f, _790, mad(-0.1289687603712082f, _789, (_788 * -0.024003278464078903f))); - float _815 = ((mad(0.061360642313957214f, _790, mad(-4.540197551250458e-09f, _789, (_788 * 0.9386394023895264f))) - _788) * cb0_075x) + _788; - float _816 = ((mad(0.169205904006958f, _790, mad(0.8307942152023315f, _789, (_788 * 6.775371730327606e-08f))) - _789) * cb0_075x) + _789; - float _817 = (mad(-2.3283064365386963e-10f, _789, (_788 * -9.313225746154785e-10f)) * cb0_075x) + _790; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _827 = mad(0.16386905312538147f, _817, mad(0.14067868888378143f, _816, (_815 * 0.6954522132873535f))); - float _830 = mad(0.0955343246459961f, _817, mad(0.8596711158752441f, _816, (_815 * 0.044794581830501556f))); - float _833 = mad(1.0015007257461548f, _817, mad(0.004025210160762072f, _816, (_815 * -0.005525882821530104f))); - float _837 = max(max(_827, _830), _833); - float _842 = (max(_837, 1.000000013351432e-10f) - max(min(min(_827, _830), _833), 1.000000013351432e-10f)) / max(_837, 0.009999999776482582f); - float _855 = ((_830 + _827) + _833) + (sqrt((((_833 - _830) * _833) + ((_830 - _827) * _830)) + ((_827 - _833) * _827)) * 1.75f); - float _856 = _855 * 0.3333333432674408f; - float _857 = _842 + -0.4000000059604645f; - float _858 = _857 * 5.0f; - float _862 = max((1.0f - abs(_857 * 2.5f)), 0.0f); - float _873 = ((float((int)(((int)(uint)((bool)(_858 > 0.0f))) - ((int)(uint)((bool)(_858 < 0.0f))))) * (1.0f - (_862 * _862))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_856 <= 0.0533333346247673f)) { - if (!(_856 >= 0.1599999964237213f)) { - _882 = (((0.23999999463558197f / _855) + -0.5f) * _873); - } else { - _882 = 0.0f; - } - } else { - _882 = _873; - } - float _883 = _882 + 1.0f; - float _884 = _883 * _827; - float _885 = _883 * _830; - float _886 = _883 * _833; - do { - if (!((bool)(_884 == _885) && (bool)(_885 == _886))) { - float _893 = ((_884 * 2.0f) - _885) - _886; - float _896 = ((_830 - _833) * 1.7320507764816284f) * _883; - float _898 = atan(_896 / _893); - bool _901 = (_893 < 0.0f); - bool _902 = (_893 == 0.0f); - bool _903 = (_896 >= 0.0f); - bool _904 = (_896 < 0.0f); - _915 = select((_903 && _902), 90.0f, select((_904 && _902), -90.0f, (select((_904 && _901), (_898 + -3.1415927410125732f), select((_903 && _901), (_898 + 3.1415927410125732f), _898)) * 57.2957763671875f))); - } else { - _915 = 0.0f; - } - float _920 = min(max(select((_915 < 0.0f), (_915 + 360.0f), _915), 0.0f), 360.0f); - do { - if (_920 < -180.0f) { - _929 = (_920 + 360.0f); - } else { - if (_920 > 180.0f) { - _929 = (_920 + -360.0f); - } else { - _929 = _920; - } - } - float _933 = saturate(1.0f - abs(_929 * 0.014814814552664757f)); - float _937 = (_933 * _933) * (3.0f - (_933 * 2.0f)); - float _943 = ((_937 * _937) * ((_842 * 0.18000000715255737f) * (0.029999999329447746f - _884))) + _884; - float _953 = max(0.0f, mad(-0.21492856740951538f, _886, mad(-0.2365107536315918f, _885, (_943 * 1.4514392614364624f)))); - float _954 = max(0.0f, mad(-0.09967592358589172f, _886, mad(1.17622971534729f, _885, (_943 * -0.07655377686023712f)))); - float _955 = max(0.0f, mad(0.9977163076400757f, _886, mad(-0.006032449658960104f, _885, (_943 * 0.008316148072481155f)))); - float _956 = dot(float3(_953, _954, _955), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _970 = (cb0_036w + 1.0f) - cb0_036y; - float _973 = cb0_037x + 1.0f; - float _975 = _973 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _993 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _984 = (cb0_036w + 0.18000000715255737f) / _970; - _993 = (-0.7447274923324585f - ((log2(_984 / (2.0f - _984)) * 0.3465735912322998f) * (_970 / cb0_036x))); - } - float _996 = ((1.0f - cb0_036y) / cb0_036x) - _993; - float _998 = (cb0_036z / cb0_036x) - _996; - float _1002 = log2(lerp(_956, _953, 0.9599999785423279f)) * 0.3010300099849701f; - float _1003 = log2(lerp(_956, _954, 0.9599999785423279f)) * 0.3010300099849701f; - float _1004 = log2(lerp(_956, _955, 0.9599999785423279f)) * 0.3010300099849701f; - float _1008 = (_1002 + _996) * cb0_036x; - float _1009 = (_1003 + _996) * cb0_036x; - float _1010 = (_1004 + _996) * cb0_036x; - float _1011 = _970 * 2.0f; - float _1014 = _1002 - _993; - float _1015 = _1003 - _993; - float _1016 = _1004 - _993; - float _1017 = ((cb0_036x * -2.0f) / _970) * 1.4426950216293335f; - float _1033 = _975 * 2.0f; - float _1039 = ((cb0_036x * 2.0f) / _975) * 1.4426950216293335f; - float _1058 = select((_1002 < _993), ((_1011 / (exp2(_1017 * _1014) + 1.0f)) - cb0_036w), _1008); - float _1059 = select((_1003 < _993), ((_1011 / (exp2(_1017 * _1015) + 1.0f)) - cb0_036w), _1009); - float _1060 = select((_1004 < _993), ((_1011 / (exp2(_1017 * _1016) + 1.0f)) - cb0_036w), _1010); - float _1067 = _998 - _993; - float _1071 = saturate(_1014 / _1067); - float _1072 = saturate(_1015 / _1067); - float _1073 = saturate(_1016 / _1067); - bool _1074 = (_998 < _993); - float _1078 = select(_1074, (1.0f - _1071), _1071); - float _1079 = select(_1074, (1.0f - _1072), _1072); - float _1080 = select(_1074, (1.0f - _1073), _1073); - float _1099 = (((_1078 * _1078) * (select((_1002 > _998), (_973 - (_1033 / (exp2(_1039 * (_1002 - _998)) + 1.0f))), _1008) - _1058)) * (3.0f - (_1078 * 2.0f))) + _1058; - float _1100 = (((_1079 * _1079) * (select((_1003 > _998), (_973 - (_1033 / (exp2(_1039 * (_1003 - _998)) + 1.0f))), _1009) - _1059)) * (3.0f - (_1079 * 2.0f))) + _1059; - float _1101 = (((_1080 * _1080) * (select((_1004 > _998), (_973 - (_1033 / (exp2(_1039 * (_1004 - _998)) + 1.0f))), _1010) - _1060)) * (3.0f - (_1080 * 2.0f))) + _1060; - float _1102 = dot(float3(_1099, _1100, _1101), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1126 = (((max(0.0f, (lerp(_1102, _1099, 0.9300000071525574f))) - _815) * cb0_075z) + _815); - _1127 = (((max(0.0f, (lerp(_1102, _1100, 0.9300000071525574f))) - _816) * cb0_075z) + _816); - _1128 = (((max(0.0f, (lerp(_1102, _1101, 0.9300000071525574f))) - _817) * cb0_075z) + _817); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1126 = _815; - _1127 = _816; - _1128 = _817; - } - float _1144 = ((mad(-0.06537103652954102f, _1128, mad(1.451815478503704e-06f, _1127, (_1126 * 1.065374732017517f))) - _1126) * cb0_075x) + _1126; - float _1145 = ((mad(-0.20366770029067993f, _1128, mad(1.2036634683609009f, _1127, (_1126 * -2.57161445915699e-07f))) - _1127) * cb0_075x) + _1127; - float _1146 = ((mad(0.9999996423721313f, _1128, mad(2.0954757928848267e-08f, _1127, (_1126 * 1.862645149230957e-08f))) - _1128) * cb0_075x) + _1128; - [branch] - if (!_299) { - float _1189 = 1.0f / (dot(float3(_793, _796, _799), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1199 = max(0.0f, (((_1189 * cb0_035x) + cb0_034x) * dot(float3(_793, _796, _799), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1200 = max(0.0f, (((_1189 * cb0_035y) + cb0_034y) * dot(float3(_793, _796, _799), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1201 = max(0.0f, (((_1189 * cb0_035z) + cb0_034z) * dot(float3(_793, _796, _799), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1207 = max(0.0f, (cb0_031x - _1199)); - float _1208 = max(0.0f, (cb0_031x - _1200)); - float _1209 = max(0.0f, (cb0_031x - _1201)); - float _1211 = max(_1199, cb0_031z); - float _1212 = max(_1200, cb0_031z); - float _1213 = max(_1201, cb0_031z); - float _1258 = cb0_029w + -0.0020000000949949026f; - _1269 = ((((min(max(_1199, cb0_031x), cb0_031z) * cb0_030w) + _1258) + (((cb0_032x * _1211) + cb0_032y) * (1.0f / (_1211 + cb0_031w)))) + ((_1207 * cb0_028w) * (1.0f / (cb0_031y + _1207)))); - _1270 = ((((min(max(_1200, cb0_031x), cb0_031z) * cb0_030w) + _1258) + (((cb0_032x * _1212) + cb0_032y) * (1.0f / (_1212 + cb0_031w)))) + ((_1208 * cb0_028w) * (1.0f / (_1208 + cb0_031y)))); - _1271 = ((((min(max(_1201, cb0_031x), cb0_031z) * cb0_030w) + _1258) + ((1.0f / (_1213 + cb0_031w)) * ((cb0_032x * _1213) + cb0_032y))) + ((_1209 * cb0_028w) * (1.0f / (_1209 + cb0_031y)))); - } else { - _1269 = max(0.0f, mad(-0.0832584798336029f, _1146, mad(-0.6217905879020691f, _1145, (_1144 * 1.7050515413284302f)))); - _1270 = max(0.0f, mad(-0.010548528283834457f, _1146, mad(1.1408027410507202f, _1145, (_1144 * -0.13025718927383423f)))); - _1271 = max(0.0f, mad(1.152971863746643f, _1146, mad(-0.1289687603712082f, _1145, (_1144 * -0.024003278464078903f)))); - } - float _1272 = saturate(_1269); - float _1273 = saturate(_1270); - float _1274 = saturate(_1271); - if (_1272 < 0.0031306699384003878f) { - _1285 = (_1272 * 12.920000076293945f); - } else { - _1285 = (((pow(_1272, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1273 < 0.0031306699384003878f) { - _1296 = (_1273 * 12.920000076293945f); - } else { - _1296 = (((pow(_1273, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1274 < 0.0031306699384003878f) { - _1307 = (_1274 * 12.920000076293945f); - } else { - _1307 = (((pow(_1274, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1311 = (_1296 * 0.9375f) + 0.03125f; - float _1319 = _1307 * 15.0f; - float _1320 = floor(_1319); - float _1321 = _1319 - _1320; - float _1323 = (((_1285 * 0.9375f) + 0.03125f) + _1320) * 0.0625f; - float4 _1324 = t0.Sample(s0, float2(_1323, _1311)); - float _1328 = _1323 + 0.0625f; - float4 _1329 = t0.Sample(s0, float2(_1328, _1311)); - float4 _1350 = t1.Sample(s1, float2(_1323, _1311)); - float4 _1354 = t1.Sample(s1, float2(_1328, _1311)); - float _1373 = max(6.103519990574569e-05f, ((((lerp(_1324.x, _1329.x, _1321)) * cb0_041x) + (cb0_040x * _1285)) + ((lerp(_1350.x, _1354.x, _1321)) * cb0_042x))); - float _1374 = max(6.103519990574569e-05f, ((((lerp(_1324.y, _1329.y, _1321)) * cb0_041x) + (cb0_040x * _1296)) + ((lerp(_1350.y, _1354.y, _1321)) * cb0_042x))); - float _1375 = max(6.103519990574569e-05f, ((((lerp(_1324.z, _1329.z, _1321)) * cb0_041x) + (cb0_040x * _1307)) + ((lerp(_1350.z, _1354.z, _1321)) * cb0_042x))); - float _1397 = select((_1373 > 0.040449999272823334f), exp2(log2((_1373 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1373 * 0.07739938050508499f)); - float _1398 = select((_1374 > 0.040449999272823334f), exp2(log2((_1374 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1374 * 0.07739938050508499f)); - float _1399 = select((_1375 > 0.040449999272823334f), exp2(log2((_1375 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1375 * 0.07739938050508499f)); - float _1425 = ((((cb0_026x * _1397) + cb0_026y) * _1397) + cb0_026z) * cb0_044y; - float _1426 = ((((cb0_026x * _1398) + cb0_026y) * _1398) + cb0_026z) * cb0_044z; - float _1427 = ((((cb0_026x * _1399) + cb0_026y) * _1399) + cb0_026z) * cb0_044w; - float _1434 = ((cb0_045x - _1425) * cb0_045w) + _1425; - float _1435 = ((cb0_045y - _1426) * cb0_045w) + _1426; - float _1436 = ((cb0_045z - _1427) * cb0_045w) + _1427; - float _1437 = cb0_044y * _793; - float _1438 = cb0_044z * _796; - float _1439 = cb0_044w * _799; - float _1446 = ((cb0_045x - _1437) * cb0_045w) + _1437; - float _1447 = ((cb0_045y - _1438) * cb0_045w) + _1438; - float _1448 = ((cb0_045z - _1439) * cb0_045w) + _1439; - float _1460 = exp2(log2(max(0.0f, _1434)) * cb0_027y); - float _1461 = exp2(log2(max(0.0f, _1435)) * cb0_027y); - float _1462 = exp2(log2(max(0.0f, _1436)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1460, _1461, _1462)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1460 < 0.0031306699384003878f) { - _1477 = (_1460 * 12.920000076293945f); - } else { - _1477 = (((pow(_1460, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1461 < 0.0031306699384003878f) { - _1488 = (_1461 * 12.920000076293945f); - } else { - _1488 = (((pow(_1461, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1462 < 0.0031306699384003878f) { - _2918 = _1477; - _2919 = _1488; - _2920 = (_1462 * 12.920000076293945f); - } else { - _2918 = _1477; - _2919 = _1488; - _2920 = (((pow(_1462, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1503 = mad(0.04736635088920593f, _1462, mad(0.3395121395587921f, _1461, (_1460 * 0.613191545009613f))); - float _1506 = mad(0.01345000695437193f, _1462, mad(0.9163357615470886f, _1461, (_1460 * 0.07020691782236099f))); - float _1509 = mad(0.8696067929267883f, _1462, mad(0.1095672994852066f, _1461, (_1460 * 0.020618872717022896f))); - float _1519 = max(6.103519990574569e-05f, mad(_36, _1509, mad(_35, _1506, (_1503 * _34)))); - float _1520 = max(6.103519990574569e-05f, mad(_39, _1509, mad(_38, _1506, (_1503 * _37)))); - float _1521 = max(6.103519990574569e-05f, mad(_42, _1509, mad(_41, _1506, (_1503 * _40)))); - _2918 = min((_1519 * 4.5f), ((exp2(log2(max(_1519, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2919 = min((_1520 * 4.5f), ((exp2(log2(max(_1520, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2920 = min((_1521 * 4.5f), ((exp2(log2(max(_1521, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1548 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1548) { - float _1551 = _1447 * 3.0f; - float _1552 = _1448 * 3.0f; - float _1555 = mad(0.17733481526374817f, _1552, mad(0.38297808170318604f, _1551, (_1446 * 1.31910240650177f))); - float _1558 = mad(0.09676162153482437f, _1552, mad(0.8134231567382812f, _1551, (_1446 * 0.2693769633769989f))); - float _1561 = mad(0.870704174041748f, _1552, mad(0.11154405772686005f, _1551, (_1446 * 0.05263196676969528f))); - float _1565 = max(max(_1555, _1558), _1561); - float _1570 = (max(_1565, 1.000000013351432e-10f) - max(min(min(_1555, _1558), _1561), 1.000000013351432e-10f)) / max(_1565, 0.009999999776482582f); - float _1583 = ((_1558 + _1555) + _1561) + (sqrt((((_1561 - _1558) * _1561) + ((_1558 - _1555) * _1558)) + ((_1555 - _1561) * _1555)) * 1.75f); - float _1584 = _1583 * 0.3333333432674408f; - float _1585 = _1570 + -0.4000000059604645f; - float _1586 = _1585 * 5.0f; - float _1590 = max((1.0f - abs(_1585 * 2.5f)), 0.0f); - float _1601 = ((float((int)(((int)(uint)((bool)(_1586 > 0.0f))) - ((int)(uint)((bool)(_1586 < 0.0f))))) * (1.0f - (_1590 * _1590))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1584 <= 0.0533333346247673f)) { - if (!(_1584 >= 0.1599999964237213f)) { - _1610 = (((0.23999999463558197f / _1583) + -0.5f) * _1601); - } else { - _1610 = 0.0f; - } - } else { - _1610 = _1601; - } - float _1611 = _1610 + 1.0f; - float _1612 = _1611 * _1555; - float _1613 = _1611 * _1558; - float _1614 = _1611 * _1561; - do { - if (!((bool)(_1612 == _1613) && (bool)(_1613 == _1614))) { - float _1621 = ((_1612 * 2.0f) - _1613) - _1614; - float _1624 = ((_1558 - _1561) * 1.7320507764816284f) * _1611; - float _1626 = atan(_1624 / _1621); - bool _1629 = (_1621 < 0.0f); - bool _1630 = (_1621 == 0.0f); - bool _1631 = (_1624 >= 0.0f); - bool _1632 = (_1624 < 0.0f); - _1643 = select((_1631 && _1630), 90.0f, select((_1632 && _1630), -90.0f, (select((_1632 && _1629), (_1626 + -3.1415927410125732f), select((_1631 && _1629), (_1626 + 3.1415927410125732f), _1626)) * 57.2957763671875f))); - } else { - _1643 = 0.0f; - } - float _1648 = min(max(select((_1643 < 0.0f), (_1643 + 360.0f), _1643), 0.0f), 360.0f); - do { - if (_1648 < -180.0f) { - _1657 = (_1648 + 360.0f); - } else { - if (_1648 > 180.0f) { - _1657 = (_1648 + -360.0f); - } else { - _1657 = _1648; - } - } - do { - if ((bool)(_1657 > -67.5f) && (bool)(_1657 < 67.5f)) { - float _1663 = (_1657 + 67.5f) * 0.029629629105329514f; - int _1664 = int(_1663); - float _1666 = _1663 - float((int)(_1664)); - float _1667 = _1666 * _1666; - float _1668 = _1667 * _1666; - if (_1664 == 3) { - _1696 = (((0.1666666716337204f - (_1666 * 0.5f)) + (_1667 * 0.5f)) - (_1668 * 0.1666666716337204f)); - } else { - if (_1664 == 2) { - _1696 = ((0.6666666865348816f - _1667) + (_1668 * 0.5f)); - } else { - if (_1664 == 1) { - _1696 = ((0.1666666716337204f - (_1668 * 0.5f)) + ((_1667 + _1666) * 0.5f)); - } else { - _1696 = select((_1664 == 0), (_1668 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1696 = 0.0f; - } - float _1705 = min(max(((((_1570 * 0.27000001072883606f) * (0.029999999329447746f - _1612)) * _1696) + _1612), 0.0f), 65535.0f); - float _1706 = min(max(_1613, 0.0f), 65535.0f); - float _1707 = min(max(_1614, 0.0f), 65535.0f); - float _1720 = min(max(mad(-0.21492856740951538f, _1707, mad(-0.2365107536315918f, _1706, (_1705 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1721 = min(max(mad(-0.09967592358589172f, _1707, mad(1.17622971534729f, _1706, (_1705 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1722 = min(max(mad(0.9977163076400757f, _1707, mad(-0.006032449658960104f, _1706, (_1705 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1723 = dot(float3(_1720, _1721, _1722), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1730 = ((_1720 - _1723) * 0.9599999785423279f) + _1723; - float _1731 = ((_1721 - _1723) * 0.9599999785423279f) + _1723; - float _1732 = ((_1722 - _1723) * 0.9599999785423279f) + _1723; - float _1735 = log2(select((_1730 <= 0.0f), 6.103515625e-05f, _1730)); - float _1736 = _1735 * 0.3010300099849701f; - do { - if (!(_1736 <= -5.2601776123046875f)) { - if ((bool)(_1736 > -5.2601776123046875f) && (bool)(_1736 < -0.7447274923324585f)) { - float _1744 = (_1735 * 0.19999998807907104f) + 3.494786262512207f; - int _1745 = int(_1744); - float _1747 = _1744 - float((int)(_1745)); - float _1749 = _global_0[_1745]; - float _1752 = _global_0[(_1745 + 1)]; - float _1757 = _1749 * 0.5f; - _1789 = dot(float3((_1747 * _1747), _1747, 1.0f), float3(mad((_global_0[(_1745 + 2)]), 0.5f, mad(_1752, -1.0f, _1757)), (_1752 - _1749), mad(_1752, 0.5f, _1757))); - } else { - if ((bool)(_1736 >= -0.7447274923324585f) && (bool)(_1736 < 4.673812389373779f)) { - float _1769 = (_1735 * 0.1666666567325592f) + 0.4123218357563019f; - int _1770 = int(_1769); - float _1772 = _1769 - float((int)(_1770)); - float _1774 = _global_1[_1770]; - float _1777 = _global_1[(_1770 + 1)]; - float _1782 = _1774 * 0.5f; - _1789 = dot(float3((_1772 * _1772), _1772, 1.0f), float3(mad((_global_1[(_1770 + 2)]), 0.5f, mad(_1777, -1.0f, _1782)), (_1777 - _1774), mad(_1777, 0.5f, _1782))); - } else { - _1789 = 4.0f; - } - } - } else { - _1789 = -4.0f; - } - float _1791 = exp2(_1789 * 3.321928024291992f); - float _1794 = log2(select((_1731 <= 0.0f), 6.103515625e-05f, _1731)); - float _1795 = _1794 * 0.3010300099849701f; - do { - if (!(_1795 <= -5.2601776123046875f)) { - if ((bool)(_1795 > -5.2601776123046875f) && (bool)(_1795 < -0.7447274923324585f)) { - float _1803 = (_1794 * 0.19999998807907104f) + 3.494786262512207f; - int _1804 = int(_1803); - float _1806 = _1803 - float((int)(_1804)); - float _1808 = _global_0[_1804]; - float _1811 = _global_0[(_1804 + 1)]; - float _1816 = _1808 * 0.5f; - _1848 = dot(float3((_1806 * _1806), _1806, 1.0f), float3(mad((_global_0[(_1804 + 2)]), 0.5f, mad(_1811, -1.0f, _1816)), (_1811 - _1808), mad(_1811, 0.5f, _1816))); - } else { - if ((bool)(_1795 >= -0.7447274923324585f) && (bool)(_1795 < 4.673812389373779f)) { - float _1828 = (_1794 * 0.1666666567325592f) + 0.4123218357563019f; - int _1829 = int(_1828); - float _1831 = _1828 - float((int)(_1829)); - float _1833 = _global_1[_1829]; - float _1836 = _global_1[(_1829 + 1)]; - float _1841 = _1833 * 0.5f; - _1848 = dot(float3((_1831 * _1831), _1831, 1.0f), float3(mad((_global_1[(_1829 + 2)]), 0.5f, mad(_1836, -1.0f, _1841)), (_1836 - _1833), mad(_1836, 0.5f, _1841))); - } else { - _1848 = 4.0f; - } - } - } else { - _1848 = -4.0f; - } - float _1850 = exp2(_1848 * 3.321928024291992f); - float _1853 = log2(select((_1732 <= 0.0f), 6.103515625e-05f, _1732)); - float _1854 = _1853 * 0.3010300099849701f; - do { - if (!(_1854 <= -5.2601776123046875f)) { - if ((bool)(_1854 > -5.2601776123046875f) && (bool)(_1854 < -0.7447274923324585f)) { - float _1862 = (_1853 * 0.19999998807907104f) + 3.494786262512207f; - int _1863 = int(_1862); - float _1865 = _1862 - float((int)(_1863)); - float _1867 = _global_0[_1863]; - float _1870 = _global_0[(_1863 + 1)]; - float _1875 = _1867 * 0.5f; - _1907 = dot(float3((_1865 * _1865), _1865, 1.0f), float3(mad((_global_0[(_1863 + 2)]), 0.5f, mad(_1870, -1.0f, _1875)), (_1870 - _1867), mad(_1870, 0.5f, _1875))); - } else { - if ((bool)(_1854 >= -0.7447274923324585f) && (bool)(_1854 < 4.673812389373779f)) { - float _1887 = (_1853 * 0.1666666567325592f) + 0.4123218357563019f; - int _1888 = int(_1887); - float _1890 = _1887 - float((int)(_1888)); - float _1892 = _global_1[_1888]; - float _1895 = _global_1[(_1888 + 1)]; - float _1900 = _1892 * 0.5f; - _1907 = dot(float3((_1890 * _1890), _1890, 1.0f), float3(mad((_global_1[(_1888 + 2)]), 0.5f, mad(_1895, -1.0f, _1900)), (_1895 - _1892), mad(_1895, 0.5f, _1900))); - } else { - _1907 = 4.0f; - } - } - } else { - _1907 = -4.0f; - } - float _1909 = exp2(_1907 * 3.321928024291992f); - float _1912 = mad(0.16386906802654266f, _1909, mad(0.14067870378494263f, _1850, (_1791 * 0.6954522132873535f))); - float _1915 = mad(0.0955343171954155f, _1909, mad(0.8596711158752441f, _1850, (_1791 * 0.044794563204050064f))); - float _1918 = mad(1.0015007257461548f, _1909, mad(0.004025210160762072f, _1850, (_1791 * -0.005525882821530104f))); - float _1921 = mad(-0.21492856740951538f, _1918, mad(-0.2365107536315918f, _1915, (_1912 * 1.4514392614364624f))); - float _1924 = mad(-0.09967592358589172f, _1918, mad(1.17622971534729f, _1915, (_1912 * -0.07655377686023712f))); - float _1927 = mad(0.9977163076400757f, _1918, mad(-0.006032449658960104f, _1915, (_1912 * 0.008316148072481155f))); - float _1930 = log2(select((_1921 <= 0.0f), 9.999999747378752e-05f, _1921)); - float _1931 = _1930 * 0.3010300099849701f; - do { - if (!(!(_1931 <= -3.848327875137329f))) { - _1990 = ((_1930 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1931 > -3.848327875137329f) && (bool)(_1931 < 0.6812411546707153f)) { - float _1942 = (_1930 + 12.783867835998535f) * 0.46521204710006714f; - int _1943 = int(_1942); - float _1945 = _1942 - float((int)(_1943)); - float _1947 = _global_2[_1943]; - float _1950 = _global_2[(_1943 + 1)]; - float _1955 = _1947 * 0.5f; - _1990 = dot(float3((_1945 * _1945), _1945, 1.0f), float3(mad((_global_2[(_1943 + 2)]), 0.5f, mad(_1950, -1.0f, _1955)), (_1950 - _1947), mad(_1950, 0.5f, _1955))); - } else { - if ((bool)(_1931 >= 0.6812411546707153f) && (bool)(_1931 < 3.653702974319458f)) { - float _1967 = (_1930 + -2.2630341053009033f) * 0.7089107632637024f; - int _1968 = int(_1967); - float _1970 = _1967 - float((int)(_1968)); - float _1972 = _global_3[_1968]; - float _1975 = _global_3[(_1968 + 1)]; - float _1980 = _1972 * 0.5f; - _1990 = dot(float3((_1970 * _1970), _1970, 1.0f), float3(mad((_global_3[(_1968 + 2)]), 0.5f, mad(_1975, -1.0f, _1980)), (_1975 - _1972), mad(_1975, 0.5f, _1980))); - } else { - _1990 = ((_1930 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1995 = log2(select((_1924 <= 0.0f), 9.999999747378752e-05f, _1924)); - float _1996 = _1995 * 0.3010300099849701f; - do { - if (!(!(_1996 <= -3.848327875137329f))) { - _2055 = ((_1995 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1996 > -3.848327875137329f) && (bool)(_1996 < 0.6812411546707153f)) { - float _2007 = (_1995 + 12.783867835998535f) * 0.46521204710006714f; - int _2008 = int(_2007); - float _2010 = _2007 - float((int)(_2008)); - float _2012 = _global_2[_2008]; - float _2015 = _global_2[(_2008 + 1)]; - float _2020 = _2012 * 0.5f; - _2055 = dot(float3((_2010 * _2010), _2010, 1.0f), float3(mad((_global_2[(_2008 + 2)]), 0.5f, mad(_2015, -1.0f, _2020)), (_2015 - _2012), mad(_2015, 0.5f, _2020))); - } else { - if ((bool)(_1996 >= 0.6812411546707153f) && (bool)(_1996 < 3.653702974319458f)) { - float _2032 = (_1995 + -2.2630341053009033f) * 0.7089107632637024f; - int _2033 = int(_2032); - float _2035 = _2032 - float((int)(_2033)); - float _2037 = _global_3[_2033]; - float _2040 = _global_3[(_2033 + 1)]; - float _2045 = _2037 * 0.5f; - _2055 = dot(float3((_2035 * _2035), _2035, 1.0f), float3(mad((_global_3[(_2033 + 2)]), 0.5f, mad(_2040, -1.0f, _2045)), (_2040 - _2037), mad(_2040, 0.5f, _2045))); - } else { - _2055 = ((_1995 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2060 = log2(select((_1927 <= 0.0f), 9.999999747378752e-05f, _1927)); - float _2061 = _2060 * 0.3010300099849701f; - do { - if (!(!(_2061 <= -3.848327875137329f))) { - _2120 = ((_2060 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2061 > -3.848327875137329f) && (bool)(_2061 < 0.6812411546707153f)) { - float _2072 = (_2060 + 12.783867835998535f) * 0.46521204710006714f; - int _2073 = int(_2072); - float _2075 = _2072 - float((int)(_2073)); - float _2077 = _global_2[_2073]; - float _2080 = _global_2[(_2073 + 1)]; - float _2085 = _2077 * 0.5f; - _2120 = dot(float3((_2075 * _2075), _2075, 1.0f), float3(mad((_global_2[(_2073 + 2)]), 0.5f, mad(_2080, -1.0f, _2085)), (_2080 - _2077), mad(_2080, 0.5f, _2085))); - } else { - if ((bool)(_2061 >= 0.6812411546707153f) && (bool)(_2061 < 3.653702974319458f)) { - float _2097 = (_2060 + -2.2630341053009033f) * 0.7089107632637024f; - int _2098 = int(_2097); - float _2100 = _2097 - float((int)(_2098)); - float _2102 = _global_3[_2098]; - float _2105 = _global_3[(_2098 + 1)]; - float _2110 = _2102 * 0.5f; - _2120 = dot(float3((_2100 * _2100), _2100, 1.0f), float3(mad((_global_3[(_2098 + 2)]), 0.5f, mad(_2105, -1.0f, _2110)), (_2105 - _2102), mad(_2105, 0.5f, _2110))); - } else { - _2120 = ((_2060 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2123 = exp2(_1990 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2124 = exp2(_2055 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2125 = exp2(_2120 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1548) { - _2137 = mad(_36, _2125, mad(_35, _2124, (_2123 * _34))); - _2138 = mad(_39, _2125, mad(_38, _2124, (_2123 * _37))); - _2139 = mad(_42, _2125, mad(_41, _2124, (_2123 * _40))); - } else { - _2137 = _2123; - _2138 = _2124; - _2139 = _2125; - } - float _2149 = exp2(log2(_2137 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2150 = exp2(log2(_2138 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2151 = exp2(log2(_2139 * 9.999999747378752e-05f) * 0.1593017578125f); - _2918 = exp2(log2((1.0f / ((_2149 * 18.6875f) + 1.0f)) * ((_2149 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2919 = exp2(log2((1.0f / ((_2150 * 18.6875f) + 1.0f)) * ((_2150 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2920 = exp2(log2((1.0f / ((_2151 * 18.6875f) + 1.0f)) * ((_2151 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2184 = _1447 * 3.0f; - float _2185 = _1448 * 3.0f; - float _2188 = mad(0.17733481526374817f, _2185, mad(0.38297808170318604f, _2184, (_1446 * 1.31910240650177f))); - float _2191 = mad(0.09676162153482437f, _2185, mad(0.8134231567382812f, _2184, (_1446 * 0.2693769633769989f))); - float _2194 = mad(0.870704174041748f, _2185, mad(0.11154405772686005f, _2184, (_1446 * 0.05263196676969528f))); - float _2198 = max(max(_2188, _2191), _2194); - float _2203 = (max(_2198, 1.000000013351432e-10f) - max(min(min(_2188, _2191), _2194), 1.000000013351432e-10f)) / max(_2198, 0.009999999776482582f); - float _2216 = ((_2191 + _2188) + _2194) + (sqrt((((_2194 - _2191) * _2194) + ((_2191 - _2188) * _2191)) + ((_2188 - _2194) * _2188)) * 1.75f); - float _2217 = _2216 * 0.3333333432674408f; - float _2218 = _2203 + -0.4000000059604645f; - float _2219 = _2218 * 5.0f; - float _2223 = max((1.0f - abs(_2218 * 2.5f)), 0.0f); - float _2234 = ((float((int)(((int)(uint)((bool)(_2219 > 0.0f))) - ((int)(uint)((bool)(_2219 < 0.0f))))) * (1.0f - (_2223 * _2223))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2217 <= 0.0533333346247673f)) { - if (!(_2217 >= 0.1599999964237213f)) { - _2243 = (((0.23999999463558197f / _2216) + -0.5f) * _2234); - } else { - _2243 = 0.0f; - } - } else { - _2243 = _2234; - } - float _2244 = _2243 + 1.0f; - float _2245 = _2244 * _2188; - float _2246 = _2244 * _2191; - float _2247 = _2244 * _2194; - do { - if (!((bool)(_2245 == _2246) && (bool)(_2246 == _2247))) { - float _2254 = ((_2245 * 2.0f) - _2246) - _2247; - float _2257 = ((_2191 - _2194) * 1.7320507764816284f) * _2244; - float _2259 = atan(_2257 / _2254); - bool _2262 = (_2254 < 0.0f); - bool _2263 = (_2254 == 0.0f); - bool _2264 = (_2257 >= 0.0f); - bool _2265 = (_2257 < 0.0f); - _2276 = select((_2264 && _2263), 90.0f, select((_2265 && _2263), -90.0f, (select((_2265 && _2262), (_2259 + -3.1415927410125732f), select((_2264 && _2262), (_2259 + 3.1415927410125732f), _2259)) * 57.2957763671875f))); - } else { - _2276 = 0.0f; - } - float _2281 = min(max(select((_2276 < 0.0f), (_2276 + 360.0f), _2276), 0.0f), 360.0f); - do { - if (_2281 < -180.0f) { - _2290 = (_2281 + 360.0f); - } else { - if (_2281 > 180.0f) { - _2290 = (_2281 + -360.0f); - } else { - _2290 = _2281; - } - } - do { - if ((bool)(_2290 > -67.5f) && (bool)(_2290 < 67.5f)) { - float _2296 = (_2290 + 67.5f) * 0.029629629105329514f; - int _2297 = int(_2296); - float _2299 = _2296 - float((int)(_2297)); - float _2300 = _2299 * _2299; - float _2301 = _2300 * _2299; - if (_2297 == 3) { - _2329 = (((0.1666666716337204f - (_2299 * 0.5f)) + (_2300 * 0.5f)) - (_2301 * 0.1666666716337204f)); - } else { - if (_2297 == 2) { - _2329 = ((0.6666666865348816f - _2300) + (_2301 * 0.5f)); - } else { - if (_2297 == 1) { - _2329 = ((0.1666666716337204f - (_2301 * 0.5f)) + ((_2300 + _2299) * 0.5f)); - } else { - _2329 = select((_2297 == 0), (_2301 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2329 = 0.0f; - } - float _2338 = min(max(((((_2203 * 0.27000001072883606f) * (0.029999999329447746f - _2245)) * _2329) + _2245), 0.0f), 65535.0f); - float _2339 = min(max(_2246, 0.0f), 65535.0f); - float _2340 = min(max(_2247, 0.0f), 65535.0f); - float _2353 = min(max(mad(-0.21492856740951538f, _2340, mad(-0.2365107536315918f, _2339, (_2338 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2354 = min(max(mad(-0.09967592358589172f, _2340, mad(1.17622971534729f, _2339, (_2338 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2355 = min(max(mad(0.9977163076400757f, _2340, mad(-0.006032449658960104f, _2339, (_2338 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2356 = dot(float3(_2353, _2354, _2355), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2363 = ((_2353 - _2356) * 0.9599999785423279f) + _2356; - float _2364 = ((_2354 - _2356) * 0.9599999785423279f) + _2356; - float _2365 = ((_2355 - _2356) * 0.9599999785423279f) + _2356; - float _2368 = log2(select((_2363 <= 0.0f), 6.103515625e-05f, _2363)); - float _2369 = _2368 * 0.3010300099849701f; - do { - if (!(_2369 <= -5.2601776123046875f)) { - if ((bool)(_2369 > -5.2601776123046875f) && (bool)(_2369 < -0.7447274923324585f)) { - float _2377 = (_2368 * 0.19999998807907104f) + 3.494786262512207f; - int _2378 = int(_2377); - float _2380 = _2377 - float((int)(_2378)); - float _2382 = _global_0[_2378]; - float _2385 = _global_0[(_2378 + 1)]; - float _2390 = _2382 * 0.5f; - _2422 = dot(float3((_2380 * _2380), _2380, 1.0f), float3(mad((_global_0[(_2378 + 2)]), 0.5f, mad(_2385, -1.0f, _2390)), (_2385 - _2382), mad(_2385, 0.5f, _2390))); - } else { - if ((bool)(_2369 >= -0.7447274923324585f) && (bool)(_2369 < 4.673812389373779f)) { - float _2402 = (_2368 * 0.1666666567325592f) + 0.4123218357563019f; - int _2403 = int(_2402); - float _2405 = _2402 - float((int)(_2403)); - float _2407 = _global_1[_2403]; - float _2410 = _global_1[(_2403 + 1)]; - float _2415 = _2407 * 0.5f; - _2422 = dot(float3((_2405 * _2405), _2405, 1.0f), float3(mad((_global_1[(_2403 + 2)]), 0.5f, mad(_2410, -1.0f, _2415)), (_2410 - _2407), mad(_2410, 0.5f, _2415))); - } else { - _2422 = 4.0f; - } - } - } else { - _2422 = -4.0f; - } - float _2424 = exp2(_2422 * 3.321928024291992f); - float _2427 = log2(select((_2364 <= 0.0f), 6.103515625e-05f, _2364)); - float _2428 = _2427 * 0.3010300099849701f; - do { - if (!(_2428 <= -5.2601776123046875f)) { - if ((bool)(_2428 > -5.2601776123046875f) && (bool)(_2428 < -0.7447274923324585f)) { - float _2436 = (_2427 * 0.19999998807907104f) + 3.494786262512207f; - int _2437 = int(_2436); - float _2439 = _2436 - float((int)(_2437)); - float _2441 = _global_0[_2437]; - float _2444 = _global_0[(_2437 + 1)]; - float _2449 = _2441 * 0.5f; - _2481 = dot(float3((_2439 * _2439), _2439, 1.0f), float3(mad((_global_0[(_2437 + 2)]), 0.5f, mad(_2444, -1.0f, _2449)), (_2444 - _2441), mad(_2444, 0.5f, _2449))); - } else { - if ((bool)(_2428 >= -0.7447274923324585f) && (bool)(_2428 < 4.673812389373779f)) { - float _2461 = (_2427 * 0.1666666567325592f) + 0.4123218357563019f; - int _2462 = int(_2461); - float _2464 = _2461 - float((int)(_2462)); - float _2466 = _global_1[_2462]; - float _2469 = _global_1[(_2462 + 1)]; - float _2474 = _2466 * 0.5f; - _2481 = dot(float3((_2464 * _2464), _2464, 1.0f), float3(mad((_global_1[(_2462 + 2)]), 0.5f, mad(_2469, -1.0f, _2474)), (_2469 - _2466), mad(_2469, 0.5f, _2474))); - } else { - _2481 = 4.0f; - } - } - } else { - _2481 = -4.0f; - } - float _2483 = exp2(_2481 * 3.321928024291992f); - float _2486 = log2(select((_2365 <= 0.0f), 6.103515625e-05f, _2365)); - float _2487 = _2486 * 0.3010300099849701f; - do { - if (!(_2487 <= -5.2601776123046875f)) { - if ((bool)(_2487 > -5.2601776123046875f) && (bool)(_2487 < -0.7447274923324585f)) { - float _2495 = (_2486 * 0.19999998807907104f) + 3.494786262512207f; - int _2496 = int(_2495); - float _2498 = _2495 - float((int)(_2496)); - float _2500 = _global_0[_2496]; - float _2503 = _global_0[(_2496 + 1)]; - float _2508 = _2500 * 0.5f; - _2540 = dot(float3((_2498 * _2498), _2498, 1.0f), float3(mad((_global_0[(_2496 + 2)]), 0.5f, mad(_2503, -1.0f, _2508)), (_2503 - _2500), mad(_2503, 0.5f, _2508))); - } else { - if ((bool)(_2487 >= -0.7447274923324585f) && (bool)(_2487 < 4.673812389373779f)) { - float _2520 = (_2486 * 0.1666666567325592f) + 0.4123218357563019f; - int _2521 = int(_2520); - float _2523 = _2520 - float((int)(_2521)); - float _2525 = _global_1[_2521]; - float _2528 = _global_1[(_2521 + 1)]; - float _2533 = _2525 * 0.5f; - _2540 = dot(float3((_2523 * _2523), _2523, 1.0f), float3(mad((_global_1[(_2521 + 2)]), 0.5f, mad(_2528, -1.0f, _2533)), (_2528 - _2525), mad(_2528, 0.5f, _2533))); - } else { - _2540 = 4.0f; - } - } - } else { - _2540 = -4.0f; - } - float _2542 = exp2(_2540 * 3.321928024291992f); - float _2545 = mad(0.16386906802654266f, _2542, mad(0.14067870378494263f, _2483, (_2424 * 0.6954522132873535f))); - float _2548 = mad(0.0955343171954155f, _2542, mad(0.8596711158752441f, _2483, (_2424 * 0.044794563204050064f))); - float _2551 = mad(1.0015007257461548f, _2542, mad(0.004025210160762072f, _2483, (_2424 * -0.005525882821530104f))); - float _2554 = mad(-0.21492856740951538f, _2551, mad(-0.2365107536315918f, _2548, (_2545 * 1.4514392614364624f))); - float _2557 = mad(-0.09967592358589172f, _2551, mad(1.17622971534729f, _2548, (_2545 * -0.07655377686023712f))); - float _2560 = mad(0.9977163076400757f, _2551, mad(-0.006032449658960104f, _2548, (_2545 * 0.008316148072481155f))); - float _2563 = log2(select((_2554 <= 0.0f), 9.999999747378752e-05f, _2554)); - float _2564 = _2563 * 0.3010300099849701f; - do { - if (!(_2564 <= -3.848327875137329f)) { - if ((bool)(_2564 > -3.848327875137329f) && (bool)(_2564 < 0.6812411546707153f)) { - float _2572 = (_2563 + 12.783867835998535f) * 0.46521204710006714f; - int _2573 = int(_2572); - float _2575 = _2572 - float((int)(_2573)); - float _2577 = _global_4[_2573]; - float _2580 = _global_4[(_2573 + 1)]; - float _2585 = _2577 * 0.5f; - _2620 = dot(float3((_2575 * _2575), _2575, 1.0f), float3(mad((_global_4[(_2573 + 2)]), 0.5f, mad(_2580, -1.0f, _2585)), (_2580 - _2577), mad(_2580, 0.5f, _2585))); - } else { - if ((bool)(_2564 >= 0.6812411546707153f) && (bool)(_2564 < 3.7613162994384766f)) { - float _2597 = (_2563 + -2.2630341053009033f) * 0.6841424107551575f; - int _2598 = int(_2597); - float _2600 = _2597 - float((int)(_2598)); - float _2602 = _global_5[_2598]; - float _2605 = _global_5[(_2598 + 1)]; - float _2610 = _2602 * 0.5f; - _2620 = dot(float3((_2600 * _2600), _2600, 1.0f), float3(mad((_global_5[(_2598 + 2)]), 0.5f, mad(_2605, -1.0f, _2610)), (_2605 - _2602), mad(_2605, 0.5f, _2610))); - } else { - _2620 = ((_2563 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2620 = -2.301030158996582f; - } - float _2622 = exp2(_2620 * 3.321928024291992f); - float _2625 = log2(select((_2557 <= 0.0f), 9.999999747378752e-05f, _2557)); - float _2626 = _2625 * 0.3010300099849701f; - do { - if (!(_2626 <= -3.848327875137329f)) { - if ((bool)(_2626 > -3.848327875137329f) && (bool)(_2626 < 0.6812411546707153f)) { - float _2634 = (_2625 + 12.783867835998535f) * 0.46521204710006714f; - int _2635 = int(_2634); - float _2637 = _2634 - float((int)(_2635)); - float _2639 = _global_4[_2635]; - float _2642 = _global_4[(_2635 + 1)]; - float _2647 = _2639 * 0.5f; - _2682 = dot(float3((_2637 * _2637), _2637, 1.0f), float3(mad((_global_4[(_2635 + 2)]), 0.5f, mad(_2642, -1.0f, _2647)), (_2642 - _2639), mad(_2642, 0.5f, _2647))); - } else { - if ((bool)(_2626 >= 0.6812411546707153f) && (bool)(_2626 < 3.7613162994384766f)) { - float _2659 = (_2625 + -2.2630341053009033f) * 0.6841424107551575f; - int _2660 = int(_2659); - float _2662 = _2659 - float((int)(_2660)); - float _2664 = _global_5[_2660]; - float _2667 = _global_5[(_2660 + 1)]; - float _2672 = _2664 * 0.5f; - _2682 = dot(float3((_2662 * _2662), _2662, 1.0f), float3(mad((_global_5[(_2660 + 2)]), 0.5f, mad(_2667, -1.0f, _2672)), (_2667 - _2664), mad(_2667, 0.5f, _2672))); - } else { - _2682 = ((_2625 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2682 = -2.301030158996582f; - } - float _2684 = exp2(_2682 * 3.321928024291992f); - float _2687 = log2(select((_2560 <= 0.0f), 9.999999747378752e-05f, _2560)); - float _2688 = _2687 * 0.3010300099849701f; - do { - if (!(_2688 <= -3.848327875137329f)) { - if ((bool)(_2688 > -3.848327875137329f) && (bool)(_2688 < 0.6812411546707153f)) { - float _2696 = (_2687 + 12.783867835998535f) * 0.46521204710006714f; - int _2697 = int(_2696); - float _2699 = _2696 - float((int)(_2697)); - float _2701 = _global_4[_2697]; - float _2704 = _global_4[(_2697 + 1)]; - float _2709 = _2701 * 0.5f; - _2744 = dot(float3((_2699 * _2699), _2699, 1.0f), float3(mad((_global_4[(_2697 + 2)]), 0.5f, mad(_2704, -1.0f, _2709)), (_2704 - _2701), mad(_2704, 0.5f, _2709))); - } else { - if ((bool)(_2688 >= 0.6812411546707153f) && (bool)(_2688 < 3.7613162994384766f)) { - float _2721 = (_2687 + -2.2630341053009033f) * 0.6841424107551575f; - int _2722 = int(_2721); - float _2724 = _2721 - float((int)(_2722)); - float _2726 = _global_5[_2722]; - float _2729 = _global_5[(_2722 + 1)]; - float _2734 = _2726 * 0.5f; - _2744 = dot(float3((_2724 * _2724), _2724, 1.0f), float3(mad((_global_5[(_2722 + 2)]), 0.5f, mad(_2729, -1.0f, _2734)), (_2729 - _2726), mad(_2729, 0.5f, _2734))); - } else { - _2744 = ((_2687 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2744 = -2.301030158996582f; - } - float _2746 = exp2(_2744 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _2758 = mad(_36, _2746, mad(_35, _2684, (_2622 * _34))); - _2759 = mad(_39, _2746, mad(_38, _2684, (_2622 * _37))); - _2760 = mad(_42, _2746, mad(_41, _2684, (_2622 * _40))); - } else { - _2758 = _2622; - _2759 = _2684; - _2760 = _2746; - } - float _2770 = exp2(log2(_2758 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2771 = exp2(log2(_2759 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2772 = exp2(log2(_2760 * 9.999999747378752e-05f) * 0.1593017578125f); - _2918 = exp2(log2((1.0f / ((_2770 * 18.6875f) + 1.0f)) * ((_2770 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2919 = exp2(log2((1.0f / ((_2771 * 18.6875f) + 1.0f)) * ((_2771 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2920 = exp2(log2((1.0f / ((_2772 * 18.6875f) + 1.0f)) * ((_2772 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _2805 = mad(0.04736635088920593f, _1448, mad(0.3395121395587921f, _1447, (_1446 * 0.613191545009613f))); - float _2808 = mad(0.01345000695437193f, _1448, mad(0.9163357615470886f, _1447, (_1446 * 0.07020691782236099f))); - float _2811 = mad(0.8696067929267883f, _1448, mad(0.1095672994852066f, _1447, (_1446 * 0.020618872717022896f))); - float _2830 = exp2(log2(mad(_36, _2811, mad(_35, _2808, (_2805 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2831 = exp2(log2(mad(_39, _2811, mad(_38, _2808, (_2805 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2832 = exp2(log2(mad(_42, _2811, mad(_41, _2808, (_2805 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2918 = exp2(log2((1.0f / ((_2830 * 18.6875f) + 1.0f)) * ((_2830 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2919 = exp2(log2((1.0f / ((_2831 * 18.6875f) + 1.0f)) * ((_2831 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2920 = exp2(log2((1.0f / ((_2832 * 18.6875f) + 1.0f)) * ((_2832 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _2867 = mad(0.04736635088920593f, _1436, mad(0.3395121395587921f, _1435, (_1434 * 0.613191545009613f))); - float _2870 = mad(0.01345000695437193f, _1436, mad(0.9163357615470886f, _1435, (_1434 * 0.07020691782236099f))); - float _2873 = mad(0.8696067929267883f, _1436, mad(0.1095672994852066f, _1435, (_1434 * 0.020618872717022896f))); - _2918 = mad(_36, _2873, mad(_35, _2870, (_2867 * _34))); - _2919 = mad(_39, _2873, mad(_38, _2870, (_2867 * _37))); - _2920 = mad(_42, _2873, mad(_41, _2870, (_2867 * _40))); - } else { - float _2886 = mad(0.04736635088920593f, _1462, mad(0.3395121395587921f, _1461, (_1460 * 0.613191545009613f))); - float _2889 = mad(0.01345000695437193f, _1462, mad(0.9163357615470886f, _1461, (_1460 * 0.07020691782236099f))); - float _2892 = mad(0.8696067929267883f, _1462, mad(0.1095672994852066f, _1461, (_1460 * 0.020618872717022896f))); - float _2907 = (cb0_038w * (0.4545454680919647f - cb0_027z)) + cb0_027z; - _2918 = exp2(_2907 * log2(mad(_36, _2892, mad(_35, _2889, (_2886 * _34))))); - _2919 = exp2(_2907 * log2(mad(_39, _2892, mad(_38, _2889, (_2886 * _37))))); - _2920 = exp2(_2907 * log2(mad(_42, _2892, mad(_41, _2889, (_2886 * _40))))); - } - } else { - _2918 = _1446; - _2919 = _1447; - _2920 = _1448; - } - } - } - } - } - } - SV_Target.x = (_2918 * 0.9523810148239136f); - SV_Target.y = (_2919 * 0.9523810148239136f); - SV_Target.z = (_2920 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x651A1198.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x651A1198.ps_6_0.hlsl deleted file mode 100644 index 3cbdb1f25..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x651A1198.ps_6_0.hlsl +++ /dev/null @@ -1,1579 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -Texture2D t2 : register(t2); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -SamplerState s2 : register(s2); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _11 = TEXCOORD.x + -0.015625f; - float _12 = TEXCOORD.y + -0.015625f; - float _15 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _43; - float _44; - float _101; - float _102; - float _103; - float _341; - float _342; - float _343; - float _509; - float _510; - float _532; - float _533; - float _534; - float _673; - float _674; - float _695; - float _696; - float _697; - float _837; - float _838; - float _859; - float _860; - float _861; - float _998; - float _999; - float _1020; - float _1021; - float _1022; - float _1117; - float _1150; - float _1164; - float _1228; - float _1361; - float _1362; - float _1363; - float _1504; - float _1505; - float _1506; - float _1520; - float _1531; - float _1542; - float _1743; - float _1754; - float _1876; - float _1909; - float _1923; - float _1962; - float _2055; - float _2114; - float _2173; - float _2256; - float _2321; - float _2386; - float _2403; - float _2404; - float _2405; - float _2509; - float _2542; - float _2556; - float _2595; - float _2688; - float _2747; - float _2806; - float _2886; - float _2948; - float _3010; - float _3024; - float _3025; - float _3026; - float _3182; - float _3183; - float _3184; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _25 = (cb0_074w == 4); - _36 = select(_25, 1.0f, 1.7050515413284302f); - _37 = select(_25, 0.0f, -0.6217905879020691f); - _38 = select(_25, 0.0f, -0.0832584798336029f); - _39 = select(_25, 0.0f, -0.13025718927383423f); - _40 = select(_25, 1.0f, 1.1408027410507202f); - _41 = select(_25, 0.0f, -0.010548528283834457f); - _42 = select(_25, 0.0f, -0.024003278464078903f); - _43 = select(_25, 0.0f, -0.1289687603712082f); - _44 = select(_25, 1.0f, 1.152971863746643f); - } else { - _36 = 0.6954522132873535f; - _37 = 0.14067870378494263f; - _38 = 0.16386906802654266f; - _39 = 0.044794563204050064f; - _40 = 0.8596711158752441f; - _41 = 0.0955343171954155f; - _42 = -0.005525882821530104f; - _43 = 0.004025210160762072f; - _44 = 1.0015007257461548f; - } - } else { - _36 = 1.02579927444458f; - _37 = -0.020052503794431686f; - _38 = -0.0057713985443115234f; - _39 = -0.0022350111976265907f; - _40 = 1.0045825242996216f; - _41 = -0.002352306619286537f; - _42 = -0.005014004185795784f; - _43 = -0.025293385609984398f; - _44 = 1.0304402112960815f; - } - } else { - _36 = 1.379158854484558f; - _37 = -0.3088507056236267f; - _38 = -0.07034677267074585f; - _39 = -0.06933528929948807f; - _40 = 1.0822921991348267f; - _41 = -0.012962047010660172f; - _42 = -0.002159259282052517f; - _43 = -0.045465391129255295f; - _44 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _54 = exp2(log2(_11 * 1.0322580337524414f) * 0.012683313339948654f); - float _55 = exp2(log2(_12 * 1.0322580337524414f) * 0.012683313339948654f); - float _56 = exp2(log2(_15 * 0.032258063554763794f) * 0.012683313339948654f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _102 = (exp2(log2(max(0.0f, (_55 + -0.8359375f)) / (18.8515625f - (_55 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _103 = (exp2(log2(max(0.0f, (_56 + -0.8359375f)) / (18.8515625f - (_56 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _101 = ((exp2((_11 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _102 = ((exp2((_12 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _103 = ((exp2((_15 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _106 = cb0_047x * 1.0005563497543335f; - float _120 = select((_106 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _106) + 99.11000061035156f) / _106) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _106) + 247.47999572753906f) / _106) + 0.23703999817371368f)); - float _134 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _144 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _149 = ((_134 * 2.0f) + 4.0f) - (_144 * 8.0f); - float _150 = (_134 * 3.0f) / _149; - float _152 = (_144 * 2.0f) / _149; - bool _153 = (cb0_047x < 4000.0f); - float _160 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_134, _144), float2(_134, _144))); - float _162 = _134 - (_160 * _144); - float _164 = (_160 * _134) + _144; - float _169 = (4.0f - (_164 * 8.0f)) + (_162 * 2.0f); - float _175 = (((_162 * 3.0f) / _169) - _150) + select(_153, _150, _120); - float _176 = (((_164 * 2.0f) / _169) - _152) + select(_153, _152, (((_120 * 2.869999885559082f) + -0.2750000059604645f) - ((_120 * _120) * 3.0f))); - float _177 = max(_176, 1.000000013351432e-10f); - float _178 = _175 / _177; - float _181 = ((1.0f - _175) - _176) / _177; - float _191 = 0.9413792490959167f / mad(-0.16140000522136688f, _181, ((_178 * 0.8950999975204468f) + 0.266400009393692f)); - float _192 = 1.0404363870620728f / mad(0.03669999912381172f, _181, (1.7135000228881836f - (_178 * 0.7501999735832214f))); - float _193 = 1.089766502380371f / mad(1.0296000242233276f, _181, ((_178 * 0.03889999911189079f) + -0.06849999725818634f)); - float _194 = mad(_192, -0.7501999735832214f, 0.0f); - float _195 = mad(_192, 1.7135000228881836f, 0.0f); - float _196 = mad(_192, 0.03669999912381172f, -0.0f); - float _197 = mad(_193, 0.03889999911189079f, 0.0f); - float _198 = mad(_193, -0.06849999725818634f, 0.0f); - float _199 = mad(_193, 1.0296000242233276f, 0.0f); - float _202 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_191 * 0.883457362651825f))); - float _205 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_191 * 0.26293492317199707f))); - float _208 = mad(0.1599626988172531f, _199, mad(-0.1470542997121811f, _196, (_191 * -0.15930065512657166f))); - float _211 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_191 * 0.38695648312568665f))); - float _214 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_191 * 0.11516613513231277f))); - float _217 = mad(0.04929120093584061f, _199, mad(0.5183603167533875f, _196, (_191 * -0.0697740763425827f))); - float _220 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_191 * -0.007634039502590895f))); - float _223 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_191 * -0.0022720457054674625f))); - float _226 = mad(0.9684867262840271f, _199, mad(0.04004279896616936f, _196, (_191 * 0.0013765322510153055f))); - float _229 = mad(_208, 0.01933390088379383f, mad(_205, 0.2126729041337967f, (_202 * 0.4124563932418823f))); - float _232 = mad(_208, 0.11919199675321579f, mad(_205, 0.7151522040367126f, (_202 * 0.3575761020183563f))); - float _235 = mad(_208, 0.9503040909767151f, mad(_205, 0.07217500358819962f, (_202 * 0.18043750524520874f))); - float _238 = mad(_217, 0.01933390088379383f, mad(_214, 0.2126729041337967f, (_211 * 0.4124563932418823f))); - float _241 = mad(_217, 0.11919199675321579f, mad(_214, 0.7151522040367126f, (_211 * 0.3575761020183563f))); - float _244 = mad(_217, 0.9503040909767151f, mad(_214, 0.07217500358819962f, (_211 * 0.18043750524520874f))); - float _247 = mad(_226, 0.01933390088379383f, mad(_223, 0.2126729041337967f, (_220 * 0.4124563932418823f))); - float _250 = mad(_226, 0.11919199675321579f, mad(_223, 0.7151522040367126f, (_220 * 0.3575761020183563f))); - float _253 = mad(_226, 0.9503040909767151f, mad(_223, 0.07217500358819962f, (_220 * 0.18043750524520874f))); - float _283 = mad(mad(-0.4986107647418976f, _253, mad(-1.5373831987380981f, _244, (_235 * 3.2409698963165283f))), _103, mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _102, (mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))) * _101))); - float _286 = mad(mad(0.04155505821108818f, _253, mad(1.8759675025939941f, _244, (_235 * -0.9692436456680298f))), _103, mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _102, (mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))) * _101))); - float _289 = mad(mad(1.056971549987793f, _253, mad(-0.20397695899009705f, _244, (_235 * 0.05563008040189743f))), _103, mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _102, (mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))) * _101))); - float _292 = mad(0.04736635088920593f, _289, mad(0.3395121395587921f, _286, (_283 * 0.613191545009613f))); - float _295 = mad(0.01345000695437193f, _289, mad(0.9163357615470886f, _286, (_283 * 0.07020691782236099f))); - float _298 = mad(0.8696067929267883f, _289, mad(0.1095672994852066f, _286, (_283 * 0.020618872717022896f))); - // bool _301 = (cb0_046x == 0); - bool _301 = (tm_flags.x == 0); - if (_301) { - float _303 = dot(float3(_292, _295, _298), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _307 = (_292 / _303) + -1.0f; - float _308 = (_295 / _303) + -1.0f; - float _309 = (_298 / _303) + -1.0f; - float _321 = (1.0f - exp2(((_303 * _303) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_307, _308, _309), float3(_307, _308, _309)) * -4.0f)); - _341 = (((mad(-0.06368283927440643f, _298, mad(-0.32929131388664246f, _295, (_292 * 1.370412826538086f))) - _292) * _321) + _292); - _342 = (((mad(-0.010861567221581936f, _298, mad(1.0970908403396606f, _295, (_292 * -0.08343426138162613f))) - _295) * _321) + _295); - _343 = (((mad(1.203694462776184f, _298, mad(-0.09862564504146576f, _295, (_292 * -0.02579325996339321f))) - _298) * _321) + _298); - } else { - _341 = _292; - _342 = _295; - _343 = _298; - } - float _344 = dot(float3(_341, _342, _343), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _358 = cb0_052w + cb0_057w; - float _372 = cb0_051w * cb0_056w; - float _386 = cb0_050w * cb0_055w; - float _400 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = cb0_048x * (_341 - _344); - float _418 = cb0_048y * (_342 - _344); - float _421 = cb0_048z * (_343 - _344); - float _477 = cb0_073w + 1.0f; - float _481 = saturate(_477 * (((cb0_052x + cb0_057x) + _358) + (((cb0_051x * cb0_056x) * _372) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _400) * log2(max(0.0f, (((_415 * cb0_053x) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _386)))))); - float _482 = saturate(_477 * (((cb0_052y + cb0_057y) + _358) + (((cb0_051y * cb0_056y) * _372) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _400) * log2(max(0.0f, (((_418 * cb0_053y) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _386)))))); - float _483 = saturate(_477 * (((cb0_052z + cb0_057z) + _358) + (((cb0_051z * cb0_056z) * _372) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _400) * log2(max(0.0f, (((_421 * cb0_053z) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _386)))))); - float _487 = max(_481, max(_482, _483)); - float _488 = _487 - min(_481, min(_482, _483)); - if (!(_488 == 0.0f)) { - float _491 = _488 / _487; - if (_481 == _487) { - _509 = ((_482 - _483) / _488); - _510 = _491; - } else { - if (_482 == _487) { - _509 = (((_483 - _481) / _488) + 2.0f); - _510 = _491; - } else { - if (_483 == _487) { - _509 = (((_481 - _482) / _488) + 4.0f); - _510 = _491; - } else { - _509 = 0.0f; - _510 = _491; - } - } - } - } else { - _509 = 0.0f; - _510 = 0.0f; - } - float _512 = _509 + cb0_073z; - float _513 = floor(_512); - float _514 = _512 - _513; - float _515 = 1.0f - _510; - float _517 = 1.0f - (_514 * _510); - float _520 = 1.0f - ((1.0f - _514) * _510); - if (!(_513 == 0.0f)) { - if (!(_513 == 1.0f)) { - if (!(_513 == 2.0f)) { - if (!(_513 == 3.0f)) { - if (!(_513 == 4.0f)) { - _532 = 1.0f; - _533 = _515; - _534 = _517; - } else { - _532 = _520; - _533 = _515; - _534 = 1.0f; - } - } else { - _532 = _515; - _533 = _517; - _534 = 1.0f; - } - } else { - _532 = _515; - _533 = 1.0f; - _534 = _520; - } - } else { - _532 = _517; - _533 = 1.0f; - _534 = _515; - } - } else { - _532 = 1.0f; - _533 = _520; - _534 = _515; - } - float _537 = saturate(_344 / cb0_073x); - float _541 = (_537 * _537) * (3.0f - (_537 * 2.0f)); - float _551 = cb0_067w + cb0_052w; - float _560 = cb0_066w * cb0_051w; - float _569 = cb0_065w * cb0_050w; - float _578 = cb0_064w * cb0_049w; - float _584 = cb0_063w * cb0_048w; - float _645 = saturate((((cb0_067x + cb0_052x) + _551) + (((cb0_066x * cb0_051x) * _560) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _578) * log2(max(0.0f, (((_415 * cb0_063x) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _569))))) * _477); - float _646 = saturate((((cb0_067y + cb0_052y) + _551) + (((cb0_066y * cb0_051y) * _560) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _578) * log2(max(0.0f, (((_418 * cb0_063y) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _569))))) * _477); - float _647 = saturate((((cb0_067z + cb0_052z) + _551) + (((cb0_066z * cb0_051z) * _560) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _578) * log2(max(0.0f, (((_421 * cb0_063z) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _569))))) * _477); - float _651 = max(_645, max(_646, _647)); - float _652 = _651 - min(_645, min(_646, _647)); - if (!(_652 == 0.0f)) { - float _655 = _652 / _651; - if (_645 == _651) { - _673 = ((_646 - _647) / _652); - _674 = _655; - } else { - if (_646 == _651) { - _673 = (((_647 - _645) / _652) + 2.0f); - _674 = _655; - } else { - if (_647 == _651) { - _673 = (((_645 - _646) / _652) + 4.0f); - _674 = _655; - } else { - _673 = 0.0f; - _674 = _655; - } - } - } - } else { - _673 = 0.0f; - _674 = 0.0f; - } - float _675 = _673 + cb0_073z; - float _676 = floor(_675); - float _677 = _675 - _676; - float _678 = 1.0f - _674; - float _680 = 1.0f - (_677 * _674); - float _683 = 1.0f - ((1.0f - _677) * _674); - if (!(_676 == 0.0f)) { - if (!(_676 == 1.0f)) { - if (!(_676 == 2.0f)) { - if (!(_676 == 3.0f)) { - if (!(_676 == 4.0f)) { - _695 = 1.0f; - _696 = _678; - _697 = _680; - } else { - _695 = _683; - _696 = _678; - _697 = 1.0f; - } - } else { - _695 = _678; - _696 = _680; - _697 = 1.0f; - } - } else { - _695 = _678; - _696 = 1.0f; - _697 = _683; - } - } else { - _695 = _680; - _696 = 1.0f; - _697 = _678; - } - } else { - _695 = 1.0f; - _696 = _683; - _697 = _678; - } - float _702 = saturate((_344 - cb0_073y) / (1.0f - cb0_073y)); - float _706 = (_702 * _702) * (3.0f - (_702 * 2.0f)); - float _715 = cb0_062w + cb0_052w; - float _724 = cb0_061w * cb0_051w; - float _733 = cb0_060w * cb0_050w; - float _742 = cb0_059w * cb0_049w; - float _748 = cb0_058w * cb0_048w; - float _809 = saturate((((cb0_062x + cb0_052x) + _715) + (((cb0_061x * cb0_051x) * _724) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _742) * log2(max(0.0f, (((_415 * cb0_058x) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _733))))) * _477); - float _810 = saturate((((cb0_062y + cb0_052y) + _715) + (((cb0_061y * cb0_051y) * _724) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _742) * log2(max(0.0f, (((_418 * cb0_058y) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _733))))) * _477); - float _811 = saturate((((cb0_062z + cb0_052z) + _715) + (((cb0_061z * cb0_051z) * _724) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _742) * log2(max(0.0f, (((_421 * cb0_058z) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _733))))) * _477); - float _815 = max(_809, max(_810, _811)); - float _816 = _815 - min(_809, min(_810, _811)); - if (!(_816 == 0.0f)) { - float _819 = _816 / _815; - if (_809 == _815) { - _837 = ((_810 - _811) / _816); - _838 = _819; - } else { - if (_810 == _815) { - _837 = (((_811 - _809) / _816) + 2.0f); - _838 = _819; - } else { - if (_811 == _815) { - _837 = (((_809 - _810) / _816) + 4.0f); - _838 = _819; - } else { - _837 = 0.0f; - _838 = _819; - } - } - } - } else { - _837 = 0.0f; - _838 = 0.0f; - } - float _839 = _837 + cb0_073z; - float _840 = floor(_839); - float _841 = _839 - _840; - float _842 = 1.0f - _838; - float _844 = 1.0f - (_841 * _838); - float _847 = 1.0f - ((1.0f - _841) * _838); - if (!(_840 == 0.0f)) { - if (!(_840 == 1.0f)) { - if (!(_840 == 2.0f)) { - if (!(_840 == 3.0f)) { - if (!(_840 == 4.0f)) { - _859 = 1.0f; - _860 = _842; - _861 = _844; - } else { - _859 = _847; - _860 = _842; - _861 = 1.0f; - } - } else { - _859 = _842; - _860 = _844; - _861 = 1.0f; - } - } else { - _859 = _842; - _860 = 1.0f; - _861 = _847; - } - } else { - _859 = _844; - _860 = 1.0f; - _861 = _842; - } - } else { - _859 = 1.0f; - _860 = _847; - _861 = _842; - } - float _863 = (1.0f - _541) * _487; - float _867 = _815 * (_541 - _706); - float _871 = _706 * _651; - float _876 = ((_871 * _695) + (_863 * _532)) + (_859 * _867); - float _878 = ((_871 * _696) + (_863 * _533)) + (_860 * _867); - float _880 = ((_871 * _697) + (_863 * _534)) + (_861 * _867); - float _906 = dot(float3(_876, _878, _880), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _970 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_876 - _906)) + _906)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _477); - float _971 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_878 - _906)) + _906)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _477); - float _972 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_880 - _906)) + _906)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _477); - float _976 = max(_970, max(_971, _972)); - float _977 = _976 - min(_970, min(_971, _972)); - if (!(_977 == 0.0f)) { - float _980 = _977 / _976; - if (_970 == _976) { - _998 = ((_971 - _972) / _977); - _999 = _980; - } else { - if (_971 == _976) { - _998 = (((_972 - _970) / _977) + 2.0f); - _999 = _980; - } else { - if (_972 == _976) { - _998 = (((_970 - _971) / _977) + 4.0f); - _999 = _980; - } else { - _998 = 0.0f; - _999 = _980; - } - } - } - } else { - _998 = 0.0f; - _999 = 0.0f; - } - float _1000 = _998 + cb0_073z; - float _1001 = floor(_1000); - float _1002 = _1000 - _1001; - float _1003 = 1.0f - _999; - float _1005 = 1.0f - (_1002 * _999); - float _1008 = 1.0f - ((1.0f - _1002) * _999); - if (!(_1001 == 0.0f)) { - if (!(_1001 == 1.0f)) { - if (!(_1001 == 2.0f)) { - if (!(_1001 == 3.0f)) { - if (!(_1001 == 4.0f)) { - _1020 = 1.0f; - _1021 = _1003; - _1022 = _1005; - } else { - _1020 = _1008; - _1021 = _1003; - _1022 = 1.0f; - } - } else { - _1020 = _1003; - _1021 = _1005; - _1022 = 1.0f; - } - } else { - _1020 = _1003; - _1021 = 1.0f; - _1022 = _1008; - } - } else { - _1020 = _1005; - _1021 = 1.0f; - _1022 = _1003; - } - } else { - _1020 = 1.0f; - _1021 = _1008; - _1022 = _1003; - } - float _1023 = _1020 * _976; - float _1024 = _1021 * _976; - float _1025 = _1022 * _976; - float _1028 = mad(-0.0832584798336029f, _1025, mad(-0.6217905879020691f, _1024, (_1023 * 1.7050515413284302f))); - float _1031 = mad(-0.010548528283834457f, _1025, mad(1.1408027410507202f, _1024, (_1023 * -0.13025718927383423f))); - float _1034 = mad(1.152971863746643f, _1025, mad(-0.1289687603712082f, _1024, (_1023 * -0.024003278464078903f))); - float _1050 = ((mad(0.061360642313957214f, _1025, mad(-4.540197551250458e-09f, _1024, (_1023 * 0.9386394023895264f))) - _1023) * cb0_075x) + _1023; - float _1051 = ((mad(0.169205904006958f, _1025, mad(0.8307942152023315f, _1024, (_1023 * 6.775371730327606e-08f))) - _1024) * cb0_075x) + _1024; - float _1052 = (mad(-2.3283064365386963e-10f, _1024, (_1023 * -9.313225746154785e-10f)) * cb0_075x) + _1025; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _1062 = mad(0.16386905312538147f, _1052, mad(0.14067868888378143f, _1051, (_1050 * 0.6954522132873535f))); - float _1065 = mad(0.0955343246459961f, _1052, mad(0.8596711158752441f, _1051, (_1050 * 0.044794581830501556f))); - float _1068 = mad(1.0015007257461548f, _1052, mad(0.004025210160762072f, _1051, (_1050 * -0.005525882821530104f))); - float _1072 = max(max(_1062, _1065), _1068); - float _1077 = (max(_1072, 1.000000013351432e-10f) - max(min(min(_1062, _1065), _1068), 1.000000013351432e-10f)) / max(_1072, 0.009999999776482582f); - float _1090 = ((_1065 + _1062) + _1068) + (sqrt((((_1068 - _1065) * _1068) + ((_1065 - _1062) * _1065)) + ((_1062 - _1068) * _1062)) * 1.75f); - float _1091 = _1090 * 0.3333333432674408f; - float _1092 = _1077 + -0.4000000059604645f; - float _1093 = _1092 * 5.0f; - float _1097 = max((1.0f - abs(_1092 * 2.5f)), 0.0f); - float _1108 = ((float((int)(((int)(uint)((bool)(_1093 > 0.0f))) - ((int)(uint)((bool)(_1093 < 0.0f))))) * (1.0f - (_1097 * _1097))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1091 <= 0.0533333346247673f)) { - if (!(_1091 >= 0.1599999964237213f)) { - _1117 = (((0.23999999463558197f / _1090) + -0.5f) * _1108); - } else { - _1117 = 0.0f; - } - } else { - _1117 = _1108; - } - float _1118 = _1117 + 1.0f; - float _1119 = _1118 * _1062; - float _1120 = _1118 * _1065; - float _1121 = _1118 * _1068; - do { - if (!((bool)(_1119 == _1120) && (bool)(_1120 == _1121))) { - float _1128 = ((_1119 * 2.0f) - _1120) - _1121; - float _1131 = ((_1065 - _1068) * 1.7320507764816284f) * _1118; - float _1133 = atan(_1131 / _1128); - bool _1136 = (_1128 < 0.0f); - bool _1137 = (_1128 == 0.0f); - bool _1138 = (_1131 >= 0.0f); - bool _1139 = (_1131 < 0.0f); - _1150 = select((_1138 && _1137), 90.0f, select((_1139 && _1137), -90.0f, (select((_1139 && _1136), (_1133 + -3.1415927410125732f), select((_1138 && _1136), (_1133 + 3.1415927410125732f), _1133)) * 57.2957763671875f))); - } else { - _1150 = 0.0f; - } - float _1155 = min(max(select((_1150 < 0.0f), (_1150 + 360.0f), _1150), 0.0f), 360.0f); - do { - if (_1155 < -180.0f) { - _1164 = (_1155 + 360.0f); - } else { - if (_1155 > 180.0f) { - _1164 = (_1155 + -360.0f); - } else { - _1164 = _1155; - } - } - float _1168 = saturate(1.0f - abs(_1164 * 0.014814814552664757f)); - float _1172 = (_1168 * _1168) * (3.0f - (_1168 * 2.0f)); - float _1178 = ((_1172 * _1172) * ((_1077 * 0.18000000715255737f) * (0.029999999329447746f - _1119))) + _1119; - float _1188 = max(0.0f, mad(-0.21492856740951538f, _1121, mad(-0.2365107536315918f, _1120, (_1178 * 1.4514392614364624f)))); - float _1189 = max(0.0f, mad(-0.09967592358589172f, _1121, mad(1.17622971534729f, _1120, (_1178 * -0.07655377686023712f)))); - float _1190 = max(0.0f, mad(0.9977163076400757f, _1121, mad(-0.006032449658960104f, _1120, (_1178 * 0.008316148072481155f)))); - float _1191 = dot(float3(_1188, _1189, _1190), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1205 = (cb0_036w + 1.0f) - cb0_036y; - float _1208 = cb0_037x + 1.0f; - float _1210 = _1208 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1228 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1219 = (cb0_036w + 0.18000000715255737f) / _1205; - _1228 = (-0.7447274923324585f - ((log2(_1219 / (2.0f - _1219)) * 0.3465735912322998f) * (_1205 / cb0_036x))); - } - float _1231 = ((1.0f - cb0_036y) / cb0_036x) - _1228; - float _1233 = (cb0_036z / cb0_036x) - _1231; - float _1237 = log2(lerp(_1191, _1188, 0.9599999785423279f)) * 0.3010300099849701f; - float _1238 = log2(lerp(_1191, _1189, 0.9599999785423279f)) * 0.3010300099849701f; - float _1239 = log2(lerp(_1191, _1190, 0.9599999785423279f)) * 0.3010300099849701f; - float _1243 = (_1237 + _1231) * cb0_036x; - float _1244 = (_1238 + _1231) * cb0_036x; - float _1245 = (_1239 + _1231) * cb0_036x; - float _1246 = _1205 * 2.0f; - float _1249 = _1237 - _1228; - float _1250 = _1238 - _1228; - float _1251 = _1239 - _1228; - float _1252 = ((cb0_036x * -2.0f) / _1205) * 1.4426950216293335f; - float _1268 = _1210 * 2.0f; - float _1274 = ((cb0_036x * 2.0f) / _1210) * 1.4426950216293335f; - float _1293 = select((_1237 < _1228), ((_1246 / (exp2(_1252 * _1249) + 1.0f)) - cb0_036w), _1243); - float _1294 = select((_1238 < _1228), ((_1246 / (exp2(_1252 * _1250) + 1.0f)) - cb0_036w), _1244); - float _1295 = select((_1239 < _1228), ((_1246 / (exp2(_1252 * _1251) + 1.0f)) - cb0_036w), _1245); - float _1302 = _1233 - _1228; - float _1306 = saturate(_1249 / _1302); - float _1307 = saturate(_1250 / _1302); - float _1308 = saturate(_1251 / _1302); - bool _1309 = (_1233 < _1228); - float _1313 = select(_1309, (1.0f - _1306), _1306); - float _1314 = select(_1309, (1.0f - _1307), _1307); - float _1315 = select(_1309, (1.0f - _1308), _1308); - float _1334 = (((_1313 * _1313) * (select((_1237 > _1233), (_1208 - (_1268 / (exp2(_1274 * (_1237 - _1233)) + 1.0f))), _1243) - _1293)) * (3.0f - (_1313 * 2.0f))) + _1293; - float _1335 = (((_1314 * _1314) * (select((_1238 > _1233), (_1208 - (_1268 / (exp2(_1274 * (_1238 - _1233)) + 1.0f))), _1244) - _1294)) * (3.0f - (_1314 * 2.0f))) + _1294; - float _1336 = (((_1315 * _1315) * (select((_1239 > _1233), (_1208 - (_1268 / (exp2(_1274 * (_1239 - _1233)) + 1.0f))), _1245) - _1295)) * (3.0f - (_1315 * 2.0f))) + _1295; - float _1337 = dot(float3(_1334, _1335, _1336), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1361 = (((max(0.0f, (lerp(_1337, _1334, 0.9300000071525574f))) - _1050) * cb0_075z) + _1050); - _1362 = (((max(0.0f, (lerp(_1337, _1335, 0.9300000071525574f))) - _1051) * cb0_075z) + _1051); - _1363 = (((max(0.0f, (lerp(_1337, _1336, 0.9300000071525574f))) - _1052) * cb0_075z) + _1052); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1361 = _1050; - _1362 = _1051; - _1363 = _1052; - } - float _1379 = ((mad(-0.06537103652954102f, _1363, mad(1.451815478503704e-06f, _1362, (_1361 * 1.065374732017517f))) - _1361) * cb0_075x) + _1361; - float _1380 = ((mad(-0.20366770029067993f, _1363, mad(1.2036634683609009f, _1362, (_1361 * -2.57161445915699e-07f))) - _1362) * cb0_075x) + _1362; - float _1381 = ((mad(0.9999996423721313f, _1363, mad(2.0954757928848267e-08f, _1362, (_1361 * 1.862645149230957e-08f))) - _1363) * cb0_075x) + _1363; - [branch] - if (!_301) { - float _1424 = 1.0f / (dot(float3(_1028, _1031, _1034), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1434 = max(0.0f, (((_1424 * cb0_035x) + cb0_034x) * dot(float3(_1028, _1031, _1034), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1435 = max(0.0f, (((_1424 * cb0_035y) + cb0_034y) * dot(float3(_1028, _1031, _1034), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1436 = max(0.0f, (((_1424 * cb0_035z) + cb0_034z) * dot(float3(_1028, _1031, _1034), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1442 = max(0.0f, (cb0_031x - _1434)); - float _1443 = max(0.0f, (cb0_031x - _1435)); - float _1444 = max(0.0f, (cb0_031x - _1436)); - float _1446 = max(_1434, cb0_031z); - float _1447 = max(_1435, cb0_031z); - float _1448 = max(_1436, cb0_031z); - float _1493 = cb0_029w + -0.0020000000949949026f; - _1504 = ((((min(max(_1434, cb0_031x), cb0_031z) * cb0_030w) + _1493) + (((cb0_032x * _1446) + cb0_032y) * (1.0f / (_1446 + cb0_031w)))) + ((_1442 * cb0_028w) * (1.0f / (cb0_031y + _1442)))); - _1505 = ((((min(max(_1435, cb0_031x), cb0_031z) * cb0_030w) + _1493) + (((cb0_032x * _1447) + cb0_032y) * (1.0f / (_1447 + cb0_031w)))) + ((_1443 * cb0_028w) * (1.0f / (_1443 + cb0_031y)))); - _1506 = ((((min(max(_1436, cb0_031x), cb0_031z) * cb0_030w) + _1493) + ((1.0f / (_1448 + cb0_031w)) * ((cb0_032x * _1448) + cb0_032y))) + ((_1444 * cb0_028w) * (1.0f / (_1444 + cb0_031y)))); - } else { - _1504 = max(0.0f, mad(-0.0832584798336029f, _1381, mad(-0.6217905879020691f, _1380, (_1379 * 1.7050515413284302f)))); - _1505 = max(0.0f, mad(-0.010548528283834457f, _1381, mad(1.1408027410507202f, _1380, (_1379 * -0.13025718927383423f)))); - _1506 = max(0.0f, mad(1.152971863746643f, _1381, mad(-0.1289687603712082f, _1380, (_1379 * -0.024003278464078903f)))); - } - float _1507 = saturate(_1504); - float _1508 = saturate(_1505); - float _1509 = saturate(_1506); - if (_1507 < 0.0031306699384003878f) { - _1520 = (_1507 * 12.920000076293945f); - } else { - _1520 = (((pow(_1507, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1508 < 0.0031306699384003878f) { - _1531 = (_1508 * 12.920000076293945f); - } else { - _1531 = (((pow(_1508, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1509 < 0.0031306699384003878f) { - _1542 = (_1509 * 12.920000076293945f); - } else { - _1542 = (((pow(_1509, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1546 = (_1531 * 0.9375f) + 0.03125f; - float _1554 = _1542 * 15.0f; - float _1555 = floor(_1554); - float _1556 = _1554 - _1555; - float _1558 = (((_1520 * 0.9375f) + 0.03125f) + _1555) * 0.0625f; - float4 _1559 = t1.Sample(s1, float2(_1558, _1546)); - float _1563 = _1558 + 0.0625f; - float4 _1564 = t1.Sample(s1, float2(_1563, _1546)); - float4 _1585 = t2.Sample(s2, float2(_1558, _1546)); - float4 _1589 = t2.Sample(s2, float2(_1563, _1546)); - float _1605 = (((lerp(_1559.x, _1564.x, _1556)) * cb0_041x) + (cb0_040x * _1520)) + ((lerp(_1585.x, _1589.x, _1556)) * cb0_042x); - float _1606 = (((lerp(_1559.y, _1564.y, _1556)) * cb0_041x) + (cb0_040x * _1531)) + ((lerp(_1585.y, _1589.y, _1556)) * cb0_042x); - float _1607 = (((lerp(_1559.z, _1564.z, _1556)) * cb0_041x) + (cb0_040x * _1542)) + ((lerp(_1585.z, _1589.z, _1556)) * cb0_042x); - float4 _1610 = t0.Sample(s0, float2(_1558, _1546)); - float4 _1614 = t0.Sample(s0, float2(_1563, _1546)); - float _1632 = cb0_038w * cb0_039z; - float _1639 = max(6.103519990574569e-05f, ((((_1610.x - _1605) + ((_1614.x - _1610.x) * _1556)) * _1632) + _1605)); - float _1640 = max(6.103519990574569e-05f, ((((_1610.y - _1606) + ((_1614.y - _1610.y) * _1556)) * _1632) + _1606)); - float _1641 = max(6.103519990574569e-05f, ((((_1610.z - _1607) + ((_1614.z - _1610.z) * _1556)) * _1632) + _1607)); - float _1663 = select((_1639 > 0.040449999272823334f), exp2(log2((_1639 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1639 * 0.07739938050508499f)); - float _1664 = select((_1640 > 0.040449999272823334f), exp2(log2((_1640 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1640 * 0.07739938050508499f)); - float _1665 = select((_1641 > 0.040449999272823334f), exp2(log2((_1641 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1641 * 0.07739938050508499f)); - float _1691 = ((((cb0_026x * _1663) + cb0_026y) * _1663) + cb0_026z) * cb0_044y; - float _1692 = ((((cb0_026x * _1664) + cb0_026y) * _1664) + cb0_026z) * cb0_044z; - float _1693 = ((((cb0_026x * _1665) + cb0_026y) * _1665) + cb0_026z) * cb0_044w; - float _1700 = ((cb0_045x - _1691) * cb0_045w) + _1691; - float _1701 = ((cb0_045y - _1692) * cb0_045w) + _1692; - float _1702 = ((cb0_045z - _1693) * cb0_045w) + _1693; - float _1703 = cb0_044y * _1028; - float _1704 = cb0_044z * _1031; - float _1705 = cb0_044w * _1034; - float _1712 = ((cb0_045x - _1703) * cb0_045w) + _1703; - float _1713 = ((cb0_045y - _1704) * cb0_045w) + _1704; - float _1714 = ((cb0_045z - _1705) * cb0_045w) + _1705; - float _1726 = exp2(log2(max(0.0f, _1700)) * cb0_027y); - float _1727 = exp2(log2(max(0.0f, _1701)) * cb0_027y); - float _1728 = exp2(log2(max(0.0f, _1702)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1726, _1727, _1728)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1726 < 0.0031306699384003878f) { - _1743 = (_1726 * 12.920000076293945f); - } else { - _1743 = (((pow(_1726, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1727 < 0.0031306699384003878f) { - _1754 = (_1727 * 12.920000076293945f); - } else { - _1754 = (((pow(_1727, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1728 < 0.0031306699384003878f) { - _3182 = _1743; - _3183 = _1754; - _3184 = (_1728 * 12.920000076293945f); - } else { - _3182 = _1743; - _3183 = _1754; - _3184 = (((pow(_1728, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1769 = mad(0.04736635088920593f, _1728, mad(0.3395121395587921f, _1727, (_1726 * 0.613191545009613f))); - float _1772 = mad(0.01345000695437193f, _1728, mad(0.9163357615470886f, _1727, (_1726 * 0.07020691782236099f))); - float _1775 = mad(0.8696067929267883f, _1728, mad(0.1095672994852066f, _1727, (_1726 * 0.020618872717022896f))); - float _1785 = max(6.103519990574569e-05f, mad(_38, _1775, mad(_37, _1772, (_1769 * _36)))); - float _1786 = max(6.103519990574569e-05f, mad(_41, _1775, mad(_40, _1772, (_1769 * _39)))); - float _1787 = max(6.103519990574569e-05f, mad(_44, _1775, mad(_43, _1772, (_1769 * _42)))); - _3182 = min((_1785 * 4.5f), ((exp2(log2(max(_1785, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3183 = min((_1786 * 4.5f), ((exp2(log2(max(_1786, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3184 = min((_1787 * 4.5f), ((exp2(log2(max(_1787, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1814 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1814) { - float _1817 = _1713 * 3.0f; - float _1818 = _1714 * 3.0f; - float _1821 = mad(0.17733481526374817f, _1818, mad(0.38297808170318604f, _1817, (_1712 * 1.31910240650177f))); - float _1824 = mad(0.09676162153482437f, _1818, mad(0.8134231567382812f, _1817, (_1712 * 0.2693769633769989f))); - float _1827 = mad(0.870704174041748f, _1818, mad(0.11154405772686005f, _1817, (_1712 * 0.05263196676969528f))); - float _1831 = max(max(_1821, _1824), _1827); - float _1836 = (max(_1831, 1.000000013351432e-10f) - max(min(min(_1821, _1824), _1827), 1.000000013351432e-10f)) / max(_1831, 0.009999999776482582f); - float _1849 = ((_1824 + _1821) + _1827) + (sqrt((((_1827 - _1824) * _1827) + ((_1824 - _1821) * _1824)) + ((_1821 - _1827) * _1821)) * 1.75f); - float _1850 = _1849 * 0.3333333432674408f; - float _1851 = _1836 + -0.4000000059604645f; - float _1852 = _1851 * 5.0f; - float _1856 = max((1.0f - abs(_1851 * 2.5f)), 0.0f); - float _1867 = ((float((int)(((int)(uint)((bool)(_1852 > 0.0f))) - ((int)(uint)((bool)(_1852 < 0.0f))))) * (1.0f - (_1856 * _1856))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1850 <= 0.0533333346247673f)) { - if (!(_1850 >= 0.1599999964237213f)) { - _1876 = (((0.23999999463558197f / _1849) + -0.5f) * _1867); - } else { - _1876 = 0.0f; - } - } else { - _1876 = _1867; - } - float _1877 = _1876 + 1.0f; - float _1878 = _1877 * _1821; - float _1879 = _1877 * _1824; - float _1880 = _1877 * _1827; - do { - if (!((bool)(_1878 == _1879) && (bool)(_1879 == _1880))) { - float _1887 = ((_1878 * 2.0f) - _1879) - _1880; - float _1890 = ((_1824 - _1827) * 1.7320507764816284f) * _1877; - float _1892 = atan(_1890 / _1887); - bool _1895 = (_1887 < 0.0f); - bool _1896 = (_1887 == 0.0f); - bool _1897 = (_1890 >= 0.0f); - bool _1898 = (_1890 < 0.0f); - _1909 = select((_1897 && _1896), 90.0f, select((_1898 && _1896), -90.0f, (select((_1898 && _1895), (_1892 + -3.1415927410125732f), select((_1897 && _1895), (_1892 + 3.1415927410125732f), _1892)) * 57.2957763671875f))); - } else { - _1909 = 0.0f; - } - float _1914 = min(max(select((_1909 < 0.0f), (_1909 + 360.0f), _1909), 0.0f), 360.0f); - do { - if (_1914 < -180.0f) { - _1923 = (_1914 + 360.0f); - } else { - if (_1914 > 180.0f) { - _1923 = (_1914 + -360.0f); - } else { - _1923 = _1914; - } - } - do { - if ((bool)(_1923 > -67.5f) && (bool)(_1923 < 67.5f)) { - float _1929 = (_1923 + 67.5f) * 0.029629629105329514f; - int _1930 = int(_1929); - float _1932 = _1929 - float((int)(_1930)); - float _1933 = _1932 * _1932; - float _1934 = _1933 * _1932; - if (_1930 == 3) { - _1962 = (((0.1666666716337204f - (_1932 * 0.5f)) + (_1933 * 0.5f)) - (_1934 * 0.1666666716337204f)); - } else { - if (_1930 == 2) { - _1962 = ((0.6666666865348816f - _1933) + (_1934 * 0.5f)); - } else { - if (_1930 == 1) { - _1962 = ((0.1666666716337204f - (_1934 * 0.5f)) + ((_1933 + _1932) * 0.5f)); - } else { - _1962 = select((_1930 == 0), (_1934 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1962 = 0.0f; - } - float _1971 = min(max(((((_1836 * 0.27000001072883606f) * (0.029999999329447746f - _1878)) * _1962) + _1878), 0.0f), 65535.0f); - float _1972 = min(max(_1879, 0.0f), 65535.0f); - float _1973 = min(max(_1880, 0.0f), 65535.0f); - float _1986 = min(max(mad(-0.21492856740951538f, _1973, mad(-0.2365107536315918f, _1972, (_1971 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1987 = min(max(mad(-0.09967592358589172f, _1973, mad(1.17622971534729f, _1972, (_1971 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1988 = min(max(mad(0.9977163076400757f, _1973, mad(-0.006032449658960104f, _1972, (_1971 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1989 = dot(float3(_1986, _1987, _1988), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1996 = ((_1986 - _1989) * 0.9599999785423279f) + _1989; - float _1997 = ((_1987 - _1989) * 0.9599999785423279f) + _1989; - float _1998 = ((_1988 - _1989) * 0.9599999785423279f) + _1989; - float _2001 = log2(select((_1996 <= 0.0f), 6.103515625e-05f, _1996)); - float _2002 = _2001 * 0.3010300099849701f; - do { - if (!(_2002 <= -5.2601776123046875f)) { - if ((bool)(_2002 > -5.2601776123046875f) && (bool)(_2002 < -0.7447274923324585f)) { - float _2010 = (_2001 * 0.19999998807907104f) + 3.494786262512207f; - int _2011 = int(_2010); - float _2013 = _2010 - float((int)(_2011)); - float _2015 = _global_0[_2011]; - float _2018 = _global_0[(_2011 + 1)]; - float _2023 = _2015 * 0.5f; - _2055 = dot(float3((_2013 * _2013), _2013, 1.0f), float3(mad((_global_0[(_2011 + 2)]), 0.5f, mad(_2018, -1.0f, _2023)), (_2018 - _2015), mad(_2018, 0.5f, _2023))); - } else { - if ((bool)(_2002 >= -0.7447274923324585f) && (bool)(_2002 < 4.673812389373779f)) { - float _2035 = (_2001 * 0.1666666567325592f) + 0.4123218357563019f; - int _2036 = int(_2035); - float _2038 = _2035 - float((int)(_2036)); - float _2040 = _global_1[_2036]; - float _2043 = _global_1[(_2036 + 1)]; - float _2048 = _2040 * 0.5f; - _2055 = dot(float3((_2038 * _2038), _2038, 1.0f), float3(mad((_global_1[(_2036 + 2)]), 0.5f, mad(_2043, -1.0f, _2048)), (_2043 - _2040), mad(_2043, 0.5f, _2048))); - } else { - _2055 = 4.0f; - } - } - } else { - _2055 = -4.0f; - } - float _2057 = exp2(_2055 * 3.321928024291992f); - float _2060 = log2(select((_1997 <= 0.0f), 6.103515625e-05f, _1997)); - float _2061 = _2060 * 0.3010300099849701f; - do { - if (!(_2061 <= -5.2601776123046875f)) { - if ((bool)(_2061 > -5.2601776123046875f) && (bool)(_2061 < -0.7447274923324585f)) { - float _2069 = (_2060 * 0.19999998807907104f) + 3.494786262512207f; - int _2070 = int(_2069); - float _2072 = _2069 - float((int)(_2070)); - float _2074 = _global_0[_2070]; - float _2077 = _global_0[(_2070 + 1)]; - float _2082 = _2074 * 0.5f; - _2114 = dot(float3((_2072 * _2072), _2072, 1.0f), float3(mad((_global_0[(_2070 + 2)]), 0.5f, mad(_2077, -1.0f, _2082)), (_2077 - _2074), mad(_2077, 0.5f, _2082))); - } else { - if ((bool)(_2061 >= -0.7447274923324585f) && (bool)(_2061 < 4.673812389373779f)) { - float _2094 = (_2060 * 0.1666666567325592f) + 0.4123218357563019f; - int _2095 = int(_2094); - float _2097 = _2094 - float((int)(_2095)); - float _2099 = _global_1[_2095]; - float _2102 = _global_1[(_2095 + 1)]; - float _2107 = _2099 * 0.5f; - _2114 = dot(float3((_2097 * _2097), _2097, 1.0f), float3(mad((_global_1[(_2095 + 2)]), 0.5f, mad(_2102, -1.0f, _2107)), (_2102 - _2099), mad(_2102, 0.5f, _2107))); - } else { - _2114 = 4.0f; - } - } - } else { - _2114 = -4.0f; - } - float _2116 = exp2(_2114 * 3.321928024291992f); - float _2119 = log2(select((_1998 <= 0.0f), 6.103515625e-05f, _1998)); - float _2120 = _2119 * 0.3010300099849701f; - do { - if (!(_2120 <= -5.2601776123046875f)) { - if ((bool)(_2120 > -5.2601776123046875f) && (bool)(_2120 < -0.7447274923324585f)) { - float _2128 = (_2119 * 0.19999998807907104f) + 3.494786262512207f; - int _2129 = int(_2128); - float _2131 = _2128 - float((int)(_2129)); - float _2133 = _global_0[_2129]; - float _2136 = _global_0[(_2129 + 1)]; - float _2141 = _2133 * 0.5f; - _2173 = dot(float3((_2131 * _2131), _2131, 1.0f), float3(mad((_global_0[(_2129 + 2)]), 0.5f, mad(_2136, -1.0f, _2141)), (_2136 - _2133), mad(_2136, 0.5f, _2141))); - } else { - if ((bool)(_2120 >= -0.7447274923324585f) && (bool)(_2120 < 4.673812389373779f)) { - float _2153 = (_2119 * 0.1666666567325592f) + 0.4123218357563019f; - int _2154 = int(_2153); - float _2156 = _2153 - float((int)(_2154)); - float _2158 = _global_1[_2154]; - float _2161 = _global_1[(_2154 + 1)]; - float _2166 = _2158 * 0.5f; - _2173 = dot(float3((_2156 * _2156), _2156, 1.0f), float3(mad((_global_1[(_2154 + 2)]), 0.5f, mad(_2161, -1.0f, _2166)), (_2161 - _2158), mad(_2161, 0.5f, _2166))); - } else { - _2173 = 4.0f; - } - } - } else { - _2173 = -4.0f; - } - float _2175 = exp2(_2173 * 3.321928024291992f); - float _2178 = mad(0.16386906802654266f, _2175, mad(0.14067870378494263f, _2116, (_2057 * 0.6954522132873535f))); - float _2181 = mad(0.0955343171954155f, _2175, mad(0.8596711158752441f, _2116, (_2057 * 0.044794563204050064f))); - float _2184 = mad(1.0015007257461548f, _2175, mad(0.004025210160762072f, _2116, (_2057 * -0.005525882821530104f))); - float _2187 = mad(-0.21492856740951538f, _2184, mad(-0.2365107536315918f, _2181, (_2178 * 1.4514392614364624f))); - float _2190 = mad(-0.09967592358589172f, _2184, mad(1.17622971534729f, _2181, (_2178 * -0.07655377686023712f))); - float _2193 = mad(0.9977163076400757f, _2184, mad(-0.006032449658960104f, _2181, (_2178 * 0.008316148072481155f))); - float _2196 = log2(select((_2187 <= 0.0f), 9.999999747378752e-05f, _2187)); - float _2197 = _2196 * 0.3010300099849701f; - do { - if (!(!(_2197 <= -3.848327875137329f))) { - _2256 = ((_2196 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2197 > -3.848327875137329f) && (bool)(_2197 < 0.6812411546707153f)) { - float _2208 = (_2196 + 12.783867835998535f) * 0.46521204710006714f; - int _2209 = int(_2208); - float _2211 = _2208 - float((int)(_2209)); - float _2213 = _global_2[_2209]; - float _2216 = _global_2[(_2209 + 1)]; - float _2221 = _2213 * 0.5f; - _2256 = dot(float3((_2211 * _2211), _2211, 1.0f), float3(mad((_global_2[(_2209 + 2)]), 0.5f, mad(_2216, -1.0f, _2221)), (_2216 - _2213), mad(_2216, 0.5f, _2221))); - } else { - if ((bool)(_2197 >= 0.6812411546707153f) && (bool)(_2197 < 3.653702974319458f)) { - float _2233 = (_2196 + -2.2630341053009033f) * 0.7089107632637024f; - int _2234 = int(_2233); - float _2236 = _2233 - float((int)(_2234)); - float _2238 = _global_3[_2234]; - float _2241 = _global_3[(_2234 + 1)]; - float _2246 = _2238 * 0.5f; - _2256 = dot(float3((_2236 * _2236), _2236, 1.0f), float3(mad((_global_3[(_2234 + 2)]), 0.5f, mad(_2241, -1.0f, _2246)), (_2241 - _2238), mad(_2241, 0.5f, _2246))); - } else { - _2256 = ((_2196 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2261 = log2(select((_2190 <= 0.0f), 9.999999747378752e-05f, _2190)); - float _2262 = _2261 * 0.3010300099849701f; - do { - if (!(!(_2262 <= -3.848327875137329f))) { - _2321 = ((_2261 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2262 > -3.848327875137329f) && (bool)(_2262 < 0.6812411546707153f)) { - float _2273 = (_2261 + 12.783867835998535f) * 0.46521204710006714f; - int _2274 = int(_2273); - float _2276 = _2273 - float((int)(_2274)); - float _2278 = _global_2[_2274]; - float _2281 = _global_2[(_2274 + 1)]; - float _2286 = _2278 * 0.5f; - _2321 = dot(float3((_2276 * _2276), _2276, 1.0f), float3(mad((_global_2[(_2274 + 2)]), 0.5f, mad(_2281, -1.0f, _2286)), (_2281 - _2278), mad(_2281, 0.5f, _2286))); - } else { - if ((bool)(_2262 >= 0.6812411546707153f) && (bool)(_2262 < 3.653702974319458f)) { - float _2298 = (_2261 + -2.2630341053009033f) * 0.7089107632637024f; - int _2299 = int(_2298); - float _2301 = _2298 - float((int)(_2299)); - float _2303 = _global_3[_2299]; - float _2306 = _global_3[(_2299 + 1)]; - float _2311 = _2303 * 0.5f; - _2321 = dot(float3((_2301 * _2301), _2301, 1.0f), float3(mad((_global_3[(_2299 + 2)]), 0.5f, mad(_2306, -1.0f, _2311)), (_2306 - _2303), mad(_2306, 0.5f, _2311))); - } else { - _2321 = ((_2261 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2326 = log2(select((_2193 <= 0.0f), 9.999999747378752e-05f, _2193)); - float _2327 = _2326 * 0.3010300099849701f; - do { - if (!(!(_2327 <= -3.848327875137329f))) { - _2386 = ((_2326 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2327 > -3.848327875137329f) && (bool)(_2327 < 0.6812411546707153f)) { - float _2338 = (_2326 + 12.783867835998535f) * 0.46521204710006714f; - int _2339 = int(_2338); - float _2341 = _2338 - float((int)(_2339)); - float _2343 = _global_2[_2339]; - float _2346 = _global_2[(_2339 + 1)]; - float _2351 = _2343 * 0.5f; - _2386 = dot(float3((_2341 * _2341), _2341, 1.0f), float3(mad((_global_2[(_2339 + 2)]), 0.5f, mad(_2346, -1.0f, _2351)), (_2346 - _2343), mad(_2346, 0.5f, _2351))); - } else { - if ((bool)(_2327 >= 0.6812411546707153f) && (bool)(_2327 < 3.653702974319458f)) { - float _2363 = (_2326 + -2.2630341053009033f) * 0.7089107632637024f; - int _2364 = int(_2363); - float _2366 = _2363 - float((int)(_2364)); - float _2368 = _global_3[_2364]; - float _2371 = _global_3[(_2364 + 1)]; - float _2376 = _2368 * 0.5f; - _2386 = dot(float3((_2366 * _2366), _2366, 1.0f), float3(mad((_global_3[(_2364 + 2)]), 0.5f, mad(_2371, -1.0f, _2376)), (_2371 - _2368), mad(_2371, 0.5f, _2376))); - } else { - _2386 = ((_2326 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2389 = exp2(_2256 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2390 = exp2(_2321 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2391 = exp2(_2386 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1814) { - _2403 = mad(_38, _2391, mad(_37, _2390, (_2389 * _36))); - _2404 = mad(_41, _2391, mad(_40, _2390, (_2389 * _39))); - _2405 = mad(_44, _2391, mad(_43, _2390, (_2389 * _42))); - } else { - _2403 = _2389; - _2404 = _2390; - _2405 = _2391; - } - float _2415 = exp2(log2(_2403 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2416 = exp2(log2(_2404 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2417 = exp2(log2(_2405 * 9.999999747378752e-05f) * 0.1593017578125f); - _3182 = exp2(log2((1.0f / ((_2415 * 18.6875f) + 1.0f)) * ((_2415 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3183 = exp2(log2((1.0f / ((_2416 * 18.6875f) + 1.0f)) * ((_2416 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3184 = exp2(log2((1.0f / ((_2417 * 18.6875f) + 1.0f)) * ((_2417 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2450 = _1713 * 3.0f; - float _2451 = _1714 * 3.0f; - float _2454 = mad(0.17733481526374817f, _2451, mad(0.38297808170318604f, _2450, (_1712 * 1.31910240650177f))); - float _2457 = mad(0.09676162153482437f, _2451, mad(0.8134231567382812f, _2450, (_1712 * 0.2693769633769989f))); - float _2460 = mad(0.870704174041748f, _2451, mad(0.11154405772686005f, _2450, (_1712 * 0.05263196676969528f))); - float _2464 = max(max(_2454, _2457), _2460); - float _2469 = (max(_2464, 1.000000013351432e-10f) - max(min(min(_2454, _2457), _2460), 1.000000013351432e-10f)) / max(_2464, 0.009999999776482582f); - float _2482 = ((_2457 + _2454) + _2460) + (sqrt((((_2460 - _2457) * _2460) + ((_2457 - _2454) * _2457)) + ((_2454 - _2460) * _2454)) * 1.75f); - float _2483 = _2482 * 0.3333333432674408f; - float _2484 = _2469 + -0.4000000059604645f; - float _2485 = _2484 * 5.0f; - float _2489 = max((1.0f - abs(_2484 * 2.5f)), 0.0f); - float _2500 = ((float((int)(((int)(uint)((bool)(_2485 > 0.0f))) - ((int)(uint)((bool)(_2485 < 0.0f))))) * (1.0f - (_2489 * _2489))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2483 <= 0.0533333346247673f)) { - if (!(_2483 >= 0.1599999964237213f)) { - _2509 = (((0.23999999463558197f / _2482) + -0.5f) * _2500); - } else { - _2509 = 0.0f; - } - } else { - _2509 = _2500; - } - float _2510 = _2509 + 1.0f; - float _2511 = _2510 * _2454; - float _2512 = _2510 * _2457; - float _2513 = _2510 * _2460; - do { - if (!((bool)(_2511 == _2512) && (bool)(_2512 == _2513))) { - float _2520 = ((_2511 * 2.0f) - _2512) - _2513; - float _2523 = ((_2457 - _2460) * 1.7320507764816284f) * _2510; - float _2525 = atan(_2523 / _2520); - bool _2528 = (_2520 < 0.0f); - bool _2529 = (_2520 == 0.0f); - bool _2530 = (_2523 >= 0.0f); - bool _2531 = (_2523 < 0.0f); - _2542 = select((_2530 && _2529), 90.0f, select((_2531 && _2529), -90.0f, (select((_2531 && _2528), (_2525 + -3.1415927410125732f), select((_2530 && _2528), (_2525 + 3.1415927410125732f), _2525)) * 57.2957763671875f))); - } else { - _2542 = 0.0f; - } - float _2547 = min(max(select((_2542 < 0.0f), (_2542 + 360.0f), _2542), 0.0f), 360.0f); - do { - if (_2547 < -180.0f) { - _2556 = (_2547 + 360.0f); - } else { - if (_2547 > 180.0f) { - _2556 = (_2547 + -360.0f); - } else { - _2556 = _2547; - } - } - do { - if ((bool)(_2556 > -67.5f) && (bool)(_2556 < 67.5f)) { - float _2562 = (_2556 + 67.5f) * 0.029629629105329514f; - int _2563 = int(_2562); - float _2565 = _2562 - float((int)(_2563)); - float _2566 = _2565 * _2565; - float _2567 = _2566 * _2565; - if (_2563 == 3) { - _2595 = (((0.1666666716337204f - (_2565 * 0.5f)) + (_2566 * 0.5f)) - (_2567 * 0.1666666716337204f)); - } else { - if (_2563 == 2) { - _2595 = ((0.6666666865348816f - _2566) + (_2567 * 0.5f)); - } else { - if (_2563 == 1) { - _2595 = ((0.1666666716337204f - (_2567 * 0.5f)) + ((_2566 + _2565) * 0.5f)); - } else { - _2595 = select((_2563 == 0), (_2567 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2595 = 0.0f; - } - float _2604 = min(max(((((_2469 * 0.27000001072883606f) * (0.029999999329447746f - _2511)) * _2595) + _2511), 0.0f), 65535.0f); - float _2605 = min(max(_2512, 0.0f), 65535.0f); - float _2606 = min(max(_2513, 0.0f), 65535.0f); - float _2619 = min(max(mad(-0.21492856740951538f, _2606, mad(-0.2365107536315918f, _2605, (_2604 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2620 = min(max(mad(-0.09967592358589172f, _2606, mad(1.17622971534729f, _2605, (_2604 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2621 = min(max(mad(0.9977163076400757f, _2606, mad(-0.006032449658960104f, _2605, (_2604 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2622 = dot(float3(_2619, _2620, _2621), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2629 = ((_2619 - _2622) * 0.9599999785423279f) + _2622; - float _2630 = ((_2620 - _2622) * 0.9599999785423279f) + _2622; - float _2631 = ((_2621 - _2622) * 0.9599999785423279f) + _2622; - float _2634 = log2(select((_2629 <= 0.0f), 6.103515625e-05f, _2629)); - float _2635 = _2634 * 0.3010300099849701f; - do { - if (!(_2635 <= -5.2601776123046875f)) { - if ((bool)(_2635 > -5.2601776123046875f) && (bool)(_2635 < -0.7447274923324585f)) { - float _2643 = (_2634 * 0.19999998807907104f) + 3.494786262512207f; - int _2644 = int(_2643); - float _2646 = _2643 - float((int)(_2644)); - float _2648 = _global_0[_2644]; - float _2651 = _global_0[(_2644 + 1)]; - float _2656 = _2648 * 0.5f; - _2688 = dot(float3((_2646 * _2646), _2646, 1.0f), float3(mad((_global_0[(_2644 + 2)]), 0.5f, mad(_2651, -1.0f, _2656)), (_2651 - _2648), mad(_2651, 0.5f, _2656))); - } else { - if ((bool)(_2635 >= -0.7447274923324585f) && (bool)(_2635 < 4.673812389373779f)) { - float _2668 = (_2634 * 0.1666666567325592f) + 0.4123218357563019f; - int _2669 = int(_2668); - float _2671 = _2668 - float((int)(_2669)); - float _2673 = _global_1[_2669]; - float _2676 = _global_1[(_2669 + 1)]; - float _2681 = _2673 * 0.5f; - _2688 = dot(float3((_2671 * _2671), _2671, 1.0f), float3(mad((_global_1[(_2669 + 2)]), 0.5f, mad(_2676, -1.0f, _2681)), (_2676 - _2673), mad(_2676, 0.5f, _2681))); - } else { - _2688 = 4.0f; - } - } - } else { - _2688 = -4.0f; - } - float _2690 = exp2(_2688 * 3.321928024291992f); - float _2693 = log2(select((_2630 <= 0.0f), 6.103515625e-05f, _2630)); - float _2694 = _2693 * 0.3010300099849701f; - do { - if (!(_2694 <= -5.2601776123046875f)) { - if ((bool)(_2694 > -5.2601776123046875f) && (bool)(_2694 < -0.7447274923324585f)) { - float _2702 = (_2693 * 0.19999998807907104f) + 3.494786262512207f; - int _2703 = int(_2702); - float _2705 = _2702 - float((int)(_2703)); - float _2707 = _global_0[_2703]; - float _2710 = _global_0[(_2703 + 1)]; - float _2715 = _2707 * 0.5f; - _2747 = dot(float3((_2705 * _2705), _2705, 1.0f), float3(mad((_global_0[(_2703 + 2)]), 0.5f, mad(_2710, -1.0f, _2715)), (_2710 - _2707), mad(_2710, 0.5f, _2715))); - } else { - if ((bool)(_2694 >= -0.7447274923324585f) && (bool)(_2694 < 4.673812389373779f)) { - float _2727 = (_2693 * 0.1666666567325592f) + 0.4123218357563019f; - int _2728 = int(_2727); - float _2730 = _2727 - float((int)(_2728)); - float _2732 = _global_1[_2728]; - float _2735 = _global_1[(_2728 + 1)]; - float _2740 = _2732 * 0.5f; - _2747 = dot(float3((_2730 * _2730), _2730, 1.0f), float3(mad((_global_1[(_2728 + 2)]), 0.5f, mad(_2735, -1.0f, _2740)), (_2735 - _2732), mad(_2735, 0.5f, _2740))); - } else { - _2747 = 4.0f; - } - } - } else { - _2747 = -4.0f; - } - float _2749 = exp2(_2747 * 3.321928024291992f); - float _2752 = log2(select((_2631 <= 0.0f), 6.103515625e-05f, _2631)); - float _2753 = _2752 * 0.3010300099849701f; - do { - if (!(_2753 <= -5.2601776123046875f)) { - if ((bool)(_2753 > -5.2601776123046875f) && (bool)(_2753 < -0.7447274923324585f)) { - float _2761 = (_2752 * 0.19999998807907104f) + 3.494786262512207f; - int _2762 = int(_2761); - float _2764 = _2761 - float((int)(_2762)); - float _2766 = _global_0[_2762]; - float _2769 = _global_0[(_2762 + 1)]; - float _2774 = _2766 * 0.5f; - _2806 = dot(float3((_2764 * _2764), _2764, 1.0f), float3(mad((_global_0[(_2762 + 2)]), 0.5f, mad(_2769, -1.0f, _2774)), (_2769 - _2766), mad(_2769, 0.5f, _2774))); - } else { - if ((bool)(_2753 >= -0.7447274923324585f) && (bool)(_2753 < 4.673812389373779f)) { - float _2786 = (_2752 * 0.1666666567325592f) + 0.4123218357563019f; - int _2787 = int(_2786); - float _2789 = _2786 - float((int)(_2787)); - float _2791 = _global_1[_2787]; - float _2794 = _global_1[(_2787 + 1)]; - float _2799 = _2791 * 0.5f; - _2806 = dot(float3((_2789 * _2789), _2789, 1.0f), float3(mad((_global_1[(_2787 + 2)]), 0.5f, mad(_2794, -1.0f, _2799)), (_2794 - _2791), mad(_2794, 0.5f, _2799))); - } else { - _2806 = 4.0f; - } - } - } else { - _2806 = -4.0f; - } - float _2808 = exp2(_2806 * 3.321928024291992f); - float _2811 = mad(0.16386906802654266f, _2808, mad(0.14067870378494263f, _2749, (_2690 * 0.6954522132873535f))); - float _2814 = mad(0.0955343171954155f, _2808, mad(0.8596711158752441f, _2749, (_2690 * 0.044794563204050064f))); - float _2817 = mad(1.0015007257461548f, _2808, mad(0.004025210160762072f, _2749, (_2690 * -0.005525882821530104f))); - float _2820 = mad(-0.21492856740951538f, _2817, mad(-0.2365107536315918f, _2814, (_2811 * 1.4514392614364624f))); - float _2823 = mad(-0.09967592358589172f, _2817, mad(1.17622971534729f, _2814, (_2811 * -0.07655377686023712f))); - float _2826 = mad(0.9977163076400757f, _2817, mad(-0.006032449658960104f, _2814, (_2811 * 0.008316148072481155f))); - float _2829 = log2(select((_2820 <= 0.0f), 9.999999747378752e-05f, _2820)); - float _2830 = _2829 * 0.3010300099849701f; - do { - if (!(_2830 <= -3.848327875137329f)) { - if ((bool)(_2830 > -3.848327875137329f) && (bool)(_2830 < 0.6812411546707153f)) { - float _2838 = (_2829 + 12.783867835998535f) * 0.46521204710006714f; - int _2839 = int(_2838); - float _2841 = _2838 - float((int)(_2839)); - float _2843 = _global_4[_2839]; - float _2846 = _global_4[(_2839 + 1)]; - float _2851 = _2843 * 0.5f; - _2886 = dot(float3((_2841 * _2841), _2841, 1.0f), float3(mad((_global_4[(_2839 + 2)]), 0.5f, mad(_2846, -1.0f, _2851)), (_2846 - _2843), mad(_2846, 0.5f, _2851))); - } else { - if ((bool)(_2830 >= 0.6812411546707153f) && (bool)(_2830 < 3.7613162994384766f)) { - float _2863 = (_2829 + -2.2630341053009033f) * 0.6841424107551575f; - int _2864 = int(_2863); - float _2866 = _2863 - float((int)(_2864)); - float _2868 = _global_5[_2864]; - float _2871 = _global_5[(_2864 + 1)]; - float _2876 = _2868 * 0.5f; - _2886 = dot(float3((_2866 * _2866), _2866, 1.0f), float3(mad((_global_5[(_2864 + 2)]), 0.5f, mad(_2871, -1.0f, _2876)), (_2871 - _2868), mad(_2871, 0.5f, _2876))); - } else { - _2886 = ((_2829 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2886 = -2.301030158996582f; - } - float _2888 = exp2(_2886 * 3.321928024291992f); - float _2891 = log2(select((_2823 <= 0.0f), 9.999999747378752e-05f, _2823)); - float _2892 = _2891 * 0.3010300099849701f; - do { - if (!(_2892 <= -3.848327875137329f)) { - if ((bool)(_2892 > -3.848327875137329f) && (bool)(_2892 < 0.6812411546707153f)) { - float _2900 = (_2891 + 12.783867835998535f) * 0.46521204710006714f; - int _2901 = int(_2900); - float _2903 = _2900 - float((int)(_2901)); - float _2905 = _global_4[_2901]; - float _2908 = _global_4[(_2901 + 1)]; - float _2913 = _2905 * 0.5f; - _2948 = dot(float3((_2903 * _2903), _2903, 1.0f), float3(mad((_global_4[(_2901 + 2)]), 0.5f, mad(_2908, -1.0f, _2913)), (_2908 - _2905), mad(_2908, 0.5f, _2913))); - } else { - if ((bool)(_2892 >= 0.6812411546707153f) && (bool)(_2892 < 3.7613162994384766f)) { - float _2925 = (_2891 + -2.2630341053009033f) * 0.6841424107551575f; - int _2926 = int(_2925); - float _2928 = _2925 - float((int)(_2926)); - float _2930 = _global_5[_2926]; - float _2933 = _global_5[(_2926 + 1)]; - float _2938 = _2930 * 0.5f; - _2948 = dot(float3((_2928 * _2928), _2928, 1.0f), float3(mad((_global_5[(_2926 + 2)]), 0.5f, mad(_2933, -1.0f, _2938)), (_2933 - _2930), mad(_2933, 0.5f, _2938))); - } else { - _2948 = ((_2891 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2948 = -2.301030158996582f; - } - float _2950 = exp2(_2948 * 3.321928024291992f); - float _2953 = log2(select((_2826 <= 0.0f), 9.999999747378752e-05f, _2826)); - float _2954 = _2953 * 0.3010300099849701f; - do { - if (!(_2954 <= -3.848327875137329f)) { - if ((bool)(_2954 > -3.848327875137329f) && (bool)(_2954 < 0.6812411546707153f)) { - float _2962 = (_2953 + 12.783867835998535f) * 0.46521204710006714f; - int _2963 = int(_2962); - float _2965 = _2962 - float((int)(_2963)); - float _2967 = _global_4[_2963]; - float _2970 = _global_4[(_2963 + 1)]; - float _2975 = _2967 * 0.5f; - _3010 = dot(float3((_2965 * _2965), _2965, 1.0f), float3(mad((_global_4[(_2963 + 2)]), 0.5f, mad(_2970, -1.0f, _2975)), (_2970 - _2967), mad(_2970, 0.5f, _2975))); - } else { - if ((bool)(_2954 >= 0.6812411546707153f) && (bool)(_2954 < 3.7613162994384766f)) { - float _2987 = (_2953 + -2.2630341053009033f) * 0.6841424107551575f; - int _2988 = int(_2987); - float _2990 = _2987 - float((int)(_2988)); - float _2992 = _global_5[_2988]; - float _2995 = _global_5[(_2988 + 1)]; - float _3000 = _2992 * 0.5f; - _3010 = dot(float3((_2990 * _2990), _2990, 1.0f), float3(mad((_global_5[(_2988 + 2)]), 0.5f, mad(_2995, -1.0f, _3000)), (_2995 - _2992), mad(_2995, 0.5f, _3000))); - } else { - _3010 = ((_2953 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3010 = -2.301030158996582f; - } - float _3012 = exp2(_3010 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _3024 = mad(_38, _3012, mad(_37, _2950, (_2888 * _36))); - _3025 = mad(_41, _3012, mad(_40, _2950, (_2888 * _39))); - _3026 = mad(_44, _3012, mad(_43, _2950, (_2888 * _42))); - } else { - _3024 = _2888; - _3025 = _2950; - _3026 = _3012; - } - float _3036 = exp2(log2(_3024 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3037 = exp2(log2(_3025 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3038 = exp2(log2(_3026 * 9.999999747378752e-05f) * 0.1593017578125f); - _3182 = exp2(log2((1.0f / ((_3036 * 18.6875f) + 1.0f)) * ((_3036 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3183 = exp2(log2((1.0f / ((_3037 * 18.6875f) + 1.0f)) * ((_3037 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3184 = exp2(log2((1.0f / ((_3038 * 18.6875f) + 1.0f)) * ((_3038 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _3071 = mad(0.04736635088920593f, _1714, mad(0.3395121395587921f, _1713, (_1712 * 0.613191545009613f))); - float _3074 = mad(0.01345000695437193f, _1714, mad(0.9163357615470886f, _1713, (_1712 * 0.07020691782236099f))); - float _3077 = mad(0.8696067929267883f, _1714, mad(0.1095672994852066f, _1713, (_1712 * 0.020618872717022896f))); - float _3096 = exp2(log2(mad(_38, _3077, mad(_37, _3074, (_3071 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3097 = exp2(log2(mad(_41, _3077, mad(_40, _3074, (_3071 * _39))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3098 = exp2(log2(mad(_44, _3077, mad(_43, _3074, (_3071 * _42))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3182 = exp2(log2((1.0f / ((_3096 * 18.6875f) + 1.0f)) * ((_3096 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3183 = exp2(log2((1.0f / ((_3097 * 18.6875f) + 1.0f)) * ((_3097 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3184 = exp2(log2((1.0f / ((_3098 * 18.6875f) + 1.0f)) * ((_3098 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _3133 = mad(0.04736635088920593f, _1702, mad(0.3395121395587921f, _1701, (_1700 * 0.613191545009613f))); - float _3136 = mad(0.01345000695437193f, _1702, mad(0.9163357615470886f, _1701, (_1700 * 0.07020691782236099f))); - float _3139 = mad(0.8696067929267883f, _1702, mad(0.1095672994852066f, _1701, (_1700 * 0.020618872717022896f))); - _3182 = mad(_38, _3139, mad(_37, _3136, (_3133 * _36))); - _3183 = mad(_41, _3139, mad(_40, _3136, (_3133 * _39))); - _3184 = mad(_44, _3139, mad(_43, _3136, (_3133 * _42))); - } else { - float _3152 = mad(0.04736635088920593f, _1728, mad(0.3395121395587921f, _1727, (_1726 * 0.613191545009613f))); - float _3155 = mad(0.01345000695437193f, _1728, mad(0.9163357615470886f, _1727, (_1726 * 0.07020691782236099f))); - float _3158 = mad(0.8696067929267883f, _1728, mad(0.1095672994852066f, _1727, (_1726 * 0.020618872717022896f))); - float _3171 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3182 = exp2(log2(mad(_38, _3158, mad(_37, _3155, (_3152 * _36)))) * _3171); - _3183 = exp2(log2(mad(_41, _3158, mad(_40, _3155, (_3152 * _39)))) * _3171); - _3184 = exp2(log2(mad(_44, _3158, mad(_43, _3155, (_3152 * _42)))) * _3171); - } - } else { - _3182 = _1712; - _3183 = _1713; - _3184 = _1714; - } - } - } - } - } - } - SV_Target.x = (_3182 * 0.9523810148239136f); - SV_Target.y = (_3183 * 0.9523810148239136f); - SV_Target.z = (_3184 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x77593ED6.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x77593ED6.ps_6_0.hlsl deleted file mode 100644 index 8aec831c8..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x77593ED6.ps_6_0.hlsl +++ /dev/null @@ -1,1652 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - float cb0_074x : packoffset(c074.x); - float cb0_074y : packoffset(c074.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)SV_RenderTargetArrayIndex); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _339; - float _340; - float _341; - float _507; - float _508; - float _530; - float _531; - float _532; - float _671; - float _672; - float _693; - float _694; - float _695; - float _835; - float _836; - float _857; - float _858; - float _859; - float _938; - float _939; - float _1084; - float _1085; - float _1086; - float _1091; - float _1092; - float _1093; - float _1211; - float _1212; - float _1233; - float _1234; - float _1235; - float _1330; - float _1363; - float _1377; - float _1441; - float _1574; - float _1575; - float _1576; - float _1717; - float _1718; - float _1719; - float _1733; - float _1744; - float _1755; - float _1931; - float _1942; - float _2064; - float _2097; - float _2111; - float _2150; - float _2243; - float _2302; - float _2361; - float _2444; - float _2509; - float _2574; - float _2591; - float _2592; - float _2593; - float _2697; - float _2730; - float _2744; - float _2783; - float _2876; - float _2935; - float _2994; - float _3074; - float _3136; - float _3198; - float _3212; - float _3213; - float _3214; - float _3370; - float _3371; - float _3372; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _23 = ((uint)(cb0_074w) == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _158 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _160 = _132 - (_158 * _142); - float _162 = (_158 * _132) + _142; - float _167 = (4.0f - (_162 * 8.0f)) + (_160 * 2.0f); - float _173 = (((_160 * 3.0f) / _167) - _148) + select(_151, _148, _118); - float _174 = (((_162 * 2.0f) / _167) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _175 = max(_174, 1.000000013351432e-10f); - float _176 = _173 / _175; - float _179 = ((1.0f - _173) - _174) / _175; - float _189 = 0.9413792490959167f / mad(-0.16140000522136688f, _179, ((_176 * 0.8950999975204468f) + 0.266400009393692f)); - float _190 = 1.0404363870620728f / mad(0.03669999912381172f, _179, (1.7135000228881836f - (_176 * 0.7501999735832214f))); - float _191 = 1.089766502380371f / mad(1.0296000242233276f, _179, ((_176 * 0.03889999911189079f) + -0.06849999725818634f)); - float _192 = mad(_190, -0.7501999735832214f, 0.0f); - float _193 = mad(_190, 1.7135000228881836f, 0.0f); - float _194 = mad(_190, 0.03669999912381172f, -0.0f); - float _195 = mad(_191, 0.03889999911189079f, 0.0f); - float _196 = mad(_191, -0.06849999725818634f, 0.0f); - float _197 = mad(_191, 1.0296000242233276f, 0.0f); - float _200 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_189 * 0.883457362651825f))); - float _203 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_189 * 0.26293492317199707f))); - float _206 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_189 * -0.15930065512657166f))); - float _209 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_189 * 0.38695648312568665f))); - float _212 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_189 * 0.11516613513231277f))); - float _215 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_189 * -0.0697740763425827f))); - float _218 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_189 * -0.007634039502590895f))); - float _221 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_189 * -0.0022720457054674625f))); - float _224 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_189 * 0.0013765322510153055f))); - float _227 = mad(_206, 0.01933390088379383f, mad(_203, 0.2126729041337967f, (_200 * 0.4124563932418823f))); - float _230 = mad(_206, 0.11919199675321579f, mad(_203, 0.7151522040367126f, (_200 * 0.3575761020183563f))); - float _233 = mad(_206, 0.9503040909767151f, mad(_203, 0.07217500358819962f, (_200 * 0.18043750524520874f))); - float _236 = mad(_215, 0.01933390088379383f, mad(_212, 0.2126729041337967f, (_209 * 0.4124563932418823f))); - float _239 = mad(_215, 0.11919199675321579f, mad(_212, 0.7151522040367126f, (_209 * 0.3575761020183563f))); - float _242 = mad(_215, 0.9503040909767151f, mad(_212, 0.07217500358819962f, (_209 * 0.18043750524520874f))); - float _245 = mad(_224, 0.01933390088379383f, mad(_221, 0.2126729041337967f, (_218 * 0.4124563932418823f))); - float _248 = mad(_224, 0.11919199675321579f, mad(_221, 0.7151522040367126f, (_218 * 0.3575761020183563f))); - float _251 = mad(_224, 0.9503040909767151f, mad(_221, 0.07217500358819962f, (_218 * 0.18043750524520874f))); - float _281 = mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))) * _99))); - float _284 = mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))) * _99))); - float _287 = mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))) * _99))); - float _290 = mad(0.04736635088920593f, _287, mad(0.3395121395587921f, _284, (_281 * 0.613191545009613f))); - float _293 = mad(0.01345000695437193f, _287, mad(0.9163357615470886f, _284, (_281 * 0.07020691782236099f))); - float _296 = mad(0.8696067929267883f, _287, mad(0.1095672994852066f, _284, (_281 * 0.020618872717022896f))); - bool _299 = ((uint)(tm_flags.x) == 0); - if (_299) { - float _301 = dot(float3(_290, _293, _296), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _305 = (_290 / _301) + -1.0f; - float _306 = (_293 / _301) + -1.0f; - float _307 = (_296 / _301) + -1.0f; - float _319 = (1.0f - exp2(((_301 * _301) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_305, _306, _307), float3(_305, _306, _307)) * -4.0f)); - _339 = (((mad(-0.06368283927440643f, _296, mad(-0.32929131388664246f, _293, (_290 * 1.370412826538086f))) - _290) * _319) + _290); - _340 = (((mad(-0.010861567221581936f, _296, mad(1.0970908403396606f, _293, (_290 * -0.08343426138162613f))) - _293) * _319) + _293); - _341 = (((mad(1.203694462776184f, _296, mad(-0.09862564504146576f, _293, (_290 * -0.02579325996339321f))) - _296) * _319) + _296); - } else { - _339 = _290; - _340 = _293; - _341 = _296; - } - float _342 = dot(float3(_339, _340, _341), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _356 = cb0_052w + cb0_057w; - float _370 = cb0_051w * cb0_056w; - float _384 = cb0_050w * cb0_055w; - float _398 = cb0_049w * cb0_054w; - float _409 = cb0_048w * cb0_053w; - float _413 = cb0_048x * (_339 - _342); - float _416 = cb0_048y * (_340 - _342); - float _419 = cb0_048z * (_341 - _342); - float _475 = cb0_073w + 1.0f; - float _479 = saturate(_475 * (((cb0_052x + cb0_057x) + _356) + (((cb0_051x * cb0_056x) * _370) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _398) * log2(max(0.0f, (((_413 * cb0_053x) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _384)))))); - float _480 = saturate(_475 * (((cb0_052y + cb0_057y) + _356) + (((cb0_051y * cb0_056y) * _370) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _398) * log2(max(0.0f, (((_416 * cb0_053y) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _384)))))); - float _481 = saturate(_475 * (((cb0_052z + cb0_057z) + _356) + (((cb0_051z * cb0_056z) * _370) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _398) * log2(max(0.0f, (((_419 * cb0_053z) * _409) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _384)))))); - float _485 = max(_479, max(_480, _481)); - float _486 = _485 - min(_479, min(_480, _481)); - if (!(_486 == 0.0f)) { - float _489 = _486 / _485; - if (_479 == _485) { - _507 = ((_480 - _481) / _486); - _508 = _489; - } else { - if (_480 == _485) { - _507 = (((_481 - _479) / _486) + 2.0f); - _508 = _489; - } else { - if (_481 == _485) { - _507 = (((_479 - _480) / _486) + 4.0f); - _508 = _489; - } else { - _507 = 0.0f; - _508 = _489; - } - } - } - } else { - _507 = 0.0f; - _508 = 0.0f; - } - float _510 = _507 + cb0_073z; - float _511 = floor(_510); - float _512 = _510 - _511; - float _513 = 1.0f - _508; - float _515 = 1.0f - (_512 * _508); - float _518 = 1.0f - ((1.0f - _512) * _508); - if (!(_511 == 0.0f)) { - if (!(_511 == 1.0f)) { - if (!(_511 == 2.0f)) { - if (!(_511 == 3.0f)) { - if (!(_511 == 4.0f)) { - _530 = 1.0f; - _531 = _513; - _532 = _515; - } else { - _530 = _518; - _531 = _513; - _532 = 1.0f; - } - } else { - _530 = _513; - _531 = _515; - _532 = 1.0f; - } - } else { - _530 = _513; - _531 = 1.0f; - _532 = _518; - } - } else { - _530 = _515; - _531 = 1.0f; - _532 = _513; - } - } else { - _530 = 1.0f; - _531 = _518; - _532 = _513; - } - float _535 = saturate(_342 / cb0_073x); - float _539 = (_535 * _535) * (3.0f - (_535 * 2.0f)); - float _549 = cb0_067w + cb0_052w; - float _558 = cb0_066w * cb0_051w; - float _567 = cb0_065w * cb0_050w; - float _576 = cb0_064w * cb0_049w; - float _582 = cb0_063w * cb0_048w; - float _643 = saturate((((cb0_067x + cb0_052x) + _549) + (((cb0_066x * cb0_051x) * _558) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _576) * log2(max(0.0f, (((_413 * cb0_063x) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _567))))) * _475); - float _644 = saturate((((cb0_067y + cb0_052y) + _549) + (((cb0_066y * cb0_051y) * _558) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _576) * log2(max(0.0f, (((_416 * cb0_063y) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _567))))) * _475); - float _645 = saturate((((cb0_067z + cb0_052z) + _549) + (((cb0_066z * cb0_051z) * _558) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _576) * log2(max(0.0f, (((_419 * cb0_063z) * _582) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _567))))) * _475); - float _649 = max(_643, max(_644, _645)); - float _650 = _649 - min(_643, min(_644, _645)); - if (!(_650 == 0.0f)) { - float _653 = _650 / _649; - if (_643 == _649) { - _671 = ((_644 - _645) / _650); - _672 = _653; - } else { - if (_644 == _649) { - _671 = (((_645 - _643) / _650) + 2.0f); - _672 = _653; - } else { - if (_645 == _649) { - _671 = (((_643 - _644) / _650) + 4.0f); - _672 = _653; - } else { - _671 = 0.0f; - _672 = _653; - } - } - } - } else { - _671 = 0.0f; - _672 = 0.0f; - } - float _673 = _671 + cb0_073z; - float _674 = floor(_673); - float _675 = _673 - _674; - float _676 = 1.0f - _672; - float _678 = 1.0f - (_675 * _672); - float _681 = 1.0f - ((1.0f - _675) * _672); - if (!(_674 == 0.0f)) { - if (!(_674 == 1.0f)) { - if (!(_674 == 2.0f)) { - if (!(_674 == 3.0f)) { - if (!(_674 == 4.0f)) { - _693 = 1.0f; - _694 = _676; - _695 = _678; - } else { - _693 = _681; - _694 = _676; - _695 = 1.0f; - } - } else { - _693 = _676; - _694 = _678; - _695 = 1.0f; - } - } else { - _693 = _676; - _694 = 1.0f; - _695 = _681; - } - } else { - _693 = _678; - _694 = 1.0f; - _695 = _676; - } - } else { - _693 = 1.0f; - _694 = _681; - _695 = _676; - } - float _700 = saturate((_342 - cb0_073y) / (1.0f - cb0_073y)); - float _704 = (_700 * _700) * (3.0f - (_700 * 2.0f)); - float _713 = cb0_062w + cb0_052w; - float _722 = cb0_061w * cb0_051w; - float _731 = cb0_060w * cb0_050w; - float _740 = cb0_059w * cb0_049w; - float _746 = cb0_058w * cb0_048w; - float _807 = saturate((((cb0_062x + cb0_052x) + _713) + (((cb0_061x * cb0_051x) * _722) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _740) * log2(max(0.0f, (((_413 * cb0_058x) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _731))))) * _475); - float _808 = saturate((((cb0_062y + cb0_052y) + _713) + (((cb0_061y * cb0_051y) * _722) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _740) * log2(max(0.0f, (((_416 * cb0_058y) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _731))))) * _475); - float _809 = saturate((((cb0_062z + cb0_052z) + _713) + (((cb0_061z * cb0_051z) * _722) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _740) * log2(max(0.0f, (((_419 * cb0_058z) * _746) + _342)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _731))))) * _475); - float _813 = max(_807, max(_808, _809)); - float _814 = _813 - min(_807, min(_808, _809)); - if (!(_814 == 0.0f)) { - float _817 = _814 / _813; - if (_807 == _813) { - _835 = ((_808 - _809) / _814); - _836 = _817; - } else { - if (_808 == _813) { - _835 = (((_809 - _807) / _814) + 2.0f); - _836 = _817; - } else { - if (_809 == _813) { - _835 = (((_807 - _808) / _814) + 4.0f); - _836 = _817; - } else { - _835 = 0.0f; - _836 = _817; - } - } - } - } else { - _835 = 0.0f; - _836 = 0.0f; - } - float _837 = _835 + cb0_073z; - float _838 = floor(_837); - float _839 = _837 - _838; - float _840 = 1.0f - _836; - float _842 = 1.0f - (_839 * _836); - float _845 = 1.0f - ((1.0f - _839) * _836); - if (!(_838 == 0.0f)) { - if (!(_838 == 1.0f)) { - if (!(_838 == 2.0f)) { - if (!(_838 == 3.0f)) { - if (!(_838 == 4.0f)) { - _857 = 1.0f; - _858 = _840; - _859 = _842; - } else { - _857 = _845; - _858 = _840; - _859 = 1.0f; - } - } else { - _857 = _840; - _858 = _842; - _859 = 1.0f; - } - } else { - _857 = _840; - _858 = 1.0f; - _859 = _845; - } - } else { - _857 = _842; - _858 = 1.0f; - _859 = _840; - } - } else { - _857 = 1.0f; - _858 = _845; - _859 = _840; - } - float _861 = (1.0f - _539) * _485; - float _865 = _813 * (_539 - _704); - float _869 = _704 * _649; - float _874 = ((_869 * _693) + (_861 * _530)) + (_857 * _865); - float _876 = ((_869 * _694) + (_861 * _531)) + (_858 * _865); - float _878 = ((_869 * _695) + (_861 * _532)) + (_859 * _865); - if (!(cb0_074x <= 0.0f)) { - float _885 = min(max(cb0_074y, 1800.0f), 6500.0f); - float _886 = saturate(cb0_074x); - do { - if (_885 < 4000.0f) { - float _897 = ((((_885 * 1.2864121856637212e-07f) + 0.00015411825734190643f) * _885) + 0.8601177334785461f) / ((((_885 * 7.081451371959702e-07f) + 0.0008424202096648514f) * _885) + 1.0f); - float _907 = ((((_885 * 4.204816761443908e-08f) + 4.228062607580796e-05f) * _885) + 0.31739872694015503f) / ((1.0f - (_885 * 2.8974181986995973e-05f)) + ((_885 * _885) * 1.6145605741257896e-07f)); - float _912 = ((_897 * 2.0f) + 4.0f) - (_907 * 8.0f); - _938 = ((_897 * 3.0f) / _912); - _939 = ((_907 * 2.0f) / _912); - } else { - float _917 = _885 * 1.0005563497543335f; - float _931 = select((_917 <= 7000.0f), (((((2967800.0f - (4604438528.0f / _885)) / _917) + 99.11000061035156f) / _917) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / _885)) / _917) + 247.47999572753906f) / _917) + 0.23703999817371368f)); - _938 = _931; - _939 = (((_931 * 2.869999885559082f) + -0.2750000059604645f) - ((_931 * _931) * 3.0f)); - } - float _940 = max(_939, 1.000000013351432e-10f); - float _941 = _938 / _940; - float _944 = ((1.0f - _938) - _939) / _940; - float _947 = mad(-0.16140000522136688f, _944, ((_941 * 0.8950999975204468f) + 0.266400009393692f)); - float _954 = mad(0.03669999912381172f, _944, (1.7135000228881836f - (_941 * 0.7501999735832214f))) * 0.9611351490020752f; - float _955 = mad(1.0296000242233276f, _944, ((_941 * 0.03889999911189079f) + -0.06849999725818634f)) * 0.91762775182724f; - float _956 = mad(_954, -0.7501999735832214f, 0.0f); - float _957 = mad(_954, 1.7135000228881836f, 0.0f); - float _958 = mad(_954, 0.03669999912381172f, -0.0f); - float _959 = mad(_955, 0.03889999911189079f, 0.0f); - float _960 = mad(_955, -0.06849999725818634f, 0.0f); - float _961 = mad(_955, 1.0296000242233276f, 0.0f); - float _964 = mad(0.1599626988172531f, _959, mad(-0.1470542997121811f, _956, (_947 * 0.9384711980819702f))); - float _967 = mad(0.1599626988172531f, _960, mad(-0.1470542997121811f, _957, (_947 * 0.27930817008018494f))); - float _970 = mad(0.1599626988172531f, _961, mad(-0.1470542997121811f, _958, (_947 * -0.16922049224376678f))); - float _973 = mad(0.04929120093584061f, _959, mad(0.5183603167533875f, _956, (_947 * 0.4110526740550995f))); - float _976 = mad(0.04929120093584061f, _960, mad(0.5183603167533875f, _957, (_947 * 0.12233765423297882f))); - float _979 = mad(0.04929120093584061f, _961, mad(0.5183603167533875f, _958, (_947 * -0.07411899417638779f))); - float _982 = mad(0.9684867262840271f, _959, mad(0.04004279896616936f, _956, (_947 * -0.008109419606626034f))); - float _985 = mad(0.9684867262840271f, _960, mad(0.04004279896616936f, _957, (_947 * -0.0024135285057127476f))); - float _988 = mad(0.9684867262840271f, _961, mad(0.04004279896616936f, _958, (_947 * 0.0014622504822909832f))); - float _991 = mad(_970, 0.01933390088379383f, mad(_967, 0.2126729041337967f, (_964 * 0.4124563932418823f))); - float _994 = mad(_970, 0.11919199675321579f, mad(_967, 0.7151522040367126f, (_964 * 0.3575761020183563f))); - float _997 = mad(_970, 0.9503040909767151f, mad(_967, 0.07217500358819962f, (_964 * 0.18043750524520874f))); - float _1000 = mad(_979, 0.01933390088379383f, mad(_976, 0.2126729041337967f, (_973 * 0.4124563932418823f))); - float _1003 = mad(_979, 0.11919199675321579f, mad(_976, 0.7151522040367126f, (_973 * 0.3575761020183563f))); - float _1006 = mad(_979, 0.9503040909767151f, mad(_976, 0.07217500358819962f, (_973 * 0.18043750524520874f))); - float _1009 = mad(_988, 0.01933390088379383f, mad(_985, 0.2126729041337967f, (_982 * 0.4124563932418823f))); - float _1012 = mad(_988, 0.11919199675321579f, mad(_985, 0.7151522040367126f, (_982 * 0.3575761020183563f))); - float _1015 = mad(_988, 0.9503040909767151f, mad(_985, 0.07217500358819962f, (_982 * 0.18043750524520874f))); - float _1051 = mad(mad(1.056971549987793f, _1015, mad(-0.20397695899009705f, _1006, (_997 * 0.05563008040189743f))), _878, mad(mad(1.056971549987793f, _1012, mad(-0.20397695899009705f, _1003, (_994 * 0.05563008040189743f))), _876, (mad(1.056971549987793f, _1009, mad(-0.20397695899009705f, _1000, (_991 * 0.05563008040189743f))) * _874))); - float _1054 = ((_886 * _886) * -0.30000001192092896f) * _1051; - float _1069 = ((min(1.0f, (mad(mad(-0.4986107647418976f, _1015, mad(-1.5373831987380981f, _1006, (_997 * 3.2409698963165283f))), _878, mad(mad(-0.4986107647418976f, _1012, mad(-1.5373831987380981f, _1003, (_994 * 3.2409698963165283f))), _876, (mad(-0.4986107647418976f, _1009, mad(-1.5373831987380981f, _1000, (_991 * 3.2409698963165283f))) * _874))) - (_1054 * 0.18000000715255737f))) - _874) * _886) + _874; - float _1070 = ((min(1.0f, (mad(mad(0.04155505821108818f, _1015, mad(1.8759675025939941f, _1006, (_997 * -0.9692436456680298f))), _878, mad(mad(0.04155505821108818f, _1012, mad(1.8759675025939941f, _1003, (_994 * -0.9692436456680298f))), _876, (mad(0.04155505821108818f, _1009, mad(1.8759675025939941f, _1000, (_991 * -0.9692436456680298f))) * _874))) - (_1054 * 0.12000000476837158f))) - _876) * _886) + _876; - float _1071 = ((max(0.0f, (_1054 + _1051)) - _878) * _886) + _878; - float _1072 = dot(float3(_1069, _1070, _1071), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - do { - if (_1072 > 0.0010000000474974513f) { - float _1079 = (((dot(float3(_874, _876, _878), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)) / _1072) + -1.0f) * 0.800000011920929f) + 1.0f; - _1084 = (_1079 * _1069); - _1085 = (_1079 * _1070); - _1086 = (_1079 * _1071); - } else { - _1084 = _1069; - _1085 = _1070; - _1086 = _1071; - } - _1091 = max(0.0f, _1084); - _1092 = max(0.0f, _1085); - _1093 = max(0.0f, _1086); - } while (false); - } while (false); - } else { - _1091 = _874; - _1092 = _876; - _1093 = _878; - } - float _1119 = dot(float3(_1091, _1092, _1093), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1183 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_1091 - _1119)) + _1119)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _475); - float _1184 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_1092 - _1119)) + _1119)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _475); - float _1185 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_1093 - _1119)) + _1119)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _475); - float _1189 = max(_1183, max(_1184, _1185)); - float _1190 = _1189 - min(_1183, min(_1184, _1185)); - if (!(_1190 == 0.0f)) { - float _1193 = _1190 / _1189; - if (_1183 == _1189) { - _1211 = ((_1184 - _1185) / _1190); - _1212 = _1193; - } else { - if (_1184 == _1189) { - _1211 = (((_1185 - _1183) / _1190) + 2.0f); - _1212 = _1193; - } else { - if (_1185 == _1189) { - _1211 = (((_1183 - _1184) / _1190) + 4.0f); - _1212 = _1193; - } else { - _1211 = 0.0f; - _1212 = _1193; - } - } - } - } else { - _1211 = 0.0f; - _1212 = 0.0f; - } - float _1213 = _1211 + cb0_073z; - float _1214 = floor(_1213); - float _1215 = _1213 - _1214; - float _1216 = 1.0f - _1212; - float _1218 = 1.0f - (_1215 * _1212); - float _1221 = 1.0f - ((1.0f - _1215) * _1212); - if (!(_1214 == 0.0f)) { - if (!(_1214 == 1.0f)) { - if (!(_1214 == 2.0f)) { - if (!(_1214 == 3.0f)) { - if (!(_1214 == 4.0f)) { - _1233 = 1.0f; - _1234 = _1216; - _1235 = _1218; - } else { - _1233 = _1221; - _1234 = _1216; - _1235 = 1.0f; - } - } else { - _1233 = _1216; - _1234 = _1218; - _1235 = 1.0f; - } - } else { - _1233 = _1216; - _1234 = 1.0f; - _1235 = _1221; - } - } else { - _1233 = _1218; - _1234 = 1.0f; - _1235 = _1216; - } - } else { - _1233 = 1.0f; - _1234 = _1221; - _1235 = _1216; - } - float _1236 = _1233 * _1189; - float _1237 = _1234 * _1189; - float _1238 = _1235 * _1189; - float _1241 = mad(-0.0832584798336029f, _1238, mad(-0.6217905879020691f, _1237, (_1236 * 1.7050515413284302f))); - float _1244 = mad(-0.010548528283834457f, _1238, mad(1.1408027410507202f, _1237, (_1236 * -0.13025718927383423f))); - float _1247 = mad(1.152971863746643f, _1238, mad(-0.1289687603712082f, _1237, (_1236 * -0.024003278464078903f))); - float _1263 = ((mad(0.061360642313957214f, _1238, mad(-4.540197551250458e-09f, _1237, (_1236 * 0.9386394023895264f))) - _1236) * cb0_075x) + _1236; - float _1264 = ((mad(0.169205904006958f, _1238, mad(0.8307942152023315f, _1237, (_1236 * 6.775371730327606e-08f))) - _1237) * cb0_075x) + _1237; - float _1265 = (mad(-2.3283064365386963e-10f, _1237, (_1236 * -9.313225746154785e-10f)) * cb0_075x) + _1238; - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1275 = mad(0.16386905312538147f, _1265, mad(0.14067868888378143f, _1264, (_1263 * 0.6954522132873535f))); - float _1278 = mad(0.0955343246459961f, _1265, mad(0.8596711158752441f, _1264, (_1263 * 0.044794581830501556f))); - float _1281 = mad(1.0015007257461548f, _1265, mad(0.004025210160762072f, _1264, (_1263 * -0.005525882821530104f))); - float _1285 = max(max(_1275, _1278), _1281); - float _1290 = (max(_1285, 1.000000013351432e-10f) - max(min(min(_1275, _1278), _1281), 1.000000013351432e-10f)) / max(_1285, 0.009999999776482582f); - float _1303 = ((_1278 + _1275) + _1281) + (sqrt((((_1281 - _1278) * _1281) + ((_1278 - _1275) * _1278)) + ((_1275 - _1281) * _1275)) * 1.75f); - float _1304 = _1303 * 0.3333333432674408f; - float _1305 = _1290 + -0.4000000059604645f; - float _1306 = _1305 * 5.0f; - float _1310 = max((1.0f - abs(_1305 * 2.5f)), 0.0f); - float _1321 = ((float(((int)(uint)((bool)(_1306 > 0.0f))) - ((int)(uint)((bool)(_1306 < 0.0f)))) * (1.0f - (_1310 * _1310))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1304 <= 0.0533333346247673f)) { - if (!(_1304 >= 0.1599999964237213f)) { - _1330 = (((0.23999999463558197f / _1303) + -0.5f) * _1321); - } else { - _1330 = 0.0f; - } - } else { - _1330 = _1321; - } - float _1331 = _1330 + 1.0f; - float _1332 = _1331 * _1275; - float _1333 = _1331 * _1278; - float _1334 = _1331 * _1281; - do { - if (!((bool)(_1332 == _1333) && (bool)(_1333 == _1334))) { - float _1341 = ((_1332 * 2.0f) - _1333) - _1334; - float _1344 = ((_1278 - _1281) * 1.7320507764816284f) * _1331; - float _1346 = atan(_1344 / _1341); - bool _1349 = (_1341 < 0.0f); - bool _1350 = (_1341 == 0.0f); - bool _1351 = (_1344 >= 0.0f); - bool _1352 = (_1344 < 0.0f); - _1363 = select((_1351 && _1350), 90.0f, select((_1352 && _1350), -90.0f, (select((_1352 && _1349), (_1346 + -3.1415927410125732f), select((_1351 && _1349), (_1346 + 3.1415927410125732f), _1346)) * 57.2957763671875f))); - } else { - _1363 = 0.0f; - } - float _1368 = min(max(select((_1363 < 0.0f), (_1363 + 360.0f), _1363), 0.0f), 360.0f); - do { - if (_1368 < -180.0f) { - _1377 = (_1368 + 360.0f); - } else { - if (_1368 > 180.0f) { - _1377 = (_1368 + -360.0f); - } else { - _1377 = _1368; - } - } - float _1381 = saturate(1.0f - abs(_1377 * 0.014814814552664757f)); - float _1385 = (_1381 * _1381) * (3.0f - (_1381 * 2.0f)); - float _1391 = ((_1385 * _1385) * ((_1290 * 0.18000000715255737f) * (0.029999999329447746f - _1332))) + _1332; - float _1401 = max(0.0f, mad(-0.21492856740951538f, _1334, mad(-0.2365107536315918f, _1333, (_1391 * 1.4514392614364624f)))); - float _1402 = max(0.0f, mad(-0.09967592358589172f, _1334, mad(1.17622971534729f, _1333, (_1391 * -0.07655377686023712f)))); - float _1403 = max(0.0f, mad(0.9977163076400757f, _1334, mad(-0.006032449658960104f, _1333, (_1391 * 0.008316148072481155f)))); - float _1404 = dot(float3(_1401, _1402, _1403), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1418 = (cb0_036w + 1.0f) - cb0_036y; - float _1421 = cb0_037x + 1.0f; - float _1423 = _1421 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1441 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1432 = (cb0_036w + 0.18000000715255737f) / _1418; - _1441 = (-0.7447274923324585f - ((log2(_1432 / (2.0f - _1432)) * 0.3465735912322998f) * (_1418 / cb0_036x))); - } - float _1444 = ((1.0f - cb0_036y) / cb0_036x) - _1441; - float _1446 = (cb0_036z / cb0_036x) - _1444; - float _1450 = log2(lerp(_1404, _1401, 0.9599999785423279f)) * 0.3010300099849701f; - float _1451 = log2(lerp(_1404, _1402, 0.9599999785423279f)) * 0.3010300099849701f; - float _1452 = log2(lerp(_1404, _1403, 0.9599999785423279f)) * 0.3010300099849701f; - float _1456 = (_1450 + _1444) * cb0_036x; - float _1457 = (_1451 + _1444) * cb0_036x; - float _1458 = (_1452 + _1444) * cb0_036x; - float _1459 = _1418 * 2.0f; - float _1462 = _1450 - _1441; - float _1463 = _1451 - _1441; - float _1464 = _1452 - _1441; - float _1465 = ((cb0_036x * -2.0f) / _1418) * 1.4426950216293335f; - float _1481 = _1423 * 2.0f; - float _1487 = ((cb0_036x * 2.0f) / _1423) * 1.4426950216293335f; - float _1506 = select((_1450 < _1441), ((_1459 / (exp2(_1465 * _1462) + 1.0f)) - cb0_036w), _1456); - float _1507 = select((_1451 < _1441), ((_1459 / (exp2(_1465 * _1463) + 1.0f)) - cb0_036w), _1457); - float _1508 = select((_1452 < _1441), ((_1459 / (exp2(_1465 * _1464) + 1.0f)) - cb0_036w), _1458); - float _1515 = _1446 - _1441; - float _1519 = saturate(_1462 / _1515); - float _1520 = saturate(_1463 / _1515); - float _1521 = saturate(_1464 / _1515); - bool _1522 = (_1446 < _1441); - float _1526 = select(_1522, (1.0f - _1519), _1519); - float _1527 = select(_1522, (1.0f - _1520), _1520); - float _1528 = select(_1522, (1.0f - _1521), _1521); - float _1547 = (((_1526 * _1526) * (select((_1450 > _1446), (_1421 - (_1481 / (exp2(_1487 * (_1450 - _1446)) + 1.0f))), _1456) - _1506)) * (3.0f - (_1526 * 2.0f))) + _1506; - float _1548 = (((_1527 * _1527) * (select((_1451 > _1446), (_1421 - (_1481 / (exp2(_1487 * (_1451 - _1446)) + 1.0f))), _1457) - _1507)) * (3.0f - (_1527 * 2.0f))) + _1507; - float _1549 = (((_1528 * _1528) * (select((_1452 > _1446), (_1421 - (_1481 / (exp2(_1487 * (_1452 - _1446)) + 1.0f))), _1458) - _1508)) * (3.0f - (_1528 * 2.0f))) + _1508; - float _1550 = dot(float3(_1547, _1548, _1549), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1574 = (((max(0.0f, (lerp(_1550, _1547, 0.9300000071525574f))) - _1263) * cb0_075z) + _1263); - _1575 = (((max(0.0f, (lerp(_1550, _1548, 0.9300000071525574f))) - _1264) * cb0_075z) + _1264); - _1576 = (((max(0.0f, (lerp(_1550, _1549, 0.9300000071525574f))) - _1265) * cb0_075z) + _1265); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1574 = _1263; - _1575 = _1264; - _1576 = _1265; - } - float _1592 = ((mad(-0.06537103652954102f, _1576, mad(1.451815478503704e-06f, _1575, (_1574 * 1.065374732017517f))) - _1574) * cb0_075x) + _1574; - float _1593 = ((mad(-0.20366770029067993f, _1576, mad(1.2036634683609009f, _1575, (_1574 * -2.57161445915699e-07f))) - _1575) * cb0_075x) + _1575; - float _1594 = ((mad(0.9999996423721313f, _1576, mad(2.0954757928848267e-08f, _1575, (_1574 * 1.862645149230957e-08f))) - _1576) * cb0_075x) + _1576; - [branch] - if (!_299) { - float _1637 = 1.0f / (dot(float3(_1241, _1244, _1247), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1647 = max(0.0f, (((_1637 * cb0_035x) + cb0_034x) * dot(float3(_1241, _1244, _1247), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1648 = max(0.0f, (((_1637 * cb0_035y) + cb0_034y) * dot(float3(_1241, _1244, _1247), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1649 = max(0.0f, (((_1637 * cb0_035z) + cb0_034z) * dot(float3(_1241, _1244, _1247), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1655 = max(0.0f, (cb0_031x - _1647)); - float _1656 = max(0.0f, (cb0_031x - _1648)); - float _1657 = max(0.0f, (cb0_031x - _1649)); - float _1659 = max(_1647, cb0_031z); - float _1660 = max(_1648, cb0_031z); - float _1661 = max(_1649, cb0_031z); - float _1706 = cb0_029w + -0.0020000000949949026f; - _1717 = ((((min(max(_1647, cb0_031x), cb0_031z) * cb0_030w) + _1706) + (((cb0_032x * _1659) + cb0_032y) * (1.0f / (_1659 + cb0_031w)))) + ((_1655 * cb0_028w) * (1.0f / (cb0_031y + _1655)))); - _1718 = ((((min(max(_1648, cb0_031x), cb0_031z) * cb0_030w) + _1706) + (((cb0_032x * _1660) + cb0_032y) * (1.0f / (_1660 + cb0_031w)))) + ((_1656 * cb0_028w) * (1.0f / (_1656 + cb0_031y)))); - _1719 = ((((min(max(_1649, cb0_031x), cb0_031z) * cb0_030w) + _1706) + ((1.0f / (_1661 + cb0_031w)) * ((cb0_032x * _1661) + cb0_032y))) + ((_1657 * cb0_028w) * (1.0f / (_1657 + cb0_031y)))); - } else { - _1717 = max(0.0f, mad(-0.0832584798336029f, _1594, mad(-0.6217905879020691f, _1593, (_1592 * 1.7050515413284302f)))); - _1718 = max(0.0f, mad(-0.010548528283834457f, _1594, mad(1.1408027410507202f, _1593, (_1592 * -0.13025718927383423f)))); - _1719 = max(0.0f, mad(1.152971863746643f, _1594, mad(-0.1289687603712082f, _1593, (_1592 * -0.024003278464078903f)))); - } - float _1720 = saturate(_1717); - float _1721 = saturate(_1718); - float _1722 = saturate(_1719); - if (_1720 < 0.0031306699384003878f) { - _1733 = (_1720 * 12.920000076293945f); - } else { - _1733 = (((pow(_1720, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1721 < 0.0031306699384003878f) { - _1744 = (_1721 * 12.920000076293945f); - } else { - _1744 = (((pow(_1721, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1722 < 0.0031306699384003878f) { - _1755 = (_1722 * 12.920000076293945f); - } else { - _1755 = (((pow(_1722, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1759 = (_1744 * 0.9375f) + 0.03125f; - float _1767 = _1755 * 15.0f; - float _1768 = floor(_1767); - float _1769 = _1767 - _1768; - float _1771 = (((_1733 * 0.9375f) + 0.03125f) + _1768) * 0.0625f; - float4 _1772 = t1.Sample(s1, float2(_1771, _1759)); - float _1776 = _1771 + 0.0625f; - float4 _1777 = t1.Sample(s1, float2(_1776, _1759)); - float _1793 = ((lerp(_1772.x, _1777.x, _1769)) * cb0_041x) + (cb0_040x * _1733); - float _1794 = ((lerp(_1772.y, _1777.y, _1769)) * cb0_041x) + (cb0_040x * _1744); - float _1795 = ((lerp(_1772.z, _1777.z, _1769)) * cb0_041x) + (cb0_040x * _1755); - float4 _1798 = t0.Sample(s0, float2(_1771, _1759)); - float4 _1802 = t0.Sample(s0, float2(_1776, _1759)); - float _1820 = cb0_038w * cb0_039z; - float _1827 = max(6.103519990574569e-05f, ((((_1798.x - _1793) + ((_1802.x - _1798.x) * _1769)) * _1820) + _1793)); - float _1828 = max(6.103519990574569e-05f, ((((_1798.y - _1794) + ((_1802.y - _1798.y) * _1769)) * _1820) + _1794)); - float _1829 = max(6.103519990574569e-05f, ((((_1798.z - _1795) + ((_1802.z - _1798.z) * _1769)) * _1820) + _1795)); - float _1851 = select((_1827 > 0.040449999272823334f), exp2(log2((_1827 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1827 * 0.07739938050508499f)); - float _1852 = select((_1828 > 0.040449999272823334f), exp2(log2((_1828 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1828 * 0.07739938050508499f)); - float _1853 = select((_1829 > 0.040449999272823334f), exp2(log2((_1829 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1829 * 0.07739938050508499f)); - float _1879 = ((((cb0_026x * _1851) + cb0_026y) * _1851) + cb0_026z) * cb0_044y; - float _1880 = ((((cb0_026x * _1852) + cb0_026y) * _1852) + cb0_026z) * cb0_044z; - float _1881 = ((((cb0_026x * _1853) + cb0_026y) * _1853) + cb0_026z) * cb0_044w; - float _1888 = ((cb0_045x - _1879) * cb0_045w) + _1879; - float _1889 = ((cb0_045y - _1880) * cb0_045w) + _1880; - float _1890 = ((cb0_045z - _1881) * cb0_045w) + _1881; - float _1891 = cb0_044y * _1241; - float _1892 = cb0_044z * _1244; - float _1893 = cb0_044w * _1247; - float _1900 = ((cb0_045x - _1891) * cb0_045w) + _1891; - float _1901 = ((cb0_045y - _1892) * cb0_045w) + _1892; - float _1902 = ((cb0_045z - _1893) * cb0_045w) + _1893; - float _1914 = exp2(log2(max(0.0f, _1888)) * cb0_027y); - float _1915 = exp2(log2(max(0.0f, _1889)) * cb0_027y); - float _1916 = exp2(log2(max(0.0f, _1890)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1914, _1915, _1916)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - do { - if (_1914 < 0.0031306699384003878f) { - _1931 = (_1914 * 12.920000076293945f); - } else { - _1931 = (((pow(_1914, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1915 < 0.0031306699384003878f) { - _1942 = (_1915 * 12.920000076293945f); - } else { - _1942 = (((pow(_1915, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1916 < 0.0031306699384003878f) { - _3370 = _1931; - _3371 = _1942; - _3372 = (_1916 * 12.920000076293945f); - } else { - _3370 = _1931; - _3371 = _1942; - _3372 = (((pow(_1916, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 1) { - float _1957 = mad(0.04736635088920593f, _1916, mad(0.3395121395587921f, _1915, (_1914 * 0.613191545009613f))); - float _1960 = mad(0.01345000695437193f, _1916, mad(0.9163357615470886f, _1915, (_1914 * 0.07020691782236099f))); - float _1963 = mad(0.8696067929267883f, _1916, mad(0.1095672994852066f, _1915, (_1914 * 0.020618872717022896f))); - float _1973 = max(6.103519990574569e-05f, mad(_36, _1963, mad(_35, _1960, (_1957 * _34)))); - float _1974 = max(6.103519990574569e-05f, mad(_39, _1963, mad(_38, _1960, (_1957 * _37)))); - float _1975 = max(6.103519990574569e-05f, mad(_42, _1963, mad(_41, _1960, (_1957 * _40)))); - _3370 = min((_1973 * 4.5f), ((exp2(log2(max(_1973, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3371 = min((_1974 * 4.5f), ((exp2(log2(max(_1974, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3372 = min((_1975 * 4.5f), ((exp2(log2(max(_1975, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _2002 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _2002) { - float _2005 = _1901 * 3.0f; - float _2006 = _1902 * 3.0f; - float _2009 = mad(0.17733481526374817f, _2006, mad(0.38297808170318604f, _2005, (_1900 * 1.31910240650177f))); - float _2012 = mad(0.09676162153482437f, _2006, mad(0.8134231567382812f, _2005, (_1900 * 0.2693769633769989f))); - float _2015 = mad(0.870704174041748f, _2006, mad(0.11154405772686005f, _2005, (_1900 * 0.05263196676969528f))); - float _2019 = max(max(_2009, _2012), _2015); - float _2024 = (max(_2019, 1.000000013351432e-10f) - max(min(min(_2009, _2012), _2015), 1.000000013351432e-10f)) / max(_2019, 0.009999999776482582f); - float _2037 = ((_2012 + _2009) + _2015) + (sqrt((((_2015 - _2012) * _2015) + ((_2012 - _2009) * _2012)) + ((_2009 - _2015) * _2009)) * 1.75f); - float _2038 = _2037 * 0.3333333432674408f; - float _2039 = _2024 + -0.4000000059604645f; - float _2040 = _2039 * 5.0f; - float _2044 = max((1.0f - abs(_2039 * 2.5f)), 0.0f); - float _2055 = ((float(((int)(uint)((bool)(_2040 > 0.0f))) - ((int)(uint)((bool)(_2040 < 0.0f)))) * (1.0f - (_2044 * _2044))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2038 <= 0.0533333346247673f)) { - if (!(_2038 >= 0.1599999964237213f)) { - _2064 = (((0.23999999463558197f / _2037) + -0.5f) * _2055); - } else { - _2064 = 0.0f; - } - } else { - _2064 = _2055; - } - float _2065 = _2064 + 1.0f; - float _2066 = _2065 * _2009; - float _2067 = _2065 * _2012; - float _2068 = _2065 * _2015; - do { - if (!((bool)(_2066 == _2067) && (bool)(_2067 == _2068))) { - float _2075 = ((_2066 * 2.0f) - _2067) - _2068; - float _2078 = ((_2012 - _2015) * 1.7320507764816284f) * _2065; - float _2080 = atan(_2078 / _2075); - bool _2083 = (_2075 < 0.0f); - bool _2084 = (_2075 == 0.0f); - bool _2085 = (_2078 >= 0.0f); - bool _2086 = (_2078 < 0.0f); - _2097 = select((_2085 && _2084), 90.0f, select((_2086 && _2084), -90.0f, (select((_2086 && _2083), (_2080 + -3.1415927410125732f), select((_2085 && _2083), (_2080 + 3.1415927410125732f), _2080)) * 57.2957763671875f))); - } else { - _2097 = 0.0f; - } - float _2102 = min(max(select((_2097 < 0.0f), (_2097 + 360.0f), _2097), 0.0f), 360.0f); - do { - if (_2102 < -180.0f) { - _2111 = (_2102 + 360.0f); - } else { - if (_2102 > 180.0f) { - _2111 = (_2102 + -360.0f); - } else { - _2111 = _2102; - } - } - do { - if ((bool)(_2111 > -67.5f) && (bool)(_2111 < 67.5f)) { - float _2117 = (_2111 + 67.5f) * 0.029629629105329514f; - int _2118 = int(_2117); - float _2120 = _2117 - float(_2118); - float _2121 = _2120 * _2120; - float _2122 = _2121 * _2120; - if (_2118 == 3) { - _2150 = (((0.1666666716337204f - (_2120 * 0.5f)) + (_2121 * 0.5f)) - (_2122 * 0.1666666716337204f)); - } else { - if (_2118 == 2) { - _2150 = ((0.6666666865348816f - _2121) + (_2122 * 0.5f)); - } else { - if (_2118 == 1) { - _2150 = ((0.1666666716337204f - (_2122 * 0.5f)) + ((_2121 + _2120) * 0.5f)); - } else { - _2150 = select((_2118 == 0), (_2122 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2150 = 0.0f; - } - float _2159 = min(max(((((_2024 * 0.27000001072883606f) * (0.029999999329447746f - _2066)) * _2150) + _2066), 0.0f), 65535.0f); - float _2160 = min(max(_2067, 0.0f), 65535.0f); - float _2161 = min(max(_2068, 0.0f), 65535.0f); - float _2174 = min(max(mad(-0.21492856740951538f, _2161, mad(-0.2365107536315918f, _2160, (_2159 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2175 = min(max(mad(-0.09967592358589172f, _2161, mad(1.17622971534729f, _2160, (_2159 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2176 = min(max(mad(0.9977163076400757f, _2161, mad(-0.006032449658960104f, _2160, (_2159 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2177 = dot(float3(_2174, _2175, _2176), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2184 = ((_2174 - _2177) * 0.9599999785423279f) + _2177; - float _2185 = ((_2175 - _2177) * 0.9599999785423279f) + _2177; - float _2186 = ((_2176 - _2177) * 0.9599999785423279f) + _2177; - float _2189 = log2(select((_2184 <= 0.0f), 6.103515625e-05f, _2184)); - float _2190 = _2189 * 0.3010300099849701f; - do { - if (!(_2190 <= -5.2601776123046875f)) { - if ((bool)(_2190 > -5.2601776123046875f) && (bool)(_2190 < -0.7447274923324585f)) { - float _2198 = (_2189 * 0.19999998807907104f) + 3.494786262512207f; - int _2199 = int(_2198); - float _2201 = _2198 - float(_2199); - float _2203 = _global_0[_2199]; - float _2206 = _global_0[(_2199 + 1)]; - float _2211 = _2203 * 0.5f; - _2243 = dot(float3((_2201 * _2201), _2201, 1.0f), float3(mad((_global_0[(_2199 + 2)]), 0.5f, mad(_2206, -1.0f, _2211)), (_2206 - _2203), mad(_2206, 0.5f, _2211))); - } else { - if ((bool)(_2190 >= -0.7447274923324585f) && (bool)(_2190 < 4.673812389373779f)) { - float _2223 = (_2189 * 0.1666666567325592f) + 0.4123218357563019f; - int _2224 = int(_2223); - float _2226 = _2223 - float(_2224); - float _2228 = _global_1[_2224]; - float _2231 = _global_1[(_2224 + 1)]; - float _2236 = _2228 * 0.5f; - _2243 = dot(float3((_2226 * _2226), _2226, 1.0f), float3(mad((_global_1[(_2224 + 2)]), 0.5f, mad(_2231, -1.0f, _2236)), (_2231 - _2228), mad(_2231, 0.5f, _2236))); - } else { - _2243 = 4.0f; - } - } - } else { - _2243 = -4.0f; - } - float _2245 = exp2(_2243 * 3.321928024291992f); - float _2248 = log2(select((_2185 <= 0.0f), 6.103515625e-05f, _2185)); - float _2249 = _2248 * 0.3010300099849701f; - do { - if (!(_2249 <= -5.2601776123046875f)) { - if ((bool)(_2249 > -5.2601776123046875f) && (bool)(_2249 < -0.7447274923324585f)) { - float _2257 = (_2248 * 0.19999998807907104f) + 3.494786262512207f; - int _2258 = int(_2257); - float _2260 = _2257 - float(_2258); - float _2262 = _global_0[_2258]; - float _2265 = _global_0[(_2258 + 1)]; - float _2270 = _2262 * 0.5f; - _2302 = dot(float3((_2260 * _2260), _2260, 1.0f), float3(mad((_global_0[(_2258 + 2)]), 0.5f, mad(_2265, -1.0f, _2270)), (_2265 - _2262), mad(_2265, 0.5f, _2270))); - } else { - if ((bool)(_2249 >= -0.7447274923324585f) && (bool)(_2249 < 4.673812389373779f)) { - float _2282 = (_2248 * 0.1666666567325592f) + 0.4123218357563019f; - int _2283 = int(_2282); - float _2285 = _2282 - float(_2283); - float _2287 = _global_1[_2283]; - float _2290 = _global_1[(_2283 + 1)]; - float _2295 = _2287 * 0.5f; - _2302 = dot(float3((_2285 * _2285), _2285, 1.0f), float3(mad((_global_1[(_2283 + 2)]), 0.5f, mad(_2290, -1.0f, _2295)), (_2290 - _2287), mad(_2290, 0.5f, _2295))); - } else { - _2302 = 4.0f; - } - } - } else { - _2302 = -4.0f; - } - float _2304 = exp2(_2302 * 3.321928024291992f); - float _2307 = log2(select((_2186 <= 0.0f), 6.103515625e-05f, _2186)); - float _2308 = _2307 * 0.3010300099849701f; - do { - if (!(_2308 <= -5.2601776123046875f)) { - if ((bool)(_2308 > -5.2601776123046875f) && (bool)(_2308 < -0.7447274923324585f)) { - float _2316 = (_2307 * 0.19999998807907104f) + 3.494786262512207f; - int _2317 = int(_2316); - float _2319 = _2316 - float(_2317); - float _2321 = _global_0[_2317]; - float _2324 = _global_0[(_2317 + 1)]; - float _2329 = _2321 * 0.5f; - _2361 = dot(float3((_2319 * _2319), _2319, 1.0f), float3(mad((_global_0[(_2317 + 2)]), 0.5f, mad(_2324, -1.0f, _2329)), (_2324 - _2321), mad(_2324, 0.5f, _2329))); - } else { - if ((bool)(_2308 >= -0.7447274923324585f) && (bool)(_2308 < 4.673812389373779f)) { - float _2341 = (_2307 * 0.1666666567325592f) + 0.4123218357563019f; - int _2342 = int(_2341); - float _2344 = _2341 - float(_2342); - float _2346 = _global_1[_2342]; - float _2349 = _global_1[(_2342 + 1)]; - float _2354 = _2346 * 0.5f; - _2361 = dot(float3((_2344 * _2344), _2344, 1.0f), float3(mad((_global_1[(_2342 + 2)]), 0.5f, mad(_2349, -1.0f, _2354)), (_2349 - _2346), mad(_2349, 0.5f, _2354))); - } else { - _2361 = 4.0f; - } - } - } else { - _2361 = -4.0f; - } - float _2363 = exp2(_2361 * 3.321928024291992f); - float _2366 = mad(0.16386906802654266f, _2363, mad(0.14067870378494263f, _2304, (_2245 * 0.6954522132873535f))); - float _2369 = mad(0.0955343171954155f, _2363, mad(0.8596711158752441f, _2304, (_2245 * 0.044794563204050064f))); - float _2372 = mad(1.0015007257461548f, _2363, mad(0.004025210160762072f, _2304, (_2245 * -0.005525882821530104f))); - float _2375 = mad(-0.21492856740951538f, _2372, mad(-0.2365107536315918f, _2369, (_2366 * 1.4514392614364624f))); - float _2378 = mad(-0.09967592358589172f, _2372, mad(1.17622971534729f, _2369, (_2366 * -0.07655377686023712f))); - float _2381 = mad(0.9977163076400757f, _2372, mad(-0.006032449658960104f, _2369, (_2366 * 0.008316148072481155f))); - float _2384 = log2(select((_2375 <= 0.0f), 9.999999747378752e-05f, _2375)); - float _2385 = _2384 * 0.3010300099849701f; - do { - if (!(!(_2385 <= -3.848327875137329f))) { - _2444 = ((_2384 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2385 > -3.848327875137329f) && (bool)(_2385 < 0.6812411546707153f)) { - float _2396 = (_2384 + 12.783867835998535f) * 0.46521204710006714f; - int _2397 = int(_2396); - float _2399 = _2396 - float(_2397); - float _2401 = _global_2[_2397]; - float _2404 = _global_2[(_2397 + 1)]; - float _2409 = _2401 * 0.5f; - _2444 = dot(float3((_2399 * _2399), _2399, 1.0f), float3(mad((_global_2[(_2397 + 2)]), 0.5f, mad(_2404, -1.0f, _2409)), (_2404 - _2401), mad(_2404, 0.5f, _2409))); - } else { - if ((bool)(_2385 >= 0.6812411546707153f) && (bool)(_2385 < 3.653702974319458f)) { - float _2421 = (_2384 + -2.2630341053009033f) * 0.7089107632637024f; - int _2422 = int(_2421); - float _2424 = _2421 - float(_2422); - float _2426 = _global_3[_2422]; - float _2429 = _global_3[(_2422 + 1)]; - float _2434 = _2426 * 0.5f; - _2444 = dot(float3((_2424 * _2424), _2424, 1.0f), float3(mad((_global_3[(_2422 + 2)]), 0.5f, mad(_2429, -1.0f, _2434)), (_2429 - _2426), mad(_2429, 0.5f, _2434))); - } else { - _2444 = ((_2384 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2449 = log2(select((_2378 <= 0.0f), 9.999999747378752e-05f, _2378)); - float _2450 = _2449 * 0.3010300099849701f; - do { - if (!(!(_2450 <= -3.848327875137329f))) { - _2509 = ((_2449 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2450 > -3.848327875137329f) && (bool)(_2450 < 0.6812411546707153f)) { - float _2461 = (_2449 + 12.783867835998535f) * 0.46521204710006714f; - int _2462 = int(_2461); - float _2464 = _2461 - float(_2462); - float _2466 = _global_2[_2462]; - float _2469 = _global_2[(_2462 + 1)]; - float _2474 = _2466 * 0.5f; - _2509 = dot(float3((_2464 * _2464), _2464, 1.0f), float3(mad((_global_2[(_2462 + 2)]), 0.5f, mad(_2469, -1.0f, _2474)), (_2469 - _2466), mad(_2469, 0.5f, _2474))); - } else { - if ((bool)(_2450 >= 0.6812411546707153f) && (bool)(_2450 < 3.653702974319458f)) { - float _2486 = (_2449 + -2.2630341053009033f) * 0.7089107632637024f; - int _2487 = int(_2486); - float _2489 = _2486 - float(_2487); - float _2491 = _global_3[_2487]; - float _2494 = _global_3[(_2487 + 1)]; - float _2499 = _2491 * 0.5f; - _2509 = dot(float3((_2489 * _2489), _2489, 1.0f), float3(mad((_global_3[(_2487 + 2)]), 0.5f, mad(_2494, -1.0f, _2499)), (_2494 - _2491), mad(_2494, 0.5f, _2499))); - } else { - _2509 = ((_2449 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2514 = log2(select((_2381 <= 0.0f), 9.999999747378752e-05f, _2381)); - float _2515 = _2514 * 0.3010300099849701f; - do { - if (!(!(_2515 <= -3.848327875137329f))) { - _2574 = ((_2514 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2515 > -3.848327875137329f) && (bool)(_2515 < 0.6812411546707153f)) { - float _2526 = (_2514 + 12.783867835998535f) * 0.46521204710006714f; - int _2527 = int(_2526); - float _2529 = _2526 - float(_2527); - float _2531 = _global_2[_2527]; - float _2534 = _global_2[(_2527 + 1)]; - float _2539 = _2531 * 0.5f; - _2574 = dot(float3((_2529 * _2529), _2529, 1.0f), float3(mad((_global_2[(_2527 + 2)]), 0.5f, mad(_2534, -1.0f, _2539)), (_2534 - _2531), mad(_2534, 0.5f, _2539))); - } else { - if ((bool)(_2515 >= 0.6812411546707153f) && (bool)(_2515 < 3.653702974319458f)) { - float _2551 = (_2514 + -2.2630341053009033f) * 0.7089107632637024f; - int _2552 = int(_2551); - float _2554 = _2551 - float(_2552); - float _2556 = _global_3[_2552]; - float _2559 = _global_3[(_2552 + 1)]; - float _2564 = _2556 * 0.5f; - _2574 = dot(float3((_2554 * _2554), _2554, 1.0f), float3(mad((_global_3[(_2552 + 2)]), 0.5f, mad(_2559, -1.0f, _2564)), (_2559 - _2556), mad(_2559, 0.5f, _2564))); - } else { - _2574 = ((_2514 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2577 = exp2(_2444 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2578 = exp2(_2509 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2579 = exp2(_2574 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_2002) { - _2591 = mad(_36, _2579, mad(_35, _2578, (_2577 * _34))); - _2592 = mad(_39, _2579, mad(_38, _2578, (_2577 * _37))); - _2593 = mad(_42, _2579, mad(_41, _2578, (_2577 * _40))); - } else { - _2591 = _2577; - _2592 = _2578; - _2593 = _2579; - } - float _2603 = exp2(log2(_2591 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2604 = exp2(log2(_2592 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2605 = exp2(log2(_2593 * 9.999999747378752e-05f) * 0.1593017578125f); - _3370 = exp2(log2((1.0f / ((_2603 * 18.6875f) + 1.0f)) * ((_2603 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3371 = exp2(log2((1.0f / ((_2604 * 18.6875f) + 1.0f)) * ((_2604 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3372 = exp2(log2((1.0f / ((_2605 * 18.6875f) + 1.0f)) * ((_2605 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2638 = _1901 * 3.0f; - float _2639 = _1902 * 3.0f; - float _2642 = mad(0.17733481526374817f, _2639, mad(0.38297808170318604f, _2638, (_1900 * 1.31910240650177f))); - float _2645 = mad(0.09676162153482437f, _2639, mad(0.8134231567382812f, _2638, (_1900 * 0.2693769633769989f))); - float _2648 = mad(0.870704174041748f, _2639, mad(0.11154405772686005f, _2638, (_1900 * 0.05263196676969528f))); - float _2652 = max(max(_2642, _2645), _2648); - float _2657 = (max(_2652, 1.000000013351432e-10f) - max(min(min(_2642, _2645), _2648), 1.000000013351432e-10f)) / max(_2652, 0.009999999776482582f); - float _2670 = ((_2645 + _2642) + _2648) + (sqrt((((_2648 - _2645) * _2648) + ((_2645 - _2642) * _2645)) + ((_2642 - _2648) * _2642)) * 1.75f); - float _2671 = _2670 * 0.3333333432674408f; - float _2672 = _2657 + -0.4000000059604645f; - float _2673 = _2672 * 5.0f; - float _2677 = max((1.0f - abs(_2672 * 2.5f)), 0.0f); - float _2688 = ((float(((int)(uint)((bool)(_2673 > 0.0f))) - ((int)(uint)((bool)(_2673 < 0.0f)))) * (1.0f - (_2677 * _2677))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2671 <= 0.0533333346247673f)) { - if (!(_2671 >= 0.1599999964237213f)) { - _2697 = (((0.23999999463558197f / _2670) + -0.5f) * _2688); - } else { - _2697 = 0.0f; - } - } else { - _2697 = _2688; - } - float _2698 = _2697 + 1.0f; - float _2699 = _2698 * _2642; - float _2700 = _2698 * _2645; - float _2701 = _2698 * _2648; - do { - if (!((bool)(_2699 == _2700) && (bool)(_2700 == _2701))) { - float _2708 = ((_2699 * 2.0f) - _2700) - _2701; - float _2711 = ((_2645 - _2648) * 1.7320507764816284f) * _2698; - float _2713 = atan(_2711 / _2708); - bool _2716 = (_2708 < 0.0f); - bool _2717 = (_2708 == 0.0f); - bool _2718 = (_2711 >= 0.0f); - bool _2719 = (_2711 < 0.0f); - _2730 = select((_2718 && _2717), 90.0f, select((_2719 && _2717), -90.0f, (select((_2719 && _2716), (_2713 + -3.1415927410125732f), select((_2718 && _2716), (_2713 + 3.1415927410125732f), _2713)) * 57.2957763671875f))); - } else { - _2730 = 0.0f; - } - float _2735 = min(max(select((_2730 < 0.0f), (_2730 + 360.0f), _2730), 0.0f), 360.0f); - do { - if (_2735 < -180.0f) { - _2744 = (_2735 + 360.0f); - } else { - if (_2735 > 180.0f) { - _2744 = (_2735 + -360.0f); - } else { - _2744 = _2735; - } - } - do { - if ((bool)(_2744 > -67.5f) && (bool)(_2744 < 67.5f)) { - float _2750 = (_2744 + 67.5f) * 0.029629629105329514f; - int _2751 = int(_2750); - float _2753 = _2750 - float(_2751); - float _2754 = _2753 * _2753; - float _2755 = _2754 * _2753; - if (_2751 == 3) { - _2783 = (((0.1666666716337204f - (_2753 * 0.5f)) + (_2754 * 0.5f)) - (_2755 * 0.1666666716337204f)); - } else { - if (_2751 == 2) { - _2783 = ((0.6666666865348816f - _2754) + (_2755 * 0.5f)); - } else { - if (_2751 == 1) { - _2783 = ((0.1666666716337204f - (_2755 * 0.5f)) + ((_2754 + _2753) * 0.5f)); - } else { - _2783 = select((_2751 == 0), (_2755 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2783 = 0.0f; - } - float _2792 = min(max(((((_2657 * 0.27000001072883606f) * (0.029999999329447746f - _2699)) * _2783) + _2699), 0.0f), 65535.0f); - float _2793 = min(max(_2700, 0.0f), 65535.0f); - float _2794 = min(max(_2701, 0.0f), 65535.0f); - float _2807 = min(max(mad(-0.21492856740951538f, _2794, mad(-0.2365107536315918f, _2793, (_2792 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2808 = min(max(mad(-0.09967592358589172f, _2794, mad(1.17622971534729f, _2793, (_2792 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2809 = min(max(mad(0.9977163076400757f, _2794, mad(-0.006032449658960104f, _2793, (_2792 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2810 = dot(float3(_2807, _2808, _2809), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2817 = ((_2807 - _2810) * 0.9599999785423279f) + _2810; - float _2818 = ((_2808 - _2810) * 0.9599999785423279f) + _2810; - float _2819 = ((_2809 - _2810) * 0.9599999785423279f) + _2810; - float _2822 = log2(select((_2817 <= 0.0f), 6.103515625e-05f, _2817)); - float _2823 = _2822 * 0.3010300099849701f; - do { - if (!(_2823 <= -5.2601776123046875f)) { - if ((bool)(_2823 > -5.2601776123046875f) && (bool)(_2823 < -0.7447274923324585f)) { - float _2831 = (_2822 * 0.19999998807907104f) + 3.494786262512207f; - int _2832 = int(_2831); - float _2834 = _2831 - float(_2832); - float _2836 = _global_0[_2832]; - float _2839 = _global_0[(_2832 + 1)]; - float _2844 = _2836 * 0.5f; - _2876 = dot(float3((_2834 * _2834), _2834, 1.0f), float3(mad((_global_0[(_2832 + 2)]), 0.5f, mad(_2839, -1.0f, _2844)), (_2839 - _2836), mad(_2839, 0.5f, _2844))); - } else { - if ((bool)(_2823 >= -0.7447274923324585f) && (bool)(_2823 < 4.673812389373779f)) { - float _2856 = (_2822 * 0.1666666567325592f) + 0.4123218357563019f; - int _2857 = int(_2856); - float _2859 = _2856 - float(_2857); - float _2861 = _global_1[_2857]; - float _2864 = _global_1[(_2857 + 1)]; - float _2869 = _2861 * 0.5f; - _2876 = dot(float3((_2859 * _2859), _2859, 1.0f), float3(mad((_global_1[(_2857 + 2)]), 0.5f, mad(_2864, -1.0f, _2869)), (_2864 - _2861), mad(_2864, 0.5f, _2869))); - } else { - _2876 = 4.0f; - } - } - } else { - _2876 = -4.0f; - } - float _2878 = exp2(_2876 * 3.321928024291992f); - float _2881 = log2(select((_2818 <= 0.0f), 6.103515625e-05f, _2818)); - float _2882 = _2881 * 0.3010300099849701f; - do { - if (!(_2882 <= -5.2601776123046875f)) { - if ((bool)(_2882 > -5.2601776123046875f) && (bool)(_2882 < -0.7447274923324585f)) { - float _2890 = (_2881 * 0.19999998807907104f) + 3.494786262512207f; - int _2891 = int(_2890); - float _2893 = _2890 - float(_2891); - float _2895 = _global_0[_2891]; - float _2898 = _global_0[(_2891 + 1)]; - float _2903 = _2895 * 0.5f; - _2935 = dot(float3((_2893 * _2893), _2893, 1.0f), float3(mad((_global_0[(_2891 + 2)]), 0.5f, mad(_2898, -1.0f, _2903)), (_2898 - _2895), mad(_2898, 0.5f, _2903))); - } else { - if ((bool)(_2882 >= -0.7447274923324585f) && (bool)(_2882 < 4.673812389373779f)) { - float _2915 = (_2881 * 0.1666666567325592f) + 0.4123218357563019f; - int _2916 = int(_2915); - float _2918 = _2915 - float(_2916); - float _2920 = _global_1[_2916]; - float _2923 = _global_1[(_2916 + 1)]; - float _2928 = _2920 * 0.5f; - _2935 = dot(float3((_2918 * _2918), _2918, 1.0f), float3(mad((_global_1[(_2916 + 2)]), 0.5f, mad(_2923, -1.0f, _2928)), (_2923 - _2920), mad(_2923, 0.5f, _2928))); - } else { - _2935 = 4.0f; - } - } - } else { - _2935 = -4.0f; - } - float _2937 = exp2(_2935 * 3.321928024291992f); - float _2940 = log2(select((_2819 <= 0.0f), 6.103515625e-05f, _2819)); - float _2941 = _2940 * 0.3010300099849701f; - do { - if (!(_2941 <= -5.2601776123046875f)) { - if ((bool)(_2941 > -5.2601776123046875f) && (bool)(_2941 < -0.7447274923324585f)) { - float _2949 = (_2940 * 0.19999998807907104f) + 3.494786262512207f; - int _2950 = int(_2949); - float _2952 = _2949 - float(_2950); - float _2954 = _global_0[_2950]; - float _2957 = _global_0[(_2950 + 1)]; - float _2962 = _2954 * 0.5f; - _2994 = dot(float3((_2952 * _2952), _2952, 1.0f), float3(mad((_global_0[(_2950 + 2)]), 0.5f, mad(_2957, -1.0f, _2962)), (_2957 - _2954), mad(_2957, 0.5f, _2962))); - } else { - if ((bool)(_2941 >= -0.7447274923324585f) && (bool)(_2941 < 4.673812389373779f)) { - float _2974 = (_2940 * 0.1666666567325592f) + 0.4123218357563019f; - int _2975 = int(_2974); - float _2977 = _2974 - float(_2975); - float _2979 = _global_1[_2975]; - float _2982 = _global_1[(_2975 + 1)]; - float _2987 = _2979 * 0.5f; - _2994 = dot(float3((_2977 * _2977), _2977, 1.0f), float3(mad((_global_1[(_2975 + 2)]), 0.5f, mad(_2982, -1.0f, _2987)), (_2982 - _2979), mad(_2982, 0.5f, _2987))); - } else { - _2994 = 4.0f; - } - } - } else { - _2994 = -4.0f; - } - float _2996 = exp2(_2994 * 3.321928024291992f); - float _2999 = mad(0.16386906802654266f, _2996, mad(0.14067870378494263f, _2937, (_2878 * 0.6954522132873535f))); - float _3002 = mad(0.0955343171954155f, _2996, mad(0.8596711158752441f, _2937, (_2878 * 0.044794563204050064f))); - float _3005 = mad(1.0015007257461548f, _2996, mad(0.004025210160762072f, _2937, (_2878 * -0.005525882821530104f))); - float _3008 = mad(-0.21492856740951538f, _3005, mad(-0.2365107536315918f, _3002, (_2999 * 1.4514392614364624f))); - float _3011 = mad(-0.09967592358589172f, _3005, mad(1.17622971534729f, _3002, (_2999 * -0.07655377686023712f))); - float _3014 = mad(0.9977163076400757f, _3005, mad(-0.006032449658960104f, _3002, (_2999 * 0.008316148072481155f))); - float _3017 = log2(select((_3008 <= 0.0f), 9.999999747378752e-05f, _3008)); - float _3018 = _3017 * 0.3010300099849701f; - do { - if (!(_3018 <= -3.848327875137329f)) { - if ((bool)(_3018 > -3.848327875137329f) && (bool)(_3018 < 0.6812411546707153f)) { - float _3026 = (_3017 + 12.783867835998535f) * 0.46521204710006714f; - int _3027 = int(_3026); - float _3029 = _3026 - float(_3027); - float _3031 = _global_4[_3027]; - float _3034 = _global_4[(_3027 + 1)]; - float _3039 = _3031 * 0.5f; - _3074 = dot(float3((_3029 * _3029), _3029, 1.0f), float3(mad((_global_4[(_3027 + 2)]), 0.5f, mad(_3034, -1.0f, _3039)), (_3034 - _3031), mad(_3034, 0.5f, _3039))); - } else { - if ((bool)(_3018 >= 0.6812411546707153f) && (bool)(_3018 < 3.7613162994384766f)) { - float _3051 = (_3017 + -2.2630341053009033f) * 0.6841424107551575f; - int _3052 = int(_3051); - float _3054 = _3051 - float(_3052); - float _3056 = _global_5[_3052]; - float _3059 = _global_5[(_3052 + 1)]; - float _3064 = _3056 * 0.5f; - _3074 = dot(float3((_3054 * _3054), _3054, 1.0f), float3(mad((_global_5[(_3052 + 2)]), 0.5f, mad(_3059, -1.0f, _3064)), (_3059 - _3056), mad(_3059, 0.5f, _3064))); - } else { - _3074 = ((_3017 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3074 = -2.301030158996582f; - } - float _3076 = exp2(_3074 * 3.321928024291992f); - float _3079 = log2(select((_3011 <= 0.0f), 9.999999747378752e-05f, _3011)); - float _3080 = _3079 * 0.3010300099849701f; - do { - if (!(_3080 <= -3.848327875137329f)) { - if ((bool)(_3080 > -3.848327875137329f) && (bool)(_3080 < 0.6812411546707153f)) { - float _3088 = (_3079 + 12.783867835998535f) * 0.46521204710006714f; - int _3089 = int(_3088); - float _3091 = _3088 - float(_3089); - float _3093 = _global_4[_3089]; - float _3096 = _global_4[(_3089 + 1)]; - float _3101 = _3093 * 0.5f; - _3136 = dot(float3((_3091 * _3091), _3091, 1.0f), float3(mad((_global_4[(_3089 + 2)]), 0.5f, mad(_3096, -1.0f, _3101)), (_3096 - _3093), mad(_3096, 0.5f, _3101))); - } else { - if ((bool)(_3080 >= 0.6812411546707153f) && (bool)(_3080 < 3.7613162994384766f)) { - float _3113 = (_3079 + -2.2630341053009033f) * 0.6841424107551575f; - int _3114 = int(_3113); - float _3116 = _3113 - float(_3114); - float _3118 = _global_5[_3114]; - float _3121 = _global_5[(_3114 + 1)]; - float _3126 = _3118 * 0.5f; - _3136 = dot(float3((_3116 * _3116), _3116, 1.0f), float3(mad((_global_5[(_3114 + 2)]), 0.5f, mad(_3121, -1.0f, _3126)), (_3121 - _3118), mad(_3121, 0.5f, _3126))); - } else { - _3136 = ((_3079 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3136 = -2.301030158996582f; - } - float _3138 = exp2(_3136 * 3.321928024291992f); - float _3141 = log2(select((_3014 <= 0.0f), 9.999999747378752e-05f, _3014)); - float _3142 = _3141 * 0.3010300099849701f; - do { - if (!(_3142 <= -3.848327875137329f)) { - if ((bool)(_3142 > -3.848327875137329f) && (bool)(_3142 < 0.6812411546707153f)) { - float _3150 = (_3141 + 12.783867835998535f) * 0.46521204710006714f; - int _3151 = int(_3150); - float _3153 = _3150 - float(_3151); - float _3155 = _global_4[_3151]; - float _3158 = _global_4[(_3151 + 1)]; - float _3163 = _3155 * 0.5f; - _3198 = dot(float3((_3153 * _3153), _3153, 1.0f), float3(mad((_global_4[(_3151 + 2)]), 0.5f, mad(_3158, -1.0f, _3163)), (_3158 - _3155), mad(_3158, 0.5f, _3163))); - } else { - if ((bool)(_3142 >= 0.6812411546707153f) && (bool)(_3142 < 3.7613162994384766f)) { - float _3175 = (_3141 + -2.2630341053009033f) * 0.6841424107551575f; - int _3176 = int(_3175); - float _3178 = _3175 - float(_3176); - float _3180 = _global_5[_3176]; - float _3183 = _global_5[(_3176 + 1)]; - float _3188 = _3180 * 0.5f; - _3198 = dot(float3((_3178 * _3178), _3178, 1.0f), float3(mad((_global_5[(_3176 + 2)]), 0.5f, mad(_3183, -1.0f, _3188)), (_3183 - _3180), mad(_3183, 0.5f, _3188))); - } else { - _3198 = ((_3141 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3198 = -2.301030158996582f; - } - float _3200 = exp2(_3198 * 3.321928024291992f); - do { - if (!((uint)(cb0_074z) == 6)) { - _3212 = mad(_36, _3200, mad(_35, _3138, (_3076 * _34))); - _3213 = mad(_39, _3200, mad(_38, _3138, (_3076 * _37))); - _3214 = mad(_42, _3200, mad(_41, _3138, (_3076 * _40))); - } else { - _3212 = _3076; - _3213 = _3138; - _3214 = _3200; - } - float _3224 = exp2(log2(_3212 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3225 = exp2(log2(_3213 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3226 = exp2(log2(_3214 * 9.999999747378752e-05f) * 0.1593017578125f); - _3370 = exp2(log2((1.0f / ((_3224 * 18.6875f) + 1.0f)) * ((_3224 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3371 = exp2(log2((1.0f / ((_3225 * 18.6875f) + 1.0f)) * ((_3225 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3372 = exp2(log2((1.0f / ((_3226 * 18.6875f) + 1.0f)) * ((_3226 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 7) { - float _3259 = mad(0.04736635088920593f, _1902, mad(0.3395121395587921f, _1901, (_1900 * 0.613191545009613f))); - float _3262 = mad(0.01345000695437193f, _1902, mad(0.9163357615470886f, _1901, (_1900 * 0.07020691782236099f))); - float _3265 = mad(0.8696067929267883f, _1902, mad(0.1095672994852066f, _1901, (_1900 * 0.020618872717022896f))); - float _3284 = exp2(log2(mad(_36, _3265, mad(_35, _3262, (_3259 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3285 = exp2(log2(mad(_39, _3265, mad(_38, _3262, (_3259 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3286 = exp2(log2(mad(_42, _3265, mad(_41, _3262, (_3259 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3370 = exp2(log2((1.0f / ((_3284 * 18.6875f) + 1.0f)) * ((_3284 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3371 = exp2(log2((1.0f / ((_3285 * 18.6875f) + 1.0f)) * ((_3285 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3372 = exp2(log2((1.0f / ((_3286 * 18.6875f) + 1.0f)) * ((_3286 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3321 = mad(0.04736635088920593f, _1890, mad(0.3395121395587921f, _1889, (_1888 * 0.613191545009613f))); - float _3324 = mad(0.01345000695437193f, _1890, mad(0.9163357615470886f, _1889, (_1888 * 0.07020691782236099f))); - float _3327 = mad(0.8696067929267883f, _1890, mad(0.1095672994852066f, _1889, (_1888 * 0.020618872717022896f))); - _3370 = mad(_36, _3327, mad(_35, _3324, (_3321 * _34))); - _3371 = mad(_39, _3327, mad(_38, _3324, (_3321 * _37))); - _3372 = mad(_42, _3327, mad(_41, _3324, (_3321 * _40))); - } else { - float _3340 = mad(0.04736635088920593f, _1916, mad(0.3395121395587921f, _1915, (_1914 * 0.613191545009613f))); - float _3343 = mad(0.01345000695437193f, _1916, mad(0.9163357615470886f, _1915, (_1914 * 0.07020691782236099f))); - float _3346 = mad(0.8696067929267883f, _1916, mad(0.1095672994852066f, _1915, (_1914 * 0.020618872717022896f))); - float _3359 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3370 = exp2(log2(mad(_36, _3346, mad(_35, _3343, (_3340 * _34)))) * _3359); - _3371 = exp2(log2(mad(_39, _3346, mad(_38, _3343, (_3340 * _37)))) * _3359); - _3372 = exp2(log2(mad(_42, _3346, mad(_41, _3343, (_3340 * _40)))) * _3359); - } - } else { - _3370 = _1900; - _3371 = _1901; - _3372 = _1902; - } - } - } - } - } - } - SV_Target.x = (_3370 * 0.9523810148239136f); - SV_Target.y = (_3371 * 0.9523810148239136f); - SV_Target.z = (_3372 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x8EF8F18D.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x8EF8F18D.ps_6_0.hlsl deleted file mode 100644 index bf83334f0..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x8EF8F18D.ps_6_0.hlsl +++ /dev/null @@ -1,1219 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)SV_RenderTargetArrayIndex); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _340; - float _341; - float _342; - float _889; - float _922; - float _936; - float _1000; - float _1138; - float _1139; - float _1140; - float _1283; - float _1284; - float _1285; - float _1299; - float _1310; - float _1321; - float _1491; - float _1502; - float _1624; - float _1657; - float _1671; - float _1710; - float _1803; - float _1862; - float _1921; - float _2004; - float _2069; - float _2134; - float _2151; - float _2152; - float _2153; - float _2257; - float _2290; - float _2304; - float _2343; - float _2436; - float _2495; - float _2554; - float _2634; - float _2696; - float _2758; - float _2772; - float _2773; - float _2774; - float _2932; - float _2933; - float _2934; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _23 = ((uint)(cb0_074y) == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _157 = cb0_047y * 0.05000000074505806f; - float _160 = _132 - ((_157 * _142) * _156); - float _163 = ((_157 * _132) * _156) + _142; - float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); - float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); - float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _176 = max(_175, 1.000000013351432e-10f); - float _177 = _174 / _176; - float _180 = ((1.0f - _174) - _175) / _176; - float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); - float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); - float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); - float _193 = mad(_191, -0.7501999735832214f, 0.0f); - float _194 = mad(_191, 1.7135000228881836f, 0.0f); - float _195 = mad(_191, 0.03669999912381172f, -0.0f); - float _196 = mad(_192, 0.03889999911189079f, 0.0f); - float _197 = mad(_192, -0.06849999725818634f, 0.0f); - float _198 = mad(_192, 1.0296000242233276f, 0.0f); - float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); - float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); - float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); - float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); - float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); - float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); - float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); - float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); - float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); - float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); - float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); - float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); - float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); - float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); - float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); - float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); - float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); - float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); - float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); - float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); - float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); - float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); - float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); - float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); - // bool _300 = ((uint)(cb0_046x) == 0); - bool _300 = ((uint)(tm_flags.x) == 0); - if (_300) { - float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _306 = (_291 / _302) + -1.0f; - float _307 = (_294 / _302) + -1.0f; - float _308 = (_297 / _302) + -1.0f; - float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); - _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); - _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); - _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); - } else { - _340 = _291; - _341 = _294; - _342 = _297; - } - float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _357 = cb0_052w + cb0_057w; - float _371 = cb0_051w * cb0_056w; - float _385 = cb0_050w * cb0_055w; - float _399 = cb0_049w * cb0_054w; - float _413 = cb0_048w * cb0_053w; - float _417 = _340 - _343; - float _418 = _341 - _343; - float _419 = _342 - _343; - float _477 = saturate(_343 / cb0_073x); - float _481 = (_477 * _477) * (3.0f - (_477 * 2.0f)); - float _482 = 1.0f - _481; - float _491 = cb0_052w + cb0_067w; - float _500 = cb0_051w * cb0_066w; - float _509 = cb0_050w * cb0_065w; - float _518 = cb0_049w * cb0_064w; - float _527 = cb0_048w * cb0_063w; - float _589 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); - float _593 = (_589 * _589) * (3.0f - (_589 * 2.0f)); - float _602 = cb0_052w + cb0_062w; - float _611 = cb0_051w * cb0_061w; - float _620 = cb0_050w * cb0_060w; - float _629 = cb0_049w * cb0_059w; - float _638 = cb0_048w * cb0_058w; - float _696 = _481 - _593; - float _707 = ((_593 * (((cb0_052x + cb0_067x) + _491) + (((cb0_051x * cb0_066x) * _500) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _518) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _527) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _509)))))) + (_482 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385))))))) + ((((cb0_052x + cb0_062x) + _602) + (((cb0_051x * cb0_061x) * _611) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _629) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _638) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _620))))) * _696); - float _709 = ((_593 * (((cb0_052y + cb0_067y) + _491) + (((cb0_051y * cb0_066y) * _500) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _518) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _527) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _509)))))) + (_482 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385))))))) + ((((cb0_052y + cb0_062y) + _602) + (((cb0_051y * cb0_061y) * _611) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _629) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _638) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _620))))) * _696); - float _711 = ((_593 * (((cb0_052z + cb0_067z) + _491) + (((cb0_051z * cb0_066z) * _500) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _518) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _527) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _509)))))) + (_482 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385))))))) + ((((cb0_052z + cb0_062z) + _602) + (((cb0_051z * cb0_061z) * _611) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _629) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _638) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _620))))) * _696); - float _737 = dot(float3(_707, _709, _711), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _795 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_707 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _796 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_709 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _797 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_711 - _737)) + _737)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _800 = mad(-0.0832584798336029f, _797, mad(-0.6217905879020691f, _796, (_795 * 1.7050515413284302f))); - float _803 = mad(-0.010548528283834457f, _797, mad(1.1408027410507202f, _796, (_795 * -0.13025718927383423f))); - float _806 = mad(1.152971863746643f, _797, mad(-0.1289687603712082f, _796, (_795 * -0.024003278464078903f))); - float _822 = ((mad(0.061360642313957214f, _797, mad(-4.540197551250458e-09f, _796, (_795 * 0.9386394023895264f))) - _795) * cb0_074z) + _795; - float _823 = ((mad(0.169205904006958f, _797, mad(0.8307942152023315f, _796, (_795 * 6.775371730327606e-08f))) - _796) * cb0_074z) + _796; - float _824 = (mad(-2.3283064365386963e-10f, _796, (_795 * -9.313225746154785e-10f)) * cb0_074z) + _797; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _834 = mad(0.16386905312538147f, _824, mad(0.14067868888378143f, _823, (_822 * 0.6954522132873535f))); - float _837 = mad(0.0955343246459961f, _824, mad(0.8596711158752441f, _823, (_822 * 0.044794581830501556f))); - float _840 = mad(1.0015007257461548f, _824, mad(0.004025210160762072f, _823, (_822 * -0.005525882821530104f))); - float _844 = max(max(_834, _837), _840); - float _849 = (max(_844, 1.000000013351432e-10f) - max(min(min(_834, _837), _840), 1.000000013351432e-10f)) / max(_844, 0.009999999776482582f); - float _862 = ((_837 + _834) + _840) + (sqrt((((_840 - _837) * _840) + ((_837 - _834) * _837)) + ((_834 - _840) * _834)) * 1.75f); - float _863 = _862 * 0.3333333432674408f; - float _864 = _849 + -0.4000000059604645f; - float _865 = _864 * 5.0f; - float _869 = max((1.0f - abs(_864 * 2.5f)), 0.0f); - float _880 = ((float(((int)(uint)((bool)(_865 > 0.0f))) - ((int)(uint)((bool)(_865 < 0.0f)))) * (1.0f - (_869 * _869))) + 1.0f) * 0.02500000037252903f; - if (!(_863 <= 0.0533333346247673f)) { - if (!(_863 >= 0.1599999964237213f)) { - _889 = (((0.23999999463558197f / _862) + -0.5f) * _880); - } else { - _889 = 0.0f; - } - } else { - _889 = _880; - } - float _890 = _889 + 1.0f; - float _891 = _890 * _834; - float _892 = _890 * _837; - float _893 = _890 * _840; - if (!((bool)(_891 == _892) && (bool)(_892 == _893))) { - float _900 = ((_891 * 2.0f) - _892) - _893; - float _903 = ((_837 - _840) * 1.7320507764816284f) * _890; - float _905 = atan(_903 / _900); - bool _908 = (_900 < 0.0f); - bool _909 = (_900 == 0.0f); - bool _910 = (_903 >= 0.0f); - bool _911 = (_903 < 0.0f); - _922 = select((_910 && _909), 90.0f, select((_911 && _909), -90.0f, (select((_911 && _908), (_905 + -3.1415927410125732f), select((_910 && _908), (_905 + 3.1415927410125732f), _905)) * 57.2957763671875f))); - } else { - _922 = 0.0f; - } - float _927 = min(max(select((_922 < 0.0f), (_922 + 360.0f), _922), 0.0f), 360.0f); - if (_927 < -180.0f) { - _936 = (_927 + 360.0f); - } else { - if (_927 > 180.0f) { - _936 = (_927 + -360.0f); - } else { - _936 = _927; - } - } - float _940 = saturate(1.0f - abs(_936 * 0.014814814552664757f)); - float _944 = (_940 * _940) * (3.0f - (_940 * 2.0f)); - float _950 = ((_944 * _944) * ((_849 * 0.18000000715255737f) * (0.029999999329447746f - _891))) + _891; - float _960 = max(0.0f, mad(-0.21492856740951538f, _893, mad(-0.2365107536315918f, _892, (_950 * 1.4514392614364624f)))); - float _961 = max(0.0f, mad(-0.09967592358589172f, _893, mad(1.17622971534729f, _892, (_950 * -0.07655377686023712f)))); - float _962 = max(0.0f, mad(0.9977163076400757f, _893, mad(-0.006032449658960104f, _892, (_950 * 0.008316148072481155f)))); - float _963 = dot(float3(_960, _961, _962), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _977 = (cb0_036w + 1.0f) - cb0_036y; - float _980 = cb0_037x + 1.0f; - float _982 = _980 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1000 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _991 = (cb0_036w + 0.18000000715255737f) / _977; - _1000 = (-0.7447274923324585f - ((log2(_991 / (2.0f - _991)) * 0.3465735912322998f) * (_977 / cb0_036x))); - } - float _1003 = ((1.0f - cb0_036y) / cb0_036x) - _1000; - float _1005 = (cb0_036z / cb0_036x) - _1003; - float _1009 = log2(lerp(_963, _960, 0.9599999785423279f)) * 0.3010300099849701f; - float _1010 = log2(lerp(_963, _961, 0.9599999785423279f)) * 0.3010300099849701f; - float _1011 = log2(lerp(_963, _962, 0.9599999785423279f)) * 0.3010300099849701f; - float _1015 = cb0_036x * (_1009 + _1003); - float _1016 = cb0_036x * (_1010 + _1003); - float _1017 = cb0_036x * (_1011 + _1003); - float _1018 = _977 * 2.0f; - float _1020 = (cb0_036x * -2.0f) / _977; - float _1021 = _1009 - _1000; - float _1022 = _1010 - _1000; - float _1023 = _1011 - _1000; - float _1042 = _982 * 2.0f; - float _1044 = (cb0_036x * 2.0f) / _982; - float _1069 = select((_1009 < _1000), ((_1018 / (exp2((_1021 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1015); - float _1070 = select((_1010 < _1000), ((_1018 / (exp2((_1022 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1016); - float _1071 = select((_1011 < _1000), ((_1018 / (exp2((_1023 * 1.4426950216293335f) * _1020) + 1.0f)) - cb0_036w), _1017); - float _1078 = _1005 - _1000; - float _1082 = saturate(_1021 / _1078); - float _1083 = saturate(_1022 / _1078); - float _1084 = saturate(_1023 / _1078); - bool _1085 = (_1005 < _1000); - float _1089 = select(_1085, (1.0f - _1082), _1082); - float _1090 = select(_1085, (1.0f - _1083), _1083); - float _1091 = select(_1085, (1.0f - _1084), _1084); - float _1110 = (((_1089 * _1089) * (select((_1009 > _1005), (_980 - (_1042 / (exp2(((_1009 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; - float _1111 = (((_1090 * _1090) * (select((_1010 > _1005), (_980 - (_1042 / (exp2(((_1010 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1016) - _1070)) * (3.0f - (_1090 * 2.0f))) + _1070; - float _1112 = (((_1091 * _1091) * (select((_1011 > _1005), (_980 - (_1042 / (exp2(((_1011 - _1005) * 1.4426950216293335f) * _1044) + 1.0f))), _1017) - _1071)) * (3.0f - (_1091 * 2.0f))) + _1071; - float _1113 = dot(float3(_1110, _1111, _1112), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1138 = ((cb0_075x * (max(0.0f, (lerp(_1113, _1110, 0.9300000071525574f))) - _822)) + _822); - _1139 = ((cb0_075x * (max(0.0f, (lerp(_1113, _1111, 0.9300000071525574f))) - _823)) + _823); - _1140 = ((cb0_075x * (max(0.0f, (lerp(_1113, _1112, 0.9300000071525574f))) - _824)) + _824); - } else { - _1138 = _822; - _1139 = _823; - _1140 = _824; - } - float _1156 = ((mad(-0.06537103652954102f, _1140, mad(1.451815478503704e-06f, _1139, (_1138 * 1.065374732017517f))) - _1138) * cb0_074z) + _1138; - float _1157 = ((mad(-0.20366770029067993f, _1140, mad(1.2036634683609009f, _1139, (_1138 * -2.57161445915699e-07f))) - _1139) * cb0_074z) + _1139; - float _1158 = ((mad(0.9999996423721313f, _1140, mad(2.0954757928848267e-08f, _1139, (_1138 * 1.862645149230957e-08f))) - _1140) * cb0_074z) + _1140; - [branch] - if (!_300) { - float _1201 = 1.0f / (dot(float3(_800, _803, _806), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1211 = max(0.0f, (((_1201 * cb0_035x) + cb0_034x) * dot(float3(_800, _803, _806), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1212 = max(0.0f, (((_1201 * cb0_035y) + cb0_034y) * dot(float3(_800, _803, _806), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1213 = max(0.0f, (((_1201 * cb0_035z) + cb0_034z) * dot(float3(_800, _803, _806), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1219 = max(0.0f, (cb0_031x - _1211)); - float _1220 = max(0.0f, (cb0_031x - _1212)); - float _1221 = max(0.0f, (cb0_031x - _1213)); - float _1223 = max(_1211, cb0_031z); - float _1224 = max(_1212, cb0_031z); - float _1225 = max(_1213, cb0_031z); - _1283 = (((((((cb0_032x * _1223) + cb0_032y) * (1.0f / (cb0_031w + _1223))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1211, cb0_031x), cb0_031z))) + ((cb0_028w * _1219) * (1.0f / (cb0_031y + _1219)))) + cb0_029w); - _1284 = ((((((1.0f / (cb0_031w + _1224)) * ((cb0_032x * _1224) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1212, cb0_031x), cb0_031z))) + ((cb0_028w * _1220) * (1.0f / (cb0_031y + _1220)))) + cb0_029w); - _1285 = ((((((1.0f / (cb0_031w + _1225)) * ((cb0_032x * _1225) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1213, cb0_031x), cb0_031z))) + ((cb0_028w * _1221) * (1.0f / (cb0_031y + _1221)))) + cb0_029w); - } else { - _1283 = max(0.0f, mad(-0.0832584798336029f, _1158, mad(-0.6217905879020691f, _1157, (_1156 * 1.7050515413284302f)))); - _1284 = max(0.0f, mad(-0.010548528283834457f, _1158, mad(1.1408027410507202f, _1157, (_1156 * -0.13025718927383423f)))); - _1285 = max(0.0f, mad(1.152971863746643f, _1158, mad(-0.1289687603712082f, _1157, (_1156 * -0.024003278464078903f)))); - } - float _1286 = saturate(_1283); - float _1287 = saturate(_1284); - float _1288 = saturate(_1285); - if (_1286 < 0.0031306699384003878f) { - _1299 = (_1286 * 12.920000076293945f); - } else { - _1299 = (((pow(_1286, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1287 < 0.0031306699384003878f) { - _1310 = (_1287 * 12.920000076293945f); - } else { - _1310 = (((pow(_1287, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1288 < 0.0031306699384003878f) { - _1321 = (_1288 * 12.920000076293945f); - } else { - _1321 = (((pow(_1288, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1325 = (_1310 * 0.9375f) + 0.03125f; - float _1333 = _1321 * 15.0f; - float _1334 = floor(_1333); - float _1335 = _1333 - _1334; - float _1337 = (_1334 + ((_1299 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1338 = t0.Sample(s0, float2(_1337, _1325)); - float _1342 = _1337 + 0.0625f; - float4 _1343 = t0.Sample(s0, float2(_1342, _1325)); - float4 _1364 = t1.Sample(s1, float2(_1337, _1325)); - float4 _1368 = t1.Sample(s1, float2(_1342, _1325)); - float _1387 = max(6.103519990574569e-05f, ((((lerp(_1338.x, _1343.x, _1335)) * cb0_041x) + (cb0_040x * _1299)) + ((lerp(_1364.x, _1368.x, _1335)) * cb0_042x))); - float _1388 = max(6.103519990574569e-05f, ((((lerp(_1338.y, _1343.y, _1335)) * cb0_041x) + (cb0_040x * _1310)) + ((lerp(_1364.y, _1368.y, _1335)) * cb0_042x))); - float _1389 = max(6.103519990574569e-05f, ((((lerp(_1338.z, _1343.z, _1335)) * cb0_041x) + (cb0_040x * _1321)) + ((lerp(_1364.z, _1368.z, _1335)) * cb0_042x))); - float _1411 = select((_1387 > 0.040449999272823334f), exp2(log2((_1387 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1387 * 0.07739938050508499f)); - float _1412 = select((_1388 > 0.040449999272823334f), exp2(log2((_1388 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1388 * 0.07739938050508499f)); - float _1413 = select((_1389 > 0.040449999272823334f), exp2(log2((_1389 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1389 * 0.07739938050508499f)); - float _1439 = cb0_044y * (((cb0_026y + (cb0_026x * _1411)) * _1411) + cb0_026z); - float _1440 = cb0_044z * (((cb0_026y + (cb0_026x * _1412)) * _1412) + cb0_026z); - float _1441 = cb0_044w * (((cb0_026y + (cb0_026x * _1413)) * _1413) + cb0_026z); - float _1448 = ((cb0_045x - _1439) * cb0_045w) + _1439; - float _1449 = ((cb0_045y - _1440) * cb0_045w) + _1440; - float _1450 = ((cb0_045z - _1441) * cb0_045w) + _1441; - float _1451 = cb0_044y * _800; - float _1452 = cb0_044z * _803; - float _1453 = cb0_044w * _806; - float _1460 = ((cb0_045x - _1451) * cb0_045w) + _1451; - float _1461 = ((cb0_045y - _1452) * cb0_045w) + _1452; - float _1462 = ((cb0_045z - _1453) * cb0_045w) + _1453; - float _1474 = exp2(log2(max(0.0f, _1448)) * cb0_027y); - float _1475 = exp2(log2(max(0.0f, _1449)) * cb0_027y); - float _1476 = exp2(log2(max(0.0f, _1450)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1474, _1475, _1476)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1474 < 0.0031306699384003878f) { - _1491 = (_1474 * 12.920000076293945f); - } else { - _1491 = (((pow(_1474, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1475 < 0.0031306699384003878f) { - _1502 = (_1475 * 12.920000076293945f); - } else { - _1502 = (((pow(_1475, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1476 < 0.0031306699384003878f) { - _2932 = _1491; - _2933 = _1502; - _2934 = (_1476 * 12.920000076293945f); - } else { - _2932 = _1491; - _2933 = _1502; - _2934 = (((pow(_1476, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1517 = mad(0.04736635088920593f, _1476, mad(0.3395121395587921f, _1475, (_1474 * 0.613191545009613f))); - float _1520 = mad(0.01345000695437193f, _1476, mad(0.9163357615470886f, _1475, (_1474 * 0.07020691782236099f))); - float _1523 = mad(0.8696067929267883f, _1476, mad(0.1095672994852066f, _1475, (_1474 * 0.020618872717022896f))); - float _1533 = max(6.103519990574569e-05f, mad(_36, _1523, mad(_35, _1520, (_1517 * _34)))); - float _1534 = max(6.103519990574569e-05f, mad(_39, _1523, mad(_38, _1520, (_1517 * _37)))); - float _1535 = max(6.103519990574569e-05f, mad(_42, _1523, mad(_41, _1520, (_1517 * _40)))); - _2932 = min((_1533 * 4.5f), ((exp2(log2(max(_1533, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2933 = min((_1534 * 4.5f), ((exp2(log2(max(_1534, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2934 = min((_1535 * 4.5f), ((exp2(log2(max(_1535, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1562 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1562) { - float _1565 = _1461 * 3.0f; - float _1566 = _1462 * 3.0f; - float _1569 = mad(0.17733481526374817f, _1566, mad(0.38297808170318604f, _1565, (_1460 * 1.31910240650177f))); - float _1572 = mad(0.09676162153482437f, _1566, mad(0.8134231567382812f, _1565, (_1460 * 0.2693769633769989f))); - float _1575 = mad(0.870704174041748f, _1566, mad(0.11154405772686005f, _1565, (_1460 * 0.05263196676969528f))); - float _1579 = max(max(_1569, _1572), _1575); - float _1584 = (max(_1579, 1.000000013351432e-10f) - max(min(min(_1569, _1572), _1575), 1.000000013351432e-10f)) / max(_1579, 0.009999999776482582f); - float _1597 = ((_1572 + _1569) + _1575) + (sqrt((((_1575 - _1572) * _1575) + ((_1572 - _1569) * _1572)) + ((_1569 - _1575) * _1569)) * 1.75f); - float _1598 = _1597 * 0.3333333432674408f; - float _1599 = _1584 + -0.4000000059604645f; - float _1600 = _1599 * 5.0f; - float _1604 = max((1.0f - abs(_1599 * 2.5f)), 0.0f); - float _1615 = ((float(((int)(uint)((bool)(_1600 > 0.0f))) - ((int)(uint)((bool)(_1600 < 0.0f)))) * (1.0f - (_1604 * _1604))) + 1.0f) * 0.02500000037252903f; - if (!(_1598 <= 0.0533333346247673f)) { - if (!(_1598 >= 0.1599999964237213f)) { - _1624 = (((0.23999999463558197f / _1597) + -0.5f) * _1615); - } else { - _1624 = 0.0f; - } - } else { - _1624 = _1615; - } - float _1625 = _1624 + 1.0f; - float _1626 = _1625 * _1569; - float _1627 = _1625 * _1572; - float _1628 = _1625 * _1575; - if (!((bool)(_1626 == _1627) && (bool)(_1627 == _1628))) { - float _1635 = ((_1626 * 2.0f) - _1627) - _1628; - float _1638 = ((_1572 - _1575) * 1.7320507764816284f) * _1625; - float _1640 = atan(_1638 / _1635); - bool _1643 = (_1635 < 0.0f); - bool _1644 = (_1635 == 0.0f); - bool _1645 = (_1638 >= 0.0f); - bool _1646 = (_1638 < 0.0f); - _1657 = select((_1645 && _1644), 90.0f, select((_1646 && _1644), -90.0f, (select((_1646 && _1643), (_1640 + -3.1415927410125732f), select((_1645 && _1643), (_1640 + 3.1415927410125732f), _1640)) * 57.2957763671875f))); - } else { - _1657 = 0.0f; - } - float _1662 = min(max(select((_1657 < 0.0f), (_1657 + 360.0f), _1657), 0.0f), 360.0f); - if (_1662 < -180.0f) { - _1671 = (_1662 + 360.0f); - } else { - if (_1662 > 180.0f) { - _1671 = (_1662 + -360.0f); - } else { - _1671 = _1662; - } - } - if ((bool)(_1671 > -67.5f) && (bool)(_1671 < 67.5f)) { - float _1677 = (_1671 + 67.5f) * 0.029629629105329514f; - int _1678 = int(_1677); - float _1680 = _1677 - float(_1678); - float _1681 = _1680 * _1680; - float _1682 = _1681 * _1680; - if (_1678 == 3) { - _1710 = (((0.1666666716337204f - (_1680 * 0.5f)) + (_1681 * 0.5f)) - (_1682 * 0.1666666716337204f)); - } else { - if (_1678 == 2) { - _1710 = ((0.6666666865348816f - _1681) + (_1682 * 0.5f)); - } else { - if (_1678 == 1) { - _1710 = (((_1682 * -0.5f) + 0.1666666716337204f) + ((_1681 + _1680) * 0.5f)); - } else { - _1710 = select((_1678 == 0), (_1682 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1710 = 0.0f; - } - float _1719 = min(max(((((_1584 * 0.27000001072883606f) * (0.029999999329447746f - _1626)) * _1710) + _1626), 0.0f), 65535.0f); - float _1720 = min(max(_1627, 0.0f), 65535.0f); - float _1721 = min(max(_1628, 0.0f), 65535.0f); - float _1734 = min(max(mad(-0.21492856740951538f, _1721, mad(-0.2365107536315918f, _1720, (_1719 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1735 = min(max(mad(-0.09967592358589172f, _1721, mad(1.17622971534729f, _1720, (_1719 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1736 = min(max(mad(0.9977163076400757f, _1721, mad(-0.006032449658960104f, _1720, (_1719 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1737 = dot(float3(_1734, _1735, _1736), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1744 = ((_1734 - _1737) * 0.9599999785423279f) + _1737; - float _1745 = ((_1735 - _1737) * 0.9599999785423279f) + _1737; - float _1746 = ((_1736 - _1737) * 0.9599999785423279f) + _1737; - float _1749 = log2(select((_1744 <= 0.0f), 6.103515625e-05f, _1744)); - float _1750 = _1749 * 0.3010300099849701f; - if (!(_1750 <= -5.2601776123046875f)) { - if ((bool)(_1750 > -5.2601776123046875f) && (bool)(_1750 < -0.7447274923324585f)) { - float _1758 = (_1749 * 0.19999998807907104f) + 3.494786262512207f; - int _1759 = int(_1758); - float _1761 = _1758 - float(_1759); - float _1763 = _global_0[_1759]; - float _1766 = _global_0[(_1759 + 1)]; - float _1771 = _1763 * 0.5f; - _1803 = dot(float3((_1761 * _1761), _1761, 1.0f), float3(mad((_global_0[(_1759 + 2)]), 0.5f, mad(_1766, -1.0f, _1771)), (_1766 - _1763), mad(_1766, 0.5f, _1771))); - } else { - if ((bool)(_1750 >= -0.7447274923324585f) && (bool)(_1750 < 4.673812389373779f)) { - float _1783 = (_1749 * 0.1666666567325592f) + 0.4123218357563019f; - int _1784 = int(_1783); - float _1786 = _1783 - float(_1784); - float _1788 = _global_1[_1784]; - float _1791 = _global_1[(_1784 + 1)]; - float _1796 = _1788 * 0.5f; - _1803 = dot(float3((_1786 * _1786), _1786, 1.0f), float3(mad((_global_1[(_1784 + 2)]), 0.5f, mad(_1791, -1.0f, _1796)), (_1791 - _1788), mad(_1791, 0.5f, _1796))); - } else { - _1803 = 4.0f; - } - } - } else { - _1803 = -4.0f; - } - float _1805 = exp2(_1803 * 3.321928024291992f); - float _1808 = log2(select((_1745 <= 0.0f), 6.103515625e-05f, _1745)); - float _1809 = _1808 * 0.3010300099849701f; - if (!(_1809 <= -5.2601776123046875f)) { - if ((bool)(_1809 > -5.2601776123046875f) && (bool)(_1809 < -0.7447274923324585f)) { - float _1817 = (_1808 * 0.19999998807907104f) + 3.494786262512207f; - int _1818 = int(_1817); - float _1820 = _1817 - float(_1818); - float _1822 = _global_0[_1818]; - float _1825 = _global_0[(_1818 + 1)]; - float _1830 = _1822 * 0.5f; - _1862 = dot(float3((_1820 * _1820), _1820, 1.0f), float3(mad((_global_0[(_1818 + 2)]), 0.5f, mad(_1825, -1.0f, _1830)), (_1825 - _1822), mad(_1825, 0.5f, _1830))); - } else { - if ((bool)(_1809 >= -0.7447274923324585f) && (bool)(_1809 < 4.673812389373779f)) { - float _1842 = (_1808 * 0.1666666567325592f) + 0.4123218357563019f; - int _1843 = int(_1842); - float _1845 = _1842 - float(_1843); - float _1847 = _global_1[_1843]; - float _1850 = _global_1[(_1843 + 1)]; - float _1855 = _1847 * 0.5f; - _1862 = dot(float3((_1845 * _1845), _1845, 1.0f), float3(mad((_global_1[(_1843 + 2)]), 0.5f, mad(_1850, -1.0f, _1855)), (_1850 - _1847), mad(_1850, 0.5f, _1855))); - } else { - _1862 = 4.0f; - } - } - } else { - _1862 = -4.0f; - } - float _1864 = exp2(_1862 * 3.321928024291992f); - float _1867 = log2(select((_1746 <= 0.0f), 6.103515625e-05f, _1746)); - float _1868 = _1867 * 0.3010300099849701f; - if (!(_1868 <= -5.2601776123046875f)) { - if ((bool)(_1868 > -5.2601776123046875f) && (bool)(_1868 < -0.7447274923324585f)) { - float _1876 = (_1867 * 0.19999998807907104f) + 3.494786262512207f; - int _1877 = int(_1876); - float _1879 = _1876 - float(_1877); - float _1881 = _global_0[_1877]; - float _1884 = _global_0[(_1877 + 1)]; - float _1889 = _1881 * 0.5f; - _1921 = dot(float3((_1879 * _1879), _1879, 1.0f), float3(mad((_global_0[(_1877 + 2)]), 0.5f, mad(_1884, -1.0f, _1889)), (_1884 - _1881), mad(_1884, 0.5f, _1889))); - } else { - if ((bool)(_1868 >= -0.7447274923324585f) && (bool)(_1868 < 4.673812389373779f)) { - float _1901 = (_1867 * 0.1666666567325592f) + 0.4123218357563019f; - int _1902 = int(_1901); - float _1904 = _1901 - float(_1902); - float _1906 = _global_1[_1902]; - float _1909 = _global_1[(_1902 + 1)]; - float _1914 = _1906 * 0.5f; - _1921 = dot(float3((_1904 * _1904), _1904, 1.0f), float3(mad((_global_1[(_1902 + 2)]), 0.5f, mad(_1909, -1.0f, _1914)), (_1909 - _1906), mad(_1909, 0.5f, _1914))); - } else { - _1921 = 4.0f; - } - } - } else { - _1921 = -4.0f; - } - float _1923 = exp2(_1921 * 3.321928024291992f); - float _1926 = mad(0.16386906802654266f, _1923, mad(0.14067870378494263f, _1864, (_1805 * 0.6954522132873535f))); - float _1929 = mad(0.0955343171954155f, _1923, mad(0.8596711158752441f, _1864, (_1805 * 0.044794563204050064f))); - float _1932 = mad(1.0015007257461548f, _1923, mad(0.004025210160762072f, _1864, (_1805 * -0.005525882821530104f))); - float _1935 = mad(-0.21492856740951538f, _1932, mad(-0.2365107536315918f, _1929, (_1926 * 1.4514392614364624f))); - float _1938 = mad(-0.09967592358589172f, _1932, mad(1.17622971534729f, _1929, (_1926 * -0.07655377686023712f))); - float _1941 = mad(0.9977163076400757f, _1932, mad(-0.006032449658960104f, _1929, (_1926 * 0.008316148072481155f))); - float _1944 = log2(select((_1935 <= 0.0f), 9.999999747378752e-05f, _1935)); - float _1945 = _1944 * 0.3010300099849701f; - if (!(!(_1945 <= -3.848327875137329f))) { - _2004 = ((_1944 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1945 > -3.848327875137329f) && (bool)(_1945 < 0.6812411546707153f)) { - float _1956 = (_1944 + 12.783867835998535f) * 0.46521204710006714f; - int _1957 = int(_1956); - float _1959 = _1956 - float(_1957); - float _1961 = _global_2[_1957]; - float _1964 = _global_2[(_1957 + 1)]; - float _1969 = _1961 * 0.5f; - _2004 = dot(float3((_1959 * _1959), _1959, 1.0f), float3(mad((_global_2[(_1957 + 2)]), 0.5f, mad(_1964, -1.0f, _1969)), (_1964 - _1961), mad(_1964, 0.5f, _1969))); - } else { - if ((bool)(_1945 >= 0.6812411546707153f) && (bool)(_1945 < 3.653702974319458f)) { - float _1981 = (_1944 + -2.2630341053009033f) * 0.7089107632637024f; - int _1982 = int(_1981); - float _1984 = _1981 - float(_1982); - float _1986 = _global_3[_1982]; - float _1989 = _global_3[(_1982 + 1)]; - float _1994 = _1986 * 0.5f; - _2004 = dot(float3((_1984 * _1984), _1984, 1.0f), float3(mad((_global_3[(_1982 + 2)]), 0.5f, mad(_1989, -1.0f, _1994)), (_1989 - _1986), mad(_1989, 0.5f, _1994))); - } else { - _2004 = ((_1944 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2009 = log2(select((_1938 <= 0.0f), 9.999999747378752e-05f, _1938)); - float _2010 = _2009 * 0.3010300099849701f; - if (!(!(_2010 <= -3.848327875137329f))) { - _2069 = ((_2009 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2010 > -3.848327875137329f) && (bool)(_2010 < 0.6812411546707153f)) { - float _2021 = (_2009 + 12.783867835998535f) * 0.46521204710006714f; - int _2022 = int(_2021); - float _2024 = _2021 - float(_2022); - float _2026 = _global_2[_2022]; - float _2029 = _global_2[(_2022 + 1)]; - float _2034 = _2026 * 0.5f; - _2069 = dot(float3((_2024 * _2024), _2024, 1.0f), float3(mad((_global_2[(_2022 + 2)]), 0.5f, mad(_2029, -1.0f, _2034)), (_2029 - _2026), mad(_2029, 0.5f, _2034))); - } else { - if ((bool)(_2010 >= 0.6812411546707153f) && (bool)(_2010 < 3.653702974319458f)) { - float _2046 = (_2009 + -2.2630341053009033f) * 0.7089107632637024f; - int _2047 = int(_2046); - float _2049 = _2046 - float(_2047); - float _2051 = _global_3[_2047]; - float _2054 = _global_3[(_2047 + 1)]; - float _2059 = _2051 * 0.5f; - _2069 = dot(float3((_2049 * _2049), _2049, 1.0f), float3(mad((_global_3[(_2047 + 2)]), 0.5f, mad(_2054, -1.0f, _2059)), (_2054 - _2051), mad(_2054, 0.5f, _2059))); - } else { - _2069 = ((_2009 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2074 = log2(select((_1941 <= 0.0f), 9.999999747378752e-05f, _1941)); - float _2075 = _2074 * 0.3010300099849701f; - if (!(!(_2075 <= -3.848327875137329f))) { - _2134 = ((_2074 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2075 > -3.848327875137329f) && (bool)(_2075 < 0.6812411546707153f)) { - float _2086 = (_2074 + 12.783867835998535f) * 0.46521204710006714f; - int _2087 = int(_2086); - float _2089 = _2086 - float(_2087); - float _2091 = _global_2[_2087]; - float _2094 = _global_2[(_2087 + 1)]; - float _2099 = _2091 * 0.5f; - _2134 = dot(float3((_2089 * _2089), _2089, 1.0f), float3(mad((_global_2[(_2087 + 2)]), 0.5f, mad(_2094, -1.0f, _2099)), (_2094 - _2091), mad(_2094, 0.5f, _2099))); - } else { - if ((bool)(_2075 >= 0.6812411546707153f) && (bool)(_2075 < 3.653702974319458f)) { - float _2111 = (_2074 + -2.2630341053009033f) * 0.7089107632637024f; - int _2112 = int(_2111); - float _2114 = _2111 - float(_2112); - float _2116 = _global_3[_2112]; - float _2119 = _global_3[(_2112 + 1)]; - float _2124 = _2116 * 0.5f; - _2134 = dot(float3((_2114 * _2114), _2114, 1.0f), float3(mad((_global_3[(_2112 + 2)]), 0.5f, mad(_2119, -1.0f, _2124)), (_2119 - _2116), mad(_2119, 0.5f, _2124))); - } else { - _2134 = ((_2074 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2137 = exp2(_2004 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2138 = exp2(_2069 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2139 = exp2(_2134 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1562) { - _2151 = mad(_36, _2139, mad(_35, _2138, (_2137 * _34))); - _2152 = mad(_39, _2139, mad(_38, _2138, (_2137 * _37))); - _2153 = mad(_42, _2139, mad(_41, _2138, (_2137 * _40))); - } else { - _2151 = _2137; - _2152 = _2138; - _2153 = _2139; - } - float _2163 = exp2(log2(_2151 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2164 = exp2(log2(_2152 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2165 = exp2(log2(_2153 * 9.999999747378752e-05f) * 0.1593017578125f); - _2932 = exp2(log2((1.0f / ((_2163 * 18.6875f) + 1.0f)) * ((_2163 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2164 * 18.6875f) + 1.0f)) * ((_2164 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2934 = exp2(log2((1.0f / ((_2165 * 18.6875f) + 1.0f)) * ((_2165 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2198 = _1461 * 3.0f; - float _2199 = _1462 * 3.0f; - float _2202 = mad(0.17733481526374817f, _2199, mad(0.38297808170318604f, _2198, (_1460 * 1.31910240650177f))); - float _2205 = mad(0.09676162153482437f, _2199, mad(0.8134231567382812f, _2198, (_1460 * 0.2693769633769989f))); - float _2208 = mad(0.870704174041748f, _2199, mad(0.11154405772686005f, _2198, (_1460 * 0.05263196676969528f))); - float _2212 = max(max(_2202, _2205), _2208); - float _2217 = (max(_2212, 1.000000013351432e-10f) - max(min(min(_2202, _2205), _2208), 1.000000013351432e-10f)) / max(_2212, 0.009999999776482582f); - float _2230 = ((_2205 + _2202) + _2208) + (sqrt((((_2208 - _2205) * _2208) + ((_2205 - _2202) * _2205)) + ((_2202 - _2208) * _2202)) * 1.75f); - float _2231 = _2230 * 0.3333333432674408f; - float _2232 = _2217 + -0.4000000059604645f; - float _2233 = _2232 * 5.0f; - float _2237 = max((1.0f - abs(_2232 * 2.5f)), 0.0f); - float _2248 = ((float(((int)(uint)((bool)(_2233 > 0.0f))) - ((int)(uint)((bool)(_2233 < 0.0f)))) * (1.0f - (_2237 * _2237))) + 1.0f) * 0.02500000037252903f; - if (!(_2231 <= 0.0533333346247673f)) { - if (!(_2231 >= 0.1599999964237213f)) { - _2257 = (((0.23999999463558197f / _2230) + -0.5f) * _2248); - } else { - _2257 = 0.0f; - } - } else { - _2257 = _2248; - } - float _2258 = _2257 + 1.0f; - float _2259 = _2258 * _2202; - float _2260 = _2258 * _2205; - float _2261 = _2258 * _2208; - if (!((bool)(_2259 == _2260) && (bool)(_2260 == _2261))) { - float _2268 = ((_2259 * 2.0f) - _2260) - _2261; - float _2271 = ((_2205 - _2208) * 1.7320507764816284f) * _2258; - float _2273 = atan(_2271 / _2268); - bool _2276 = (_2268 < 0.0f); - bool _2277 = (_2268 == 0.0f); - bool _2278 = (_2271 >= 0.0f); - bool _2279 = (_2271 < 0.0f); - _2290 = select((_2278 && _2277), 90.0f, select((_2279 && _2277), -90.0f, (select((_2279 && _2276), (_2273 + -3.1415927410125732f), select((_2278 && _2276), (_2273 + 3.1415927410125732f), _2273)) * 57.2957763671875f))); - } else { - _2290 = 0.0f; - } - float _2295 = min(max(select((_2290 < 0.0f), (_2290 + 360.0f), _2290), 0.0f), 360.0f); - if (_2295 < -180.0f) { - _2304 = (_2295 + 360.0f); - } else { - if (_2295 > 180.0f) { - _2304 = (_2295 + -360.0f); - } else { - _2304 = _2295; - } - } - if ((bool)(_2304 > -67.5f) && (bool)(_2304 < 67.5f)) { - float _2310 = (_2304 + 67.5f) * 0.029629629105329514f; - int _2311 = int(_2310); - float _2313 = _2310 - float(_2311); - float _2314 = _2313 * _2313; - float _2315 = _2314 * _2313; - if (_2311 == 3) { - _2343 = (((0.1666666716337204f - (_2313 * 0.5f)) + (_2314 * 0.5f)) - (_2315 * 0.1666666716337204f)); - } else { - if (_2311 == 2) { - _2343 = ((0.6666666865348816f - _2314) + (_2315 * 0.5f)); - } else { - if (_2311 == 1) { - _2343 = (((_2315 * -0.5f) + 0.1666666716337204f) + ((_2314 + _2313) * 0.5f)); - } else { - _2343 = select((_2311 == 0), (_2315 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2343 = 0.0f; - } - float _2352 = min(max(((((_2217 * 0.27000001072883606f) * (0.029999999329447746f - _2259)) * _2343) + _2259), 0.0f), 65535.0f); - float _2353 = min(max(_2260, 0.0f), 65535.0f); - float _2354 = min(max(_2261, 0.0f), 65535.0f); - float _2367 = min(max(mad(-0.21492856740951538f, _2354, mad(-0.2365107536315918f, _2353, (_2352 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2368 = min(max(mad(-0.09967592358589172f, _2354, mad(1.17622971534729f, _2353, (_2352 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2369 = min(max(mad(0.9977163076400757f, _2354, mad(-0.006032449658960104f, _2353, (_2352 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2370 = dot(float3(_2367, _2368, _2369), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2377 = ((_2367 - _2370) * 0.9599999785423279f) + _2370; - float _2378 = ((_2368 - _2370) * 0.9599999785423279f) + _2370; - float _2379 = ((_2369 - _2370) * 0.9599999785423279f) + _2370; - float _2382 = log2(select((_2377 <= 0.0f), 6.103515625e-05f, _2377)); - float _2383 = _2382 * 0.3010300099849701f; - if (!(_2383 <= -5.2601776123046875f)) { - if ((bool)(_2383 > -5.2601776123046875f) && (bool)(_2383 < -0.7447274923324585f)) { - float _2391 = (_2382 * 0.19999998807907104f) + 3.494786262512207f; - int _2392 = int(_2391); - float _2394 = _2391 - float(_2392); - float _2396 = _global_0[_2392]; - float _2399 = _global_0[(_2392 + 1)]; - float _2404 = _2396 * 0.5f; - _2436 = dot(float3((_2394 * _2394), _2394, 1.0f), float3(mad((_global_0[(_2392 + 2)]), 0.5f, mad(_2399, -1.0f, _2404)), (_2399 - _2396), mad(_2399, 0.5f, _2404))); - } else { - if ((bool)(_2383 >= -0.7447274923324585f) && (bool)(_2383 < 4.673812389373779f)) { - float _2416 = (_2382 * 0.1666666567325592f) + 0.4123218357563019f; - int _2417 = int(_2416); - float _2419 = _2416 - float(_2417); - float _2421 = _global_1[_2417]; - float _2424 = _global_1[(_2417 + 1)]; - float _2429 = _2421 * 0.5f; - _2436 = dot(float3((_2419 * _2419), _2419, 1.0f), float3(mad((_global_1[(_2417 + 2)]), 0.5f, mad(_2424, -1.0f, _2429)), (_2424 - _2421), mad(_2424, 0.5f, _2429))); - } else { - _2436 = 4.0f; - } - } - } else { - _2436 = -4.0f; - } - float _2438 = exp2(_2436 * 3.321928024291992f); - float _2441 = log2(select((_2378 <= 0.0f), 6.103515625e-05f, _2378)); - float _2442 = _2441 * 0.3010300099849701f; - if (!(_2442 <= -5.2601776123046875f)) { - if ((bool)(_2442 > -5.2601776123046875f) && (bool)(_2442 < -0.7447274923324585f)) { - float _2450 = (_2441 * 0.19999998807907104f) + 3.494786262512207f; - int _2451 = int(_2450); - float _2453 = _2450 - float(_2451); - float _2455 = _global_0[_2451]; - float _2458 = _global_0[(_2451 + 1)]; - float _2463 = _2455 * 0.5f; - _2495 = dot(float3((_2453 * _2453), _2453, 1.0f), float3(mad((_global_0[(_2451 + 2)]), 0.5f, mad(_2458, -1.0f, _2463)), (_2458 - _2455), mad(_2458, 0.5f, _2463))); - } else { - if ((bool)(_2442 >= -0.7447274923324585f) && (bool)(_2442 < 4.673812389373779f)) { - float _2475 = (_2441 * 0.1666666567325592f) + 0.4123218357563019f; - int _2476 = int(_2475); - float _2478 = _2475 - float(_2476); - float _2480 = _global_1[_2476]; - float _2483 = _global_1[(_2476 + 1)]; - float _2488 = _2480 * 0.5f; - _2495 = dot(float3((_2478 * _2478), _2478, 1.0f), float3(mad((_global_1[(_2476 + 2)]), 0.5f, mad(_2483, -1.0f, _2488)), (_2483 - _2480), mad(_2483, 0.5f, _2488))); - } else { - _2495 = 4.0f; - } - } - } else { - _2495 = -4.0f; - } - float _2497 = exp2(_2495 * 3.321928024291992f); - float _2500 = log2(select((_2379 <= 0.0f), 6.103515625e-05f, _2379)); - float _2501 = _2500 * 0.3010300099849701f; - if (!(_2501 <= -5.2601776123046875f)) { - if ((bool)(_2501 > -5.2601776123046875f) && (bool)(_2501 < -0.7447274923324585f)) { - float _2509 = (_2500 * 0.19999998807907104f) + 3.494786262512207f; - int _2510 = int(_2509); - float _2512 = _2509 - float(_2510); - float _2514 = _global_0[_2510]; - float _2517 = _global_0[(_2510 + 1)]; - float _2522 = _2514 * 0.5f; - _2554 = dot(float3((_2512 * _2512), _2512, 1.0f), float3(mad((_global_0[(_2510 + 2)]), 0.5f, mad(_2517, -1.0f, _2522)), (_2517 - _2514), mad(_2517, 0.5f, _2522))); - } else { - if ((bool)(_2501 >= -0.7447274923324585f) && (bool)(_2501 < 4.673812389373779f)) { - float _2534 = (_2500 * 0.1666666567325592f) + 0.4123218357563019f; - int _2535 = int(_2534); - float _2537 = _2534 - float(_2535); - float _2539 = _global_1[_2535]; - float _2542 = _global_1[(_2535 + 1)]; - float _2547 = _2539 * 0.5f; - _2554 = dot(float3((_2537 * _2537), _2537, 1.0f), float3(mad((_global_1[(_2535 + 2)]), 0.5f, mad(_2542, -1.0f, _2547)), (_2542 - _2539), mad(_2542, 0.5f, _2547))); - } else { - _2554 = 4.0f; - } - } - } else { - _2554 = -4.0f; - } - float _2556 = exp2(_2554 * 3.321928024291992f); - float _2559 = mad(0.16386906802654266f, _2556, mad(0.14067870378494263f, _2497, (_2438 * 0.6954522132873535f))); - float _2562 = mad(0.0955343171954155f, _2556, mad(0.8596711158752441f, _2497, (_2438 * 0.044794563204050064f))); - float _2565 = mad(1.0015007257461548f, _2556, mad(0.004025210160762072f, _2497, (_2438 * -0.005525882821530104f))); - float _2568 = mad(-0.21492856740951538f, _2565, mad(-0.2365107536315918f, _2562, (_2559 * 1.4514392614364624f))); - float _2571 = mad(-0.09967592358589172f, _2565, mad(1.17622971534729f, _2562, (_2559 * -0.07655377686023712f))); - float _2574 = mad(0.9977163076400757f, _2565, mad(-0.006032449658960104f, _2562, (_2559 * 0.008316148072481155f))); - float _2577 = log2(select((_2568 <= 0.0f), 9.999999747378752e-05f, _2568)); - float _2578 = _2577 * 0.3010300099849701f; - if (!(_2578 <= -3.848327875137329f)) { - if ((bool)(_2578 > -3.848327875137329f) && (bool)(_2578 < 0.6812411546707153f)) { - float _2586 = (_2577 + 12.783867835998535f) * 0.46521204710006714f; - int _2587 = int(_2586); - float _2589 = _2586 - float(_2587); - float _2591 = _global_4[_2587]; - float _2594 = _global_4[(_2587 + 1)]; - float _2599 = _2591 * 0.5f; - _2634 = dot(float3((_2589 * _2589), _2589, 1.0f), float3(mad((_global_4[(_2587 + 2)]), 0.5f, mad(_2594, -1.0f, _2599)), (_2594 - _2591), mad(_2594, 0.5f, _2599))); - } else { - if ((bool)(_2578 >= 0.6812411546707153f) && (bool)(_2578 < 3.7613162994384766f)) { - float _2611 = (_2577 + -2.2630341053009033f) * 0.6841424107551575f; - int _2612 = int(_2611); - float _2614 = _2611 - float(_2612); - float _2616 = _global_5[_2612]; - float _2619 = _global_5[(_2612 + 1)]; - float _2624 = _2616 * 0.5f; - _2634 = dot(float3((_2614 * _2614), _2614, 1.0f), float3(mad((_global_5[(_2612 + 2)]), 0.5f, mad(_2619, -1.0f, _2624)), (_2619 - _2616), mad(_2619, 0.5f, _2624))); - } else { - _2634 = ((_2577 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2634 = -2.301030158996582f; - } - float _2636 = exp2(_2634 * 3.321928024291992f); - float _2639 = log2(select((_2571 <= 0.0f), 9.999999747378752e-05f, _2571)); - float _2640 = _2639 * 0.3010300099849701f; - if (!(_2640 <= -3.848327875137329f)) { - if ((bool)(_2640 > -3.848327875137329f) && (bool)(_2640 < 0.6812411546707153f)) { - float _2648 = (_2639 + 12.783867835998535f) * 0.46521204710006714f; - int _2649 = int(_2648); - float _2651 = _2648 - float(_2649); - float _2653 = _global_4[_2649]; - float _2656 = _global_4[(_2649 + 1)]; - float _2661 = _2653 * 0.5f; - _2696 = dot(float3((_2651 * _2651), _2651, 1.0f), float3(mad((_global_4[(_2649 + 2)]), 0.5f, mad(_2656, -1.0f, _2661)), (_2656 - _2653), mad(_2656, 0.5f, _2661))); - } else { - if ((bool)(_2640 >= 0.6812411546707153f) && (bool)(_2640 < 3.7613162994384766f)) { - float _2673 = (_2639 + -2.2630341053009033f) * 0.6841424107551575f; - int _2674 = int(_2673); - float _2676 = _2673 - float(_2674); - float _2678 = _global_5[_2674]; - float _2681 = _global_5[(_2674 + 1)]; - float _2686 = _2678 * 0.5f; - _2696 = dot(float3((_2676 * _2676), _2676, 1.0f), float3(mad((_global_5[(_2674 + 2)]), 0.5f, mad(_2681, -1.0f, _2686)), (_2681 - _2678), mad(_2681, 0.5f, _2686))); - } else { - _2696 = ((_2639 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2696 = -2.301030158996582f; - } - float _2698 = exp2(_2696 * 3.321928024291992f); - float _2701 = log2(select((_2574 <= 0.0f), 9.999999747378752e-05f, _2574)); - float _2702 = _2701 * 0.3010300099849701f; - if (!(_2702 <= -3.848327875137329f)) { - if ((bool)(_2702 > -3.848327875137329f) && (bool)(_2702 < 0.6812411546707153f)) { - float _2710 = (_2701 + 12.783867835998535f) * 0.46521204710006714f; - int _2711 = int(_2710); - float _2713 = _2710 - float(_2711); - float _2715 = _global_4[_2711]; - float _2718 = _global_4[(_2711 + 1)]; - float _2723 = _2715 * 0.5f; - _2758 = dot(float3((_2713 * _2713), _2713, 1.0f), float3(mad((_global_4[(_2711 + 2)]), 0.5f, mad(_2718, -1.0f, _2723)), (_2718 - _2715), mad(_2718, 0.5f, _2723))); - } else { - if ((bool)(_2702 >= 0.6812411546707153f) && (bool)(_2702 < 3.7613162994384766f)) { - float _2735 = (_2701 + -2.2630341053009033f) * 0.6841424107551575f; - int _2736 = int(_2735); - float _2738 = _2735 - float(_2736); - float _2740 = _global_5[_2736]; - float _2743 = _global_5[(_2736 + 1)]; - float _2748 = _2740 * 0.5f; - _2758 = dot(float3((_2738 * _2738), _2738, 1.0f), float3(mad((_global_5[(_2736 + 2)]), 0.5f, mad(_2743, -1.0f, _2748)), (_2743 - _2740), mad(_2743, 0.5f, _2748))); - } else { - _2758 = ((_2701 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2758 = -2.301030158996582f; - } - float _2760 = exp2(_2758 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _2772 = mad(_36, _2760, mad(_35, _2698, (_2636 * _34))); - _2773 = mad(_39, _2760, mad(_38, _2698, (_2636 * _37))); - _2774 = mad(_42, _2760, mad(_41, _2698, (_2636 * _40))); - } else { - _2772 = _2636; - _2773 = _2698; - _2774 = _2760; - } - float _2784 = exp2(log2(_2772 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2785 = exp2(log2(_2773 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2786 = exp2(log2(_2774 * 9.999999747378752e-05f) * 0.1593017578125f); - _2932 = exp2(log2((1.0f / ((_2784 * 18.6875f) + 1.0f)) * ((_2784 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2785 * 18.6875f) + 1.0f)) * ((_2785 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2934 = exp2(log2((1.0f / ((_2786 * 18.6875f) + 1.0f)) * ((_2786 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _2819 = mad(0.04736635088920593f, _1462, mad(0.3395121395587921f, _1461, (_1460 * 0.613191545009613f))); - float _2822 = mad(0.01345000695437193f, _1462, mad(0.9163357615470886f, _1461, (_1460 * 0.07020691782236099f))); - float _2825 = mad(0.8696067929267883f, _1462, mad(0.1095672994852066f, _1461, (_1460 * 0.020618872717022896f))); - float _2844 = exp2(log2(mad(_36, _2825, mad(_35, _2822, (_2819 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2845 = exp2(log2(mad(_39, _2825, mad(_38, _2822, (_2819 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2846 = exp2(log2(mad(_42, _2825, mad(_41, _2822, (_2819 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2932 = exp2(log2((1.0f / ((_2844 * 18.6875f) + 1.0f)) * ((_2844 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2933 = exp2(log2((1.0f / ((_2845 * 18.6875f) + 1.0f)) * ((_2845 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2934 = exp2(log2((1.0f / ((_2846 * 18.6875f) + 1.0f)) * ((_2846 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _2881 = mad(0.04736635088920593f, _1450, mad(0.3395121395587921f, _1449, (_1448 * 0.613191545009613f))); - float _2884 = mad(0.01345000695437193f, _1450, mad(0.9163357615470886f, _1449, (_1448 * 0.07020691782236099f))); - float _2887 = mad(0.8696067929267883f, _1450, mad(0.1095672994852066f, _1449, (_1448 * 0.020618872717022896f))); - _2932 = mad(_36, _2887, mad(_35, _2884, (_2881 * _34))); - _2933 = mad(_39, _2887, mad(_38, _2884, (_2881 * _37))); - _2934 = mad(_42, _2887, mad(_41, _2884, (_2881 * _40))); - } else { - float _2900 = mad(0.04736635088920593f, _1476, mad(0.3395121395587921f, _1475, (_1474 * 0.613191545009613f))); - float _2903 = mad(0.01345000695437193f, _1476, mad(0.9163357615470886f, _1475, (_1474 * 0.07020691782236099f))); - float _2906 = mad(0.8696067929267883f, _1476, mad(0.1095672994852066f, _1475, (_1474 * 0.020618872717022896f))); - float _2921 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2932 = exp2(_2921 * log2(mad(_36, _2906, mad(_35, _2903, (_2900 * _34))))); - _2933 = exp2(_2921 * log2(mad(_39, _2906, mad(_38, _2903, (_2900 * _37))))); - _2934 = exp2(_2921 * log2(mad(_42, _2906, mad(_41, _2903, (_2900 * _40))))); - } - } else { - _2932 = _1460; - _2933 = _1461; - _2934 = _1462; - } - } - } - } - } - } - SV_Target.x = (_2932 * 0.9523810148239136f); - SV_Target.y = (_2933 * 0.9523810148239136f); - SV_Target.z = (_2934 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x939171CE.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x939171CE.ps_6_0.hlsl deleted file mode 100644 index d0a84cd20..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x939171CE.ps_6_0.hlsl +++ /dev/null @@ -1,1227 +0,0 @@ -#include "../common.hlsl" - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - int cb0_046x : packoffset(c046.x); - int cb0_046y : packoffset(c046.y); - int cb0_046z : packoffset(c046.z); - int cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - int cb0_074z : packoffset(c074.z); - int cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _5 = TEXCOORD.x + -0.015625f; - float _6 = TEXCOORD.y + -0.015625f; - float _9 = float((uint)(int)(SV_RenderTargetArrayIndex)); - float _30; - float _31; - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _95; - float _96; - float _97; - float _335; - float _336; - float _337; - float _878; - float _911; - float _925; - float _989; - float _1122; - float _1123; - float _1124; - float _1265; - float _1266; - float _1267; - float _1343; - float _1354; - float _1476; - float _1509; - float _1523; - float _1562; - float _1655; - float _1714; - float _1773; - float _1856; - float _1921; - float _1986; - float _2003; - float _2004; - float _2005; - float _2109; - float _2142; - float _2156; - float _2195; - float _2288; - float _2347; - float _2406; - float _2486; - float _2548; - float _2610; - float _2624; - float _2625; - float _2626; - float _2784; - float _2785; - float _2786; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!(cb0_074w == 1)) { - if (!(cb0_074w == 2)) { - if (!(cb0_074w == 3)) { - bool _19 = (cb0_074w == 4); - _30 = select(_19, 1.0f, 1.7050515413284302f); - _31 = select(_19, 0.0f, -0.6217905879020691f); - _32 = select(_19, 0.0f, -0.0832584798336029f); - _33 = select(_19, 0.0f, -0.13025718927383423f); - _34 = select(_19, 1.0f, 1.1408027410507202f); - _35 = select(_19, 0.0f, -0.010548528283834457f); - _36 = select(_19, 0.0f, -0.024003278464078903f); - _37 = select(_19, 0.0f, -0.1289687603712082f); - _38 = select(_19, 1.0f, 1.152971863746643f); - } else { - _30 = 0.6954522132873535f; - _31 = 0.14067870378494263f; - _32 = 0.16386906802654266f; - _33 = 0.044794563204050064f; - _34 = 0.8596711158752441f; - _35 = 0.0955343171954155f; - _36 = -0.005525882821530104f; - _37 = 0.004025210160762072f; - _38 = 1.0015007257461548f; - } - } else { - _30 = 1.02579927444458f; - _31 = -0.020052503794431686f; - _32 = -0.0057713985443115234f; - _33 = -0.0022350111976265907f; - _34 = 1.0045825242996216f; - _35 = -0.002352306619286537f; - _36 = -0.005014004185795784f; - _37 = -0.025293385609984398f; - _38 = 1.0304402112960815f; - } - } else { - _30 = 1.379158854484558f; - _31 = -0.3088507056236267f; - _32 = -0.07034677267074585f; - _33 = -0.06933528929948807f; - _34 = 1.0822921991348267f; - _35 = -0.012962047010660172f; - _36 = -0.002159259282052517f; - _37 = -0.045465391129255295f; - _38 = 1.0477596521377563f; - } - if ((uint)cb0_074z > (uint)2) { - float _48 = exp2(log2(_5 * 1.0322580337524414f) * 0.012683313339948654f); - float _49 = exp2(log2(_6 * 1.0322580337524414f) * 0.012683313339948654f); - float _50 = exp2(log2(_9 * 0.032258063554763794f) * 0.012683313339948654f); - _95 = (exp2(log2(max(0.0f, (_48 + -0.8359375f)) / (18.8515625f - (_48 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _96 = (exp2(log2(max(0.0f, (_49 + -0.8359375f)) / (18.8515625f - (_49 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _95 = ((exp2((_5 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _96 = ((exp2((_6 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _97 = ((exp2((_9 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _100 = cb0_047x * 1.0005563497543335f; - float _114 = select((_100 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _100) + 99.11000061035156f) / _100) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _100) + 247.47999572753906f) / _100) + 0.23703999817371368f)); - float _128 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _138 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _143 = ((_128 * 2.0f) + 4.0f) - (_138 * 8.0f); - float _144 = (_128 * 3.0f) / _143; - float _146 = (_138 * 2.0f) / _143; - bool _147 = (cb0_047x < 4000.0f); - float _154 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_128, _138), float2(_128, _138))); - float _156 = _128 - (_154 * _138); - float _158 = (_154 * _128) + _138; - float _163 = (4.0f - (_158 * 8.0f)) + (_156 * 2.0f); - float _169 = (((_156 * 3.0f) / _163) - _144) + select(_147, _144, _114); - float _170 = (((_158 * 2.0f) / _163) - _146) + select(_147, _146, (((_114 * 2.869999885559082f) + -0.2750000059604645f) - ((_114 * _114) * 3.0f))); - float _171 = max(_170, 1.000000013351432e-10f); - float _172 = _169 / _171; - float _175 = ((1.0f - _169) - _170) / _171; - float _185 = 0.9413792490959167f / mad(-0.16140000522136688f, _175, ((_172 * 0.8950999975204468f) + 0.266400009393692f)); - float _186 = 1.0404363870620728f / mad(0.03669999912381172f, _175, (1.7135000228881836f - (_172 * 0.7501999735832214f))); - float _187 = 1.089766502380371f / mad(1.0296000242233276f, _175, ((_172 * 0.03889999911189079f) + -0.06849999725818634f)); - float _188 = mad(_186, -0.7501999735832214f, 0.0f); - float _189 = mad(_186, 1.7135000228881836f, 0.0f); - float _190 = mad(_186, 0.03669999912381172f, -0.0f); - float _191 = mad(_187, 0.03889999911189079f, 0.0f); - float _192 = mad(_187, -0.06849999725818634f, 0.0f); - float _193 = mad(_187, 1.0296000242233276f, 0.0f); - float _196 = mad(0.1599626988172531f, _191, mad(-0.1470542997121811f, _188, (_185 * 0.883457362651825f))); - float _199 = mad(0.1599626988172531f, _192, mad(-0.1470542997121811f, _189, (_185 * 0.26293492317199707f))); - float _202 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_185 * -0.15930065512657166f))); - float _205 = mad(0.04929120093584061f, _191, mad(0.5183603167533875f, _188, (_185 * 0.38695648312568665f))); - float _208 = mad(0.04929120093584061f, _192, mad(0.5183603167533875f, _189, (_185 * 0.11516613513231277f))); - float _211 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_185 * -0.0697740763425827f))); - float _214 = mad(0.9684867262840271f, _191, mad(0.04004279896616936f, _188, (_185 * -0.007634039502590895f))); - float _217 = mad(0.9684867262840271f, _192, mad(0.04004279896616936f, _189, (_185 * -0.0022720457054674625f))); - float _220 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_185 * 0.0013765322510153055f))); - float _223 = mad(_202, 0.01933390088379383f, mad(_199, 0.2126729041337967f, (_196 * 0.4124563932418823f))); - float _226 = mad(_202, 0.11919199675321579f, mad(_199, 0.7151522040367126f, (_196 * 0.3575761020183563f))); - float _229 = mad(_202, 0.9503040909767151f, mad(_199, 0.07217500358819962f, (_196 * 0.18043750524520874f))); - float _232 = mad(_211, 0.01933390088379383f, mad(_208, 0.2126729041337967f, (_205 * 0.4124563932418823f))); - float _235 = mad(_211, 0.11919199675321579f, mad(_208, 0.7151522040367126f, (_205 * 0.3575761020183563f))); - float _238 = mad(_211, 0.9503040909767151f, mad(_208, 0.07217500358819962f, (_205 * 0.18043750524520874f))); - float _241 = mad(_220, 0.01933390088379383f, mad(_217, 0.2126729041337967f, (_214 * 0.4124563932418823f))); - float _244 = mad(_220, 0.11919199675321579f, mad(_217, 0.7151522040367126f, (_214 * 0.3575761020183563f))); - float _247 = mad(_220, 0.9503040909767151f, mad(_217, 0.07217500358819962f, (_214 * 0.18043750524520874f))); - float _277 = mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _97, mad(mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))), _96, (mad(-0.4986107647418976f, _241, mad(-1.5373831987380981f, _232, (_223 * 3.2409698963165283f))) * _95))); - float _280 = mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _97, mad(mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))), _96, (mad(0.04155505821108818f, _241, mad(1.8759675025939941f, _232, (_223 * -0.9692436456680298f))) * _95))); - float _283 = mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _97, mad(mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))), _96, (mad(1.056971549987793f, _241, mad(-0.20397695899009705f, _232, (_223 * 0.05563008040189743f))) * _95))); - float _286 = mad(0.04736635088920593f, _283, mad(0.3395121395587921f, _280, (_277 * 0.613191545009613f))); - float _289 = mad(0.01345000695437193f, _283, mad(0.9163357615470886f, _280, (_277 * 0.07020691782236099f))); - float _292 = mad(0.8696067929267883f, _283, mad(0.1095672994852066f, _280, (_277 * 0.020618872717022896f))); - // bool _295 = (cb0_046x == 0); - bool _295 = (tm_flags.x == 0); - if (_295) { - float _297 = dot(float3(_286, _289, _292), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _301 = (_286 / _297) + -1.0f; - float _302 = (_289 / _297) + -1.0f; - float _303 = (_292 / _297) + -1.0f; - float _315 = (1.0f - exp2(((_297 * _297) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_301, _302, _303), float3(_301, _302, _303)) * -4.0f)); - _335 = (((mad(-0.06368283927440643f, _292, mad(-0.32929131388664246f, _289, (_286 * 1.370412826538086f))) - _286) * _315) + _286); - _336 = (((mad(-0.010861567221581936f, _292, mad(1.0970908403396606f, _289, (_286 * -0.08343426138162613f))) - _289) * _315) + _289); - _337 = (((mad(1.203694462776184f, _292, mad(-0.09862564504146576f, _289, (_286 * -0.02579325996339321f))) - _292) * _315) + _292); - } else { - _335 = _286; - _336 = _289; - _337 = _292; - } - float _338 = dot(float3(_335, _336, _337), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _352 = cb0_052w + cb0_057w; - float _366 = cb0_051w * cb0_056w; - float _380 = cb0_050w * cb0_055w; - float _394 = cb0_049w * cb0_054w; - float _405 = cb0_048w * cb0_053w; - float _409 = cb0_048x * (_335 - _338); - float _412 = cb0_048y * (_336 - _338); - float _415 = cb0_048z * (_337 - _338); - float _472 = saturate(_338 / cb0_073x); - float _476 = (_472 * _472) * (3.0f - (_472 * 2.0f)); - float _477 = 1.0f - _476; - float _486 = cb0_067w + cb0_052w; - float _495 = cb0_066w * cb0_051w; - float _504 = cb0_065w * cb0_050w; - float _513 = cb0_064w * cb0_049w; - float _519 = cb0_063w * cb0_048w; - float _581 = saturate((_338 - cb0_073y) / (1.0f - cb0_073y)); - float _585 = (_581 * _581) * (3.0f - (_581 * 2.0f)); - float _594 = cb0_062w + cb0_052w; - float _603 = cb0_061w * cb0_051w; - float _612 = cb0_060w * cb0_050w; - float _621 = cb0_059w * cb0_049w; - float _627 = cb0_058w * cb0_048w; - float _685 = _476 - _585; - float _696 = ((_585 * (((cb0_067x + cb0_052x) + _486) + (((cb0_066x * cb0_051x) * _495) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _513) * log2(max(0.0f, (((_409 * cb0_063x) * _519) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _504)))))) + (_477 * (((cb0_052x + cb0_057x) + _352) + (((cb0_051x * cb0_056x) * _366) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _394) * log2(max(0.0f, (((_409 * cb0_053x) * _405) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _380))))))) + ((((cb0_062x + cb0_052x) + _594) + (((cb0_061x * cb0_051x) * _603) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _621) * log2(max(0.0f, (((_409 * cb0_058x) * _627) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _612))))) * _685); - float _698 = ((_585 * (((cb0_067y + cb0_052y) + _486) + (((cb0_066y * cb0_051y) * _495) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _513) * log2(max(0.0f, (((_412 * cb0_063y) * _519) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _504)))))) + (_477 * (((cb0_052y + cb0_057y) + _352) + (((cb0_051y * cb0_056y) * _366) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _394) * log2(max(0.0f, (((_412 * cb0_053y) * _405) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _380))))))) + ((((cb0_062y + cb0_052y) + _594) + (((cb0_061y * cb0_051y) * _603) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _621) * log2(max(0.0f, (((_412 * cb0_058y) * _627) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _612))))) * _685); - float _700 = ((_585 * (((cb0_067z + cb0_052z) + _486) + (((cb0_066z * cb0_051z) * _495) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _513) * log2(max(0.0f, (((_415 * cb0_063z) * _519) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _504)))))) + (_477 * (((cb0_052z + cb0_057z) + _352) + (((cb0_051z * cb0_056z) * _366) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _394) * log2(max(0.0f, (((_415 * cb0_053z) * _405) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _380))))))) + ((((cb0_062z + cb0_052z) + _594) + (((cb0_061z * cb0_051z) * _603) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _621) * log2(max(0.0f, (((_415 * cb0_058z) * _627) + _338)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _612))))) * _685); - float _726 = dot(float3(_696, _698, _700), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _784 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_696 - _726)) + _726)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _785 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_698 - _726)) + _726)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _786 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_700 - _726)) + _726)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _789 = mad(-0.0832584798336029f, _786, mad(-0.6217905879020691f, _785, (_784 * 1.7050515413284302f))); - float _792 = mad(-0.010548528283834457f, _786, mad(1.1408027410507202f, _785, (_784 * -0.13025718927383423f))); - float _795 = mad(1.152971863746643f, _786, mad(-0.1289687603712082f, _785, (_784 * -0.024003278464078903f))); - float _811 = ((mad(0.061360642313957214f, _786, mad(-4.540197551250458e-09f, _785, (_784 * 0.9386394023895264f))) - _784) * cb0_075x) + _784; - float _812 = ((mad(0.169205904006958f, _786, mad(0.8307942152023315f, _785, (_784 * 6.775371730327606e-08f))) - _785) * cb0_075x) + _785; - float _813 = (mad(-2.3283064365386963e-10f, _785, (_784 * -9.313225746154785e-10f)) * cb0_075x) + _786; - // if (((cb0_046z | cb0_046y) | cb0_046w) == 0) { - if (((tm_flags.z | tm_flags.y) | tm_flags.w) == 0) { - float _823 = mad(0.16386905312538147f, _813, mad(0.14067868888378143f, _812, (_811 * 0.6954522132873535f))); - float _826 = mad(0.0955343246459961f, _813, mad(0.8596711158752441f, _812, (_811 * 0.044794581830501556f))); - float _829 = mad(1.0015007257461548f, _813, mad(0.004025210160762072f, _812, (_811 * -0.005525882821530104f))); - float _833 = max(max(_823, _826), _829); - float _838 = (max(_833, 1.000000013351432e-10f) - max(min(min(_823, _826), _829), 1.000000013351432e-10f)) / max(_833, 0.009999999776482582f); - float _851 = ((_826 + _823) + _829) + (sqrt((((_829 - _826) * _829) + ((_826 - _823) * _826)) + ((_823 - _829) * _823)) * 1.75f); - float _852 = _851 * 0.3333333432674408f; - float _853 = _838 + -0.4000000059604645f; - float _854 = _853 * 5.0f; - float _858 = max((1.0f - abs(_853 * 2.5f)), 0.0f); - float _869 = ((float((int)(((int)(uint)((bool)(_854 > 0.0f))) - ((int)(uint)((bool)(_854 < 0.0f))))) * (1.0f - (_858 * _858))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_852 <= 0.0533333346247673f)) { - if (!(_852 >= 0.1599999964237213f)) { - _878 = (((0.23999999463558197f / _851) + -0.5f) * _869); - } else { - _878 = 0.0f; - } - } else { - _878 = _869; - } - float _879 = _878 + 1.0f; - float _880 = _879 * _823; - float _881 = _879 * _826; - float _882 = _879 * _829; - do { - if (!((bool)(_880 == _881) && (bool)(_881 == _882))) { - float _889 = ((_880 * 2.0f) - _881) - _882; - float _892 = ((_826 - _829) * 1.7320507764816284f) * _879; - float _894 = atan(_892 / _889); - bool _897 = (_889 < 0.0f); - bool _898 = (_889 == 0.0f); - bool _899 = (_892 >= 0.0f); - bool _900 = (_892 < 0.0f); - _911 = select((_899 && _898), 90.0f, select((_900 && _898), -90.0f, (select((_900 && _897), (_894 + -3.1415927410125732f), select((_899 && _897), (_894 + 3.1415927410125732f), _894)) * 57.2957763671875f))); - } else { - _911 = 0.0f; - } - float _916 = min(max(select((_911 < 0.0f), (_911 + 360.0f), _911), 0.0f), 360.0f); - do { - if (_916 < -180.0f) { - _925 = (_916 + 360.0f); - } else { - if (_916 > 180.0f) { - _925 = (_916 + -360.0f); - } else { - _925 = _916; - } - } - float _929 = saturate(1.0f - abs(_925 * 0.014814814552664757f)); - float _933 = (_929 * _929) * (3.0f - (_929 * 2.0f)); - float _939 = ((_933 * _933) * ((_838 * 0.18000000715255737f) * (0.029999999329447746f - _880))) + _880; - float _949 = max(0.0f, mad(-0.21492856740951538f, _882, mad(-0.2365107536315918f, _881, (_939 * 1.4514392614364624f)))); - float _950 = max(0.0f, mad(-0.09967592358589172f, _882, mad(1.17622971534729f, _881, (_939 * -0.07655377686023712f)))); - float _951 = max(0.0f, mad(0.9977163076400757f, _882, mad(-0.006032449658960104f, _881, (_939 * 0.008316148072481155f)))); - float _952 = dot(float3(_949, _950, _951), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _966 = (cb0_036w + 1.0f) - cb0_036y; - float _969 = cb0_037x + 1.0f; - float _971 = _969 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _989 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _980 = (cb0_036w + 0.18000000715255737f) / _966; - _989 = (-0.7447274923324585f - ((log2(_980 / (2.0f - _980)) * 0.3465735912322998f) * (_966 / cb0_036x))); - } - float _992 = ((1.0f - cb0_036y) / cb0_036x) - _989; - float _994 = (cb0_036z / cb0_036x) - _992; - float _998 = log2(lerp(_952, _949, 0.9599999785423279f)) * 0.3010300099849701f; - float _999 = log2(lerp(_952, _950, 0.9599999785423279f)) * 0.3010300099849701f; - float _1000 = log2(lerp(_952, _951, 0.9599999785423279f)) * 0.3010300099849701f; - float _1004 = (_998 + _992) * cb0_036x; - float _1005 = (_999 + _992) * cb0_036x; - float _1006 = (_1000 + _992) * cb0_036x; - float _1007 = _966 * 2.0f; - float _1010 = _998 - _989; - float _1011 = _999 - _989; - float _1012 = _1000 - _989; - float _1013 = ((cb0_036x * -2.0f) / _966) * 1.4426950216293335f; - float _1029 = _971 * 2.0f; - float _1035 = ((cb0_036x * 2.0f) / _971) * 1.4426950216293335f; - float _1054 = select((_998 < _989), ((_1007 / (exp2(_1013 * _1010) + 1.0f)) - cb0_036w), _1004); - float _1055 = select((_999 < _989), ((_1007 / (exp2(_1013 * _1011) + 1.0f)) - cb0_036w), _1005); - float _1056 = select((_1000 < _989), ((_1007 / (exp2(_1013 * _1012) + 1.0f)) - cb0_036w), _1006); - float _1063 = _994 - _989; - float _1067 = saturate(_1010 / _1063); - float _1068 = saturate(_1011 / _1063); - float _1069 = saturate(_1012 / _1063); - bool _1070 = (_994 < _989); - float _1074 = select(_1070, (1.0f - _1067), _1067); - float _1075 = select(_1070, (1.0f - _1068), _1068); - float _1076 = select(_1070, (1.0f - _1069), _1069); - float _1095 = (((_1074 * _1074) * (select((_998 > _994), (_969 - (_1029 / (exp2(_1035 * (_998 - _994)) + 1.0f))), _1004) - _1054)) * (3.0f - (_1074 * 2.0f))) + _1054; - float _1096 = (((_1075 * _1075) * (select((_999 > _994), (_969 - (_1029 / (exp2(_1035 * (_999 - _994)) + 1.0f))), _1005) - _1055)) * (3.0f - (_1075 * 2.0f))) + _1055; - float _1097 = (((_1076 * _1076) * (select((_1000 > _994), (_969 - (_1029 / (exp2(_1035 * (_1000 - _994)) + 1.0f))), _1006) - _1056)) * (3.0f - (_1076 * 2.0f))) + _1056; - float _1098 = dot(float3(_1095, _1096, _1097), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1122 = (((max(0.0f, (lerp(_1098, _1095, 0.9300000071525574f))) - _811) * cb0_075z) + _811); - _1123 = (((max(0.0f, (lerp(_1098, _1096, 0.9300000071525574f))) - _812) * cb0_075z) + _812); - _1124 = (((max(0.0f, (lerp(_1098, _1097, 0.9300000071525574f))) - _813) * cb0_075z) + _813); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1122 = _811; - _1123 = _812; - _1124 = _813; - } - float _1140 = ((mad(-0.06537103652954102f, _1124, mad(1.451815478503704e-06f, _1123, (_1122 * 1.065374732017517f))) - _1122) * cb0_075x) + _1122; - float _1141 = ((mad(-0.20366770029067993f, _1124, mad(1.2036634683609009f, _1123, (_1122 * -2.57161445915699e-07f))) - _1123) * cb0_075x) + _1123; - float _1142 = ((mad(0.9999996423721313f, _1124, mad(2.0954757928848267e-08f, _1123, (_1122 * 1.862645149230957e-08f))) - _1124) * cb0_075x) + _1124; - [branch] - if (!_295) { - float _1185 = 1.0f / (dot(float3(_789, _792, _795), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1195 = max(0.0f, (((_1185 * cb0_035x) + cb0_034x) * dot(float3(_789, _792, _795), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1196 = max(0.0f, (((_1185 * cb0_035y) + cb0_034y) * dot(float3(_789, _792, _795), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1197 = max(0.0f, (((_1185 * cb0_035z) + cb0_034z) * dot(float3(_789, _792, _795), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1203 = max(0.0f, (cb0_031x - _1195)); - float _1204 = max(0.0f, (cb0_031x - _1196)); - float _1205 = max(0.0f, (cb0_031x - _1197)); - float _1207 = max(_1195, cb0_031z); - float _1208 = max(_1196, cb0_031z); - float _1209 = max(_1197, cb0_031z); - float _1254 = cb0_029w + -0.0020000000949949026f; - _1265 = ((((min(max(_1195, cb0_031x), cb0_031z) * cb0_030w) + _1254) + (((cb0_032x * _1207) + cb0_032y) * (1.0f / (_1207 + cb0_031w)))) + ((_1203 * cb0_028w) * (1.0f / (cb0_031y + _1203)))); - _1266 = ((((min(max(_1196, cb0_031x), cb0_031z) * cb0_030w) + _1254) + (((cb0_032x * _1208) + cb0_032y) * (1.0f / (_1208 + cb0_031w)))) + ((_1204 * cb0_028w) * (1.0f / (_1204 + cb0_031y)))); - _1267 = ((((min(max(_1197, cb0_031x), cb0_031z) * cb0_030w) + _1254) + ((1.0f / (_1209 + cb0_031w)) * ((cb0_032x * _1209) + cb0_032y))) + ((_1205 * cb0_028w) * (1.0f / (_1205 + cb0_031y)))); - } else { - _1265 = max(0.0f, mad(-0.0832584798336029f, _1142, mad(-0.6217905879020691f, _1141, (_1140 * 1.7050515413284302f)))); - _1266 = max(0.0f, mad(-0.010548528283834457f, _1142, mad(1.1408027410507202f, _1141, (_1140 * -0.13025718927383423f)))); - _1267 = max(0.0f, mad(1.152971863746643f, _1142, mad(-0.1289687603712082f, _1141, (_1140 * -0.024003278464078903f)))); - } - float _1293 = ((((cb0_026x * _1265) + cb0_026y) * _1265) + cb0_026z) * cb0_044y; - float _1294 = ((((cb0_026x * _1266) + cb0_026y) * _1266) + cb0_026z) * cb0_044z; - float _1295 = ((((cb0_026x * _1267) + cb0_026y) * _1267) + cb0_026z) * cb0_044w; - float _1302 = ((cb0_045x - _1293) * cb0_045w) + _1293; - float _1303 = ((cb0_045y - _1294) * cb0_045w) + _1294; - float _1304 = ((cb0_045z - _1295) * cb0_045w) + _1295; - float _1305 = cb0_044y * _789; - float _1306 = cb0_044z * _792; - float _1307 = cb0_044w * _795; - float _1314 = ((cb0_045x - _1305) * cb0_045w) + _1305; - float _1315 = ((cb0_045y - _1306) * cb0_045w) + _1306; - float _1316 = ((cb0_045z - _1307) * cb0_045w) + _1307; - float _1328 = exp2(log2(max(0.0f, _1302)) * cb0_027y); - float _1329 = exp2(log2(max(0.0f, _1303)) * cb0_027y); - float _1330 = exp2(log2(max(0.0f, _1304)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1328, _1329, _1330)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if (cb0_074z == 0) { - do { - if (_1328 < 0.0031306699384003878f) { - _1343 = (_1328 * 12.920000076293945f); - } else { - _1343 = (((pow(_1328, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1329 < 0.0031306699384003878f) { - _1354 = (_1329 * 12.920000076293945f); - } else { - _1354 = (((pow(_1329, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1330 < 0.0031306699384003878f) { - _2784 = _1343; - _2785 = _1354; - _2786 = (_1330 * 12.920000076293945f); - } else { - _2784 = _1343; - _2785 = _1354; - _2786 = (((pow(_1330, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if (cb0_074z == 1) { - float _1369 = mad(0.04736635088920593f, _1330, mad(0.3395121395587921f, _1329, (_1328 * 0.613191545009613f))); - float _1372 = mad(0.01345000695437193f, _1330, mad(0.9163357615470886f, _1329, (_1328 * 0.07020691782236099f))); - float _1375 = mad(0.8696067929267883f, _1330, mad(0.1095672994852066f, _1329, (_1328 * 0.020618872717022896f))); - float _1385 = max(6.103519990574569e-05f, mad(_32, _1375, mad(_31, _1372, (_1369 * _30)))); - float _1386 = max(6.103519990574569e-05f, mad(_35, _1375, mad(_34, _1372, (_1369 * _33)))); - float _1387 = max(6.103519990574569e-05f, mad(_38, _1375, mad(_37, _1372, (_1369 * _36)))); - _2784 = min((_1385 * 4.5f), ((exp2(log2(max(_1385, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2785 = min((_1386 * 4.5f), ((exp2(log2(max(_1386, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2786 = min((_1387 * 4.5f), ((exp2(log2(max(_1387, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1414 = (cb0_074z == 5); - if ((bool)(cb0_074z == 3) || _1414) { - float _1417 = _1315 * 3.0f; - float _1418 = _1316 * 3.0f; - float _1421 = mad(0.17733481526374817f, _1418, mad(0.38297808170318604f, _1417, (_1314 * 1.31910240650177f))); - float _1424 = mad(0.09676162153482437f, _1418, mad(0.8134231567382812f, _1417, (_1314 * 0.2693769633769989f))); - float _1427 = mad(0.870704174041748f, _1418, mad(0.11154405772686005f, _1417, (_1314 * 0.05263196676969528f))); - float _1431 = max(max(_1421, _1424), _1427); - float _1436 = (max(_1431, 1.000000013351432e-10f) - max(min(min(_1421, _1424), _1427), 1.000000013351432e-10f)) / max(_1431, 0.009999999776482582f); - float _1449 = ((_1424 + _1421) + _1427) + (sqrt((((_1427 - _1424) * _1427) + ((_1424 - _1421) * _1424)) + ((_1421 - _1427) * _1421)) * 1.75f); - float _1450 = _1449 * 0.3333333432674408f; - float _1451 = _1436 + -0.4000000059604645f; - float _1452 = _1451 * 5.0f; - float _1456 = max((1.0f - abs(_1451 * 2.5f)), 0.0f); - float _1467 = ((float((int)(((int)(uint)((bool)(_1452 > 0.0f))) - ((int)(uint)((bool)(_1452 < 0.0f))))) * (1.0f - (_1456 * _1456))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1450 <= 0.0533333346247673f)) { - if (!(_1450 >= 0.1599999964237213f)) { - _1476 = (((0.23999999463558197f / _1449) + -0.5f) * _1467); - } else { - _1476 = 0.0f; - } - } else { - _1476 = _1467; - } - float _1477 = _1476 + 1.0f; - float _1478 = _1477 * _1421; - float _1479 = _1477 * _1424; - float _1480 = _1477 * _1427; - do { - if (!((bool)(_1478 == _1479) && (bool)(_1479 == _1480))) { - float _1487 = ((_1478 * 2.0f) - _1479) - _1480; - float _1490 = ((_1424 - _1427) * 1.7320507764816284f) * _1477; - float _1492 = atan(_1490 / _1487); - bool _1495 = (_1487 < 0.0f); - bool _1496 = (_1487 == 0.0f); - bool _1497 = (_1490 >= 0.0f); - bool _1498 = (_1490 < 0.0f); - _1509 = select((_1497 && _1496), 90.0f, select((_1498 && _1496), -90.0f, (select((_1498 && _1495), (_1492 + -3.1415927410125732f), select((_1497 && _1495), (_1492 + 3.1415927410125732f), _1492)) * 57.2957763671875f))); - } else { - _1509 = 0.0f; - } - float _1514 = min(max(select((_1509 < 0.0f), (_1509 + 360.0f), _1509), 0.0f), 360.0f); - do { - if (_1514 < -180.0f) { - _1523 = (_1514 + 360.0f); - } else { - if (_1514 > 180.0f) { - _1523 = (_1514 + -360.0f); - } else { - _1523 = _1514; - } - } - do { - if ((bool)(_1523 > -67.5f) && (bool)(_1523 < 67.5f)) { - float _1529 = (_1523 + 67.5f) * 0.029629629105329514f; - int _1530 = int(_1529); - float _1532 = _1529 - float((int)(_1530)); - float _1533 = _1532 * _1532; - float _1534 = _1533 * _1532; - if (_1530 == 3) { - _1562 = (((0.1666666716337204f - (_1532 * 0.5f)) + (_1533 * 0.5f)) - (_1534 * 0.1666666716337204f)); - } else { - if (_1530 == 2) { - _1562 = ((0.6666666865348816f - _1533) + (_1534 * 0.5f)); - } else { - if (_1530 == 1) { - _1562 = ((0.1666666716337204f - (_1534 * 0.5f)) + ((_1533 + _1532) * 0.5f)); - } else { - _1562 = select((_1530 == 0), (_1534 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1562 = 0.0f; - } - float _1571 = min(max(((((_1436 * 0.27000001072883606f) * (0.029999999329447746f - _1478)) * _1562) + _1478), 0.0f), 65535.0f); - float _1572 = min(max(_1479, 0.0f), 65535.0f); - float _1573 = min(max(_1480, 0.0f), 65535.0f); - float _1586 = min(max(mad(-0.21492856740951538f, _1573, mad(-0.2365107536315918f, _1572, (_1571 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1587 = min(max(mad(-0.09967592358589172f, _1573, mad(1.17622971534729f, _1572, (_1571 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1588 = min(max(mad(0.9977163076400757f, _1573, mad(-0.006032449658960104f, _1572, (_1571 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1589 = dot(float3(_1586, _1587, _1588), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1596 = ((_1586 - _1589) * 0.9599999785423279f) + _1589; - float _1597 = ((_1587 - _1589) * 0.9599999785423279f) + _1589; - float _1598 = ((_1588 - _1589) * 0.9599999785423279f) + _1589; - float _1601 = log2(select((_1596 <= 0.0f), 6.103515625e-05f, _1596)); - float _1602 = _1601 * 0.3010300099849701f; - do { - if (!(_1602 <= -5.2601776123046875f)) { - if ((bool)(_1602 > -5.2601776123046875f) && (bool)(_1602 < -0.7447274923324585f)) { - float _1610 = (_1601 * 0.19999998807907104f) + 3.494786262512207f; - int _1611 = int(_1610); - float _1613 = _1610 - float((int)(_1611)); - float _1615 = _global_0[_1611]; - float _1618 = _global_0[(_1611 + 1)]; - float _1623 = _1615 * 0.5f; - _1655 = dot(float3((_1613 * _1613), _1613, 1.0f), float3(mad((_global_0[(_1611 + 2)]), 0.5f, mad(_1618, -1.0f, _1623)), (_1618 - _1615), mad(_1618, 0.5f, _1623))); - } else { - if ((bool)(_1602 >= -0.7447274923324585f) && (bool)(_1602 < 4.673812389373779f)) { - float _1635 = (_1601 * 0.1666666567325592f) + 0.4123218357563019f; - int _1636 = int(_1635); - float _1638 = _1635 - float((int)(_1636)); - float _1640 = _global_1[_1636]; - float _1643 = _global_1[(_1636 + 1)]; - float _1648 = _1640 * 0.5f; - _1655 = dot(float3((_1638 * _1638), _1638, 1.0f), float3(mad((_global_1[(_1636 + 2)]), 0.5f, mad(_1643, -1.0f, _1648)), (_1643 - _1640), mad(_1643, 0.5f, _1648))); - } else { - _1655 = 4.0f; - } - } - } else { - _1655 = -4.0f; - } - float _1657 = exp2(_1655 * 3.321928024291992f); - float _1660 = log2(select((_1597 <= 0.0f), 6.103515625e-05f, _1597)); - float _1661 = _1660 * 0.3010300099849701f; - do { - if (!(_1661 <= -5.2601776123046875f)) { - if ((bool)(_1661 > -5.2601776123046875f) && (bool)(_1661 < -0.7447274923324585f)) { - float _1669 = (_1660 * 0.19999998807907104f) + 3.494786262512207f; - int _1670 = int(_1669); - float _1672 = _1669 - float((int)(_1670)); - float _1674 = _global_0[_1670]; - float _1677 = _global_0[(_1670 + 1)]; - float _1682 = _1674 * 0.5f; - _1714 = dot(float3((_1672 * _1672), _1672, 1.0f), float3(mad((_global_0[(_1670 + 2)]), 0.5f, mad(_1677, -1.0f, _1682)), (_1677 - _1674), mad(_1677, 0.5f, _1682))); - } else { - if ((bool)(_1661 >= -0.7447274923324585f) && (bool)(_1661 < 4.673812389373779f)) { - float _1694 = (_1660 * 0.1666666567325592f) + 0.4123218357563019f; - int _1695 = int(_1694); - float _1697 = _1694 - float((int)(_1695)); - float _1699 = _global_1[_1695]; - float _1702 = _global_1[(_1695 + 1)]; - float _1707 = _1699 * 0.5f; - _1714 = dot(float3((_1697 * _1697), _1697, 1.0f), float3(mad((_global_1[(_1695 + 2)]), 0.5f, mad(_1702, -1.0f, _1707)), (_1702 - _1699), mad(_1702, 0.5f, _1707))); - } else { - _1714 = 4.0f; - } - } - } else { - _1714 = -4.0f; - } - float _1716 = exp2(_1714 * 3.321928024291992f); - float _1719 = log2(select((_1598 <= 0.0f), 6.103515625e-05f, _1598)); - float _1720 = _1719 * 0.3010300099849701f; - do { - if (!(_1720 <= -5.2601776123046875f)) { - if ((bool)(_1720 > -5.2601776123046875f) && (bool)(_1720 < -0.7447274923324585f)) { - float _1728 = (_1719 * 0.19999998807907104f) + 3.494786262512207f; - int _1729 = int(_1728); - float _1731 = _1728 - float((int)(_1729)); - float _1733 = _global_0[_1729]; - float _1736 = _global_0[(_1729 + 1)]; - float _1741 = _1733 * 0.5f; - _1773 = dot(float3((_1731 * _1731), _1731, 1.0f), float3(mad((_global_0[(_1729 + 2)]), 0.5f, mad(_1736, -1.0f, _1741)), (_1736 - _1733), mad(_1736, 0.5f, _1741))); - } else { - if ((bool)(_1720 >= -0.7447274923324585f) && (bool)(_1720 < 4.673812389373779f)) { - float _1753 = (_1719 * 0.1666666567325592f) + 0.4123218357563019f; - int _1754 = int(_1753); - float _1756 = _1753 - float((int)(_1754)); - float _1758 = _global_1[_1754]; - float _1761 = _global_1[(_1754 + 1)]; - float _1766 = _1758 * 0.5f; - _1773 = dot(float3((_1756 * _1756), _1756, 1.0f), float3(mad((_global_1[(_1754 + 2)]), 0.5f, mad(_1761, -1.0f, _1766)), (_1761 - _1758), mad(_1761, 0.5f, _1766))); - } else { - _1773 = 4.0f; - } - } - } else { - _1773 = -4.0f; - } - float _1775 = exp2(_1773 * 3.321928024291992f); - float _1778 = mad(0.16386906802654266f, _1775, mad(0.14067870378494263f, _1716, (_1657 * 0.6954522132873535f))); - float _1781 = mad(0.0955343171954155f, _1775, mad(0.8596711158752441f, _1716, (_1657 * 0.044794563204050064f))); - float _1784 = mad(1.0015007257461548f, _1775, mad(0.004025210160762072f, _1716, (_1657 * -0.005525882821530104f))); - float _1787 = mad(-0.21492856740951538f, _1784, mad(-0.2365107536315918f, _1781, (_1778 * 1.4514392614364624f))); - float _1790 = mad(-0.09967592358589172f, _1784, mad(1.17622971534729f, _1781, (_1778 * -0.07655377686023712f))); - float _1793 = mad(0.9977163076400757f, _1784, mad(-0.006032449658960104f, _1781, (_1778 * 0.008316148072481155f))); - float _1796 = log2(select((_1787 <= 0.0f), 9.999999747378752e-05f, _1787)); - float _1797 = _1796 * 0.3010300099849701f; - do { - if (!(!(_1797 <= -3.848327875137329f))) { - _1856 = ((_1796 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1797 > -3.848327875137329f) && (bool)(_1797 < 0.6812411546707153f)) { - float _1808 = (_1796 + 12.783867835998535f) * 0.46521204710006714f; - int _1809 = int(_1808); - float _1811 = _1808 - float((int)(_1809)); - float _1813 = _global_2[_1809]; - float _1816 = _global_2[(_1809 + 1)]; - float _1821 = _1813 * 0.5f; - _1856 = dot(float3((_1811 * _1811), _1811, 1.0f), float3(mad((_global_2[(_1809 + 2)]), 0.5f, mad(_1816, -1.0f, _1821)), (_1816 - _1813), mad(_1816, 0.5f, _1821))); - } else { - if ((bool)(_1797 >= 0.6812411546707153f) && (bool)(_1797 < 3.653702974319458f)) { - float _1833 = (_1796 + -2.2630341053009033f) * 0.7089107632637024f; - int _1834 = int(_1833); - float _1836 = _1833 - float((int)(_1834)); - float _1838 = _global_3[_1834]; - float _1841 = _global_3[(_1834 + 1)]; - float _1846 = _1838 * 0.5f; - _1856 = dot(float3((_1836 * _1836), _1836, 1.0f), float3(mad((_global_3[(_1834 + 2)]), 0.5f, mad(_1841, -1.0f, _1846)), (_1841 - _1838), mad(_1841, 0.5f, _1846))); - } else { - _1856 = ((_1796 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1861 = log2(select((_1790 <= 0.0f), 9.999999747378752e-05f, _1790)); - float _1862 = _1861 * 0.3010300099849701f; - do { - if (!(!(_1862 <= -3.848327875137329f))) { - _1921 = ((_1861 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1862 > -3.848327875137329f) && (bool)(_1862 < 0.6812411546707153f)) { - float _1873 = (_1861 + 12.783867835998535f) * 0.46521204710006714f; - int _1874 = int(_1873); - float _1876 = _1873 - float((int)(_1874)); - float _1878 = _global_2[_1874]; - float _1881 = _global_2[(_1874 + 1)]; - float _1886 = _1878 * 0.5f; - _1921 = dot(float3((_1876 * _1876), _1876, 1.0f), float3(mad((_global_2[(_1874 + 2)]), 0.5f, mad(_1881, -1.0f, _1886)), (_1881 - _1878), mad(_1881, 0.5f, _1886))); - } else { - if ((bool)(_1862 >= 0.6812411546707153f) && (bool)(_1862 < 3.653702974319458f)) { - float _1898 = (_1861 + -2.2630341053009033f) * 0.7089107632637024f; - int _1899 = int(_1898); - float _1901 = _1898 - float((int)(_1899)); - float _1903 = _global_3[_1899]; - float _1906 = _global_3[(_1899 + 1)]; - float _1911 = _1903 * 0.5f; - _1921 = dot(float3((_1901 * _1901), _1901, 1.0f), float3(mad((_global_3[(_1899 + 2)]), 0.5f, mad(_1906, -1.0f, _1911)), (_1906 - _1903), mad(_1906, 0.5f, _1911))); - } else { - _1921 = ((_1861 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1926 = log2(select((_1793 <= 0.0f), 9.999999747378752e-05f, _1793)); - float _1927 = _1926 * 0.3010300099849701f; - do { - if (!(!(_1927 <= -3.848327875137329f))) { - _1986 = ((_1926 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1927 > -3.848327875137329f) && (bool)(_1927 < 0.6812411546707153f)) { - float _1938 = (_1926 + 12.783867835998535f) * 0.46521204710006714f; - int _1939 = int(_1938); - float _1941 = _1938 - float((int)(_1939)); - float _1943 = _global_2[_1939]; - float _1946 = _global_2[(_1939 + 1)]; - float _1951 = _1943 * 0.5f; - _1986 = dot(float3((_1941 * _1941), _1941, 1.0f), float3(mad((_global_2[(_1939 + 2)]), 0.5f, mad(_1946, -1.0f, _1951)), (_1946 - _1943), mad(_1946, 0.5f, _1951))); - } else { - if ((bool)(_1927 >= 0.6812411546707153f) && (bool)(_1927 < 3.653702974319458f)) { - float _1963 = (_1926 + -2.2630341053009033f) * 0.7089107632637024f; - int _1964 = int(_1963); - float _1966 = _1963 - float((int)(_1964)); - float _1968 = _global_3[_1964]; - float _1971 = _global_3[(_1964 + 1)]; - float _1976 = _1968 * 0.5f; - _1986 = dot(float3((_1966 * _1966), _1966, 1.0f), float3(mad((_global_3[(_1964 + 2)]), 0.5f, mad(_1971, -1.0f, _1976)), (_1971 - _1968), mad(_1971, 0.5f, _1976))); - } else { - _1986 = ((_1926 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1989 = exp2(_1856 * 3.321928024291992f) + -3.507384462864138e-05f; - float _1990 = exp2(_1921 * 3.321928024291992f) + -3.507384462864138e-05f; - float _1991 = exp2(_1986 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1414) { - _2003 = mad(_32, _1991, mad(_31, _1990, (_1989 * _30))); - _2004 = mad(_35, _1991, mad(_34, _1990, (_1989 * _33))); - _2005 = mad(_38, _1991, mad(_37, _1990, (_1989 * _36))); - } else { - _2003 = _1989; - _2004 = _1990; - _2005 = _1991; - } - float _2015 = exp2(log2(_2003 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2016 = exp2(log2(_2004 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2017 = exp2(log2(_2005 * 9.999999747378752e-05f) * 0.1593017578125f); - _2784 = exp2(log2((1.0f / ((_2015 * 18.6875f) + 1.0f)) * ((_2015 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2785 = exp2(log2((1.0f / ((_2016 * 18.6875f) + 1.0f)) * ((_2016 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2786 = exp2(log2((1.0f / ((_2017 * 18.6875f) + 1.0f)) * ((_2017 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((cb0_074z & -3) == 4) { - float _2050 = _1315 * 3.0f; - float _2051 = _1316 * 3.0f; - float _2054 = mad(0.17733481526374817f, _2051, mad(0.38297808170318604f, _2050, (_1314 * 1.31910240650177f))); - float _2057 = mad(0.09676162153482437f, _2051, mad(0.8134231567382812f, _2050, (_1314 * 0.2693769633769989f))); - float _2060 = mad(0.870704174041748f, _2051, mad(0.11154405772686005f, _2050, (_1314 * 0.05263196676969528f))); - float _2064 = max(max(_2054, _2057), _2060); - float _2069 = (max(_2064, 1.000000013351432e-10f) - max(min(min(_2054, _2057), _2060), 1.000000013351432e-10f)) / max(_2064, 0.009999999776482582f); - float _2082 = ((_2057 + _2054) + _2060) + (sqrt((((_2060 - _2057) * _2060) + ((_2057 - _2054) * _2057)) + ((_2054 - _2060) * _2054)) * 1.75f); - float _2083 = _2082 * 0.3333333432674408f; - float _2084 = _2069 + -0.4000000059604645f; - float _2085 = _2084 * 5.0f; - float _2089 = max((1.0f - abs(_2084 * 2.5f)), 0.0f); - float _2100 = ((float((int)(((int)(uint)((bool)(_2085 > 0.0f))) - ((int)(uint)((bool)(_2085 < 0.0f))))) * (1.0f - (_2089 * _2089))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2083 <= 0.0533333346247673f)) { - if (!(_2083 >= 0.1599999964237213f)) { - _2109 = (((0.23999999463558197f / _2082) + -0.5f) * _2100); - } else { - _2109 = 0.0f; - } - } else { - _2109 = _2100; - } - float _2110 = _2109 + 1.0f; - float _2111 = _2110 * _2054; - float _2112 = _2110 * _2057; - float _2113 = _2110 * _2060; - do { - if (!((bool)(_2111 == _2112) && (bool)(_2112 == _2113))) { - float _2120 = ((_2111 * 2.0f) - _2112) - _2113; - float _2123 = ((_2057 - _2060) * 1.7320507764816284f) * _2110; - float _2125 = atan(_2123 / _2120); - bool _2128 = (_2120 < 0.0f); - bool _2129 = (_2120 == 0.0f); - bool _2130 = (_2123 >= 0.0f); - bool _2131 = (_2123 < 0.0f); - _2142 = select((_2130 && _2129), 90.0f, select((_2131 && _2129), -90.0f, (select((_2131 && _2128), (_2125 + -3.1415927410125732f), select((_2130 && _2128), (_2125 + 3.1415927410125732f), _2125)) * 57.2957763671875f))); - } else { - _2142 = 0.0f; - } - float _2147 = min(max(select((_2142 < 0.0f), (_2142 + 360.0f), _2142), 0.0f), 360.0f); - do { - if (_2147 < -180.0f) { - _2156 = (_2147 + 360.0f); - } else { - if (_2147 > 180.0f) { - _2156 = (_2147 + -360.0f); - } else { - _2156 = _2147; - } - } - do { - if ((bool)(_2156 > -67.5f) && (bool)(_2156 < 67.5f)) { - float _2162 = (_2156 + 67.5f) * 0.029629629105329514f; - int _2163 = int(_2162); - float _2165 = _2162 - float((int)(_2163)); - float _2166 = _2165 * _2165; - float _2167 = _2166 * _2165; - if (_2163 == 3) { - _2195 = (((0.1666666716337204f - (_2165 * 0.5f)) + (_2166 * 0.5f)) - (_2167 * 0.1666666716337204f)); - } else { - if (_2163 == 2) { - _2195 = ((0.6666666865348816f - _2166) + (_2167 * 0.5f)); - } else { - if (_2163 == 1) { - _2195 = ((0.1666666716337204f - (_2167 * 0.5f)) + ((_2166 + _2165) * 0.5f)); - } else { - _2195 = select((_2163 == 0), (_2167 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2195 = 0.0f; - } - float _2204 = min(max(((((_2069 * 0.27000001072883606f) * (0.029999999329447746f - _2111)) * _2195) + _2111), 0.0f), 65535.0f); - float _2205 = min(max(_2112, 0.0f), 65535.0f); - float _2206 = min(max(_2113, 0.0f), 65535.0f); - float _2219 = min(max(mad(-0.21492856740951538f, _2206, mad(-0.2365107536315918f, _2205, (_2204 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2220 = min(max(mad(-0.09967592358589172f, _2206, mad(1.17622971534729f, _2205, (_2204 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2221 = min(max(mad(0.9977163076400757f, _2206, mad(-0.006032449658960104f, _2205, (_2204 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2222 = dot(float3(_2219, _2220, _2221), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2229 = ((_2219 - _2222) * 0.9599999785423279f) + _2222; - float _2230 = ((_2220 - _2222) * 0.9599999785423279f) + _2222; - float _2231 = ((_2221 - _2222) * 0.9599999785423279f) + _2222; - float _2234 = log2(select((_2229 <= 0.0f), 6.103515625e-05f, _2229)); - float _2235 = _2234 * 0.3010300099849701f; - do { - if (!(_2235 <= -5.2601776123046875f)) { - if ((bool)(_2235 > -5.2601776123046875f) && (bool)(_2235 < -0.7447274923324585f)) { - float _2243 = (_2234 * 0.19999998807907104f) + 3.494786262512207f; - int _2244 = int(_2243); - float _2246 = _2243 - float((int)(_2244)); - float _2248 = _global_0[_2244]; - float _2251 = _global_0[(_2244 + 1)]; - float _2256 = _2248 * 0.5f; - _2288 = dot(float3((_2246 * _2246), _2246, 1.0f), float3(mad((_global_0[(_2244 + 2)]), 0.5f, mad(_2251, -1.0f, _2256)), (_2251 - _2248), mad(_2251, 0.5f, _2256))); - } else { - if ((bool)(_2235 >= -0.7447274923324585f) && (bool)(_2235 < 4.673812389373779f)) { - float _2268 = (_2234 * 0.1666666567325592f) + 0.4123218357563019f; - int _2269 = int(_2268); - float _2271 = _2268 - float((int)(_2269)); - float _2273 = _global_1[_2269]; - float _2276 = _global_1[(_2269 + 1)]; - float _2281 = _2273 * 0.5f; - _2288 = dot(float3((_2271 * _2271), _2271, 1.0f), float3(mad((_global_1[(_2269 + 2)]), 0.5f, mad(_2276, -1.0f, _2281)), (_2276 - _2273), mad(_2276, 0.5f, _2281))); - } else { - _2288 = 4.0f; - } - } - } else { - _2288 = -4.0f; - } - float _2290 = exp2(_2288 * 3.321928024291992f); - float _2293 = log2(select((_2230 <= 0.0f), 6.103515625e-05f, _2230)); - float _2294 = _2293 * 0.3010300099849701f; - do { - if (!(_2294 <= -5.2601776123046875f)) { - if ((bool)(_2294 > -5.2601776123046875f) && (bool)(_2294 < -0.7447274923324585f)) { - float _2302 = (_2293 * 0.19999998807907104f) + 3.494786262512207f; - int _2303 = int(_2302); - float _2305 = _2302 - float((int)(_2303)); - float _2307 = _global_0[_2303]; - float _2310 = _global_0[(_2303 + 1)]; - float _2315 = _2307 * 0.5f; - _2347 = dot(float3((_2305 * _2305), _2305, 1.0f), float3(mad((_global_0[(_2303 + 2)]), 0.5f, mad(_2310, -1.0f, _2315)), (_2310 - _2307), mad(_2310, 0.5f, _2315))); - } else { - if ((bool)(_2294 >= -0.7447274923324585f) && (bool)(_2294 < 4.673812389373779f)) { - float _2327 = (_2293 * 0.1666666567325592f) + 0.4123218357563019f; - int _2328 = int(_2327); - float _2330 = _2327 - float((int)(_2328)); - float _2332 = _global_1[_2328]; - float _2335 = _global_1[(_2328 + 1)]; - float _2340 = _2332 * 0.5f; - _2347 = dot(float3((_2330 * _2330), _2330, 1.0f), float3(mad((_global_1[(_2328 + 2)]), 0.5f, mad(_2335, -1.0f, _2340)), (_2335 - _2332), mad(_2335, 0.5f, _2340))); - } else { - _2347 = 4.0f; - } - } - } else { - _2347 = -4.0f; - } - float _2349 = exp2(_2347 * 3.321928024291992f); - float _2352 = log2(select((_2231 <= 0.0f), 6.103515625e-05f, _2231)); - float _2353 = _2352 * 0.3010300099849701f; - do { - if (!(_2353 <= -5.2601776123046875f)) { - if ((bool)(_2353 > -5.2601776123046875f) && (bool)(_2353 < -0.7447274923324585f)) { - float _2361 = (_2352 * 0.19999998807907104f) + 3.494786262512207f; - int _2362 = int(_2361); - float _2364 = _2361 - float((int)(_2362)); - float _2366 = _global_0[_2362]; - float _2369 = _global_0[(_2362 + 1)]; - float _2374 = _2366 * 0.5f; - _2406 = dot(float3((_2364 * _2364), _2364, 1.0f), float3(mad((_global_0[(_2362 + 2)]), 0.5f, mad(_2369, -1.0f, _2374)), (_2369 - _2366), mad(_2369, 0.5f, _2374))); - } else { - if ((bool)(_2353 >= -0.7447274923324585f) && (bool)(_2353 < 4.673812389373779f)) { - float _2386 = (_2352 * 0.1666666567325592f) + 0.4123218357563019f; - int _2387 = int(_2386); - float _2389 = _2386 - float((int)(_2387)); - float _2391 = _global_1[_2387]; - float _2394 = _global_1[(_2387 + 1)]; - float _2399 = _2391 * 0.5f; - _2406 = dot(float3((_2389 * _2389), _2389, 1.0f), float3(mad((_global_1[(_2387 + 2)]), 0.5f, mad(_2394, -1.0f, _2399)), (_2394 - _2391), mad(_2394, 0.5f, _2399))); - } else { - _2406 = 4.0f; - } - } - } else { - _2406 = -4.0f; - } - float _2408 = exp2(_2406 * 3.321928024291992f); - float _2411 = mad(0.16386906802654266f, _2408, mad(0.14067870378494263f, _2349, (_2290 * 0.6954522132873535f))); - float _2414 = mad(0.0955343171954155f, _2408, mad(0.8596711158752441f, _2349, (_2290 * 0.044794563204050064f))); - float _2417 = mad(1.0015007257461548f, _2408, mad(0.004025210160762072f, _2349, (_2290 * -0.005525882821530104f))); - float _2420 = mad(-0.21492856740951538f, _2417, mad(-0.2365107536315918f, _2414, (_2411 * 1.4514392614364624f))); - float _2423 = mad(-0.09967592358589172f, _2417, mad(1.17622971534729f, _2414, (_2411 * -0.07655377686023712f))); - float _2426 = mad(0.9977163076400757f, _2417, mad(-0.006032449658960104f, _2414, (_2411 * 0.008316148072481155f))); - float _2429 = log2(select((_2420 <= 0.0f), 9.999999747378752e-05f, _2420)); - float _2430 = _2429 * 0.3010300099849701f; - do { - if (!(_2430 <= -3.848327875137329f)) { - if ((bool)(_2430 > -3.848327875137329f) && (bool)(_2430 < 0.6812411546707153f)) { - float _2438 = (_2429 + 12.783867835998535f) * 0.46521204710006714f; - int _2439 = int(_2438); - float _2441 = _2438 - float((int)(_2439)); - float _2443 = _global_4[_2439]; - float _2446 = _global_4[(_2439 + 1)]; - float _2451 = _2443 * 0.5f; - _2486 = dot(float3((_2441 * _2441), _2441, 1.0f), float3(mad((_global_4[(_2439 + 2)]), 0.5f, mad(_2446, -1.0f, _2451)), (_2446 - _2443), mad(_2446, 0.5f, _2451))); - } else { - if ((bool)(_2430 >= 0.6812411546707153f) && (bool)(_2430 < 3.7613162994384766f)) { - float _2463 = (_2429 + -2.2630341053009033f) * 0.6841424107551575f; - int _2464 = int(_2463); - float _2466 = _2463 - float((int)(_2464)); - float _2468 = _global_5[_2464]; - float _2471 = _global_5[(_2464 + 1)]; - float _2476 = _2468 * 0.5f; - _2486 = dot(float3((_2466 * _2466), _2466, 1.0f), float3(mad((_global_5[(_2464 + 2)]), 0.5f, mad(_2471, -1.0f, _2476)), (_2471 - _2468), mad(_2471, 0.5f, _2476))); - } else { - _2486 = ((_2429 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2486 = -2.301030158996582f; - } - float _2488 = exp2(_2486 * 3.321928024291992f); - float _2491 = log2(select((_2423 <= 0.0f), 9.999999747378752e-05f, _2423)); - float _2492 = _2491 * 0.3010300099849701f; - do { - if (!(_2492 <= -3.848327875137329f)) { - if ((bool)(_2492 > -3.848327875137329f) && (bool)(_2492 < 0.6812411546707153f)) { - float _2500 = (_2491 + 12.783867835998535f) * 0.46521204710006714f; - int _2501 = int(_2500); - float _2503 = _2500 - float((int)(_2501)); - float _2505 = _global_4[_2501]; - float _2508 = _global_4[(_2501 + 1)]; - float _2513 = _2505 * 0.5f; - _2548 = dot(float3((_2503 * _2503), _2503, 1.0f), float3(mad((_global_4[(_2501 + 2)]), 0.5f, mad(_2508, -1.0f, _2513)), (_2508 - _2505), mad(_2508, 0.5f, _2513))); - } else { - if ((bool)(_2492 >= 0.6812411546707153f) && (bool)(_2492 < 3.7613162994384766f)) { - float _2525 = (_2491 + -2.2630341053009033f) * 0.6841424107551575f; - int _2526 = int(_2525); - float _2528 = _2525 - float((int)(_2526)); - float _2530 = _global_5[_2526]; - float _2533 = _global_5[(_2526 + 1)]; - float _2538 = _2530 * 0.5f; - _2548 = dot(float3((_2528 * _2528), _2528, 1.0f), float3(mad((_global_5[(_2526 + 2)]), 0.5f, mad(_2533, -1.0f, _2538)), (_2533 - _2530), mad(_2533, 0.5f, _2538))); - } else { - _2548 = ((_2491 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2548 = -2.301030158996582f; - } - float _2550 = exp2(_2548 * 3.321928024291992f); - float _2553 = log2(select((_2426 <= 0.0f), 9.999999747378752e-05f, _2426)); - float _2554 = _2553 * 0.3010300099849701f; - do { - if (!(_2554 <= -3.848327875137329f)) { - if ((bool)(_2554 > -3.848327875137329f) && (bool)(_2554 < 0.6812411546707153f)) { - float _2562 = (_2553 + 12.783867835998535f) * 0.46521204710006714f; - int _2563 = int(_2562); - float _2565 = _2562 - float((int)(_2563)); - float _2567 = _global_4[_2563]; - float _2570 = _global_4[(_2563 + 1)]; - float _2575 = _2567 * 0.5f; - _2610 = dot(float3((_2565 * _2565), _2565, 1.0f), float3(mad((_global_4[(_2563 + 2)]), 0.5f, mad(_2570, -1.0f, _2575)), (_2570 - _2567), mad(_2570, 0.5f, _2575))); - } else { - if ((bool)(_2554 >= 0.6812411546707153f) && (bool)(_2554 < 3.7613162994384766f)) { - float _2587 = (_2553 + -2.2630341053009033f) * 0.6841424107551575f; - int _2588 = int(_2587); - float _2590 = _2587 - float((int)(_2588)); - float _2592 = _global_5[_2588]; - float _2595 = _global_5[(_2588 + 1)]; - float _2600 = _2592 * 0.5f; - _2610 = dot(float3((_2590 * _2590), _2590, 1.0f), float3(mad((_global_5[(_2588 + 2)]), 0.5f, mad(_2595, -1.0f, _2600)), (_2595 - _2592), mad(_2595, 0.5f, _2600))); - } else { - _2610 = ((_2553 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2610 = -2.301030158996582f; - } - float _2612 = exp2(_2610 * 3.321928024291992f); - do { - if (!(cb0_074z == 6)) { - _2624 = mad(_32, _2612, mad(_31, _2550, (_2488 * _30))); - _2625 = mad(_35, _2612, mad(_34, _2550, (_2488 * _33))); - _2626 = mad(_38, _2612, mad(_37, _2550, (_2488 * _36))); - } else { - _2624 = _2488; - _2625 = _2550; - _2626 = _2612; - } - float _2636 = exp2(log2(_2624 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2637 = exp2(log2(_2625 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2638 = exp2(log2(_2626 * 9.999999747378752e-05f) * 0.1593017578125f); - _2784 = exp2(log2((1.0f / ((_2636 * 18.6875f) + 1.0f)) * ((_2636 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2785 = exp2(log2((1.0f / ((_2637 * 18.6875f) + 1.0f)) * ((_2637 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2786 = exp2(log2((1.0f / ((_2638 * 18.6875f) + 1.0f)) * ((_2638 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (cb0_074z == 7) { - float _2671 = mad(0.04736635088920593f, _1316, mad(0.3395121395587921f, _1315, (_1314 * 0.613191545009613f))); - float _2674 = mad(0.01345000695437193f, _1316, mad(0.9163357615470886f, _1315, (_1314 * 0.07020691782236099f))); - float _2677 = mad(0.8696067929267883f, _1316, mad(0.1095672994852066f, _1315, (_1314 * 0.020618872717022896f))); - float _2696 = exp2(log2(mad(_32, _2677, mad(_31, _2674, (_2671 * _30))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2697 = exp2(log2(mad(_35, _2677, mad(_34, _2674, (_2671 * _33))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2698 = exp2(log2(mad(_38, _2677, mad(_37, _2674, (_2671 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2784 = exp2(log2((1.0f / ((_2696 * 18.6875f) + 1.0f)) * ((_2696 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2785 = exp2(log2((1.0f / ((_2697 * 18.6875f) + 1.0f)) * ((_2697 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2786 = exp2(log2((1.0f / ((_2698 * 18.6875f) + 1.0f)) * ((_2698 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!(cb0_074z == 8)) { - if (cb0_074z == 9) { - float _2733 = mad(0.04736635088920593f, _1304, mad(0.3395121395587921f, _1303, (_1302 * 0.613191545009613f))); - float _2736 = mad(0.01345000695437193f, _1304, mad(0.9163357615470886f, _1303, (_1302 * 0.07020691782236099f))); - float _2739 = mad(0.8696067929267883f, _1304, mad(0.1095672994852066f, _1303, (_1302 * 0.020618872717022896f))); - _2784 = mad(_32, _2739, mad(_31, _2736, (_2733 * _30))); - _2785 = mad(_35, _2739, mad(_34, _2736, (_2733 * _33))); - _2786 = mad(_38, _2739, mad(_37, _2736, (_2733 * _36))); - } else { - float _2752 = mad(0.04736635088920593f, _1330, mad(0.3395121395587921f, _1329, (_1328 * 0.613191545009613f))); - float _2755 = mad(0.01345000695437193f, _1330, mad(0.9163357615470886f, _1329, (_1328 * 0.07020691782236099f))); - float _2758 = mad(0.8696067929267883f, _1330, mad(0.1095672994852066f, _1329, (_1328 * 0.020618872717022896f))); - float _2773 = (cb0_038w * (0.4545454680919647f - cb0_027z)) + cb0_027z; - _2784 = exp2(_2773 * log2(mad(_32, _2758, mad(_31, _2755, (_2752 * _30))))); - _2785 = exp2(_2773 * log2(mad(_35, _2758, mad(_34, _2755, (_2752 * _33))))); - _2786 = exp2(_2773 * log2(mad(_38, _2758, mad(_37, _2755, (_2752 * _36))))); - } - } else { - _2784 = _1314; - _2785 = _1315; - _2786 = _1316; - } - } - } - } - } - } - SV_Target.x = (_2784 * 0.9523810148239136f); - SV_Target.y = (_2785 * 0.9523810148239136f); - SV_Target.z = (_2786 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x93BE5210.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0x93BE5210.ps_6_0.hlsl deleted file mode 100644 index 99a4b1d29..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0x93BE5210.ps_6_0.hlsl +++ /dev/null @@ -1,1348 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_074x : packoffset(c074.x); - float cb0_074y : packoffset(c074.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _337; - float _338; - float _339; - float _762; - float _763; - float _908; - float _909; - float _910; - float _915; - float _916; - float _917; - float _1095; - float _1128; - float _1142; - float _1206; - float _1339; - float _1340; - float _1341; - float _1482; - float _1483; - float _1484; - float _1498; - float _1509; - float _1520; - float _1665; - float _1676; - float _1798; - float _1831; - float _1845; - float _1884; - float _1977; - float _2036; - float _2095; - float _2178; - float _2243; - float _2308; - float _2325; - float _2326; - float _2327; - float _2431; - float _2464; - float _2478; - float _2517; - float _2610; - float _2669; - float _2728; - float _2808; - float _2870; - float _2932; - float _2946; - float _2947; - float _2948; - float _3106; - float _3107; - float _3108; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _21 = ((uint)(cb0_074w) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _156 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _158 = _130 - (_156 * _140); - float _160 = (_156 * _130) + _140; - float _165 = (4.0f - (_160 * 8.0f)) + (_158 * 2.0f); - float _171 = (((_158 * 3.0f) / _165) - _146) + select(_149, _146, _116); - float _172 = (((_160 * 2.0f) / _165) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _173 = max(_172, 1.000000013351432e-10f); - float _174 = _171 / _173; - float _177 = ((1.0f - _171) - _172) / _173; - float _187 = 0.9413792490959167f / mad(-0.16140000522136688f, _177, ((_174 * 0.8950999975204468f) + 0.266400009393692f)); - float _188 = 1.0404363870620728f / mad(0.03669999912381172f, _177, (1.7135000228881836f - (_174 * 0.7501999735832214f))); - float _189 = 1.089766502380371f / mad(1.0296000242233276f, _177, ((_174 * 0.03889999911189079f) + -0.06849999725818634f)); - float _190 = mad(_188, -0.7501999735832214f, 0.0f); - float _191 = mad(_188, 1.7135000228881836f, 0.0f); - float _192 = mad(_188, 0.03669999912381172f, -0.0f); - float _193 = mad(_189, 0.03889999911189079f, 0.0f); - float _194 = mad(_189, -0.06849999725818634f, 0.0f); - float _195 = mad(_189, 1.0296000242233276f, 0.0f); - float _198 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_187 * 0.883457362651825f))); - float _201 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_187 * 0.26293492317199707f))); - float _204 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_187 * -0.15930065512657166f))); - float _207 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_187 * 0.38695648312568665f))); - float _210 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_187 * 0.11516613513231277f))); - float _213 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_187 * -0.0697740763425827f))); - float _216 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_187 * -0.007634039502590895f))); - float _219 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_187 * -0.0022720457054674625f))); - float _222 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_187 * 0.0013765322510153055f))); - float _225 = mad(_204, 0.01933390088379383f, mad(_201, 0.2126729041337967f, (_198 * 0.4124563932418823f))); - float _228 = mad(_204, 0.11919199675321579f, mad(_201, 0.7151522040367126f, (_198 * 0.3575761020183563f))); - float _231 = mad(_204, 0.9503040909767151f, mad(_201, 0.07217500358819962f, (_198 * 0.18043750524520874f))); - float _234 = mad(_213, 0.01933390088379383f, mad(_210, 0.2126729041337967f, (_207 * 0.4124563932418823f))); - float _237 = mad(_213, 0.11919199675321579f, mad(_210, 0.7151522040367126f, (_207 * 0.3575761020183563f))); - float _240 = mad(_213, 0.9503040909767151f, mad(_210, 0.07217500358819962f, (_207 * 0.18043750524520874f))); - float _243 = mad(_222, 0.01933390088379383f, mad(_219, 0.2126729041337967f, (_216 * 0.4124563932418823f))); - float _246 = mad(_222, 0.11919199675321579f, mad(_219, 0.7151522040367126f, (_216 * 0.3575761020183563f))); - float _249 = mad(_222, 0.9503040909767151f, mad(_219, 0.07217500358819962f, (_216 * 0.18043750524520874f))); - float _279 = mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _243, mad(-1.5373831987380981f, _234, (_225 * 3.2409698963165283f))) * _97))); - float _282 = mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _243, mad(1.8759675025939941f, _234, (_225 * -0.9692436456680298f))) * _97))); - float _285 = mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _243, mad(-0.20397695899009705f, _234, (_225 * 0.05563008040189743f))) * _97))); - float _288 = mad(0.04736635088920593f, _285, mad(0.3395121395587921f, _282, (_279 * 0.613191545009613f))); - float _291 = mad(0.01345000695437193f, _285, mad(0.9163357615470886f, _282, (_279 * 0.07020691782236099f))); - float _294 = mad(0.8696067929267883f, _285, mad(0.1095672994852066f, _282, (_279 * 0.020618872717022896f))); - bool _297 = ((uint)(tm_flags.x) == 0); - if (_297) { - float _299 = dot(float3(_288, _291, _294), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _303 = (_288 / _299) + -1.0f; - float _304 = (_291 / _299) + -1.0f; - float _305 = (_294 / _299) + -1.0f; - float _317 = (1.0f - exp2(((_299 * _299) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_303, _304, _305), float3(_303, _304, _305)) * -4.0f)); - _337 = (((mad(-0.06368283927440643f, _294, mad(-0.32929131388664246f, _291, (_288 * 1.370412826538086f))) - _288) * _317) + _288); - _338 = (((mad(-0.010861567221581936f, _294, mad(1.0970908403396606f, _291, (_288 * -0.08343426138162613f))) - _291) * _317) + _291); - _339 = (((mad(1.203694462776184f, _294, mad(-0.09862564504146576f, _291, (_288 * -0.02579325996339321f))) - _294) * _317) + _294); - } else { - _337 = _288; - _338 = _291; - _339 = _294; - } - float _340 = dot(float3(_337, _338, _339), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _354 = cb0_052w + cb0_057w; - float _368 = cb0_051w * cb0_056w; - float _382 = cb0_050w * cb0_055w; - float _396 = cb0_049w * cb0_054w; - float _407 = cb0_048w * cb0_053w; - float _411 = cb0_048x * (_337 - _340); - float _414 = cb0_048y * (_338 - _340); - float _417 = cb0_048z * (_339 - _340); - float _474 = saturate(_340 / cb0_073x); - float _478 = (_474 * _474) * (3.0f - (_474 * 2.0f)); - float _479 = 1.0f - _478; - float _488 = cb0_067w + cb0_052w; - float _497 = cb0_066w * cb0_051w; - float _506 = cb0_065w * cb0_050w; - float _515 = cb0_064w * cb0_049w; - float _521 = cb0_063w * cb0_048w; - float _583 = saturate((_340 - cb0_073y) / (1.0f - cb0_073y)); - float _587 = (_583 * _583) * (3.0f - (_583 * 2.0f)); - float _596 = cb0_062w + cb0_052w; - float _605 = cb0_061w * cb0_051w; - float _614 = cb0_060w * cb0_050w; - float _623 = cb0_059w * cb0_049w; - float _629 = cb0_058w * cb0_048w; - float _687 = _478 - _587; - float _698 = ((_587 * (((cb0_067x + cb0_052x) + _488) + (((cb0_066x * cb0_051x) * _497) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _515) * log2(max(0.0f, (((_411 * cb0_063x) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _506)))))) + (_479 * (((cb0_052x + cb0_057x) + _354) + (((cb0_051x * cb0_056x) * _368) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _396) * log2(max(0.0f, (((_411 * cb0_053x) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _382))))))) + ((((cb0_062x + cb0_052x) + _596) + (((cb0_061x * cb0_051x) * _605) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _623) * log2(max(0.0f, (((_411 * cb0_058x) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _614))))) * _687); - float _700 = ((_587 * (((cb0_067y + cb0_052y) + _488) + (((cb0_066y * cb0_051y) * _497) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _515) * log2(max(0.0f, (((_414 * cb0_063y) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _506)))))) + (_479 * (((cb0_052y + cb0_057y) + _354) + (((cb0_051y * cb0_056y) * _368) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _396) * log2(max(0.0f, (((_414 * cb0_053y) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _382))))))) + ((((cb0_062y + cb0_052y) + _596) + (((cb0_061y * cb0_051y) * _605) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _623) * log2(max(0.0f, (((_414 * cb0_058y) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _614))))) * _687); - float _702 = ((_587 * (((cb0_067z + cb0_052z) + _488) + (((cb0_066z * cb0_051z) * _497) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _515) * log2(max(0.0f, (((_417 * cb0_063z) * _521) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _506)))))) + (_479 * (((cb0_052z + cb0_057z) + _354) + (((cb0_051z * cb0_056z) * _368) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _396) * log2(max(0.0f, (((_417 * cb0_053z) * _407) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _382))))))) + ((((cb0_062z + cb0_052z) + _596) + (((cb0_061z * cb0_051z) * _605) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _623) * log2(max(0.0f, (((_417 * cb0_058z) * _629) + _340)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _614))))) * _687); - if (!(cb0_074x <= 0.0f)) { - float _709 = min(max(cb0_074y, 1800.0f), 6500.0f); - float _710 = saturate(cb0_074x); - do { - if (_709 < 4000.0f) { - float _721 = ((((_709 * 1.2864121856637212e-07f) + 0.00015411825734190643f) * _709) + 0.8601177334785461f) / ((((_709 * 7.081451371959702e-07f) + 0.0008424202096648514f) * _709) + 1.0f); - float _731 = ((((_709 * 4.204816761443908e-08f) + 4.228062607580796e-05f) * _709) + 0.31739872694015503f) / ((1.0f - (_709 * 2.8974181986995973e-05f)) + ((_709 * _709) * 1.6145605741257896e-07f)); - float _736 = ((_721 * 2.0f) + 4.0f) - (_731 * 8.0f); - _762 = ((_721 * 3.0f) / _736); - _763 = ((_731 * 2.0f) / _736); - } else { - float _741 = _709 * 1.0005563497543335f; - float _755 = select((_741 <= 7000.0f), (((((2967800.0f - (4604438528.0f / _709)) / _741) + 99.11000061035156f) / _741) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / _709)) / _741) + 247.47999572753906f) / _741) + 0.23703999817371368f)); - _762 = _755; - _763 = (((_755 * 2.869999885559082f) + -0.2750000059604645f) - ((_755 * _755) * 3.0f)); - } - float _764 = max(_763, 1.000000013351432e-10f); - float _765 = _762 / _764; - float _768 = ((1.0f - _762) - _763) / _764; - float _771 = mad(-0.16140000522136688f, _768, ((_765 * 0.8950999975204468f) + 0.266400009393692f)); - float _778 = mad(0.03669999912381172f, _768, (1.7135000228881836f - (_765 * 0.7501999735832214f))) * 0.9611351490020752f; - float _779 = mad(1.0296000242233276f, _768, ((_765 * 0.03889999911189079f) + -0.06849999725818634f)) * 0.91762775182724f; - float _780 = mad(_778, -0.7501999735832214f, 0.0f); - float _781 = mad(_778, 1.7135000228881836f, 0.0f); - float _782 = mad(_778, 0.03669999912381172f, -0.0f); - float _783 = mad(_779, 0.03889999911189079f, 0.0f); - float _784 = mad(_779, -0.06849999725818634f, 0.0f); - float _785 = mad(_779, 1.0296000242233276f, 0.0f); - float _788 = mad(0.1599626988172531f, _783, mad(-0.1470542997121811f, _780, (_771 * 0.9384711980819702f))); - float _791 = mad(0.1599626988172531f, _784, mad(-0.1470542997121811f, _781, (_771 * 0.27930817008018494f))); - float _794 = mad(0.1599626988172531f, _785, mad(-0.1470542997121811f, _782, (_771 * -0.16922049224376678f))); - float _797 = mad(0.04929120093584061f, _783, mad(0.5183603167533875f, _780, (_771 * 0.4110526740550995f))); - float _800 = mad(0.04929120093584061f, _784, mad(0.5183603167533875f, _781, (_771 * 0.12233765423297882f))); - float _803 = mad(0.04929120093584061f, _785, mad(0.5183603167533875f, _782, (_771 * -0.07411899417638779f))); - float _806 = mad(0.9684867262840271f, _783, mad(0.04004279896616936f, _780, (_771 * -0.008109419606626034f))); - float _809 = mad(0.9684867262840271f, _784, mad(0.04004279896616936f, _781, (_771 * -0.0024135285057127476f))); - float _812 = mad(0.9684867262840271f, _785, mad(0.04004279896616936f, _782, (_771 * 0.0014622504822909832f))); - float _815 = mad(_794, 0.01933390088379383f, mad(_791, 0.2126729041337967f, (_788 * 0.4124563932418823f))); - float _818 = mad(_794, 0.11919199675321579f, mad(_791, 0.7151522040367126f, (_788 * 0.3575761020183563f))); - float _821 = mad(_794, 0.9503040909767151f, mad(_791, 0.07217500358819962f, (_788 * 0.18043750524520874f))); - float _824 = mad(_803, 0.01933390088379383f, mad(_800, 0.2126729041337967f, (_797 * 0.4124563932418823f))); - float _827 = mad(_803, 0.11919199675321579f, mad(_800, 0.7151522040367126f, (_797 * 0.3575761020183563f))); - float _830 = mad(_803, 0.9503040909767151f, mad(_800, 0.07217500358819962f, (_797 * 0.18043750524520874f))); - float _833 = mad(_812, 0.01933390088379383f, mad(_809, 0.2126729041337967f, (_806 * 0.4124563932418823f))); - float _836 = mad(_812, 0.11919199675321579f, mad(_809, 0.7151522040367126f, (_806 * 0.3575761020183563f))); - float _839 = mad(_812, 0.9503040909767151f, mad(_809, 0.07217500358819962f, (_806 * 0.18043750524520874f))); - float _875 = mad(mad(1.056971549987793f, _839, mad(-0.20397695899009705f, _830, (_821 * 0.05563008040189743f))), _702, mad(mad(1.056971549987793f, _836, mad(-0.20397695899009705f, _827, (_818 * 0.05563008040189743f))), _700, (mad(1.056971549987793f, _833, mad(-0.20397695899009705f, _824, (_815 * 0.05563008040189743f))) * _698))); - float _878 = ((_710 * _710) * -0.30000001192092896f) * _875; - float _893 = ((min(1.0f, (mad(mad(-0.4986107647418976f, _839, mad(-1.5373831987380981f, _830, (_821 * 3.2409698963165283f))), _702, mad(mad(-0.4986107647418976f, _836, mad(-1.5373831987380981f, _827, (_818 * 3.2409698963165283f))), _700, (mad(-0.4986107647418976f, _833, mad(-1.5373831987380981f, _824, (_815 * 3.2409698963165283f))) * _698))) - (_878 * 0.18000000715255737f))) - _698) * _710) + _698; - float _894 = ((min(1.0f, (mad(mad(0.04155505821108818f, _839, mad(1.8759675025939941f, _830, (_821 * -0.9692436456680298f))), _702, mad(mad(0.04155505821108818f, _836, mad(1.8759675025939941f, _827, (_818 * -0.9692436456680298f))), _700, (mad(0.04155505821108818f, _833, mad(1.8759675025939941f, _824, (_815 * -0.9692436456680298f))) * _698))) - (_878 * 0.12000000476837158f))) - _700) * _710) + _700; - float _895 = ((max(0.0f, (_878 + _875)) - _702) * _710) + _702; - float _896 = dot(float3(_893, _894, _895), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - do { - if (_896 > 0.0010000000474974513f) { - float _903 = (((dot(float3(_698, _700, _702), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)) / _896) + -1.0f) * 0.800000011920929f) + 1.0f; - _908 = (_903 * _893); - _909 = (_903 * _894); - _910 = (_903 * _895); - } else { - _908 = _893; - _909 = _894; - _910 = _895; - } - _915 = max(0.0f, _908); - _916 = max(0.0f, _909); - _917 = max(0.0f, _910); - } while (false); - } while (false); - } else { - _915 = _698; - _916 = _700; - _917 = _702; - } - float _943 = dot(float3(_915, _916, _917), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1001 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_915 - _943)) + _943)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _1002 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_916 - _943)) + _943)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _1003 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_917 - _943)) + _943)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _1006 = mad(-0.0832584798336029f, _1003, mad(-0.6217905879020691f, _1002, (_1001 * 1.7050515413284302f))); - float _1009 = mad(-0.010548528283834457f, _1003, mad(1.1408027410507202f, _1002, (_1001 * -0.13025718927383423f))); - float _1012 = mad(1.152971863746643f, _1003, mad(-0.1289687603712082f, _1002, (_1001 * -0.024003278464078903f))); - float _1028 = ((mad(0.061360642313957214f, _1003, mad(-4.540197551250458e-09f, _1002, (_1001 * 0.9386394023895264f))) - _1001) * cb0_075x) + _1001; - float _1029 = ((mad(0.169205904006958f, _1003, mad(0.8307942152023315f, _1002, (_1001 * 6.775371730327606e-08f))) - _1002) * cb0_075x) + _1002; - float _1030 = (mad(-2.3283064365386963e-10f, _1002, (_1001 * -9.313225746154785e-10f)) * cb0_075x) + _1003; - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1040 = mad(0.16386905312538147f, _1030, mad(0.14067868888378143f, _1029, (_1028 * 0.6954522132873535f))); - float _1043 = mad(0.0955343246459961f, _1030, mad(0.8596711158752441f, _1029, (_1028 * 0.044794581830501556f))); - float _1046 = mad(1.0015007257461548f, _1030, mad(0.004025210160762072f, _1029, (_1028 * -0.005525882821530104f))); - float _1050 = max(max(_1040, _1043), _1046); - float _1055 = (max(_1050, 1.000000013351432e-10f) - max(min(min(_1040, _1043), _1046), 1.000000013351432e-10f)) / max(_1050, 0.009999999776482582f); - float _1068 = ((_1043 + _1040) + _1046) + (sqrt((((_1046 - _1043) * _1046) + ((_1043 - _1040) * _1043)) + ((_1040 - _1046) * _1040)) * 1.75f); - float _1069 = _1068 * 0.3333333432674408f; - float _1070 = _1055 + -0.4000000059604645f; - float _1071 = _1070 * 5.0f; - float _1075 = max((1.0f - abs(_1070 * 2.5f)), 0.0f); - float _1086 = ((float(((int)(uint)((bool)(_1071 > 0.0f))) - ((int)(uint)((bool)(_1071 < 0.0f)))) * (1.0f - (_1075 * _1075))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1069 <= 0.0533333346247673f)) { - if (!(_1069 >= 0.1599999964237213f)) { - _1095 = (((0.23999999463558197f / _1068) + -0.5f) * _1086); - } else { - _1095 = 0.0f; - } - } else { - _1095 = _1086; - } - float _1096 = _1095 + 1.0f; - float _1097 = _1096 * _1040; - float _1098 = _1096 * _1043; - float _1099 = _1096 * _1046; - do { - if (!((bool)(_1097 == _1098) && (bool)(_1098 == _1099))) { - float _1106 = ((_1097 * 2.0f) - _1098) - _1099; - float _1109 = ((_1043 - _1046) * 1.7320507764816284f) * _1096; - float _1111 = atan(_1109 / _1106); - bool _1114 = (_1106 < 0.0f); - bool _1115 = (_1106 == 0.0f); - bool _1116 = (_1109 >= 0.0f); - bool _1117 = (_1109 < 0.0f); - _1128 = select((_1116 && _1115), 90.0f, select((_1117 && _1115), -90.0f, (select((_1117 && _1114), (_1111 + -3.1415927410125732f), select((_1116 && _1114), (_1111 + 3.1415927410125732f), _1111)) * 57.2957763671875f))); - } else { - _1128 = 0.0f; - } - float _1133 = min(max(select((_1128 < 0.0f), (_1128 + 360.0f), _1128), 0.0f), 360.0f); - do { - if (_1133 < -180.0f) { - _1142 = (_1133 + 360.0f); - } else { - if (_1133 > 180.0f) { - _1142 = (_1133 + -360.0f); - } else { - _1142 = _1133; - } - } - float _1146 = saturate(1.0f - abs(_1142 * 0.014814814552664757f)); - float _1150 = (_1146 * _1146) * (3.0f - (_1146 * 2.0f)); - float _1156 = ((_1150 * _1150) * ((_1055 * 0.18000000715255737f) * (0.029999999329447746f - _1097))) + _1097; - float _1166 = max(0.0f, mad(-0.21492856740951538f, _1099, mad(-0.2365107536315918f, _1098, (_1156 * 1.4514392614364624f)))); - float _1167 = max(0.0f, mad(-0.09967592358589172f, _1099, mad(1.17622971534729f, _1098, (_1156 * -0.07655377686023712f)))); - float _1168 = max(0.0f, mad(0.9977163076400757f, _1099, mad(-0.006032449658960104f, _1098, (_1156 * 0.008316148072481155f)))); - float _1169 = dot(float3(_1166, _1167, _1168), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1183 = (cb0_036w + 1.0f) - cb0_036y; - float _1186 = cb0_037x + 1.0f; - float _1188 = _1186 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1206 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1197 = (cb0_036w + 0.18000000715255737f) / _1183; - _1206 = (-0.7447274923324585f - ((log2(_1197 / (2.0f - _1197)) * 0.3465735912322998f) * (_1183 / cb0_036x))); - } - float _1209 = ((1.0f - cb0_036y) / cb0_036x) - _1206; - float _1211 = (cb0_036z / cb0_036x) - _1209; - float _1215 = log2(lerp(_1169, _1166, 0.9599999785423279f)) * 0.3010300099849701f; - float _1216 = log2(lerp(_1169, _1167, 0.9599999785423279f)) * 0.3010300099849701f; - float _1217 = log2(lerp(_1169, _1168, 0.9599999785423279f)) * 0.3010300099849701f; - float _1221 = (_1215 + _1209) * cb0_036x; - float _1222 = (_1216 + _1209) * cb0_036x; - float _1223 = (_1217 + _1209) * cb0_036x; - float _1224 = _1183 * 2.0f; - float _1227 = _1215 - _1206; - float _1228 = _1216 - _1206; - float _1229 = _1217 - _1206; - float _1230 = ((cb0_036x * -2.0f) / _1183) * 1.4426950216293335f; - float _1246 = _1188 * 2.0f; - float _1252 = ((cb0_036x * 2.0f) / _1188) * 1.4426950216293335f; - float _1271 = select((_1215 < _1206), ((_1224 / (exp2(_1230 * _1227) + 1.0f)) - cb0_036w), _1221); - float _1272 = select((_1216 < _1206), ((_1224 / (exp2(_1230 * _1228) + 1.0f)) - cb0_036w), _1222); - float _1273 = select((_1217 < _1206), ((_1224 / (exp2(_1230 * _1229) + 1.0f)) - cb0_036w), _1223); - float _1280 = _1211 - _1206; - float _1284 = saturate(_1227 / _1280); - float _1285 = saturate(_1228 / _1280); - float _1286 = saturate(_1229 / _1280); - bool _1287 = (_1211 < _1206); - float _1291 = select(_1287, (1.0f - _1284), _1284); - float _1292 = select(_1287, (1.0f - _1285), _1285); - float _1293 = select(_1287, (1.0f - _1286), _1286); - float _1312 = (((_1291 * _1291) * (select((_1215 > _1211), (_1186 - (_1246 / (exp2(_1252 * (_1215 - _1211)) + 1.0f))), _1221) - _1271)) * (3.0f - (_1291 * 2.0f))) + _1271; - float _1313 = (((_1292 * _1292) * (select((_1216 > _1211), (_1186 - (_1246 / (exp2(_1252 * (_1216 - _1211)) + 1.0f))), _1222) - _1272)) * (3.0f - (_1292 * 2.0f))) + _1272; - float _1314 = (((_1293 * _1293) * (select((_1217 > _1211), (_1186 - (_1246 / (exp2(_1252 * (_1217 - _1211)) + 1.0f))), _1223) - _1273)) * (3.0f - (_1293 * 2.0f))) + _1273; - float _1315 = dot(float3(_1312, _1313, _1314), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1339 = (((max(0.0f, (lerp(_1315, _1312, 0.9300000071525574f))) - _1028) * cb0_075z) + _1028); - _1340 = (((max(0.0f, (lerp(_1315, _1313, 0.9300000071525574f))) - _1029) * cb0_075z) + _1029); - _1341 = (((max(0.0f, (lerp(_1315, _1314, 0.9300000071525574f))) - _1030) * cb0_075z) + _1030); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1339 = _1028; - _1340 = _1029; - _1341 = _1030; - } - float _1357 = ((mad(-0.06537103652954102f, _1341, mad(1.451815478503704e-06f, _1340, (_1339 * 1.065374732017517f))) - _1339) * cb0_075x) + _1339; - float _1358 = ((mad(-0.20366770029067993f, _1341, mad(1.2036634683609009f, _1340, (_1339 * -2.57161445915699e-07f))) - _1340) * cb0_075x) + _1340; - float _1359 = ((mad(0.9999996423721313f, _1341, mad(2.0954757928848267e-08f, _1340, (_1339 * 1.862645149230957e-08f))) - _1341) * cb0_075x) + _1341; - [branch] - if (!_297) { - float _1402 = 1.0f / (dot(float3(_1006, _1009, _1012), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1412 = max(0.0f, (((_1402 * cb0_035x) + cb0_034x) * dot(float3(_1006, _1009, _1012), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1413 = max(0.0f, (((_1402 * cb0_035y) + cb0_034y) * dot(float3(_1006, _1009, _1012), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1414 = max(0.0f, (((_1402 * cb0_035z) + cb0_034z) * dot(float3(_1006, _1009, _1012), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1420 = max(0.0f, (cb0_031x - _1412)); - float _1421 = max(0.0f, (cb0_031x - _1413)); - float _1422 = max(0.0f, (cb0_031x - _1414)); - float _1424 = max(_1412, cb0_031z); - float _1425 = max(_1413, cb0_031z); - float _1426 = max(_1414, cb0_031z); - float _1471 = cb0_029w + -0.0020000000949949026f; - _1482 = ((((min(max(_1412, cb0_031x), cb0_031z) * cb0_030w) + _1471) + (((cb0_032x * _1424) + cb0_032y) * (1.0f / (_1424 + cb0_031w)))) + ((_1420 * cb0_028w) * (1.0f / (cb0_031y + _1420)))); - _1483 = ((((min(max(_1413, cb0_031x), cb0_031z) * cb0_030w) + _1471) + (((cb0_032x * _1425) + cb0_032y) * (1.0f / (_1425 + cb0_031w)))) + ((_1421 * cb0_028w) * (1.0f / (_1421 + cb0_031y)))); - _1484 = ((((min(max(_1414, cb0_031x), cb0_031z) * cb0_030w) + _1471) + ((1.0f / (_1426 + cb0_031w)) * ((cb0_032x * _1426) + cb0_032y))) + ((_1422 * cb0_028w) * (1.0f / (_1422 + cb0_031y)))); - } else { - _1482 = max(0.0f, mad(-0.0832584798336029f, _1359, mad(-0.6217905879020691f, _1358, (_1357 * 1.7050515413284302f)))); - _1483 = max(0.0f, mad(-0.010548528283834457f, _1359, mad(1.1408027410507202f, _1358, (_1357 * -0.13025718927383423f)))); - _1484 = max(0.0f, mad(1.152971863746643f, _1359, mad(-0.1289687603712082f, _1358, (_1357 * -0.024003278464078903f)))); - } - float _1485 = saturate(_1482); - float _1486 = saturate(_1483); - float _1487 = saturate(_1484); - if (_1485 < 0.0031306699384003878f) { - _1498 = (_1485 * 12.920000076293945f); - } else { - _1498 = (((pow(_1485, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1486 < 0.0031306699384003878f) { - _1509 = (_1486 * 12.920000076293945f); - } else { - _1509 = (((pow(_1486, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1487 < 0.0031306699384003878f) { - _1520 = (_1487 * 12.920000076293945f); - } else { - _1520 = (((pow(_1487, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1524 = (_1509 * 0.9375f) + 0.03125f; - float _1532 = _1520 * 15.0f; - float _1533 = floor(_1532); - float _1534 = _1532 - _1533; - float _1536 = (((_1498 * 0.9375f) + 0.03125f) + _1533) * 0.0625f; - float4 _1537 = t0.Sample(s0, float2(_1536, _1524)); - float4 _1542 = t0.Sample(s0, float2((_1536 + 0.0625f), _1524)); - float _1561 = max(6.103519990574569e-05f, (((lerp(_1537.x, _1542.x, _1534)) * cb0_041x) + (cb0_040x * _1498))); - float _1562 = max(6.103519990574569e-05f, (((lerp(_1537.y, _1542.y, _1534)) * cb0_041x) + (cb0_040x * _1509))); - float _1563 = max(6.103519990574569e-05f, (((lerp(_1537.z, _1542.z, _1534)) * cb0_041x) + (cb0_040x * _1520))); - float _1585 = select((_1561 > 0.040449999272823334f), exp2(log2((_1561 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1561 * 0.07739938050508499f)); - float _1586 = select((_1562 > 0.040449999272823334f), exp2(log2((_1562 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1562 * 0.07739938050508499f)); - float _1587 = select((_1563 > 0.040449999272823334f), exp2(log2((_1563 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1563 * 0.07739938050508499f)); - float _1613 = ((((cb0_026x * _1585) + cb0_026y) * _1585) + cb0_026z) * cb0_044y; - float _1614 = ((((cb0_026x * _1586) + cb0_026y) * _1586) + cb0_026z) * cb0_044z; - float _1615 = ((((cb0_026x * _1587) + cb0_026y) * _1587) + cb0_026z) * cb0_044w; - float _1622 = ((cb0_045x - _1613) * cb0_045w) + _1613; - float _1623 = ((cb0_045y - _1614) * cb0_045w) + _1614; - float _1624 = ((cb0_045z - _1615) * cb0_045w) + _1615; - float _1625 = cb0_044y * _1006; - float _1626 = cb0_044z * _1009; - float _1627 = cb0_044w * _1012; - float _1634 = ((cb0_045x - _1625) * cb0_045w) + _1625; - float _1635 = ((cb0_045y - _1626) * cb0_045w) + _1626; - float _1636 = ((cb0_045z - _1627) * cb0_045w) + _1627; - float _1648 = exp2(log2(max(0.0f, _1622)) * cb0_027y); - float _1649 = exp2(log2(max(0.0f, _1623)) * cb0_027y); - float _1650 = exp2(log2(max(0.0f, _1624)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1648, _1649, _1650)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - do { - if (_1648 < 0.0031306699384003878f) { - _1665 = (_1648 * 12.920000076293945f); - } else { - _1665 = (((pow(_1648, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1649 < 0.0031306699384003878f) { - _1676 = (_1649 * 12.920000076293945f); - } else { - _1676 = (((pow(_1649, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1650 < 0.0031306699384003878f) { - _3106 = _1665; - _3107 = _1676; - _3108 = (_1650 * 12.920000076293945f); - } else { - _3106 = _1665; - _3107 = _1676; - _3108 = (((pow(_1650, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 1) { - float _1691 = mad(0.04736635088920593f, _1650, mad(0.3395121395587921f, _1649, (_1648 * 0.613191545009613f))); - float _1694 = mad(0.01345000695437193f, _1650, mad(0.9163357615470886f, _1649, (_1648 * 0.07020691782236099f))); - float _1697 = mad(0.8696067929267883f, _1650, mad(0.1095672994852066f, _1649, (_1648 * 0.020618872717022896f))); - float _1707 = max(6.103519990574569e-05f, mad(_34, _1697, mad(_33, _1694, (_1691 * _32)))); - float _1708 = max(6.103519990574569e-05f, mad(_37, _1697, mad(_36, _1694, (_1691 * _35)))); - float _1709 = max(6.103519990574569e-05f, mad(_40, _1697, mad(_39, _1694, (_1691 * _38)))); - _3106 = min((_1707 * 4.5f), ((exp2(log2(max(_1707, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3107 = min((_1708 * 4.5f), ((exp2(log2(max(_1708, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3108 = min((_1709 * 4.5f), ((exp2(log2(max(_1709, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1736 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1736) { - float _1739 = _1635 * 3.0f; - float _1740 = _1636 * 3.0f; - float _1743 = mad(0.17733481526374817f, _1740, mad(0.38297808170318604f, _1739, (_1634 * 1.31910240650177f))); - float _1746 = mad(0.09676162153482437f, _1740, mad(0.8134231567382812f, _1739, (_1634 * 0.2693769633769989f))); - float _1749 = mad(0.870704174041748f, _1740, mad(0.11154405772686005f, _1739, (_1634 * 0.05263196676969528f))); - float _1753 = max(max(_1743, _1746), _1749); - float _1758 = (max(_1753, 1.000000013351432e-10f) - max(min(min(_1743, _1746), _1749), 1.000000013351432e-10f)) / max(_1753, 0.009999999776482582f); - float _1771 = ((_1746 + _1743) + _1749) + (sqrt((((_1749 - _1746) * _1749) + ((_1746 - _1743) * _1746)) + ((_1743 - _1749) * _1743)) * 1.75f); - float _1772 = _1771 * 0.3333333432674408f; - float _1773 = _1758 + -0.4000000059604645f; - float _1774 = _1773 * 5.0f; - float _1778 = max((1.0f - abs(_1773 * 2.5f)), 0.0f); - float _1789 = ((float(((int)(uint)((bool)(_1774 > 0.0f))) - ((int)(uint)((bool)(_1774 < 0.0f)))) * (1.0f - (_1778 * _1778))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1772 <= 0.0533333346247673f)) { - if (!(_1772 >= 0.1599999964237213f)) { - _1798 = (((0.23999999463558197f / _1771) + -0.5f) * _1789); - } else { - _1798 = 0.0f; - } - } else { - _1798 = _1789; - } - float _1799 = _1798 + 1.0f; - float _1800 = _1799 * _1743; - float _1801 = _1799 * _1746; - float _1802 = _1799 * _1749; - do { - if (!((bool)(_1800 == _1801) && (bool)(_1801 == _1802))) { - float _1809 = ((_1800 * 2.0f) - _1801) - _1802; - float _1812 = ((_1746 - _1749) * 1.7320507764816284f) * _1799; - float _1814 = atan(_1812 / _1809); - bool _1817 = (_1809 < 0.0f); - bool _1818 = (_1809 == 0.0f); - bool _1819 = (_1812 >= 0.0f); - bool _1820 = (_1812 < 0.0f); - _1831 = select((_1819 && _1818), 90.0f, select((_1820 && _1818), -90.0f, (select((_1820 && _1817), (_1814 + -3.1415927410125732f), select((_1819 && _1817), (_1814 + 3.1415927410125732f), _1814)) * 57.2957763671875f))); - } else { - _1831 = 0.0f; - } - float _1836 = min(max(select((_1831 < 0.0f), (_1831 + 360.0f), _1831), 0.0f), 360.0f); - do { - if (_1836 < -180.0f) { - _1845 = (_1836 + 360.0f); - } else { - if (_1836 > 180.0f) { - _1845 = (_1836 + -360.0f); - } else { - _1845 = _1836; - } - } - do { - if ((bool)(_1845 > -67.5f) && (bool)(_1845 < 67.5f)) { - float _1851 = (_1845 + 67.5f) * 0.029629629105329514f; - int _1852 = int(_1851); - float _1854 = _1851 - float(_1852); - float _1855 = _1854 * _1854; - float _1856 = _1855 * _1854; - if (_1852 == 3) { - _1884 = (((0.1666666716337204f - (_1854 * 0.5f)) + (_1855 * 0.5f)) - (_1856 * 0.1666666716337204f)); - } else { - if (_1852 == 2) { - _1884 = ((0.6666666865348816f - _1855) + (_1856 * 0.5f)); - } else { - if (_1852 == 1) { - _1884 = ((0.1666666716337204f - (_1856 * 0.5f)) + ((_1855 + _1854) * 0.5f)); - } else { - _1884 = select((_1852 == 0), (_1856 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1884 = 0.0f; - } - float _1893 = min(max(((((_1758 * 0.27000001072883606f) * (0.029999999329447746f - _1800)) * _1884) + _1800), 0.0f), 65535.0f); - float _1894 = min(max(_1801, 0.0f), 65535.0f); - float _1895 = min(max(_1802, 0.0f), 65535.0f); - float _1908 = min(max(mad(-0.21492856740951538f, _1895, mad(-0.2365107536315918f, _1894, (_1893 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1909 = min(max(mad(-0.09967592358589172f, _1895, mad(1.17622971534729f, _1894, (_1893 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1910 = min(max(mad(0.9977163076400757f, _1895, mad(-0.006032449658960104f, _1894, (_1893 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1911 = dot(float3(_1908, _1909, _1910), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1918 = ((_1908 - _1911) * 0.9599999785423279f) + _1911; - float _1919 = ((_1909 - _1911) * 0.9599999785423279f) + _1911; - float _1920 = ((_1910 - _1911) * 0.9599999785423279f) + _1911; - float _1923 = log2(select((_1918 <= 0.0f), 6.103515625e-05f, _1918)); - float _1924 = _1923 * 0.3010300099849701f; - do { - if (!(_1924 <= -5.2601776123046875f)) { - if ((bool)(_1924 > -5.2601776123046875f) && (bool)(_1924 < -0.7447274923324585f)) { - float _1932 = (_1923 * 0.19999998807907104f) + 3.494786262512207f; - int _1933 = int(_1932); - float _1935 = _1932 - float(_1933); - float _1937 = _global_0[_1933]; - float _1940 = _global_0[(_1933 + 1)]; - float _1945 = _1937 * 0.5f; - _1977 = dot(float3((_1935 * _1935), _1935, 1.0f), float3(mad((_global_0[(_1933 + 2)]), 0.5f, mad(_1940, -1.0f, _1945)), (_1940 - _1937), mad(_1940, 0.5f, _1945))); - } else { - if ((bool)(_1924 >= -0.7447274923324585f) && (bool)(_1924 < 4.673812389373779f)) { - float _1957 = (_1923 * 0.1666666567325592f) + 0.4123218357563019f; - int _1958 = int(_1957); - float _1960 = _1957 - float(_1958); - float _1962 = _global_1[_1958]; - float _1965 = _global_1[(_1958 + 1)]; - float _1970 = _1962 * 0.5f; - _1977 = dot(float3((_1960 * _1960), _1960, 1.0f), float3(mad((_global_1[(_1958 + 2)]), 0.5f, mad(_1965, -1.0f, _1970)), (_1965 - _1962), mad(_1965, 0.5f, _1970))); - } else { - _1977 = 4.0f; - } - } - } else { - _1977 = -4.0f; - } - float _1979 = exp2(_1977 * 3.321928024291992f); - float _1982 = log2(select((_1919 <= 0.0f), 6.103515625e-05f, _1919)); - float _1983 = _1982 * 0.3010300099849701f; - do { - if (!(_1983 <= -5.2601776123046875f)) { - if ((bool)(_1983 > -5.2601776123046875f) && (bool)(_1983 < -0.7447274923324585f)) { - float _1991 = (_1982 * 0.19999998807907104f) + 3.494786262512207f; - int _1992 = int(_1991); - float _1994 = _1991 - float(_1992); - float _1996 = _global_0[_1992]; - float _1999 = _global_0[(_1992 + 1)]; - float _2004 = _1996 * 0.5f; - _2036 = dot(float3((_1994 * _1994), _1994, 1.0f), float3(mad((_global_0[(_1992 + 2)]), 0.5f, mad(_1999, -1.0f, _2004)), (_1999 - _1996), mad(_1999, 0.5f, _2004))); - } else { - if ((bool)(_1983 >= -0.7447274923324585f) && (bool)(_1983 < 4.673812389373779f)) { - float _2016 = (_1982 * 0.1666666567325592f) + 0.4123218357563019f; - int _2017 = int(_2016); - float _2019 = _2016 - float(_2017); - float _2021 = _global_1[_2017]; - float _2024 = _global_1[(_2017 + 1)]; - float _2029 = _2021 * 0.5f; - _2036 = dot(float3((_2019 * _2019), _2019, 1.0f), float3(mad((_global_1[(_2017 + 2)]), 0.5f, mad(_2024, -1.0f, _2029)), (_2024 - _2021), mad(_2024, 0.5f, _2029))); - } else { - _2036 = 4.0f; - } - } - } else { - _2036 = -4.0f; - } - float _2038 = exp2(_2036 * 3.321928024291992f); - float _2041 = log2(select((_1920 <= 0.0f), 6.103515625e-05f, _1920)); - float _2042 = _2041 * 0.3010300099849701f; - do { - if (!(_2042 <= -5.2601776123046875f)) { - if ((bool)(_2042 > -5.2601776123046875f) && (bool)(_2042 < -0.7447274923324585f)) { - float _2050 = (_2041 * 0.19999998807907104f) + 3.494786262512207f; - int _2051 = int(_2050); - float _2053 = _2050 - float(_2051); - float _2055 = _global_0[_2051]; - float _2058 = _global_0[(_2051 + 1)]; - float _2063 = _2055 * 0.5f; - _2095 = dot(float3((_2053 * _2053), _2053, 1.0f), float3(mad((_global_0[(_2051 + 2)]), 0.5f, mad(_2058, -1.0f, _2063)), (_2058 - _2055), mad(_2058, 0.5f, _2063))); - } else { - if ((bool)(_2042 >= -0.7447274923324585f) && (bool)(_2042 < 4.673812389373779f)) { - float _2075 = (_2041 * 0.1666666567325592f) + 0.4123218357563019f; - int _2076 = int(_2075); - float _2078 = _2075 - float(_2076); - float _2080 = _global_1[_2076]; - float _2083 = _global_1[(_2076 + 1)]; - float _2088 = _2080 * 0.5f; - _2095 = dot(float3((_2078 * _2078), _2078, 1.0f), float3(mad((_global_1[(_2076 + 2)]), 0.5f, mad(_2083, -1.0f, _2088)), (_2083 - _2080), mad(_2083, 0.5f, _2088))); - } else { - _2095 = 4.0f; - } - } - } else { - _2095 = -4.0f; - } - float _2097 = exp2(_2095 * 3.321928024291992f); - float _2100 = mad(0.16386906802654266f, _2097, mad(0.14067870378494263f, _2038, (_1979 * 0.6954522132873535f))); - float _2103 = mad(0.0955343171954155f, _2097, mad(0.8596711158752441f, _2038, (_1979 * 0.044794563204050064f))); - float _2106 = mad(1.0015007257461548f, _2097, mad(0.004025210160762072f, _2038, (_1979 * -0.005525882821530104f))); - float _2109 = mad(-0.21492856740951538f, _2106, mad(-0.2365107536315918f, _2103, (_2100 * 1.4514392614364624f))); - float _2112 = mad(-0.09967592358589172f, _2106, mad(1.17622971534729f, _2103, (_2100 * -0.07655377686023712f))); - float _2115 = mad(0.9977163076400757f, _2106, mad(-0.006032449658960104f, _2103, (_2100 * 0.008316148072481155f))); - float _2118 = log2(select((_2109 <= 0.0f), 9.999999747378752e-05f, _2109)); - float _2119 = _2118 * 0.3010300099849701f; - do { - if (!(!(_2119 <= -3.848327875137329f))) { - _2178 = ((_2118 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2119 > -3.848327875137329f) && (bool)(_2119 < 0.6812411546707153f)) { - float _2130 = (_2118 + 12.783867835998535f) * 0.46521204710006714f; - int _2131 = int(_2130); - float _2133 = _2130 - float(_2131); - float _2135 = _global_2[_2131]; - float _2138 = _global_2[(_2131 + 1)]; - float _2143 = _2135 * 0.5f; - _2178 = dot(float3((_2133 * _2133), _2133, 1.0f), float3(mad((_global_2[(_2131 + 2)]), 0.5f, mad(_2138, -1.0f, _2143)), (_2138 - _2135), mad(_2138, 0.5f, _2143))); - } else { - if ((bool)(_2119 >= 0.6812411546707153f) && (bool)(_2119 < 3.653702974319458f)) { - float _2155 = (_2118 + -2.2630341053009033f) * 0.7089107632637024f; - int _2156 = int(_2155); - float _2158 = _2155 - float(_2156); - float _2160 = _global_3[_2156]; - float _2163 = _global_3[(_2156 + 1)]; - float _2168 = _2160 * 0.5f; - _2178 = dot(float3((_2158 * _2158), _2158, 1.0f), float3(mad((_global_3[(_2156 + 2)]), 0.5f, mad(_2163, -1.0f, _2168)), (_2163 - _2160), mad(_2163, 0.5f, _2168))); - } else { - _2178 = ((_2118 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2183 = log2(select((_2112 <= 0.0f), 9.999999747378752e-05f, _2112)); - float _2184 = _2183 * 0.3010300099849701f; - do { - if (!(!(_2184 <= -3.848327875137329f))) { - _2243 = ((_2183 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2184 > -3.848327875137329f) && (bool)(_2184 < 0.6812411546707153f)) { - float _2195 = (_2183 + 12.783867835998535f) * 0.46521204710006714f; - int _2196 = int(_2195); - float _2198 = _2195 - float(_2196); - float _2200 = _global_2[_2196]; - float _2203 = _global_2[(_2196 + 1)]; - float _2208 = _2200 * 0.5f; - _2243 = dot(float3((_2198 * _2198), _2198, 1.0f), float3(mad((_global_2[(_2196 + 2)]), 0.5f, mad(_2203, -1.0f, _2208)), (_2203 - _2200), mad(_2203, 0.5f, _2208))); - } else { - if ((bool)(_2184 >= 0.6812411546707153f) && (bool)(_2184 < 3.653702974319458f)) { - float _2220 = (_2183 + -2.2630341053009033f) * 0.7089107632637024f; - int _2221 = int(_2220); - float _2223 = _2220 - float(_2221); - float _2225 = _global_3[_2221]; - float _2228 = _global_3[(_2221 + 1)]; - float _2233 = _2225 * 0.5f; - _2243 = dot(float3((_2223 * _2223), _2223, 1.0f), float3(mad((_global_3[(_2221 + 2)]), 0.5f, mad(_2228, -1.0f, _2233)), (_2228 - _2225), mad(_2228, 0.5f, _2233))); - } else { - _2243 = ((_2183 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2248 = log2(select((_2115 <= 0.0f), 9.999999747378752e-05f, _2115)); - float _2249 = _2248 * 0.3010300099849701f; - do { - if (!(!(_2249 <= -3.848327875137329f))) { - _2308 = ((_2248 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2249 > -3.848327875137329f) && (bool)(_2249 < 0.6812411546707153f)) { - float _2260 = (_2248 + 12.783867835998535f) * 0.46521204710006714f; - int _2261 = int(_2260); - float _2263 = _2260 - float(_2261); - float _2265 = _global_2[_2261]; - float _2268 = _global_2[(_2261 + 1)]; - float _2273 = _2265 * 0.5f; - _2308 = dot(float3((_2263 * _2263), _2263, 1.0f), float3(mad((_global_2[(_2261 + 2)]), 0.5f, mad(_2268, -1.0f, _2273)), (_2268 - _2265), mad(_2268, 0.5f, _2273))); - } else { - if ((bool)(_2249 >= 0.6812411546707153f) && (bool)(_2249 < 3.653702974319458f)) { - float _2285 = (_2248 + -2.2630341053009033f) * 0.7089107632637024f; - int _2286 = int(_2285); - float _2288 = _2285 - float(_2286); - float _2290 = _global_3[_2286]; - float _2293 = _global_3[(_2286 + 1)]; - float _2298 = _2290 * 0.5f; - _2308 = dot(float3((_2288 * _2288), _2288, 1.0f), float3(mad((_global_3[(_2286 + 2)]), 0.5f, mad(_2293, -1.0f, _2298)), (_2293 - _2290), mad(_2293, 0.5f, _2298))); - } else { - _2308 = ((_2248 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2311 = exp2(_2178 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2312 = exp2(_2243 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2313 = exp2(_2308 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_1736) { - _2325 = mad(_34, _2313, mad(_33, _2312, (_2311 * _32))); - _2326 = mad(_37, _2313, mad(_36, _2312, (_2311 * _35))); - _2327 = mad(_40, _2313, mad(_39, _2312, (_2311 * _38))); - } else { - _2325 = _2311; - _2326 = _2312; - _2327 = _2313; - } - float _2337 = exp2(log2(_2325 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2338 = exp2(log2(_2326 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2339 = exp2(log2(_2327 * 9.999999747378752e-05f) * 0.1593017578125f); - _3106 = exp2(log2((1.0f / ((_2337 * 18.6875f) + 1.0f)) * ((_2337 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3107 = exp2(log2((1.0f / ((_2338 * 18.6875f) + 1.0f)) * ((_2338 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3108 = exp2(log2((1.0f / ((_2339 * 18.6875f) + 1.0f)) * ((_2339 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2372 = _1635 * 3.0f; - float _2373 = _1636 * 3.0f; - float _2376 = mad(0.17733481526374817f, _2373, mad(0.38297808170318604f, _2372, (_1634 * 1.31910240650177f))); - float _2379 = mad(0.09676162153482437f, _2373, mad(0.8134231567382812f, _2372, (_1634 * 0.2693769633769989f))); - float _2382 = mad(0.870704174041748f, _2373, mad(0.11154405772686005f, _2372, (_1634 * 0.05263196676969528f))); - float _2386 = max(max(_2376, _2379), _2382); - float _2391 = (max(_2386, 1.000000013351432e-10f) - max(min(min(_2376, _2379), _2382), 1.000000013351432e-10f)) / max(_2386, 0.009999999776482582f); - float _2404 = ((_2379 + _2376) + _2382) + (sqrt((((_2382 - _2379) * _2382) + ((_2379 - _2376) * _2379)) + ((_2376 - _2382) * _2376)) * 1.75f); - float _2405 = _2404 * 0.3333333432674408f; - float _2406 = _2391 + -0.4000000059604645f; - float _2407 = _2406 * 5.0f; - float _2411 = max((1.0f - abs(_2406 * 2.5f)), 0.0f); - float _2422 = ((float(((int)(uint)((bool)(_2407 > 0.0f))) - ((int)(uint)((bool)(_2407 < 0.0f)))) * (1.0f - (_2411 * _2411))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2405 <= 0.0533333346247673f)) { - if (!(_2405 >= 0.1599999964237213f)) { - _2431 = (((0.23999999463558197f / _2404) + -0.5f) * _2422); - } else { - _2431 = 0.0f; - } - } else { - _2431 = _2422; - } - float _2432 = _2431 + 1.0f; - float _2433 = _2432 * _2376; - float _2434 = _2432 * _2379; - float _2435 = _2432 * _2382; - do { - if (!((bool)(_2433 == _2434) && (bool)(_2434 == _2435))) { - float _2442 = ((_2433 * 2.0f) - _2434) - _2435; - float _2445 = ((_2379 - _2382) * 1.7320507764816284f) * _2432; - float _2447 = atan(_2445 / _2442); - bool _2450 = (_2442 < 0.0f); - bool _2451 = (_2442 == 0.0f); - bool _2452 = (_2445 >= 0.0f); - bool _2453 = (_2445 < 0.0f); - _2464 = select((_2452 && _2451), 90.0f, select((_2453 && _2451), -90.0f, (select((_2453 && _2450), (_2447 + -3.1415927410125732f), select((_2452 && _2450), (_2447 + 3.1415927410125732f), _2447)) * 57.2957763671875f))); - } else { - _2464 = 0.0f; - } - float _2469 = min(max(select((_2464 < 0.0f), (_2464 + 360.0f), _2464), 0.0f), 360.0f); - do { - if (_2469 < -180.0f) { - _2478 = (_2469 + 360.0f); - } else { - if (_2469 > 180.0f) { - _2478 = (_2469 + -360.0f); - } else { - _2478 = _2469; - } - } - do { - if ((bool)(_2478 > -67.5f) && (bool)(_2478 < 67.5f)) { - float _2484 = (_2478 + 67.5f) * 0.029629629105329514f; - int _2485 = int(_2484); - float _2487 = _2484 - float(_2485); - float _2488 = _2487 * _2487; - float _2489 = _2488 * _2487; - if (_2485 == 3) { - _2517 = (((0.1666666716337204f - (_2487 * 0.5f)) + (_2488 * 0.5f)) - (_2489 * 0.1666666716337204f)); - } else { - if (_2485 == 2) { - _2517 = ((0.6666666865348816f - _2488) + (_2489 * 0.5f)); - } else { - if (_2485 == 1) { - _2517 = ((0.1666666716337204f - (_2489 * 0.5f)) + ((_2488 + _2487) * 0.5f)); - } else { - _2517 = select((_2485 == 0), (_2489 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2517 = 0.0f; - } - float _2526 = min(max(((((_2391 * 0.27000001072883606f) * (0.029999999329447746f - _2433)) * _2517) + _2433), 0.0f), 65535.0f); - float _2527 = min(max(_2434, 0.0f), 65535.0f); - float _2528 = min(max(_2435, 0.0f), 65535.0f); - float _2541 = min(max(mad(-0.21492856740951538f, _2528, mad(-0.2365107536315918f, _2527, (_2526 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2542 = min(max(mad(-0.09967592358589172f, _2528, mad(1.17622971534729f, _2527, (_2526 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2543 = min(max(mad(0.9977163076400757f, _2528, mad(-0.006032449658960104f, _2527, (_2526 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2544 = dot(float3(_2541, _2542, _2543), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2551 = ((_2541 - _2544) * 0.9599999785423279f) + _2544; - float _2552 = ((_2542 - _2544) * 0.9599999785423279f) + _2544; - float _2553 = ((_2543 - _2544) * 0.9599999785423279f) + _2544; - float _2556 = log2(select((_2551 <= 0.0f), 6.103515625e-05f, _2551)); - float _2557 = _2556 * 0.3010300099849701f; - do { - if (!(_2557 <= -5.2601776123046875f)) { - if ((bool)(_2557 > -5.2601776123046875f) && (bool)(_2557 < -0.7447274923324585f)) { - float _2565 = (_2556 * 0.19999998807907104f) + 3.494786262512207f; - int _2566 = int(_2565); - float _2568 = _2565 - float(_2566); - float _2570 = _global_0[_2566]; - float _2573 = _global_0[(_2566 + 1)]; - float _2578 = _2570 * 0.5f; - _2610 = dot(float3((_2568 * _2568), _2568, 1.0f), float3(mad((_global_0[(_2566 + 2)]), 0.5f, mad(_2573, -1.0f, _2578)), (_2573 - _2570), mad(_2573, 0.5f, _2578))); - } else { - if ((bool)(_2557 >= -0.7447274923324585f) && (bool)(_2557 < 4.673812389373779f)) { - float _2590 = (_2556 * 0.1666666567325592f) + 0.4123218357563019f; - int _2591 = int(_2590); - float _2593 = _2590 - float(_2591); - float _2595 = _global_1[_2591]; - float _2598 = _global_1[(_2591 + 1)]; - float _2603 = _2595 * 0.5f; - _2610 = dot(float3((_2593 * _2593), _2593, 1.0f), float3(mad((_global_1[(_2591 + 2)]), 0.5f, mad(_2598, -1.0f, _2603)), (_2598 - _2595), mad(_2598, 0.5f, _2603))); - } else { - _2610 = 4.0f; - } - } - } else { - _2610 = -4.0f; - } - float _2612 = exp2(_2610 * 3.321928024291992f); - float _2615 = log2(select((_2552 <= 0.0f), 6.103515625e-05f, _2552)); - float _2616 = _2615 * 0.3010300099849701f; - do { - if (!(_2616 <= -5.2601776123046875f)) { - if ((bool)(_2616 > -5.2601776123046875f) && (bool)(_2616 < -0.7447274923324585f)) { - float _2624 = (_2615 * 0.19999998807907104f) + 3.494786262512207f; - int _2625 = int(_2624); - float _2627 = _2624 - float(_2625); - float _2629 = _global_0[_2625]; - float _2632 = _global_0[(_2625 + 1)]; - float _2637 = _2629 * 0.5f; - _2669 = dot(float3((_2627 * _2627), _2627, 1.0f), float3(mad((_global_0[(_2625 + 2)]), 0.5f, mad(_2632, -1.0f, _2637)), (_2632 - _2629), mad(_2632, 0.5f, _2637))); - } else { - if ((bool)(_2616 >= -0.7447274923324585f) && (bool)(_2616 < 4.673812389373779f)) { - float _2649 = (_2615 * 0.1666666567325592f) + 0.4123218357563019f; - int _2650 = int(_2649); - float _2652 = _2649 - float(_2650); - float _2654 = _global_1[_2650]; - float _2657 = _global_1[(_2650 + 1)]; - float _2662 = _2654 * 0.5f; - _2669 = dot(float3((_2652 * _2652), _2652, 1.0f), float3(mad((_global_1[(_2650 + 2)]), 0.5f, mad(_2657, -1.0f, _2662)), (_2657 - _2654), mad(_2657, 0.5f, _2662))); - } else { - _2669 = 4.0f; - } - } - } else { - _2669 = -4.0f; - } - float _2671 = exp2(_2669 * 3.321928024291992f); - float _2674 = log2(select((_2553 <= 0.0f), 6.103515625e-05f, _2553)); - float _2675 = _2674 * 0.3010300099849701f; - do { - if (!(_2675 <= -5.2601776123046875f)) { - if ((bool)(_2675 > -5.2601776123046875f) && (bool)(_2675 < -0.7447274923324585f)) { - float _2683 = (_2674 * 0.19999998807907104f) + 3.494786262512207f; - int _2684 = int(_2683); - float _2686 = _2683 - float(_2684); - float _2688 = _global_0[_2684]; - float _2691 = _global_0[(_2684 + 1)]; - float _2696 = _2688 * 0.5f; - _2728 = dot(float3((_2686 * _2686), _2686, 1.0f), float3(mad((_global_0[(_2684 + 2)]), 0.5f, mad(_2691, -1.0f, _2696)), (_2691 - _2688), mad(_2691, 0.5f, _2696))); - } else { - if ((bool)(_2675 >= -0.7447274923324585f) && (bool)(_2675 < 4.673812389373779f)) { - float _2708 = (_2674 * 0.1666666567325592f) + 0.4123218357563019f; - int _2709 = int(_2708); - float _2711 = _2708 - float(_2709); - float _2713 = _global_1[_2709]; - float _2716 = _global_1[(_2709 + 1)]; - float _2721 = _2713 * 0.5f; - _2728 = dot(float3((_2711 * _2711), _2711, 1.0f), float3(mad((_global_1[(_2709 + 2)]), 0.5f, mad(_2716, -1.0f, _2721)), (_2716 - _2713), mad(_2716, 0.5f, _2721))); - } else { - _2728 = 4.0f; - } - } - } else { - _2728 = -4.0f; - } - float _2730 = exp2(_2728 * 3.321928024291992f); - float _2733 = mad(0.16386906802654266f, _2730, mad(0.14067870378494263f, _2671, (_2612 * 0.6954522132873535f))); - float _2736 = mad(0.0955343171954155f, _2730, mad(0.8596711158752441f, _2671, (_2612 * 0.044794563204050064f))); - float _2739 = mad(1.0015007257461548f, _2730, mad(0.004025210160762072f, _2671, (_2612 * -0.005525882821530104f))); - float _2742 = mad(-0.21492856740951538f, _2739, mad(-0.2365107536315918f, _2736, (_2733 * 1.4514392614364624f))); - float _2745 = mad(-0.09967592358589172f, _2739, mad(1.17622971534729f, _2736, (_2733 * -0.07655377686023712f))); - float _2748 = mad(0.9977163076400757f, _2739, mad(-0.006032449658960104f, _2736, (_2733 * 0.008316148072481155f))); - float _2751 = log2(select((_2742 <= 0.0f), 9.999999747378752e-05f, _2742)); - float _2752 = _2751 * 0.3010300099849701f; - do { - if (!(_2752 <= -3.848327875137329f)) { - if ((bool)(_2752 > -3.848327875137329f) && (bool)(_2752 < 0.6812411546707153f)) { - float _2760 = (_2751 + 12.783867835998535f) * 0.46521204710006714f; - int _2761 = int(_2760); - float _2763 = _2760 - float(_2761); - float _2765 = _global_4[_2761]; - float _2768 = _global_4[(_2761 + 1)]; - float _2773 = _2765 * 0.5f; - _2808 = dot(float3((_2763 * _2763), _2763, 1.0f), float3(mad((_global_4[(_2761 + 2)]), 0.5f, mad(_2768, -1.0f, _2773)), (_2768 - _2765), mad(_2768, 0.5f, _2773))); - } else { - if ((bool)(_2752 >= 0.6812411546707153f) && (bool)(_2752 < 3.7613162994384766f)) { - float _2785 = (_2751 + -2.2630341053009033f) * 0.6841424107551575f; - int _2786 = int(_2785); - float _2788 = _2785 - float(_2786); - float _2790 = _global_5[_2786]; - float _2793 = _global_5[(_2786 + 1)]; - float _2798 = _2790 * 0.5f; - _2808 = dot(float3((_2788 * _2788), _2788, 1.0f), float3(mad((_global_5[(_2786 + 2)]), 0.5f, mad(_2793, -1.0f, _2798)), (_2793 - _2790), mad(_2793, 0.5f, _2798))); - } else { - _2808 = ((_2751 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2808 = -2.301030158996582f; - } - float _2810 = exp2(_2808 * 3.321928024291992f); - float _2813 = log2(select((_2745 <= 0.0f), 9.999999747378752e-05f, _2745)); - float _2814 = _2813 * 0.3010300099849701f; - do { - if (!(_2814 <= -3.848327875137329f)) { - if ((bool)(_2814 > -3.848327875137329f) && (bool)(_2814 < 0.6812411546707153f)) { - float _2822 = (_2813 + 12.783867835998535f) * 0.46521204710006714f; - int _2823 = int(_2822); - float _2825 = _2822 - float(_2823); - float _2827 = _global_4[_2823]; - float _2830 = _global_4[(_2823 + 1)]; - float _2835 = _2827 * 0.5f; - _2870 = dot(float3((_2825 * _2825), _2825, 1.0f), float3(mad((_global_4[(_2823 + 2)]), 0.5f, mad(_2830, -1.0f, _2835)), (_2830 - _2827), mad(_2830, 0.5f, _2835))); - } else { - if ((bool)(_2814 >= 0.6812411546707153f) && (bool)(_2814 < 3.7613162994384766f)) { - float _2847 = (_2813 + -2.2630341053009033f) * 0.6841424107551575f; - int _2848 = int(_2847); - float _2850 = _2847 - float(_2848); - float _2852 = _global_5[_2848]; - float _2855 = _global_5[(_2848 + 1)]; - float _2860 = _2852 * 0.5f; - _2870 = dot(float3((_2850 * _2850), _2850, 1.0f), float3(mad((_global_5[(_2848 + 2)]), 0.5f, mad(_2855, -1.0f, _2860)), (_2855 - _2852), mad(_2855, 0.5f, _2860))); - } else { - _2870 = ((_2813 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2870 = -2.301030158996582f; - } - float _2872 = exp2(_2870 * 3.321928024291992f); - float _2875 = log2(select((_2748 <= 0.0f), 9.999999747378752e-05f, _2748)); - float _2876 = _2875 * 0.3010300099849701f; - do { - if (!(_2876 <= -3.848327875137329f)) { - if ((bool)(_2876 > -3.848327875137329f) && (bool)(_2876 < 0.6812411546707153f)) { - float _2884 = (_2875 + 12.783867835998535f) * 0.46521204710006714f; - int _2885 = int(_2884); - float _2887 = _2884 - float(_2885); - float _2889 = _global_4[_2885]; - float _2892 = _global_4[(_2885 + 1)]; - float _2897 = _2889 * 0.5f; - _2932 = dot(float3((_2887 * _2887), _2887, 1.0f), float3(mad((_global_4[(_2885 + 2)]), 0.5f, mad(_2892, -1.0f, _2897)), (_2892 - _2889), mad(_2892, 0.5f, _2897))); - } else { - if ((bool)(_2876 >= 0.6812411546707153f) && (bool)(_2876 < 3.7613162994384766f)) { - float _2909 = (_2875 + -2.2630341053009033f) * 0.6841424107551575f; - int _2910 = int(_2909); - float _2912 = _2909 - float(_2910); - float _2914 = _global_5[_2910]; - float _2917 = _global_5[(_2910 + 1)]; - float _2922 = _2914 * 0.5f; - _2932 = dot(float3((_2912 * _2912), _2912, 1.0f), float3(mad((_global_5[(_2910 + 2)]), 0.5f, mad(_2917, -1.0f, _2922)), (_2917 - _2914), mad(_2917, 0.5f, _2922))); - } else { - _2932 = ((_2875 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2932 = -2.301030158996582f; - } - float _2934 = exp2(_2932 * 3.321928024291992f); - do { - if (!((uint)(cb0_074z) == 6)) { - _2946 = mad(_34, _2934, mad(_33, _2872, (_2810 * _32))); - _2947 = mad(_37, _2934, mad(_36, _2872, (_2810 * _35))); - _2948 = mad(_40, _2934, mad(_39, _2872, (_2810 * _38))); - } else { - _2946 = _2810; - _2947 = _2872; - _2948 = _2934; - } - float _2958 = exp2(log2(_2946 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2959 = exp2(log2(_2947 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2960 = exp2(log2(_2948 * 9.999999747378752e-05f) * 0.1593017578125f); - _3106 = exp2(log2((1.0f / ((_2958 * 18.6875f) + 1.0f)) * ((_2958 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3107 = exp2(log2((1.0f / ((_2959 * 18.6875f) + 1.0f)) * ((_2959 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3108 = exp2(log2((1.0f / ((_2960 * 18.6875f) + 1.0f)) * ((_2960 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 7) { - float _2993 = mad(0.04736635088920593f, _1636, mad(0.3395121395587921f, _1635, (_1634 * 0.613191545009613f))); - float _2996 = mad(0.01345000695437193f, _1636, mad(0.9163357615470886f, _1635, (_1634 * 0.07020691782236099f))); - float _2999 = mad(0.8696067929267883f, _1636, mad(0.1095672994852066f, _1635, (_1634 * 0.020618872717022896f))); - float _3018 = exp2(log2(mad(_34, _2999, mad(_33, _2996, (_2993 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3019 = exp2(log2(mad(_37, _2999, mad(_36, _2996, (_2993 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3020 = exp2(log2(mad(_40, _2999, mad(_39, _2996, (_2993 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3106 = exp2(log2((1.0f / ((_3018 * 18.6875f) + 1.0f)) * ((_3018 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3107 = exp2(log2((1.0f / ((_3019 * 18.6875f) + 1.0f)) * ((_3019 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3108 = exp2(log2((1.0f / ((_3020 * 18.6875f) + 1.0f)) * ((_3020 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3055 = mad(0.04736635088920593f, _1624, mad(0.3395121395587921f, _1623, (_1622 * 0.613191545009613f))); - float _3058 = mad(0.01345000695437193f, _1624, mad(0.9163357615470886f, _1623, (_1622 * 0.07020691782236099f))); - float _3061 = mad(0.8696067929267883f, _1624, mad(0.1095672994852066f, _1623, (_1622 * 0.020618872717022896f))); - _3106 = mad(_34, _3061, mad(_33, _3058, (_3055 * _32))); - _3107 = mad(_37, _3061, mad(_36, _3058, (_3055 * _35))); - _3108 = mad(_40, _3061, mad(_39, _3058, (_3055 * _38))); - } else { - float _3074 = mad(0.04736635088920593f, _1650, mad(0.3395121395587921f, _1649, (_1648 * 0.613191545009613f))); - float _3077 = mad(0.01345000695437193f, _1650, mad(0.9163357615470886f, _1649, (_1648 * 0.07020691782236099f))); - float _3080 = mad(0.8696067929267883f, _1650, mad(0.1095672994852066f, _1649, (_1648 * 0.020618872717022896f))); - float _3095 = (cb0_038w * (0.4545454680919647f - cb0_027z)) + cb0_027z; - _3106 = exp2(_3095 * log2(mad(_34, _3080, mad(_33, _3077, (_3074 * _32))))); - _3107 = exp2(_3095 * log2(mad(_37, _3080, mad(_36, _3077, (_3074 * _35))))); - _3108 = exp2(_3095 * log2(mad(_40, _3080, mad(_39, _3077, (_3074 * _38))))); - } - } else { - _3106 = _1634; - _3107 = _1635; - _3108 = _1636; - } - } - } - } - } - } - SV_Target.x = (_3106 * 0.9523810148239136f); - SV_Target.y = (_3107 * 0.9523810148239136f); - SV_Target.z = (_3108 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xAAC146AC.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0xAAC146AC.ps_6_0.hlsl deleted file mode 100644 index c3d1f8090..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xAAC146AC.ps_6_0.hlsl +++ /dev/null @@ -1,1171 +0,0 @@ -#include "../common.hlsl" - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _5 = TEXCOORD.x + -0.015625f; - float _6 = TEXCOORD.y + -0.015625f; - float _9 = float((uint)SV_RenderTargetArrayIndex); - float _30; - float _31; - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _95; - float _96; - float _97; - float _336; - float _337; - float _338; - float _885; - float _918; - float _932; - float _996; - float _1133; - float _1134; - float _1135; - float _1278; - float _1279; - float _1280; - float _1356; - float _1367; - float _1489; - float _1522; - float _1536; - float _1575; - float _1668; - float _1727; - float _1786; - float _1869; - float _1934; - float _1999; - float _2016; - float _2017; - float _2018; - float _2122; - float _2155; - float _2169; - float _2208; - float _2301; - float _2360; - float _2419; - float _2499; - float _2561; - float _2623; - float _2637; - float _2638; - float _2639; - float _2797; - float _2798; - float _2799; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _19 = ((uint)(cb0_074w) == 4); - _30 = select(_19, 1.0f, 1.7050515413284302f); - _31 = select(_19, 0.0f, -0.6217905879020691f); - _32 = select(_19, 0.0f, -0.0832584798336029f); - _33 = select(_19, 0.0f, -0.13025718927383423f); - _34 = select(_19, 1.0f, 1.1408027410507202f); - _35 = select(_19, 0.0f, -0.010548528283834457f); - _36 = select(_19, 0.0f, -0.024003278464078903f); - _37 = select(_19, 0.0f, -0.1289687603712082f); - _38 = select(_19, 1.0f, 1.152971863746643f); - } else { - _30 = 0.6954522132873535f; - _31 = 0.14067870378494263f; - _32 = 0.16386906802654266f; - _33 = 0.044794563204050064f; - _34 = 0.8596711158752441f; - _35 = 0.0955343171954155f; - _36 = -0.005525882821530104f; - _37 = 0.004025210160762072f; - _38 = 1.0015007257461548f; - } - } else { - _30 = 1.02579927444458f; - _31 = -0.020052503794431686f; - _32 = -0.0057713985443115234f; - _33 = -0.0022350111976265907f; - _34 = 1.0045825242996216f; - _35 = -0.002352306619286537f; - _36 = -0.005014004185795784f; - _37 = -0.025293385609984398f; - _38 = 1.0304402112960815f; - } - } else { - _30 = 1.379158854484558f; - _31 = -0.3088507056236267f; - _32 = -0.07034677267074585f; - _33 = -0.06933528929948807f; - _34 = 1.0822921991348267f; - _35 = -0.012962047010660172f; - _36 = -0.002159259282052517f; - _37 = -0.045465391129255295f; - _38 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _48 = exp2(log2(_5 * 1.0322580337524414f) * 0.012683313339948654f); - float _49 = exp2(log2(_6 * 1.0322580337524414f) * 0.012683313339948654f); - float _50 = exp2(log2(_9 * 0.032258063554763794f) * 0.012683313339948654f); - _95 = (exp2(log2(max(0.0f, (_48 + -0.8359375f)) / (18.8515625f - (_48 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _96 = (exp2(log2(max(0.0f, (_49 + -0.8359375f)) / (18.8515625f - (_49 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _95 = ((exp2((_5 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _96 = ((exp2((_6 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _97 = ((exp2((_9 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _100 = cb0_047x * 1.0005563497543335f; - float _114 = select((_100 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _100) + 99.11000061035156f) / _100) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _100) + 247.47999572753906f) / _100) + 0.23703999817371368f)); - float _128 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _138 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _143 = ((_128 * 2.0f) + 4.0f) - (_138 * 8.0f); - float _144 = (_128 * 3.0f) / _143; - float _146 = (_138 * 2.0f) / _143; - bool _147 = (cb0_047x < 4000.0f); - float _152 = rsqrt(dot(float2(_128, _138), float2(_128, _138))); - float _153 = cb0_047y * 0.05000000074505806f; - float _156 = _128 - ((_153 * _138) * _152); - float _159 = ((_153 * _128) * _152) + _138; - float _164 = (4.0f - (_159 * 8.0f)) + (_156 * 2.0f); - float _170 = (((_156 * 3.0f) / _164) - _144) + select(_147, _144, _114); - float _171 = (((_159 * 2.0f) / _164) - _146) + select(_147, _146, (((_114 * 2.869999885559082f) + -0.2750000059604645f) - ((_114 * _114) * 3.0f))); - float _172 = max(_171, 1.000000013351432e-10f); - float _173 = _170 / _172; - float _176 = ((1.0f - _170) - _171) / _172; - float _186 = 0.9413792490959167f / mad(-0.16140000522136688f, _176, ((_173 * 0.8950999975204468f) + 0.266400009393692f)); - float _187 = 1.0404363870620728f / mad(0.03669999912381172f, _176, (1.7135000228881836f - (_173 * 0.7501999735832214f))); - float _188 = 1.089766502380371f / mad(1.0296000242233276f, _176, ((_173 * 0.03889999911189079f) + -0.06849999725818634f)); - float _189 = mad(_187, -0.7501999735832214f, 0.0f); - float _190 = mad(_187, 1.7135000228881836f, 0.0f); - float _191 = mad(_187, 0.03669999912381172f, -0.0f); - float _192 = mad(_188, 0.03889999911189079f, 0.0f); - float _193 = mad(_188, -0.06849999725818634f, 0.0f); - float _194 = mad(_188, 1.0296000242233276f, 0.0f); - float _197 = mad(0.1599626988172531f, _192, mad(-0.1470542997121811f, _189, (_186 * 0.883457362651825f))); - float _200 = mad(0.1599626988172531f, _193, mad(-0.1470542997121811f, _190, (_186 * 0.26293492317199707f))); - float _203 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_186 * -0.15930065512657166f))); - float _206 = mad(0.04929120093584061f, _192, mad(0.5183603167533875f, _189, (_186 * 0.38695648312568665f))); - float _209 = mad(0.04929120093584061f, _193, mad(0.5183603167533875f, _190, (_186 * 0.11516613513231277f))); - float _212 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_186 * -0.0697740763425827f))); - float _215 = mad(0.9684867262840271f, _192, mad(0.04004279896616936f, _189, (_186 * -0.007634039502590895f))); - float _218 = mad(0.9684867262840271f, _193, mad(0.04004279896616936f, _190, (_186 * -0.0022720457054674625f))); - float _221 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_186 * 0.0013765322510153055f))); - float _224 = mad(_203, 0.01933390088379383f, mad(_200, 0.2126729041337967f, (_197 * 0.4124563932418823f))); - float _227 = mad(_203, 0.11919199675321579f, mad(_200, 0.7151522040367126f, (_197 * 0.3575761020183563f))); - float _230 = mad(_203, 0.9503040909767151f, mad(_200, 0.07217500358819962f, (_197 * 0.18043750524520874f))); - float _233 = mad(_212, 0.01933390088379383f, mad(_209, 0.2126729041337967f, (_206 * 0.4124563932418823f))); - float _236 = mad(_212, 0.11919199675321579f, mad(_209, 0.7151522040367126f, (_206 * 0.3575761020183563f))); - float _239 = mad(_212, 0.9503040909767151f, mad(_209, 0.07217500358819962f, (_206 * 0.18043750524520874f))); - float _242 = mad(_221, 0.01933390088379383f, mad(_218, 0.2126729041337967f, (_215 * 0.4124563932418823f))); - float _245 = mad(_221, 0.11919199675321579f, mad(_218, 0.7151522040367126f, (_215 * 0.3575761020183563f))); - float _248 = mad(_221, 0.9503040909767151f, mad(_218, 0.07217500358819962f, (_215 * 0.18043750524520874f))); - float _278 = mad(mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))), _97, mad(mad(-0.4986107647418976f, _245, mad(-1.5373831987380981f, _236, (_227 * 3.2409698963165283f))), _96, (mad(-0.4986107647418976f, _242, mad(-1.5373831987380981f, _233, (_224 * 3.2409698963165283f))) * _95))); - float _281 = mad(mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))), _97, mad(mad(0.04155505821108818f, _245, mad(1.8759675025939941f, _236, (_227 * -0.9692436456680298f))), _96, (mad(0.04155505821108818f, _242, mad(1.8759675025939941f, _233, (_224 * -0.9692436456680298f))) * _95))); - float _284 = mad(mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))), _97, mad(mad(1.056971549987793f, _245, mad(-0.20397695899009705f, _236, (_227 * 0.05563008040189743f))), _96, (mad(1.056971549987793f, _242, mad(-0.20397695899009705f, _233, (_224 * 0.05563008040189743f))) * _95))); - float _287 = mad(0.04736635088920593f, _284, mad(0.3395121395587921f, _281, (_278 * 0.613191545009613f))); - float _290 = mad(0.01345000695437193f, _284, mad(0.9163357615470886f, _281, (_278 * 0.07020691782236099f))); - float _293 = mad(0.8696067929267883f, _284, mad(0.1095672994852066f, _281, (_278 * 0.020618872717022896f))); - // bool _296 = ((uint)(cb0_046x) == 0); - bool _296 = ((uint)(tm_flags.x) == 0); - if (_296) { - float _298 = dot(float3(_287, _290, _293), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _302 = (_287 / _298) + -1.0f; - float _303 = (_290 / _298) + -1.0f; - float _304 = (_293 / _298) + -1.0f; - float _316 = (1.0f - exp2(((_298 * _298) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_302, _303, _304), float3(_302, _303, _304)) * -4.0f)); - _336 = (((mad(-0.06368283927440643f, _293, mad(-0.32929131388664246f, _290, (_287 * 1.370412826538086f))) - _287) * _316) + _287); - _337 = (((mad(-0.010861567221581936f, _293, mad(1.0970908403396606f, _290, (_287 * -0.08343426138162613f))) - _290) * _316) + _290); - _338 = (((mad(1.203694462776184f, _293, mad(-0.09862564504146576f, _290, (_287 * -0.02579325996339321f))) - _293) * _316) + _293); - } else { - _336 = _287; - _337 = _290; - _338 = _293; - } - float _339 = dot(float3(_336, _337, _338), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _353 = cb0_052w + cb0_057w; - float _367 = cb0_051w * cb0_056w; - float _381 = cb0_050w * cb0_055w; - float _395 = cb0_049w * cb0_054w; - float _409 = cb0_048w * cb0_053w; - float _413 = _336 - _339; - float _414 = _337 - _339; - float _415 = _338 - _339; - float _473 = saturate(_339 / cb0_073x); - float _477 = (_473 * _473) * (3.0f - (_473 * 2.0f)); - float _478 = 1.0f - _477; - float _487 = cb0_052w + cb0_067w; - float _496 = cb0_051w * cb0_066w; - float _505 = cb0_050w * cb0_065w; - float _514 = cb0_049w * cb0_064w; - float _523 = cb0_048w * cb0_063w; - float _585 = saturate((_339 - cb0_073y) / (1.0f - cb0_073y)); - float _589 = (_585 * _585) * (3.0f - (_585 * 2.0f)); - float _598 = cb0_052w + cb0_062w; - float _607 = cb0_051w * cb0_061w; - float _616 = cb0_050w * cb0_060w; - float _625 = cb0_049w * cb0_059w; - float _634 = cb0_048w * cb0_058w; - float _692 = _477 - _589; - float _703 = ((_589 * (((cb0_052x + cb0_067x) + _487) + (((cb0_051x * cb0_066x) * _496) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _514) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _523) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _505)))))) + (_478 * (((cb0_052x + cb0_057x) + _353) + (((cb0_051x * cb0_056x) * _367) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _395) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _409) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _381))))))) + ((((cb0_052x + cb0_062x) + _598) + (((cb0_051x * cb0_061x) * _607) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _625) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _634) * _413) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _616))))) * _692); - float _705 = ((_589 * (((cb0_052y + cb0_067y) + _487) + (((cb0_051y * cb0_066y) * _496) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _514) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _523) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _505)))))) + (_478 * (((cb0_052y + cb0_057y) + _353) + (((cb0_051y * cb0_056y) * _367) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _395) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _409) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _381))))))) + ((((cb0_052y + cb0_062y) + _598) + (((cb0_051y * cb0_061y) * _607) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _625) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _634) * _414) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _616))))) * _692); - float _707 = ((_589 * (((cb0_052z + cb0_067z) + _487) + (((cb0_051z * cb0_066z) * _496) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _514) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _523) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _505)))))) + (_478 * (((cb0_052z + cb0_057z) + _353) + (((cb0_051z * cb0_056z) * _367) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _395) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _409) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _381))))))) + ((((cb0_052z + cb0_062z) + _598) + (((cb0_051z * cb0_061z) * _607) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _625) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _634) * _415) + _339)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _616))))) * _692); - float _733 = dot(float3(_703, _705, _707), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _791 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_703 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _792 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_705 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _793 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_707 - _733)) + _733)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _796 = mad(-0.0832584798336029f, _793, mad(-0.6217905879020691f, _792, (_791 * 1.7050515413284302f))); - float _799 = mad(-0.010548528283834457f, _793, mad(1.1408027410507202f, _792, (_791 * -0.13025718927383423f))); - float _802 = mad(1.152971863746643f, _793, mad(-0.1289687603712082f, _792, (_791 * -0.024003278464078903f))); - float _818 = ((mad(0.061360642313957214f, _793, mad(-4.540197551250458e-09f, _792, (_791 * 0.9386394023895264f))) - _791) * cb0_075x) + _791; - float _819 = ((mad(0.169205904006958f, _793, mad(0.8307942152023315f, _792, (_791 * 6.775371730327606e-08f))) - _792) * cb0_075x) + _792; - float _820 = (mad(-2.3283064365386963e-10f, _792, (_791 * -9.313225746154785e-10f)) * cb0_075x) + _793; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _830 = mad(0.16386905312538147f, _820, mad(0.14067868888378143f, _819, (_818 * 0.6954522132873535f))); - float _833 = mad(0.0955343246459961f, _820, mad(0.8596711158752441f, _819, (_818 * 0.044794581830501556f))); - float _836 = mad(1.0015007257461548f, _820, mad(0.004025210160762072f, _819, (_818 * -0.005525882821530104f))); - float _840 = max(max(_830, _833), _836); - float _845 = (max(_840, 1.000000013351432e-10f) - max(min(min(_830, _833), _836), 1.000000013351432e-10f)) / max(_840, 0.009999999776482582f); - float _858 = ((_833 + _830) + _836) + (sqrt((((_836 - _833) * _836) + ((_833 - _830) * _833)) + ((_830 - _836) * _830)) * 1.75f); - float _859 = _858 * 0.3333333432674408f; - float _860 = _845 + -0.4000000059604645f; - float _861 = _860 * 5.0f; - float _865 = max((1.0f - abs(_860 * 2.5f)), 0.0f); - float _876 = ((float(((int)(uint)((bool)(_861 > 0.0f))) - ((int)(uint)((bool)(_861 < 0.0f)))) * (1.0f - (_865 * _865))) + 1.0f) * 0.02500000037252903f; - if (!(_859 <= 0.0533333346247673f)) { - if (!(_859 >= 0.1599999964237213f)) { - _885 = (((0.23999999463558197f / _858) + -0.5f) * _876); - } else { - _885 = 0.0f; - } - } else { - _885 = _876; - } - float _886 = _885 + 1.0f; - float _887 = _886 * _830; - float _888 = _886 * _833; - float _889 = _886 * _836; - if (!((bool)(_887 == _888) && (bool)(_888 == _889))) { - float _896 = ((_887 * 2.0f) - _888) - _889; - float _899 = ((_833 - _836) * 1.7320507764816284f) * _886; - float _901 = atan(_899 / _896); - bool _904 = (_896 < 0.0f); - bool _905 = (_896 == 0.0f); - bool _906 = (_899 >= 0.0f); - bool _907 = (_899 < 0.0f); - _918 = select((_906 && _905), 90.0f, select((_907 && _905), -90.0f, (select((_907 && _904), (_901 + -3.1415927410125732f), select((_906 && _904), (_901 + 3.1415927410125732f), _901)) * 57.2957763671875f))); - } else { - _918 = 0.0f; - } - float _923 = min(max(select((_918 < 0.0f), (_918 + 360.0f), _918), 0.0f), 360.0f); - if (_923 < -180.0f) { - _932 = (_923 + 360.0f); - } else { - if (_923 > 180.0f) { - _932 = (_923 + -360.0f); - } else { - _932 = _923; - } - } - float _936 = saturate(1.0f - abs(_932 * 0.014814814552664757f)); - float _940 = (_936 * _936) * (3.0f - (_936 * 2.0f)); - float _946 = ((_940 * _940) * ((_845 * 0.18000000715255737f) * (0.029999999329447746f - _887))) + _887; - float _956 = max(0.0f, mad(-0.21492856740951538f, _889, mad(-0.2365107536315918f, _888, (_946 * 1.4514392614364624f)))); - float _957 = max(0.0f, mad(-0.09967592358589172f, _889, mad(1.17622971534729f, _888, (_946 * -0.07655377686023712f)))); - float _958 = max(0.0f, mad(0.9977163076400757f, _889, mad(-0.006032449658960104f, _888, (_946 * 0.008316148072481155f)))); - float _959 = dot(float3(_956, _957, _958), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _973 = (cb0_036w + 1.0f) - cb0_036y; - float _976 = cb0_037x + 1.0f; - float _978 = _976 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _996 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _987 = (cb0_036w + 0.18000000715255737f) / _973; - _996 = (-0.7447274923324585f - ((log2(_987 / (2.0f - _987)) * 0.3465735912322998f) * (_973 / cb0_036x))); - } - float _999 = ((1.0f - cb0_036y) / cb0_036x) - _996; - float _1001 = (cb0_036z / cb0_036x) - _999; - float _1005 = log2(lerp(_959, _956, 0.9599999785423279f)) * 0.3010300099849701f; - float _1006 = log2(lerp(_959, _957, 0.9599999785423279f)) * 0.3010300099849701f; - float _1007 = log2(lerp(_959, _958, 0.9599999785423279f)) * 0.3010300099849701f; - float _1011 = cb0_036x * (_1005 + _999); - float _1012 = cb0_036x * (_1006 + _999); - float _1013 = cb0_036x * (_1007 + _999); - float _1014 = _973 * 2.0f; - float _1016 = (cb0_036x * -2.0f) / _973; - float _1017 = _1005 - _996; - float _1018 = _1006 - _996; - float _1019 = _1007 - _996; - float _1038 = _978 * 2.0f; - float _1040 = (cb0_036x * 2.0f) / _978; - float _1065 = select((_1005 < _996), ((_1014 / (exp2((_1017 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1011); - float _1066 = select((_1006 < _996), ((_1014 / (exp2((_1018 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1012); - float _1067 = select((_1007 < _996), ((_1014 / (exp2((_1019 * 1.4426950216293335f) * _1016) + 1.0f)) - cb0_036w), _1013); - float _1074 = _1001 - _996; - float _1078 = saturate(_1017 / _1074); - float _1079 = saturate(_1018 / _1074); - float _1080 = saturate(_1019 / _1074); - bool _1081 = (_1001 < _996); - float _1085 = select(_1081, (1.0f - _1078), _1078); - float _1086 = select(_1081, (1.0f - _1079), _1079); - float _1087 = select(_1081, (1.0f - _1080), _1080); - float _1106 = (((_1085 * _1085) * (select((_1005 > _1001), (_976 - (_1038 / (exp2(((_1005 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1011) - _1065)) * (3.0f - (_1085 * 2.0f))) + _1065; - float _1107 = (((_1086 * _1086) * (select((_1006 > _1001), (_976 - (_1038 / (exp2(((_1006 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1012) - _1066)) * (3.0f - (_1086 * 2.0f))) + _1066; - float _1108 = (((_1087 * _1087) * (select((_1007 > _1001), (_976 - (_1038 / (exp2(((_1007 - _1001) * 1.4426950216293335f) * _1040) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; - float _1109 = dot(float3(_1106, _1107, _1108), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1133 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1106, 0.9300000071525574f))) - _818)) + _818); - _1134 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1107, 0.9300000071525574f))) - _819)) + _819); - _1135 = ((cb0_075z * (max(0.0f, (lerp(_1109, _1108, 0.9300000071525574f))) - _820)) + _820); - } else { - _1133 = _818; - _1134 = _819; - _1135 = _820; - } - float _1151 = ((mad(-0.06537103652954102f, _1135, mad(1.451815478503704e-06f, _1134, (_1133 * 1.065374732017517f))) - _1133) * cb0_075x) + _1133; - float _1152 = ((mad(-0.20366770029067993f, _1135, mad(1.2036634683609009f, _1134, (_1133 * -2.57161445915699e-07f))) - _1134) * cb0_075x) + _1134; - float _1153 = ((mad(0.9999996423721313f, _1135, mad(2.0954757928848267e-08f, _1134, (_1133 * 1.862645149230957e-08f))) - _1135) * cb0_075x) + _1135; - [branch] - if (!_296) { - float _1196 = 1.0f / (dot(float3(_796, _799, _802), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1206 = max(0.0f, (((_1196 * cb0_035x) + cb0_034x) * dot(float3(_796, _799, _802), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1207 = max(0.0f, (((_1196 * cb0_035y) + cb0_034y) * dot(float3(_796, _799, _802), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1208 = max(0.0f, (((_1196 * cb0_035z) + cb0_034z) * dot(float3(_796, _799, _802), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1214 = max(0.0f, (cb0_031x - _1206)); - float _1215 = max(0.0f, (cb0_031x - _1207)); - float _1216 = max(0.0f, (cb0_031x - _1208)); - float _1218 = max(_1206, cb0_031z); - float _1219 = max(_1207, cb0_031z); - float _1220 = max(_1208, cb0_031z); - _1278 = (((((((cb0_032x * _1218) + cb0_032y) * (1.0f / (cb0_031w + _1218))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1206, cb0_031x), cb0_031z))) + ((cb0_028w * _1214) * (1.0f / (cb0_031y + _1214)))) + cb0_029w); - _1279 = ((((((1.0f / (cb0_031w + _1219)) * ((cb0_032x * _1219) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1207, cb0_031x), cb0_031z))) + ((cb0_028w * _1215) * (1.0f / (cb0_031y + _1215)))) + cb0_029w); - _1280 = ((((((1.0f / (cb0_031w + _1220)) * ((cb0_032x * _1220) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1208, cb0_031x), cb0_031z))) + ((cb0_028w * _1216) * (1.0f / (cb0_031y + _1216)))) + cb0_029w); - } else { - _1278 = max(0.0f, mad(-0.0832584798336029f, _1153, mad(-0.6217905879020691f, _1152, (_1151 * 1.7050515413284302f)))); - _1279 = max(0.0f, mad(-0.010548528283834457f, _1153, mad(1.1408027410507202f, _1152, (_1151 * -0.13025718927383423f)))); - _1280 = max(0.0f, mad(1.152971863746643f, _1153, mad(-0.1289687603712082f, _1152, (_1151 * -0.024003278464078903f)))); - } - float _1306 = cb0_044y * (((cb0_026y + (cb0_026x * _1278)) * _1278) + cb0_026z); - float _1307 = cb0_044z * (((cb0_026y + (cb0_026x * _1279)) * _1279) + cb0_026z); - float _1308 = cb0_044w * (((cb0_026y + (cb0_026x * _1280)) * _1280) + cb0_026z); - float _1315 = ((cb0_045x - _1306) * cb0_045w) + _1306; - float _1316 = ((cb0_045y - _1307) * cb0_045w) + _1307; - float _1317 = ((cb0_045z - _1308) * cb0_045w) + _1308; - float _1318 = cb0_044y * _796; - float _1319 = cb0_044z * _799; - float _1320 = cb0_044w * _802; - float _1327 = ((cb0_045x - _1318) * cb0_045w) + _1318; - float _1328 = ((cb0_045y - _1319) * cb0_045w) + _1319; - float _1329 = ((cb0_045z - _1320) * cb0_045w) + _1320; - float _1341 = exp2(log2(max(0.0f, _1315)) * cb0_027y); - float _1342 = exp2(log2(max(0.0f, _1316)) * cb0_027y); - float _1343 = exp2(log2(max(0.0f, _1317)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1341, _1342, _1343)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1341 < 0.0031306699384003878f) { - _1356 = (_1341 * 12.920000076293945f); - } else { - _1356 = (((pow(_1341, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1342 < 0.0031306699384003878f) { - _1367 = (_1342 * 12.920000076293945f); - } else { - _1367 = (((pow(_1342, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1343 < 0.0031306699384003878f) { - _2797 = _1356; - _2798 = _1367; - _2799 = (_1343 * 12.920000076293945f); - } else { - _2797 = _1356; - _2798 = _1367; - _2799 = (((pow(_1343, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1382 = mad(0.04736635088920593f, _1343, mad(0.3395121395587921f, _1342, (_1341 * 0.613191545009613f))); - float _1385 = mad(0.01345000695437193f, _1343, mad(0.9163357615470886f, _1342, (_1341 * 0.07020691782236099f))); - float _1388 = mad(0.8696067929267883f, _1343, mad(0.1095672994852066f, _1342, (_1341 * 0.020618872717022896f))); - float _1398 = max(6.103519990574569e-05f, mad(_32, _1388, mad(_31, _1385, (_1382 * _30)))); - float _1399 = max(6.103519990574569e-05f, mad(_35, _1388, mad(_34, _1385, (_1382 * _33)))); - float _1400 = max(6.103519990574569e-05f, mad(_38, _1388, mad(_37, _1385, (_1382 * _36)))); - _2797 = min((_1398 * 4.5f), ((exp2(log2(max(_1398, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2798 = min((_1399 * 4.5f), ((exp2(log2(max(_1399, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2799 = min((_1400 * 4.5f), ((exp2(log2(max(_1400, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1427 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1427) { - float _1430 = _1328 * 3.0f; - float _1431 = _1329 * 3.0f; - float _1434 = mad(0.17733481526374817f, _1431, mad(0.38297808170318604f, _1430, (_1327 * 1.31910240650177f))); - float _1437 = mad(0.09676162153482437f, _1431, mad(0.8134231567382812f, _1430, (_1327 * 0.2693769633769989f))); - float _1440 = mad(0.870704174041748f, _1431, mad(0.11154405772686005f, _1430, (_1327 * 0.05263196676969528f))); - float _1444 = max(max(_1434, _1437), _1440); - float _1449 = (max(_1444, 1.000000013351432e-10f) - max(min(min(_1434, _1437), _1440), 1.000000013351432e-10f)) / max(_1444, 0.009999999776482582f); - float _1462 = ((_1437 + _1434) + _1440) + (sqrt((((_1440 - _1437) * _1440) + ((_1437 - _1434) * _1437)) + ((_1434 - _1440) * _1434)) * 1.75f); - float _1463 = _1462 * 0.3333333432674408f; - float _1464 = _1449 + -0.4000000059604645f; - float _1465 = _1464 * 5.0f; - float _1469 = max((1.0f - abs(_1464 * 2.5f)), 0.0f); - float _1480 = ((float(((int)(uint)((bool)(_1465 > 0.0f))) - ((int)(uint)((bool)(_1465 < 0.0f)))) * (1.0f - (_1469 * _1469))) + 1.0f) * 0.02500000037252903f; - if (!(_1463 <= 0.0533333346247673f)) { - if (!(_1463 >= 0.1599999964237213f)) { - _1489 = (((0.23999999463558197f / _1462) + -0.5f) * _1480); - } else { - _1489 = 0.0f; - } - } else { - _1489 = _1480; - } - float _1490 = _1489 + 1.0f; - float _1491 = _1490 * _1434; - float _1492 = _1490 * _1437; - float _1493 = _1490 * _1440; - if (!((bool)(_1491 == _1492) && (bool)(_1492 == _1493))) { - float _1500 = ((_1491 * 2.0f) - _1492) - _1493; - float _1503 = ((_1437 - _1440) * 1.7320507764816284f) * _1490; - float _1505 = atan(_1503 / _1500); - bool _1508 = (_1500 < 0.0f); - bool _1509 = (_1500 == 0.0f); - bool _1510 = (_1503 >= 0.0f); - bool _1511 = (_1503 < 0.0f); - _1522 = select((_1510 && _1509), 90.0f, select((_1511 && _1509), -90.0f, (select((_1511 && _1508), (_1505 + -3.1415927410125732f), select((_1510 && _1508), (_1505 + 3.1415927410125732f), _1505)) * 57.2957763671875f))); - } else { - _1522 = 0.0f; - } - float _1527 = min(max(select((_1522 < 0.0f), (_1522 + 360.0f), _1522), 0.0f), 360.0f); - if (_1527 < -180.0f) { - _1536 = (_1527 + 360.0f); - } else { - if (_1527 > 180.0f) { - _1536 = (_1527 + -360.0f); - } else { - _1536 = _1527; - } - } - if ((bool)(_1536 > -67.5f) && (bool)(_1536 < 67.5f)) { - float _1542 = (_1536 + 67.5f) * 0.029629629105329514f; - int _1543 = int(_1542); - float _1545 = _1542 - float(_1543); - float _1546 = _1545 * _1545; - float _1547 = _1546 * _1545; - if (_1543 == 3) { - _1575 = (((0.1666666716337204f - (_1545 * 0.5f)) + (_1546 * 0.5f)) - (_1547 * 0.1666666716337204f)); - } else { - if (_1543 == 2) { - _1575 = ((0.6666666865348816f - _1546) + (_1547 * 0.5f)); - } else { - if (_1543 == 1) { - _1575 = (((_1547 * -0.5f) + 0.1666666716337204f) + ((_1546 + _1545) * 0.5f)); - } else { - _1575 = select((_1543 == 0), (_1547 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1575 = 0.0f; - } - float _1584 = min(max(((((_1449 * 0.27000001072883606f) * (0.029999999329447746f - _1491)) * _1575) + _1491), 0.0f), 65535.0f); - float _1585 = min(max(_1492, 0.0f), 65535.0f); - float _1586 = min(max(_1493, 0.0f), 65535.0f); - float _1599 = min(max(mad(-0.21492856740951538f, _1586, mad(-0.2365107536315918f, _1585, (_1584 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1600 = min(max(mad(-0.09967592358589172f, _1586, mad(1.17622971534729f, _1585, (_1584 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1601 = min(max(mad(0.9977163076400757f, _1586, mad(-0.006032449658960104f, _1585, (_1584 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1602 = dot(float3(_1599, _1600, _1601), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1609 = ((_1599 - _1602) * 0.9599999785423279f) + _1602; - float _1610 = ((_1600 - _1602) * 0.9599999785423279f) + _1602; - float _1611 = ((_1601 - _1602) * 0.9599999785423279f) + _1602; - float _1614 = log2(select((_1609 <= 0.0f), 6.103515625e-05f, _1609)); - float _1615 = _1614 * 0.3010300099849701f; - if (!(_1615 <= -5.2601776123046875f)) { - if ((bool)(_1615 > -5.2601776123046875f) && (bool)(_1615 < -0.7447274923324585f)) { - float _1623 = (_1614 * 0.19999998807907104f) + 3.494786262512207f; - int _1624 = int(_1623); - float _1626 = _1623 - float(_1624); - float _1628 = _global_0[_1624]; - float _1631 = _global_0[(_1624 + 1)]; - float _1636 = _1628 * 0.5f; - _1668 = dot(float3((_1626 * _1626), _1626, 1.0f), float3(mad((_global_0[(_1624 + 2)]), 0.5f, mad(_1631, -1.0f, _1636)), (_1631 - _1628), mad(_1631, 0.5f, _1636))); - } else { - if ((bool)(_1615 >= -0.7447274923324585f) && (bool)(_1615 < 4.673812389373779f)) { - float _1648 = (_1614 * 0.1666666567325592f) + 0.4123218357563019f; - int _1649 = int(_1648); - float _1651 = _1648 - float(_1649); - float _1653 = _global_1[_1649]; - float _1656 = _global_1[(_1649 + 1)]; - float _1661 = _1653 * 0.5f; - _1668 = dot(float3((_1651 * _1651), _1651, 1.0f), float3(mad((_global_1[(_1649 + 2)]), 0.5f, mad(_1656, -1.0f, _1661)), (_1656 - _1653), mad(_1656, 0.5f, _1661))); - } else { - _1668 = 4.0f; - } - } - } else { - _1668 = -4.0f; - } - float _1670 = exp2(_1668 * 3.321928024291992f); - float _1673 = log2(select((_1610 <= 0.0f), 6.103515625e-05f, _1610)); - float _1674 = _1673 * 0.3010300099849701f; - if (!(_1674 <= -5.2601776123046875f)) { - if ((bool)(_1674 > -5.2601776123046875f) && (bool)(_1674 < -0.7447274923324585f)) { - float _1682 = (_1673 * 0.19999998807907104f) + 3.494786262512207f; - int _1683 = int(_1682); - float _1685 = _1682 - float(_1683); - float _1687 = _global_0[_1683]; - float _1690 = _global_0[(_1683 + 1)]; - float _1695 = _1687 * 0.5f; - _1727 = dot(float3((_1685 * _1685), _1685, 1.0f), float3(mad((_global_0[(_1683 + 2)]), 0.5f, mad(_1690, -1.0f, _1695)), (_1690 - _1687), mad(_1690, 0.5f, _1695))); - } else { - if ((bool)(_1674 >= -0.7447274923324585f) && (bool)(_1674 < 4.673812389373779f)) { - float _1707 = (_1673 * 0.1666666567325592f) + 0.4123218357563019f; - int _1708 = int(_1707); - float _1710 = _1707 - float(_1708); - float _1712 = _global_1[_1708]; - float _1715 = _global_1[(_1708 + 1)]; - float _1720 = _1712 * 0.5f; - _1727 = dot(float3((_1710 * _1710), _1710, 1.0f), float3(mad((_global_1[(_1708 + 2)]), 0.5f, mad(_1715, -1.0f, _1720)), (_1715 - _1712), mad(_1715, 0.5f, _1720))); - } else { - _1727 = 4.0f; - } - } - } else { - _1727 = -4.0f; - } - float _1729 = exp2(_1727 * 3.321928024291992f); - float _1732 = log2(select((_1611 <= 0.0f), 6.103515625e-05f, _1611)); - float _1733 = _1732 * 0.3010300099849701f; - if (!(_1733 <= -5.2601776123046875f)) { - if ((bool)(_1733 > -5.2601776123046875f) && (bool)(_1733 < -0.7447274923324585f)) { - float _1741 = (_1732 * 0.19999998807907104f) + 3.494786262512207f; - int _1742 = int(_1741); - float _1744 = _1741 - float(_1742); - float _1746 = _global_0[_1742]; - float _1749 = _global_0[(_1742 + 1)]; - float _1754 = _1746 * 0.5f; - _1786 = dot(float3((_1744 * _1744), _1744, 1.0f), float3(mad((_global_0[(_1742 + 2)]), 0.5f, mad(_1749, -1.0f, _1754)), (_1749 - _1746), mad(_1749, 0.5f, _1754))); - } else { - if ((bool)(_1733 >= -0.7447274923324585f) && (bool)(_1733 < 4.673812389373779f)) { - float _1766 = (_1732 * 0.1666666567325592f) + 0.4123218357563019f; - int _1767 = int(_1766); - float _1769 = _1766 - float(_1767); - float _1771 = _global_1[_1767]; - float _1774 = _global_1[(_1767 + 1)]; - float _1779 = _1771 * 0.5f; - _1786 = dot(float3((_1769 * _1769), _1769, 1.0f), float3(mad((_global_1[(_1767 + 2)]), 0.5f, mad(_1774, -1.0f, _1779)), (_1774 - _1771), mad(_1774, 0.5f, _1779))); - } else { - _1786 = 4.0f; - } - } - } else { - _1786 = -4.0f; - } - float _1788 = exp2(_1786 * 3.321928024291992f); - float _1791 = mad(0.16386906802654266f, _1788, mad(0.14067870378494263f, _1729, (_1670 * 0.6954522132873535f))); - float _1794 = mad(0.0955343171954155f, _1788, mad(0.8596711158752441f, _1729, (_1670 * 0.044794563204050064f))); - float _1797 = mad(1.0015007257461548f, _1788, mad(0.004025210160762072f, _1729, (_1670 * -0.005525882821530104f))); - float _1800 = mad(-0.21492856740951538f, _1797, mad(-0.2365107536315918f, _1794, (_1791 * 1.4514392614364624f))); - float _1803 = mad(-0.09967592358589172f, _1797, mad(1.17622971534729f, _1794, (_1791 * -0.07655377686023712f))); - float _1806 = mad(0.9977163076400757f, _1797, mad(-0.006032449658960104f, _1794, (_1791 * 0.008316148072481155f))); - float _1809 = log2(select((_1800 <= 0.0f), 9.999999747378752e-05f, _1800)); - float _1810 = _1809 * 0.3010300099849701f; - if (!(!(_1810 <= -3.848327875137329f))) { - _1869 = ((_1809 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1810 > -3.848327875137329f) && (bool)(_1810 < 0.6812411546707153f)) { - float _1821 = (_1809 + 12.783867835998535f) * 0.46521204710006714f; - int _1822 = int(_1821); - float _1824 = _1821 - float(_1822); - float _1826 = _global_2[_1822]; - float _1829 = _global_2[(_1822 + 1)]; - float _1834 = _1826 * 0.5f; - _1869 = dot(float3((_1824 * _1824), _1824, 1.0f), float3(mad((_global_2[(_1822 + 2)]), 0.5f, mad(_1829, -1.0f, _1834)), (_1829 - _1826), mad(_1829, 0.5f, _1834))); - } else { - if ((bool)(_1810 >= 0.6812411546707153f) && (bool)(_1810 < 3.653702974319458f)) { - float _1846 = (_1809 + -2.2630341053009033f) * 0.7089107632637024f; - int _1847 = int(_1846); - float _1849 = _1846 - float(_1847); - float _1851 = _global_3[_1847]; - float _1854 = _global_3[(_1847 + 1)]; - float _1859 = _1851 * 0.5f; - _1869 = dot(float3((_1849 * _1849), _1849, 1.0f), float3(mad((_global_3[(_1847 + 2)]), 0.5f, mad(_1854, -1.0f, _1859)), (_1854 - _1851), mad(_1854, 0.5f, _1859))); - } else { - _1869 = ((_1809 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1874 = log2(select((_1803 <= 0.0f), 9.999999747378752e-05f, _1803)); - float _1875 = _1874 * 0.3010300099849701f; - if (!(!(_1875 <= -3.848327875137329f))) { - _1934 = ((_1874 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1875 > -3.848327875137329f) && (bool)(_1875 < 0.6812411546707153f)) { - float _1886 = (_1874 + 12.783867835998535f) * 0.46521204710006714f; - int _1887 = int(_1886); - float _1889 = _1886 - float(_1887); - float _1891 = _global_2[_1887]; - float _1894 = _global_2[(_1887 + 1)]; - float _1899 = _1891 * 0.5f; - _1934 = dot(float3((_1889 * _1889), _1889, 1.0f), float3(mad((_global_2[(_1887 + 2)]), 0.5f, mad(_1894, -1.0f, _1899)), (_1894 - _1891), mad(_1894, 0.5f, _1899))); - } else { - if ((bool)(_1875 >= 0.6812411546707153f) && (bool)(_1875 < 3.653702974319458f)) { - float _1911 = (_1874 + -2.2630341053009033f) * 0.7089107632637024f; - int _1912 = int(_1911); - float _1914 = _1911 - float(_1912); - float _1916 = _global_3[_1912]; - float _1919 = _global_3[(_1912 + 1)]; - float _1924 = _1916 * 0.5f; - _1934 = dot(float3((_1914 * _1914), _1914, 1.0f), float3(mad((_global_3[(_1912 + 2)]), 0.5f, mad(_1919, -1.0f, _1924)), (_1919 - _1916), mad(_1919, 0.5f, _1924))); - } else { - _1934 = ((_1874 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1939 = log2(select((_1806 <= 0.0f), 9.999999747378752e-05f, _1806)); - float _1940 = _1939 * 0.3010300099849701f; - if (!(!(_1940 <= -3.848327875137329f))) { - _1999 = ((_1939 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1940 > -3.848327875137329f) && (bool)(_1940 < 0.6812411546707153f)) { - float _1951 = (_1939 + 12.783867835998535f) * 0.46521204710006714f; - int _1952 = int(_1951); - float _1954 = _1951 - float(_1952); - float _1956 = _global_2[_1952]; - float _1959 = _global_2[(_1952 + 1)]; - float _1964 = _1956 * 0.5f; - _1999 = dot(float3((_1954 * _1954), _1954, 1.0f), float3(mad((_global_2[(_1952 + 2)]), 0.5f, mad(_1959, -1.0f, _1964)), (_1959 - _1956), mad(_1959, 0.5f, _1964))); - } else { - if ((bool)(_1940 >= 0.6812411546707153f) && (bool)(_1940 < 3.653702974319458f)) { - float _1976 = (_1939 + -2.2630341053009033f) * 0.7089107632637024f; - int _1977 = int(_1976); - float _1979 = _1976 - float(_1977); - float _1981 = _global_3[_1977]; - float _1984 = _global_3[(_1977 + 1)]; - float _1989 = _1981 * 0.5f; - _1999 = dot(float3((_1979 * _1979), _1979, 1.0f), float3(mad((_global_3[(_1977 + 2)]), 0.5f, mad(_1984, -1.0f, _1989)), (_1984 - _1981), mad(_1984, 0.5f, _1989))); - } else { - _1999 = ((_1939 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2002 = exp2(_1869 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2003 = exp2(_1934 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2004 = exp2(_1999 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1427) { - _2016 = mad(_32, _2004, mad(_31, _2003, (_2002 * _30))); - _2017 = mad(_35, _2004, mad(_34, _2003, (_2002 * _33))); - _2018 = mad(_38, _2004, mad(_37, _2003, (_2002 * _36))); - } else { - _2016 = _2002; - _2017 = _2003; - _2018 = _2004; - } - float _2028 = exp2(log2(_2016 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2029 = exp2(log2(_2017 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2030 = exp2(log2(_2018 * 9.999999747378752e-05f) * 0.1593017578125f); - _2797 = exp2(log2((1.0f / ((_2028 * 18.6875f) + 1.0f)) * ((_2028 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2798 = exp2(log2((1.0f / ((_2029 * 18.6875f) + 1.0f)) * ((_2029 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2030 * 18.6875f) + 1.0f)) * ((_2030 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2063 = _1328 * 3.0f; - float _2064 = _1329 * 3.0f; - float _2067 = mad(0.17733481526374817f, _2064, mad(0.38297808170318604f, _2063, (_1327 * 1.31910240650177f))); - float _2070 = mad(0.09676162153482437f, _2064, mad(0.8134231567382812f, _2063, (_1327 * 0.2693769633769989f))); - float _2073 = mad(0.870704174041748f, _2064, mad(0.11154405772686005f, _2063, (_1327 * 0.05263196676969528f))); - float _2077 = max(max(_2067, _2070), _2073); - float _2082 = (max(_2077, 1.000000013351432e-10f) - max(min(min(_2067, _2070), _2073), 1.000000013351432e-10f)) / max(_2077, 0.009999999776482582f); - float _2095 = ((_2070 + _2067) + _2073) + (sqrt((((_2073 - _2070) * _2073) + ((_2070 - _2067) * _2070)) + ((_2067 - _2073) * _2067)) * 1.75f); - float _2096 = _2095 * 0.3333333432674408f; - float _2097 = _2082 + -0.4000000059604645f; - float _2098 = _2097 * 5.0f; - float _2102 = max((1.0f - abs(_2097 * 2.5f)), 0.0f); - float _2113 = ((float(((int)(uint)((bool)(_2098 > 0.0f))) - ((int)(uint)((bool)(_2098 < 0.0f)))) * (1.0f - (_2102 * _2102))) + 1.0f) * 0.02500000037252903f; - if (!(_2096 <= 0.0533333346247673f)) { - if (!(_2096 >= 0.1599999964237213f)) { - _2122 = (((0.23999999463558197f / _2095) + -0.5f) * _2113); - } else { - _2122 = 0.0f; - } - } else { - _2122 = _2113; - } - float _2123 = _2122 + 1.0f; - float _2124 = _2123 * _2067; - float _2125 = _2123 * _2070; - float _2126 = _2123 * _2073; - if (!((bool)(_2124 == _2125) && (bool)(_2125 == _2126))) { - float _2133 = ((_2124 * 2.0f) - _2125) - _2126; - float _2136 = ((_2070 - _2073) * 1.7320507764816284f) * _2123; - float _2138 = atan(_2136 / _2133); - bool _2141 = (_2133 < 0.0f); - bool _2142 = (_2133 == 0.0f); - bool _2143 = (_2136 >= 0.0f); - bool _2144 = (_2136 < 0.0f); - _2155 = select((_2143 && _2142), 90.0f, select((_2144 && _2142), -90.0f, (select((_2144 && _2141), (_2138 + -3.1415927410125732f), select((_2143 && _2141), (_2138 + 3.1415927410125732f), _2138)) * 57.2957763671875f))); - } else { - _2155 = 0.0f; - } - float _2160 = min(max(select((_2155 < 0.0f), (_2155 + 360.0f), _2155), 0.0f), 360.0f); - if (_2160 < -180.0f) { - _2169 = (_2160 + 360.0f); - } else { - if (_2160 > 180.0f) { - _2169 = (_2160 + -360.0f); - } else { - _2169 = _2160; - } - } - if ((bool)(_2169 > -67.5f) && (bool)(_2169 < 67.5f)) { - float _2175 = (_2169 + 67.5f) * 0.029629629105329514f; - int _2176 = int(_2175); - float _2178 = _2175 - float(_2176); - float _2179 = _2178 * _2178; - float _2180 = _2179 * _2178; - if (_2176 == 3) { - _2208 = (((0.1666666716337204f - (_2178 * 0.5f)) + (_2179 * 0.5f)) - (_2180 * 0.1666666716337204f)); - } else { - if (_2176 == 2) { - _2208 = ((0.6666666865348816f - _2179) + (_2180 * 0.5f)); - } else { - if (_2176 == 1) { - _2208 = (((_2180 * -0.5f) + 0.1666666716337204f) + ((_2179 + _2178) * 0.5f)); - } else { - _2208 = select((_2176 == 0), (_2180 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2208 = 0.0f; - } - float _2217 = min(max(((((_2082 * 0.27000001072883606f) * (0.029999999329447746f - _2124)) * _2208) + _2124), 0.0f), 65535.0f); - float _2218 = min(max(_2125, 0.0f), 65535.0f); - float _2219 = min(max(_2126, 0.0f), 65535.0f); - float _2232 = min(max(mad(-0.21492856740951538f, _2219, mad(-0.2365107536315918f, _2218, (_2217 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2233 = min(max(mad(-0.09967592358589172f, _2219, mad(1.17622971534729f, _2218, (_2217 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2234 = min(max(mad(0.9977163076400757f, _2219, mad(-0.006032449658960104f, _2218, (_2217 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2235 = dot(float3(_2232, _2233, _2234), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2242 = ((_2232 - _2235) * 0.9599999785423279f) + _2235; - float _2243 = ((_2233 - _2235) * 0.9599999785423279f) + _2235; - float _2244 = ((_2234 - _2235) * 0.9599999785423279f) + _2235; - float _2247 = log2(select((_2242 <= 0.0f), 6.103515625e-05f, _2242)); - float _2248 = _2247 * 0.3010300099849701f; - if (!(_2248 <= -5.2601776123046875f)) { - if ((bool)(_2248 > -5.2601776123046875f) && (bool)(_2248 < -0.7447274923324585f)) { - float _2256 = (_2247 * 0.19999998807907104f) + 3.494786262512207f; - int _2257 = int(_2256); - float _2259 = _2256 - float(_2257); - float _2261 = _global_0[_2257]; - float _2264 = _global_0[(_2257 + 1)]; - float _2269 = _2261 * 0.5f; - _2301 = dot(float3((_2259 * _2259), _2259, 1.0f), float3(mad((_global_0[(_2257 + 2)]), 0.5f, mad(_2264, -1.0f, _2269)), (_2264 - _2261), mad(_2264, 0.5f, _2269))); - } else { - if ((bool)(_2248 >= -0.7447274923324585f) && (bool)(_2248 < 4.673812389373779f)) { - float _2281 = (_2247 * 0.1666666567325592f) + 0.4123218357563019f; - int _2282 = int(_2281); - float _2284 = _2281 - float(_2282); - float _2286 = _global_1[_2282]; - float _2289 = _global_1[(_2282 + 1)]; - float _2294 = _2286 * 0.5f; - _2301 = dot(float3((_2284 * _2284), _2284, 1.0f), float3(mad((_global_1[(_2282 + 2)]), 0.5f, mad(_2289, -1.0f, _2294)), (_2289 - _2286), mad(_2289, 0.5f, _2294))); - } else { - _2301 = 4.0f; - } - } - } else { - _2301 = -4.0f; - } - float _2303 = exp2(_2301 * 3.321928024291992f); - float _2306 = log2(select((_2243 <= 0.0f), 6.103515625e-05f, _2243)); - float _2307 = _2306 * 0.3010300099849701f; - if (!(_2307 <= -5.2601776123046875f)) { - if ((bool)(_2307 > -5.2601776123046875f) && (bool)(_2307 < -0.7447274923324585f)) { - float _2315 = (_2306 * 0.19999998807907104f) + 3.494786262512207f; - int _2316 = int(_2315); - float _2318 = _2315 - float(_2316); - float _2320 = _global_0[_2316]; - float _2323 = _global_0[(_2316 + 1)]; - float _2328 = _2320 * 0.5f; - _2360 = dot(float3((_2318 * _2318), _2318, 1.0f), float3(mad((_global_0[(_2316 + 2)]), 0.5f, mad(_2323, -1.0f, _2328)), (_2323 - _2320), mad(_2323, 0.5f, _2328))); - } else { - if ((bool)(_2307 >= -0.7447274923324585f) && (bool)(_2307 < 4.673812389373779f)) { - float _2340 = (_2306 * 0.1666666567325592f) + 0.4123218357563019f; - int _2341 = int(_2340); - float _2343 = _2340 - float(_2341); - float _2345 = _global_1[_2341]; - float _2348 = _global_1[(_2341 + 1)]; - float _2353 = _2345 * 0.5f; - _2360 = dot(float3((_2343 * _2343), _2343, 1.0f), float3(mad((_global_1[(_2341 + 2)]), 0.5f, mad(_2348, -1.0f, _2353)), (_2348 - _2345), mad(_2348, 0.5f, _2353))); - } else { - _2360 = 4.0f; - } - } - } else { - _2360 = -4.0f; - } - float _2362 = exp2(_2360 * 3.321928024291992f); - float _2365 = log2(select((_2244 <= 0.0f), 6.103515625e-05f, _2244)); - float _2366 = _2365 * 0.3010300099849701f; - if (!(_2366 <= -5.2601776123046875f)) { - if ((bool)(_2366 > -5.2601776123046875f) && (bool)(_2366 < -0.7447274923324585f)) { - float _2374 = (_2365 * 0.19999998807907104f) + 3.494786262512207f; - int _2375 = int(_2374); - float _2377 = _2374 - float(_2375); - float _2379 = _global_0[_2375]; - float _2382 = _global_0[(_2375 + 1)]; - float _2387 = _2379 * 0.5f; - _2419 = dot(float3((_2377 * _2377), _2377, 1.0f), float3(mad((_global_0[(_2375 + 2)]), 0.5f, mad(_2382, -1.0f, _2387)), (_2382 - _2379), mad(_2382, 0.5f, _2387))); - } else { - if ((bool)(_2366 >= -0.7447274923324585f) && (bool)(_2366 < 4.673812389373779f)) { - float _2399 = (_2365 * 0.1666666567325592f) + 0.4123218357563019f; - int _2400 = int(_2399); - float _2402 = _2399 - float(_2400); - float _2404 = _global_1[_2400]; - float _2407 = _global_1[(_2400 + 1)]; - float _2412 = _2404 * 0.5f; - _2419 = dot(float3((_2402 * _2402), _2402, 1.0f), float3(mad((_global_1[(_2400 + 2)]), 0.5f, mad(_2407, -1.0f, _2412)), (_2407 - _2404), mad(_2407, 0.5f, _2412))); - } else { - _2419 = 4.0f; - } - } - } else { - _2419 = -4.0f; - } - float _2421 = exp2(_2419 * 3.321928024291992f); - float _2424 = mad(0.16386906802654266f, _2421, mad(0.14067870378494263f, _2362, (_2303 * 0.6954522132873535f))); - float _2427 = mad(0.0955343171954155f, _2421, mad(0.8596711158752441f, _2362, (_2303 * 0.044794563204050064f))); - float _2430 = mad(1.0015007257461548f, _2421, mad(0.004025210160762072f, _2362, (_2303 * -0.005525882821530104f))); - float _2433 = mad(-0.21492856740951538f, _2430, mad(-0.2365107536315918f, _2427, (_2424 * 1.4514392614364624f))); - float _2436 = mad(-0.09967592358589172f, _2430, mad(1.17622971534729f, _2427, (_2424 * -0.07655377686023712f))); - float _2439 = mad(0.9977163076400757f, _2430, mad(-0.006032449658960104f, _2427, (_2424 * 0.008316148072481155f))); - float _2442 = log2(select((_2433 <= 0.0f), 9.999999747378752e-05f, _2433)); - float _2443 = _2442 * 0.3010300099849701f; - if (!(_2443 <= -3.848327875137329f)) { - if ((bool)(_2443 > -3.848327875137329f) && (bool)(_2443 < 0.6812411546707153f)) { - float _2451 = (_2442 + 12.783867835998535f) * 0.46521204710006714f; - int _2452 = int(_2451); - float _2454 = _2451 - float(_2452); - float _2456 = _global_4[_2452]; - float _2459 = _global_4[(_2452 + 1)]; - float _2464 = _2456 * 0.5f; - _2499 = dot(float3((_2454 * _2454), _2454, 1.0f), float3(mad((_global_4[(_2452 + 2)]), 0.5f, mad(_2459, -1.0f, _2464)), (_2459 - _2456), mad(_2459, 0.5f, _2464))); - } else { - if ((bool)(_2443 >= 0.6812411546707153f) && (bool)(_2443 < 3.7613162994384766f)) { - float _2476 = (_2442 + -2.2630341053009033f) * 0.6841424107551575f; - int _2477 = int(_2476); - float _2479 = _2476 - float(_2477); - float _2481 = _global_5[_2477]; - float _2484 = _global_5[(_2477 + 1)]; - float _2489 = _2481 * 0.5f; - _2499 = dot(float3((_2479 * _2479), _2479, 1.0f), float3(mad((_global_5[(_2477 + 2)]), 0.5f, mad(_2484, -1.0f, _2489)), (_2484 - _2481), mad(_2484, 0.5f, _2489))); - } else { - _2499 = ((_2442 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2499 = -2.301030158996582f; - } - float _2501 = exp2(_2499 * 3.321928024291992f); - float _2504 = log2(select((_2436 <= 0.0f), 9.999999747378752e-05f, _2436)); - float _2505 = _2504 * 0.3010300099849701f; - if (!(_2505 <= -3.848327875137329f)) { - if ((bool)(_2505 > -3.848327875137329f) && (bool)(_2505 < 0.6812411546707153f)) { - float _2513 = (_2504 + 12.783867835998535f) * 0.46521204710006714f; - int _2514 = int(_2513); - float _2516 = _2513 - float(_2514); - float _2518 = _global_4[_2514]; - float _2521 = _global_4[(_2514 + 1)]; - float _2526 = _2518 * 0.5f; - _2561 = dot(float3((_2516 * _2516), _2516, 1.0f), float3(mad((_global_4[(_2514 + 2)]), 0.5f, mad(_2521, -1.0f, _2526)), (_2521 - _2518), mad(_2521, 0.5f, _2526))); - } else { - if ((bool)(_2505 >= 0.6812411546707153f) && (bool)(_2505 < 3.7613162994384766f)) { - float _2538 = (_2504 + -2.2630341053009033f) * 0.6841424107551575f; - int _2539 = int(_2538); - float _2541 = _2538 - float(_2539); - float _2543 = _global_5[_2539]; - float _2546 = _global_5[(_2539 + 1)]; - float _2551 = _2543 * 0.5f; - _2561 = dot(float3((_2541 * _2541), _2541, 1.0f), float3(mad((_global_5[(_2539 + 2)]), 0.5f, mad(_2546, -1.0f, _2551)), (_2546 - _2543), mad(_2546, 0.5f, _2551))); - } else { - _2561 = ((_2504 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2561 = -2.301030158996582f; - } - float _2563 = exp2(_2561 * 3.321928024291992f); - float _2566 = log2(select((_2439 <= 0.0f), 9.999999747378752e-05f, _2439)); - float _2567 = _2566 * 0.3010300099849701f; - if (!(_2567 <= -3.848327875137329f)) { - if ((bool)(_2567 > -3.848327875137329f) && (bool)(_2567 < 0.6812411546707153f)) { - float _2575 = (_2566 + 12.783867835998535f) * 0.46521204710006714f; - int _2576 = int(_2575); - float _2578 = _2575 - float(_2576); - float _2580 = _global_4[_2576]; - float _2583 = _global_4[(_2576 + 1)]; - float _2588 = _2580 * 0.5f; - _2623 = dot(float3((_2578 * _2578), _2578, 1.0f), float3(mad((_global_4[(_2576 + 2)]), 0.5f, mad(_2583, -1.0f, _2588)), (_2583 - _2580), mad(_2583, 0.5f, _2588))); - } else { - if ((bool)(_2567 >= 0.6812411546707153f) && (bool)(_2567 < 3.7613162994384766f)) { - float _2600 = (_2566 + -2.2630341053009033f) * 0.6841424107551575f; - int _2601 = int(_2600); - float _2603 = _2600 - float(_2601); - float _2605 = _global_5[_2601]; - float _2608 = _global_5[(_2601 + 1)]; - float _2613 = _2605 * 0.5f; - _2623 = dot(float3((_2603 * _2603), _2603, 1.0f), float3(mad((_global_5[(_2601 + 2)]), 0.5f, mad(_2608, -1.0f, _2613)), (_2608 - _2605), mad(_2608, 0.5f, _2613))); - } else { - _2623 = ((_2566 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2623 = -2.301030158996582f; - } - float _2625 = exp2(_2623 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _2637 = mad(_32, _2625, mad(_31, _2563, (_2501 * _30))); - _2638 = mad(_35, _2625, mad(_34, _2563, (_2501 * _33))); - _2639 = mad(_38, _2625, mad(_37, _2563, (_2501 * _36))); - } else { - _2637 = _2501; - _2638 = _2563; - _2639 = _2625; - } - float _2649 = exp2(log2(_2637 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2650 = exp2(log2(_2638 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2651 = exp2(log2(_2639 * 9.999999747378752e-05f) * 0.1593017578125f); - _2797 = exp2(log2((1.0f / ((_2649 * 18.6875f) + 1.0f)) * ((_2649 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2798 = exp2(log2((1.0f / ((_2650 * 18.6875f) + 1.0f)) * ((_2650 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2651 * 18.6875f) + 1.0f)) * ((_2651 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _2684 = mad(0.04736635088920593f, _1329, mad(0.3395121395587921f, _1328, (_1327 * 0.613191545009613f))); - float _2687 = mad(0.01345000695437193f, _1329, mad(0.9163357615470886f, _1328, (_1327 * 0.07020691782236099f))); - float _2690 = mad(0.8696067929267883f, _1329, mad(0.1095672994852066f, _1328, (_1327 * 0.020618872717022896f))); - float _2709 = exp2(log2(mad(_32, _2690, mad(_31, _2687, (_2684 * _30))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2710 = exp2(log2(mad(_35, _2690, mad(_34, _2687, (_2684 * _33))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2711 = exp2(log2(mad(_38, _2690, mad(_37, _2687, (_2684 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2797 = exp2(log2((1.0f / ((_2709 * 18.6875f) + 1.0f)) * ((_2709 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2798 = exp2(log2((1.0f / ((_2710 * 18.6875f) + 1.0f)) * ((_2710 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2799 = exp2(log2((1.0f / ((_2711 * 18.6875f) + 1.0f)) * ((_2711 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _2746 = mad(0.04736635088920593f, _1317, mad(0.3395121395587921f, _1316, (_1315 * 0.613191545009613f))); - float _2749 = mad(0.01345000695437193f, _1317, mad(0.9163357615470886f, _1316, (_1315 * 0.07020691782236099f))); - float _2752 = mad(0.8696067929267883f, _1317, mad(0.1095672994852066f, _1316, (_1315 * 0.020618872717022896f))); - _2797 = mad(_32, _2752, mad(_31, _2749, (_2746 * _30))); - _2798 = mad(_35, _2752, mad(_34, _2749, (_2746 * _33))); - _2799 = mad(_38, _2752, mad(_37, _2749, (_2746 * _36))); - } else { - float _2765 = mad(0.04736635088920593f, _1343, mad(0.3395121395587921f, _1342, (_1341 * 0.613191545009613f))); - float _2768 = mad(0.01345000695437193f, _1343, mad(0.9163357615470886f, _1342, (_1341 * 0.07020691782236099f))); - float _2771 = mad(0.8696067929267883f, _1343, mad(0.1095672994852066f, _1342, (_1341 * 0.020618872717022896f))); - float _2786 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2797 = exp2(_2786 * log2(mad(_32, _2771, mad(_31, _2768, (_2765 * _30))))); - _2798 = exp2(_2786 * log2(mad(_35, _2771, mad(_34, _2768, (_2765 * _33))))); - _2799 = exp2(_2786 * log2(mad(_38, _2771, mad(_37, _2768, (_2765 * _36))))); - } - } else { - _2797 = _1327; - _2798 = _1328; - _2799 = _1329; - } - } - } - } - } - } - SV_Target.x = (_2797 * 0.9523810148239136f); - SV_Target.y = (_2798 * 0.9523810148239136f); - SV_Target.z = (_2799 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xBBBECBCF.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0xBBBECBCF.ps_6_0.hlsl deleted file mode 100644 index 85054a0e9..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xBBBECBCF.ps_6_0.hlsl +++ /dev/null @@ -1,1211 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - uint cb0_074x : packoffset(c074.x); - uint cb0_074y : packoffset(c074.y); - float cb0_074z : packoffset(c074.z); - float cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); -}; - -SamplerState s0 : register(s0); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _7 = TEXCOORD.x + -0.015625f; - float _8 = TEXCOORD.y + -0.015625f; - float _11 = float((uint)SV_RenderTargetArrayIndex); - float _32; - float _33; - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _97; - float _98; - float _99; - float _338; - float _339; - float _340; - float _887; - float _920; - float _934; - float _998; - float _1136; - float _1137; - float _1138; - float _1281; - float _1282; - float _1283; - float _1297; - float _1308; - float _1319; - float _1464; - float _1475; - float _1597; - float _1630; - float _1644; - float _1683; - float _1776; - float _1835; - float _1894; - float _1977; - float _2042; - float _2107; - float _2124; - float _2125; - float _2126; - float _2230; - float _2263; - float _2277; - float _2316; - float _2409; - float _2468; - float _2527; - float _2607; - float _2669; - float _2731; - float _2745; - float _2746; - float _2747; - float _2905; - float _2906; - float _2907; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074y) == 1)) { - if (!((uint)(cb0_074y) == 2)) { - if (!((uint)(cb0_074y) == 3)) { - bool _21 = ((uint)(cb0_074y) == 4); - _32 = select(_21, 1.0f, 1.7050515413284302f); - _33 = select(_21, 0.0f, -0.6217905879020691f); - _34 = select(_21, 0.0f, -0.0832584798336029f); - _35 = select(_21, 0.0f, -0.13025718927383423f); - _36 = select(_21, 1.0f, 1.1408027410507202f); - _37 = select(_21, 0.0f, -0.010548528283834457f); - _38 = select(_21, 0.0f, -0.024003278464078903f); - _39 = select(_21, 0.0f, -0.1289687603712082f); - _40 = select(_21, 1.0f, 1.152971863746643f); - } else { - _32 = 0.6954522132873535f; - _33 = 0.14067870378494263f; - _34 = 0.16386906802654266f; - _35 = 0.044794563204050064f; - _36 = 0.8596711158752441f; - _37 = 0.0955343171954155f; - _38 = -0.005525882821530104f; - _39 = 0.004025210160762072f; - _40 = 1.0015007257461548f; - } - } else { - _32 = 1.02579927444458f; - _33 = -0.020052503794431686f; - _34 = -0.0057713985443115234f; - _35 = -0.0022350111976265907f; - _36 = 1.0045825242996216f; - _37 = -0.002352306619286537f; - _38 = -0.005014004185795784f; - _39 = -0.025293385609984398f; - _40 = 1.0304402112960815f; - } - } else { - _32 = 1.379158854484558f; - _33 = -0.3088507056236267f; - _34 = -0.07034677267074585f; - _35 = -0.06933528929948807f; - _36 = 1.0822921991348267f; - _37 = -0.012962047010660172f; - _38 = -0.002159259282052517f; - _39 = -0.045465391129255295f; - _40 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074x) > (uint)2) { - float _50 = exp2(log2(_7 * 1.0322580337524414f) * 0.012683313339948654f); - float _51 = exp2(log2(_8 * 1.0322580337524414f) * 0.012683313339948654f); - float _52 = exp2(log2(_11 * 0.032258063554763794f) * 0.012683313339948654f); - _97 = (exp2(log2(max(0.0f, (_50 + -0.8359375f)) / (18.8515625f - (_50 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _98 = (exp2(log2(max(0.0f, (_51 + -0.8359375f)) / (18.8515625f - (_51 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _97 = ((exp2((_7 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _98 = ((exp2((_8 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _99 = ((exp2((_11 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _102 = cb0_047x * 1.0005563497543335f; - float _116 = select((_102 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _102) + 99.11000061035156f) / _102) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _102) + 247.47999572753906f) / _102) + 0.23703999817371368f)); - float _130 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _140 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _145 = ((_130 * 2.0f) + 4.0f) - (_140 * 8.0f); - float _146 = (_130 * 3.0f) / _145; - float _148 = (_140 * 2.0f) / _145; - bool _149 = (cb0_047x < 4000.0f); - float _154 = rsqrt(dot(float2(_130, _140), float2(_130, _140))); - float _155 = cb0_047y * 0.05000000074505806f; - float _158 = _130 - ((_155 * _140) * _154); - float _161 = ((_155 * _130) * _154) + _140; - float _166 = (4.0f - (_161 * 8.0f)) + (_158 * 2.0f); - float _172 = (((_158 * 3.0f) / _166) - _146) + select(_149, _146, _116); - float _173 = (((_161 * 2.0f) / _166) - _148) + select(_149, _148, (((_116 * 2.869999885559082f) + -0.2750000059604645f) - ((_116 * _116) * 3.0f))); - float _174 = max(_173, 1.000000013351432e-10f); - float _175 = _172 / _174; - float _178 = ((1.0f - _172) - _173) / _174; - float _188 = 0.9413792490959167f / mad(-0.16140000522136688f, _178, ((_175 * 0.8950999975204468f) + 0.266400009393692f)); - float _189 = 1.0404363870620728f / mad(0.03669999912381172f, _178, (1.7135000228881836f - (_175 * 0.7501999735832214f))); - float _190 = 1.089766502380371f / mad(1.0296000242233276f, _178, ((_175 * 0.03889999911189079f) + -0.06849999725818634f)); - float _191 = mad(_189, -0.7501999735832214f, 0.0f); - float _192 = mad(_189, 1.7135000228881836f, 0.0f); - float _193 = mad(_189, 0.03669999912381172f, -0.0f); - float _194 = mad(_190, 0.03889999911189079f, 0.0f); - float _195 = mad(_190, -0.06849999725818634f, 0.0f); - float _196 = mad(_190, 1.0296000242233276f, 0.0f); - float _199 = mad(0.1599626988172531f, _194, mad(-0.1470542997121811f, _191, (_188 * 0.883457362651825f))); - float _202 = mad(0.1599626988172531f, _195, mad(-0.1470542997121811f, _192, (_188 * 0.26293492317199707f))); - float _205 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_188 * -0.15930065512657166f))); - float _208 = mad(0.04929120093584061f, _194, mad(0.5183603167533875f, _191, (_188 * 0.38695648312568665f))); - float _211 = mad(0.04929120093584061f, _195, mad(0.5183603167533875f, _192, (_188 * 0.11516613513231277f))); - float _214 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_188 * -0.0697740763425827f))); - float _217 = mad(0.9684867262840271f, _194, mad(0.04004279896616936f, _191, (_188 * -0.007634039502590895f))); - float _220 = mad(0.9684867262840271f, _195, mad(0.04004279896616936f, _192, (_188 * -0.0022720457054674625f))); - float _223 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_188 * 0.0013765322510153055f))); - float _226 = mad(_205, 0.01933390088379383f, mad(_202, 0.2126729041337967f, (_199 * 0.4124563932418823f))); - float _229 = mad(_205, 0.11919199675321579f, mad(_202, 0.7151522040367126f, (_199 * 0.3575761020183563f))); - float _232 = mad(_205, 0.9503040909767151f, mad(_202, 0.07217500358819962f, (_199 * 0.18043750524520874f))); - float _235 = mad(_214, 0.01933390088379383f, mad(_211, 0.2126729041337967f, (_208 * 0.4124563932418823f))); - float _238 = mad(_214, 0.11919199675321579f, mad(_211, 0.7151522040367126f, (_208 * 0.3575761020183563f))); - float _241 = mad(_214, 0.9503040909767151f, mad(_211, 0.07217500358819962f, (_208 * 0.18043750524520874f))); - float _244 = mad(_223, 0.01933390088379383f, mad(_220, 0.2126729041337967f, (_217 * 0.4124563932418823f))); - float _247 = mad(_223, 0.11919199675321579f, mad(_220, 0.7151522040367126f, (_217 * 0.3575761020183563f))); - float _250 = mad(_223, 0.9503040909767151f, mad(_220, 0.07217500358819962f, (_217 * 0.18043750524520874f))); - float _280 = mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _99, mad(mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))), _98, (mad(-0.4986107647418976f, _244, mad(-1.5373831987380981f, _235, (_226 * 3.2409698963165283f))) * _97))); - float _283 = mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _99, mad(mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))), _98, (mad(0.04155505821108818f, _244, mad(1.8759675025939941f, _235, (_226 * -0.9692436456680298f))) * _97))); - float _286 = mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _99, mad(mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))), _98, (mad(1.056971549987793f, _244, mad(-0.20397695899009705f, _235, (_226 * 0.05563008040189743f))) * _97))); - float _289 = mad(0.04736635088920593f, _286, mad(0.3395121395587921f, _283, (_280 * 0.613191545009613f))); - float _292 = mad(0.01345000695437193f, _286, mad(0.9163357615470886f, _283, (_280 * 0.07020691782236099f))); - float _295 = mad(0.8696067929267883f, _286, mad(0.1095672994852066f, _283, (_280 * 0.020618872717022896f))); - // bool _298 = ((uint)(cb0_046x) == 0); - bool _298 = ((uint)(tm_flags.x) == 0); - if (_298) { - float _300 = dot(float3(_289, _292, _295), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _304 = (_289 / _300) + -1.0f; - float _305 = (_292 / _300) + -1.0f; - float _306 = (_295 / _300) + -1.0f; - float _318 = (1.0f - exp2(((_300 * _300) * -4.0f) * cb0_074w)) * (1.0f - exp2(dot(float3(_304, _305, _306), float3(_304, _305, _306)) * -4.0f)); - _338 = (((mad(-0.06368283927440643f, _295, mad(-0.32929131388664246f, _292, (_289 * 1.370412826538086f))) - _289) * _318) + _289); - _339 = (((mad(-0.010861567221581936f, _295, mad(1.0970908403396606f, _292, (_289 * -0.08343426138162613f))) - _292) * _318) + _292); - _340 = (((mad(1.203694462776184f, _295, mad(-0.09862564504146576f, _292, (_289 * -0.02579325996339321f))) - _295) * _318) + _295); - } else { - _338 = _289; - _339 = _292; - _340 = _295; - } - float _341 = dot(float3(_338, _339, _340), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _355 = cb0_052w + cb0_057w; - float _369 = cb0_051w * cb0_056w; - float _383 = cb0_050w * cb0_055w; - float _397 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = _338 - _341; - float _416 = _339 - _341; - float _417 = _340 - _341; - float _475 = saturate(_341 / cb0_073x); - float _479 = (_475 * _475) * (3.0f - (_475 * 2.0f)); - float _480 = 1.0f - _479; - float _489 = cb0_052w + cb0_067w; - float _498 = cb0_051w * cb0_066w; - float _507 = cb0_050w * cb0_065w; - float _516 = cb0_049w * cb0_064w; - float _525 = cb0_048w * cb0_063w; - float _587 = saturate((_341 - cb0_073y) / (1.0f - cb0_073y)); - float _591 = (_587 * _587) * (3.0f - (_587 * 2.0f)); - float _600 = cb0_052w + cb0_062w; - float _609 = cb0_051w * cb0_061w; - float _618 = cb0_050w * cb0_060w; - float _627 = cb0_049w * cb0_059w; - float _636 = cb0_048w * cb0_058w; - float _694 = _479 - _591; - float _705 = ((_591 * (((cb0_052x + cb0_067x) + _489) + (((cb0_051x * cb0_066x) * _498) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _516) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _525) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _507)))))) + (_480 * (((cb0_052x + cb0_057x) + _355) + (((cb0_051x * cb0_056x) * _369) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _397) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _411) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _383))))))) + ((((cb0_052x + cb0_062x) + _600) + (((cb0_051x * cb0_061x) * _609) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _627) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _636) * _415) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _618))))) * _694); - float _707 = ((_591 * (((cb0_052y + cb0_067y) + _489) + (((cb0_051y * cb0_066y) * _498) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _516) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _525) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _507)))))) + (_480 * (((cb0_052y + cb0_057y) + _355) + (((cb0_051y * cb0_056y) * _369) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _397) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _411) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _383))))))) + ((((cb0_052y + cb0_062y) + _600) + (((cb0_051y * cb0_061y) * _609) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _627) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _636) * _416) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _618))))) * _694); - float _709 = ((_591 * (((cb0_052z + cb0_067z) + _489) + (((cb0_051z * cb0_066z) * _498) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _516) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _525) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _507)))))) + (_480 * (((cb0_052z + cb0_057z) + _355) + (((cb0_051z * cb0_056z) * _369) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _397) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _411) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _383))))))) + ((((cb0_052z + cb0_062z) + _600) + (((cb0_051z * cb0_061z) * _609) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _627) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _636) * _417) + _341)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _618))))) * _694); - float _735 = dot(float3(_705, _707, _709), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _793 = (cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_705 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))); - float _794 = (cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_707 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))); - float _795 = (cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_709 - _735)) + _735)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))); - float _798 = mad(-0.0832584798336029f, _795, mad(-0.6217905879020691f, _794, (_793 * 1.7050515413284302f))); - float _801 = mad(-0.010548528283834457f, _795, mad(1.1408027410507202f, _794, (_793 * -0.13025718927383423f))); - float _804 = mad(1.152971863746643f, _795, mad(-0.1289687603712082f, _794, (_793 * -0.024003278464078903f))); - float _820 = ((mad(0.061360642313957214f, _795, mad(-4.540197551250458e-09f, _794, (_793 * 0.9386394023895264f))) - _793) * cb0_074z) + _793; - float _821 = ((mad(0.169205904006958f, _795, mad(0.8307942152023315f, _794, (_793 * 6.775371730327606e-08f))) - _794) * cb0_074z) + _794; - float _822 = (mad(-2.3283064365386963e-10f, _794, (_793 * -9.313225746154785e-10f)) * cb0_074z) + _795; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _832 = mad(0.16386905312538147f, _822, mad(0.14067868888378143f, _821, (_820 * 0.6954522132873535f))); - float _835 = mad(0.0955343246459961f, _822, mad(0.8596711158752441f, _821, (_820 * 0.044794581830501556f))); - float _838 = mad(1.0015007257461548f, _822, mad(0.004025210160762072f, _821, (_820 * -0.005525882821530104f))); - float _842 = max(max(_832, _835), _838); - float _847 = (max(_842, 1.000000013351432e-10f) - max(min(min(_832, _835), _838), 1.000000013351432e-10f)) / max(_842, 0.009999999776482582f); - float _860 = ((_835 + _832) + _838) + (sqrt((((_838 - _835) * _838) + ((_835 - _832) * _835)) + ((_832 - _838) * _832)) * 1.75f); - float _861 = _860 * 0.3333333432674408f; - float _862 = _847 + -0.4000000059604645f; - float _863 = _862 * 5.0f; - float _867 = max((1.0f - abs(_862 * 2.5f)), 0.0f); - float _878 = ((float(((int)(uint)((bool)(_863 > 0.0f))) - ((int)(uint)((bool)(_863 < 0.0f)))) * (1.0f - (_867 * _867))) + 1.0f) * 0.02500000037252903f; - if (!(_861 <= 0.0533333346247673f)) { - if (!(_861 >= 0.1599999964237213f)) { - _887 = (((0.23999999463558197f / _860) + -0.5f) * _878); - } else { - _887 = 0.0f; - } - } else { - _887 = _878; - } - float _888 = _887 + 1.0f; - float _889 = _888 * _832; - float _890 = _888 * _835; - float _891 = _888 * _838; - if (!((bool)(_889 == _890) && (bool)(_890 == _891))) { - float _898 = ((_889 * 2.0f) - _890) - _891; - float _901 = ((_835 - _838) * 1.7320507764816284f) * _888; - float _903 = atan(_901 / _898); - bool _906 = (_898 < 0.0f); - bool _907 = (_898 == 0.0f); - bool _908 = (_901 >= 0.0f); - bool _909 = (_901 < 0.0f); - _920 = select((_908 && _907), 90.0f, select((_909 && _907), -90.0f, (select((_909 && _906), (_903 + -3.1415927410125732f), select((_908 && _906), (_903 + 3.1415927410125732f), _903)) * 57.2957763671875f))); - } else { - _920 = 0.0f; - } - float _925 = min(max(select((_920 < 0.0f), (_920 + 360.0f), _920), 0.0f), 360.0f); - if (_925 < -180.0f) { - _934 = (_925 + 360.0f); - } else { - if (_925 > 180.0f) { - _934 = (_925 + -360.0f); - } else { - _934 = _925; - } - } - float _938 = saturate(1.0f - abs(_934 * 0.014814814552664757f)); - float _942 = (_938 * _938) * (3.0f - (_938 * 2.0f)); - float _948 = ((_942 * _942) * ((_847 * 0.18000000715255737f) * (0.029999999329447746f - _889))) + _889; - float _958 = max(0.0f, mad(-0.21492856740951538f, _891, mad(-0.2365107536315918f, _890, (_948 * 1.4514392614364624f)))); - float _959 = max(0.0f, mad(-0.09967592358589172f, _891, mad(1.17622971534729f, _890, (_948 * -0.07655377686023712f)))); - float _960 = max(0.0f, mad(0.9977163076400757f, _891, mad(-0.006032449658960104f, _890, (_948 * 0.008316148072481155f)))); - float _961 = dot(float3(_958, _959, _960), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _975 = (cb0_036w + 1.0f) - cb0_036y; - float _978 = cb0_037x + 1.0f; - float _980 = _978 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _998 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _989 = (cb0_036w + 0.18000000715255737f) / _975; - _998 = (-0.7447274923324585f - ((log2(_989 / (2.0f - _989)) * 0.3465735912322998f) * (_975 / cb0_036x))); - } - float _1001 = ((1.0f - cb0_036y) / cb0_036x) - _998; - float _1003 = (cb0_036z / cb0_036x) - _1001; - float _1007 = log2(lerp(_961, _958, 0.9599999785423279f)) * 0.3010300099849701f; - float _1008 = log2(lerp(_961, _959, 0.9599999785423279f)) * 0.3010300099849701f; - float _1009 = log2(lerp(_961, _960, 0.9599999785423279f)) * 0.3010300099849701f; - float _1013 = cb0_036x * (_1007 + _1001); - float _1014 = cb0_036x * (_1008 + _1001); - float _1015 = cb0_036x * (_1009 + _1001); - float _1016 = _975 * 2.0f; - float _1018 = (cb0_036x * -2.0f) / _975; - float _1019 = _1007 - _998; - float _1020 = _1008 - _998; - float _1021 = _1009 - _998; - float _1040 = _980 * 2.0f; - float _1042 = (cb0_036x * 2.0f) / _980; - float _1067 = select((_1007 < _998), ((_1016 / (exp2((_1019 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1013); - float _1068 = select((_1008 < _998), ((_1016 / (exp2((_1020 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1014); - float _1069 = select((_1009 < _998), ((_1016 / (exp2((_1021 * 1.4426950216293335f) * _1018) + 1.0f)) - cb0_036w), _1015); - float _1076 = _1003 - _998; - float _1080 = saturate(_1019 / _1076); - float _1081 = saturate(_1020 / _1076); - float _1082 = saturate(_1021 / _1076); - bool _1083 = (_1003 < _998); - float _1087 = select(_1083, (1.0f - _1080), _1080); - float _1088 = select(_1083, (1.0f - _1081), _1081); - float _1089 = select(_1083, (1.0f - _1082), _1082); - float _1108 = (((_1087 * _1087) * (select((_1007 > _1003), (_978 - (_1040 / (exp2(((_1007 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1013) - _1067)) * (3.0f - (_1087 * 2.0f))) + _1067; - float _1109 = (((_1088 * _1088) * (select((_1008 > _1003), (_978 - (_1040 / (exp2(((_1008 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1014) - _1068)) * (3.0f - (_1088 * 2.0f))) + _1068; - float _1110 = (((_1089 * _1089) * (select((_1009 > _1003), (_978 - (_1040 / (exp2(((_1009 - _1003) * 1.4426950216293335f) * _1042) + 1.0f))), _1015) - _1069)) * (3.0f - (_1089 * 2.0f))) + _1069; - float _1111 = dot(float3(_1108, _1109, _1110), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1136 = ((cb0_075x * (max(0.0f, (lerp(_1111, _1108, 0.9300000071525574f))) - _820)) + _820); - _1137 = ((cb0_075x * (max(0.0f, (lerp(_1111, _1109, 0.9300000071525574f))) - _821)) + _821); - _1138 = ((cb0_075x * (max(0.0f, (lerp(_1111, _1110, 0.9300000071525574f))) - _822)) + _822); - } else { - _1136 = _820; - _1137 = _821; - _1138 = _822; - } - float _1154 = ((mad(-0.06537103652954102f, _1138, mad(1.451815478503704e-06f, _1137, (_1136 * 1.065374732017517f))) - _1136) * cb0_074z) + _1136; - float _1155 = ((mad(-0.20366770029067993f, _1138, mad(1.2036634683609009f, _1137, (_1136 * -2.57161445915699e-07f))) - _1137) * cb0_074z) + _1137; - float _1156 = ((mad(0.9999996423721313f, _1138, mad(2.0954757928848267e-08f, _1137, (_1136 * 1.862645149230957e-08f))) - _1138) * cb0_074z) + _1138; - [branch] - if (!_298) { - float _1199 = 1.0f / (dot(float3(_798, _801, _804), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1209 = max(0.0f, (((_1199 * cb0_035x) + cb0_034x) * dot(float3(_798, _801, _804), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1210 = max(0.0f, (((_1199 * cb0_035y) + cb0_034y) * dot(float3(_798, _801, _804), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1211 = max(0.0f, (((_1199 * cb0_035z) + cb0_034z) * dot(float3(_798, _801, _804), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1217 = max(0.0f, (cb0_031x - _1209)); - float _1218 = max(0.0f, (cb0_031x - _1210)); - float _1219 = max(0.0f, (cb0_031x - _1211)); - float _1221 = max(_1209, cb0_031z); - float _1222 = max(_1210, cb0_031z); - float _1223 = max(_1211, cb0_031z); - _1281 = (((((((cb0_032x * _1221) + cb0_032y) * (1.0f / (cb0_031w + _1221))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1209, cb0_031x), cb0_031z))) + ((cb0_028w * _1217) * (1.0f / (cb0_031y + _1217)))) + cb0_029w); - _1282 = ((((((1.0f / (cb0_031w + _1222)) * ((cb0_032x * _1222) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1210, cb0_031x), cb0_031z))) + ((cb0_028w * _1218) * (1.0f / (cb0_031y + _1218)))) + cb0_029w); - _1283 = ((((((1.0f / (cb0_031w + _1223)) * ((cb0_032x * _1223) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1211, cb0_031x), cb0_031z))) + ((cb0_028w * _1219) * (1.0f / (cb0_031y + _1219)))) + cb0_029w); - } else { - _1281 = max(0.0f, mad(-0.0832584798336029f, _1156, mad(-0.6217905879020691f, _1155, (_1154 * 1.7050515413284302f)))); - _1282 = max(0.0f, mad(-0.010548528283834457f, _1156, mad(1.1408027410507202f, _1155, (_1154 * -0.13025718927383423f)))); - _1283 = max(0.0f, mad(1.152971863746643f, _1156, mad(-0.1289687603712082f, _1155, (_1154 * -0.024003278464078903f)))); - } - float _1284 = saturate(_1281); - float _1285 = saturate(_1282); - float _1286 = saturate(_1283); - if (_1284 < 0.0031306699384003878f) { - _1297 = (_1284 * 12.920000076293945f); - } else { - _1297 = (((pow(_1284, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1285 < 0.0031306699384003878f) { - _1308 = (_1285 * 12.920000076293945f); - } else { - _1308 = (((pow(_1285, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1286 < 0.0031306699384003878f) { - _1319 = (_1286 * 12.920000076293945f); - } else { - _1319 = (((pow(_1286, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1323 = (_1308 * 0.9375f) + 0.03125f; - float _1331 = _1319 * 15.0f; - float _1332 = floor(_1331); - float _1333 = _1331 - _1332; - float _1335 = (((_1297 * 0.9375f) + 0.03125f) + _1332) * 0.0625f; - float4 _1336 = t0.Sample(s0, float2(_1335, _1323)); - float4 _1341 = t0.Sample(s0, float2((_1335 + 0.0625f), _1323)); - float _1360 = max(6.103519990574569e-05f, (((lerp(_1336.x, _1341.x, _1333)) * cb0_041x) + (cb0_040x * _1297))); - float _1361 = max(6.103519990574569e-05f, (((lerp(_1336.y, _1341.y, _1333)) * cb0_041x) + (cb0_040x * _1308))); - float _1362 = max(6.103519990574569e-05f, (((lerp(_1336.z, _1341.z, _1333)) * cb0_041x) + (cb0_040x * _1319))); - float _1384 = select((_1360 > 0.040449999272823334f), exp2(log2((_1360 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1360 * 0.07739938050508499f)); - float _1385 = select((_1361 > 0.040449999272823334f), exp2(log2((_1361 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1361 * 0.07739938050508499f)); - float _1386 = select((_1362 > 0.040449999272823334f), exp2(log2((_1362 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1362 * 0.07739938050508499f)); - float _1412 = cb0_044y * (((cb0_026y + (cb0_026x * _1384)) * _1384) + cb0_026z); - float _1413 = cb0_044z * (((cb0_026y + (cb0_026x * _1385)) * _1385) + cb0_026z); - float _1414 = cb0_044w * (((cb0_026y + (cb0_026x * _1386)) * _1386) + cb0_026z); - float _1421 = ((cb0_045x - _1412) * cb0_045w) + _1412; - float _1422 = ((cb0_045y - _1413) * cb0_045w) + _1413; - float _1423 = ((cb0_045z - _1414) * cb0_045w) + _1414; - float _1424 = cb0_044y * _798; - float _1425 = cb0_044z * _801; - float _1426 = cb0_044w * _804; - float _1433 = ((cb0_045x - _1424) * cb0_045w) + _1424; - float _1434 = ((cb0_045y - _1425) * cb0_045w) + _1425; - float _1435 = ((cb0_045z - _1426) * cb0_045w) + _1426; - float _1447 = exp2(log2(max(0.0f, _1421)) * cb0_027y); - float _1448 = exp2(log2(max(0.0f, _1422)) * cb0_027y); - float _1449 = exp2(log2(max(0.0f, _1423)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1447, _1448, _1449)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074x) == 0) { - if (_1447 < 0.0031306699384003878f) { - _1464 = (_1447 * 12.920000076293945f); - } else { - _1464 = (((pow(_1447, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1448 < 0.0031306699384003878f) { - _1475 = (_1448 * 12.920000076293945f); - } else { - _1475 = (((pow(_1448, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1449 < 0.0031306699384003878f) { - _2905 = _1464; - _2906 = _1475; - _2907 = (_1449 * 12.920000076293945f); - } else { - _2905 = _1464; - _2906 = _1475; - _2907 = (((pow(_1449, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074x) == 1) { - float _1490 = mad(0.04736635088920593f, _1449, mad(0.3395121395587921f, _1448, (_1447 * 0.613191545009613f))); - float _1493 = mad(0.01345000695437193f, _1449, mad(0.9163357615470886f, _1448, (_1447 * 0.07020691782236099f))); - float _1496 = mad(0.8696067929267883f, _1449, mad(0.1095672994852066f, _1448, (_1447 * 0.020618872717022896f))); - float _1506 = max(6.103519990574569e-05f, mad(_34, _1496, mad(_33, _1493, (_1490 * _32)))); - float _1507 = max(6.103519990574569e-05f, mad(_37, _1496, mad(_36, _1493, (_1490 * _35)))); - float _1508 = max(6.103519990574569e-05f, mad(_40, _1496, mad(_39, _1493, (_1490 * _38)))); - _2905 = min((_1506 * 4.5f), ((exp2(log2(max(_1506, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2906 = min((_1507 * 4.5f), ((exp2(log2(max(_1507, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _2907 = min((_1508 * 4.5f), ((exp2(log2(max(_1508, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1535 = ((uint)(cb0_074x) == 5); - if ((bool)((uint)(cb0_074x) == 3) || _1535) { - float _1538 = _1434 * 3.0f; - float _1539 = _1435 * 3.0f; - float _1542 = mad(0.17733481526374817f, _1539, mad(0.38297808170318604f, _1538, (_1433 * 1.31910240650177f))); - float _1545 = mad(0.09676162153482437f, _1539, mad(0.8134231567382812f, _1538, (_1433 * 0.2693769633769989f))); - float _1548 = mad(0.870704174041748f, _1539, mad(0.11154405772686005f, _1538, (_1433 * 0.05263196676969528f))); - float _1552 = max(max(_1542, _1545), _1548); - float _1557 = (max(_1552, 1.000000013351432e-10f) - max(min(min(_1542, _1545), _1548), 1.000000013351432e-10f)) / max(_1552, 0.009999999776482582f); - float _1570 = ((_1545 + _1542) + _1548) + (sqrt((((_1548 - _1545) * _1548) + ((_1545 - _1542) * _1545)) + ((_1542 - _1548) * _1542)) * 1.75f); - float _1571 = _1570 * 0.3333333432674408f; - float _1572 = _1557 + -0.4000000059604645f; - float _1573 = _1572 * 5.0f; - float _1577 = max((1.0f - abs(_1572 * 2.5f)), 0.0f); - float _1588 = ((float(((int)(uint)((bool)(_1573 > 0.0f))) - ((int)(uint)((bool)(_1573 < 0.0f)))) * (1.0f - (_1577 * _1577))) + 1.0f) * 0.02500000037252903f; - if (!(_1571 <= 0.0533333346247673f)) { - if (!(_1571 >= 0.1599999964237213f)) { - _1597 = (((0.23999999463558197f / _1570) + -0.5f) * _1588); - } else { - _1597 = 0.0f; - } - } else { - _1597 = _1588; - } - float _1598 = _1597 + 1.0f; - float _1599 = _1598 * _1542; - float _1600 = _1598 * _1545; - float _1601 = _1598 * _1548; - if (!((bool)(_1599 == _1600) && (bool)(_1600 == _1601))) { - float _1608 = ((_1599 * 2.0f) - _1600) - _1601; - float _1611 = ((_1545 - _1548) * 1.7320507764816284f) * _1598; - float _1613 = atan(_1611 / _1608); - bool _1616 = (_1608 < 0.0f); - bool _1617 = (_1608 == 0.0f); - bool _1618 = (_1611 >= 0.0f); - bool _1619 = (_1611 < 0.0f); - _1630 = select((_1618 && _1617), 90.0f, select((_1619 && _1617), -90.0f, (select((_1619 && _1616), (_1613 + -3.1415927410125732f), select((_1618 && _1616), (_1613 + 3.1415927410125732f), _1613)) * 57.2957763671875f))); - } else { - _1630 = 0.0f; - } - float _1635 = min(max(select((_1630 < 0.0f), (_1630 + 360.0f), _1630), 0.0f), 360.0f); - if (_1635 < -180.0f) { - _1644 = (_1635 + 360.0f); - } else { - if (_1635 > 180.0f) { - _1644 = (_1635 + -360.0f); - } else { - _1644 = _1635; - } - } - if ((bool)(_1644 > -67.5f) && (bool)(_1644 < 67.5f)) { - float _1650 = (_1644 + 67.5f) * 0.029629629105329514f; - int _1651 = int(_1650); - float _1653 = _1650 - float(_1651); - float _1654 = _1653 * _1653; - float _1655 = _1654 * _1653; - if (_1651 == 3) { - _1683 = (((0.1666666716337204f - (_1653 * 0.5f)) + (_1654 * 0.5f)) - (_1655 * 0.1666666716337204f)); - } else { - if (_1651 == 2) { - _1683 = ((0.6666666865348816f - _1654) + (_1655 * 0.5f)); - } else { - if (_1651 == 1) { - _1683 = (((_1655 * -0.5f) + 0.1666666716337204f) + ((_1654 + _1653) * 0.5f)); - } else { - _1683 = select((_1651 == 0), (_1655 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1683 = 0.0f; - } - float _1692 = min(max(((((_1557 * 0.27000001072883606f) * (0.029999999329447746f - _1599)) * _1683) + _1599), 0.0f), 65535.0f); - float _1693 = min(max(_1600, 0.0f), 65535.0f); - float _1694 = min(max(_1601, 0.0f), 65535.0f); - float _1707 = min(max(mad(-0.21492856740951538f, _1694, mad(-0.2365107536315918f, _1693, (_1692 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1708 = min(max(mad(-0.09967592358589172f, _1694, mad(1.17622971534729f, _1693, (_1692 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1709 = min(max(mad(0.9977163076400757f, _1694, mad(-0.006032449658960104f, _1693, (_1692 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1710 = dot(float3(_1707, _1708, _1709), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1717 = ((_1707 - _1710) * 0.9599999785423279f) + _1710; - float _1718 = ((_1708 - _1710) * 0.9599999785423279f) + _1710; - float _1719 = ((_1709 - _1710) * 0.9599999785423279f) + _1710; - float _1722 = log2(select((_1717 <= 0.0f), 6.103515625e-05f, _1717)); - float _1723 = _1722 * 0.3010300099849701f; - if (!(_1723 <= -5.2601776123046875f)) { - if ((bool)(_1723 > -5.2601776123046875f) && (bool)(_1723 < -0.7447274923324585f)) { - float _1731 = (_1722 * 0.19999998807907104f) + 3.494786262512207f; - int _1732 = int(_1731); - float _1734 = _1731 - float(_1732); - float _1736 = _global_0[_1732]; - float _1739 = _global_0[(_1732 + 1)]; - float _1744 = _1736 * 0.5f; - _1776 = dot(float3((_1734 * _1734), _1734, 1.0f), float3(mad((_global_0[(_1732 + 2)]), 0.5f, mad(_1739, -1.0f, _1744)), (_1739 - _1736), mad(_1739, 0.5f, _1744))); - } else { - if ((bool)(_1723 >= -0.7447274923324585f) && (bool)(_1723 < 4.673812389373779f)) { - float _1756 = (_1722 * 0.1666666567325592f) + 0.4123218357563019f; - int _1757 = int(_1756); - float _1759 = _1756 - float(_1757); - float _1761 = _global_1[_1757]; - float _1764 = _global_1[(_1757 + 1)]; - float _1769 = _1761 * 0.5f; - _1776 = dot(float3((_1759 * _1759), _1759, 1.0f), float3(mad((_global_1[(_1757 + 2)]), 0.5f, mad(_1764, -1.0f, _1769)), (_1764 - _1761), mad(_1764, 0.5f, _1769))); - } else { - _1776 = 4.0f; - } - } - } else { - _1776 = -4.0f; - } - float _1778 = exp2(_1776 * 3.321928024291992f); - float _1781 = log2(select((_1718 <= 0.0f), 6.103515625e-05f, _1718)); - float _1782 = _1781 * 0.3010300099849701f; - if (!(_1782 <= -5.2601776123046875f)) { - if ((bool)(_1782 > -5.2601776123046875f) && (bool)(_1782 < -0.7447274923324585f)) { - float _1790 = (_1781 * 0.19999998807907104f) + 3.494786262512207f; - int _1791 = int(_1790); - float _1793 = _1790 - float(_1791); - float _1795 = _global_0[_1791]; - float _1798 = _global_0[(_1791 + 1)]; - float _1803 = _1795 * 0.5f; - _1835 = dot(float3((_1793 * _1793), _1793, 1.0f), float3(mad((_global_0[(_1791 + 2)]), 0.5f, mad(_1798, -1.0f, _1803)), (_1798 - _1795), mad(_1798, 0.5f, _1803))); - } else { - if ((bool)(_1782 >= -0.7447274923324585f) && (bool)(_1782 < 4.673812389373779f)) { - float _1815 = (_1781 * 0.1666666567325592f) + 0.4123218357563019f; - int _1816 = int(_1815); - float _1818 = _1815 - float(_1816); - float _1820 = _global_1[_1816]; - float _1823 = _global_1[(_1816 + 1)]; - float _1828 = _1820 * 0.5f; - _1835 = dot(float3((_1818 * _1818), _1818, 1.0f), float3(mad((_global_1[(_1816 + 2)]), 0.5f, mad(_1823, -1.0f, _1828)), (_1823 - _1820), mad(_1823, 0.5f, _1828))); - } else { - _1835 = 4.0f; - } - } - } else { - _1835 = -4.0f; - } - float _1837 = exp2(_1835 * 3.321928024291992f); - float _1840 = log2(select((_1719 <= 0.0f), 6.103515625e-05f, _1719)); - float _1841 = _1840 * 0.3010300099849701f; - if (!(_1841 <= -5.2601776123046875f)) { - if ((bool)(_1841 > -5.2601776123046875f) && (bool)(_1841 < -0.7447274923324585f)) { - float _1849 = (_1840 * 0.19999998807907104f) + 3.494786262512207f; - int _1850 = int(_1849); - float _1852 = _1849 - float(_1850); - float _1854 = _global_0[_1850]; - float _1857 = _global_0[(_1850 + 1)]; - float _1862 = _1854 * 0.5f; - _1894 = dot(float3((_1852 * _1852), _1852, 1.0f), float3(mad((_global_0[(_1850 + 2)]), 0.5f, mad(_1857, -1.0f, _1862)), (_1857 - _1854), mad(_1857, 0.5f, _1862))); - } else { - if ((bool)(_1841 >= -0.7447274923324585f) && (bool)(_1841 < 4.673812389373779f)) { - float _1874 = (_1840 * 0.1666666567325592f) + 0.4123218357563019f; - int _1875 = int(_1874); - float _1877 = _1874 - float(_1875); - float _1879 = _global_1[_1875]; - float _1882 = _global_1[(_1875 + 1)]; - float _1887 = _1879 * 0.5f; - _1894 = dot(float3((_1877 * _1877), _1877, 1.0f), float3(mad((_global_1[(_1875 + 2)]), 0.5f, mad(_1882, -1.0f, _1887)), (_1882 - _1879), mad(_1882, 0.5f, _1887))); - } else { - _1894 = 4.0f; - } - } - } else { - _1894 = -4.0f; - } - float _1896 = exp2(_1894 * 3.321928024291992f); - float _1899 = mad(0.16386906802654266f, _1896, mad(0.14067870378494263f, _1837, (_1778 * 0.6954522132873535f))); - float _1902 = mad(0.0955343171954155f, _1896, mad(0.8596711158752441f, _1837, (_1778 * 0.044794563204050064f))); - float _1905 = mad(1.0015007257461548f, _1896, mad(0.004025210160762072f, _1837, (_1778 * -0.005525882821530104f))); - float _1908 = mad(-0.21492856740951538f, _1905, mad(-0.2365107536315918f, _1902, (_1899 * 1.4514392614364624f))); - float _1911 = mad(-0.09967592358589172f, _1905, mad(1.17622971534729f, _1902, (_1899 * -0.07655377686023712f))); - float _1914 = mad(0.9977163076400757f, _1905, mad(-0.006032449658960104f, _1902, (_1899 * 0.008316148072481155f))); - float _1917 = log2(select((_1908 <= 0.0f), 9.999999747378752e-05f, _1908)); - float _1918 = _1917 * 0.3010300099849701f; - if (!(!(_1918 <= -3.848327875137329f))) { - _1977 = ((_1917 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1918 > -3.848327875137329f) && (bool)(_1918 < 0.6812411546707153f)) { - float _1929 = (_1917 + 12.783867835998535f) * 0.46521204710006714f; - int _1930 = int(_1929); - float _1932 = _1929 - float(_1930); - float _1934 = _global_2[_1930]; - float _1937 = _global_2[(_1930 + 1)]; - float _1942 = _1934 * 0.5f; - _1977 = dot(float3((_1932 * _1932), _1932, 1.0f), float3(mad((_global_2[(_1930 + 2)]), 0.5f, mad(_1937, -1.0f, _1942)), (_1937 - _1934), mad(_1937, 0.5f, _1942))); - } else { - if ((bool)(_1918 >= 0.6812411546707153f) && (bool)(_1918 < 3.653702974319458f)) { - float _1954 = (_1917 + -2.2630341053009033f) * 0.7089107632637024f; - int _1955 = int(_1954); - float _1957 = _1954 - float(_1955); - float _1959 = _global_3[_1955]; - float _1962 = _global_3[(_1955 + 1)]; - float _1967 = _1959 * 0.5f; - _1977 = dot(float3((_1957 * _1957), _1957, 1.0f), float3(mad((_global_3[(_1955 + 2)]), 0.5f, mad(_1962, -1.0f, _1967)), (_1962 - _1959), mad(_1962, 0.5f, _1967))); - } else { - _1977 = ((_1917 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _1982 = log2(select((_1911 <= 0.0f), 9.999999747378752e-05f, _1911)); - float _1983 = _1982 * 0.3010300099849701f; - if (!(!(_1983 <= -3.848327875137329f))) { - _2042 = ((_1982 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_1983 > -3.848327875137329f) && (bool)(_1983 < 0.6812411546707153f)) { - float _1994 = (_1982 + 12.783867835998535f) * 0.46521204710006714f; - int _1995 = int(_1994); - float _1997 = _1994 - float(_1995); - float _1999 = _global_2[_1995]; - float _2002 = _global_2[(_1995 + 1)]; - float _2007 = _1999 * 0.5f; - _2042 = dot(float3((_1997 * _1997), _1997, 1.0f), float3(mad((_global_2[(_1995 + 2)]), 0.5f, mad(_2002, -1.0f, _2007)), (_2002 - _1999), mad(_2002, 0.5f, _2007))); - } else { - if ((bool)(_1983 >= 0.6812411546707153f) && (bool)(_1983 < 3.653702974319458f)) { - float _2019 = (_1982 + -2.2630341053009033f) * 0.7089107632637024f; - int _2020 = int(_2019); - float _2022 = _2019 - float(_2020); - float _2024 = _global_3[_2020]; - float _2027 = _global_3[(_2020 + 1)]; - float _2032 = _2024 * 0.5f; - _2042 = dot(float3((_2022 * _2022), _2022, 1.0f), float3(mad((_global_3[(_2020 + 2)]), 0.5f, mad(_2027, -1.0f, _2032)), (_2027 - _2024), mad(_2027, 0.5f, _2032))); - } else { - _2042 = ((_1982 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2047 = log2(select((_1914 <= 0.0f), 9.999999747378752e-05f, _1914)); - float _2048 = _2047 * 0.3010300099849701f; - if (!(!(_2048 <= -3.848327875137329f))) { - _2107 = ((_2047 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2048 > -3.848327875137329f) && (bool)(_2048 < 0.6812411546707153f)) { - float _2059 = (_2047 + 12.783867835998535f) * 0.46521204710006714f; - int _2060 = int(_2059); - float _2062 = _2059 - float(_2060); - float _2064 = _global_2[_2060]; - float _2067 = _global_2[(_2060 + 1)]; - float _2072 = _2064 * 0.5f; - _2107 = dot(float3((_2062 * _2062), _2062, 1.0f), float3(mad((_global_2[(_2060 + 2)]), 0.5f, mad(_2067, -1.0f, _2072)), (_2067 - _2064), mad(_2067, 0.5f, _2072))); - } else { - if ((bool)(_2048 >= 0.6812411546707153f) && (bool)(_2048 < 3.653702974319458f)) { - float _2084 = (_2047 + -2.2630341053009033f) * 0.7089107632637024f; - int _2085 = int(_2084); - float _2087 = _2084 - float(_2085); - float _2089 = _global_3[_2085]; - float _2092 = _global_3[(_2085 + 1)]; - float _2097 = _2089 * 0.5f; - _2107 = dot(float3((_2087 * _2087), _2087, 1.0f), float3(mad((_global_3[(_2085 + 2)]), 0.5f, mad(_2092, -1.0f, _2097)), (_2092 - _2089), mad(_2092, 0.5f, _2097))); - } else { - _2107 = ((_2047 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2110 = exp2(_1977 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2111 = exp2(_2042 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2112 = exp2(_2107 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1535) { - _2124 = mad(_34, _2112, mad(_33, _2111, (_2110 * _32))); - _2125 = mad(_37, _2112, mad(_36, _2111, (_2110 * _35))); - _2126 = mad(_40, _2112, mad(_39, _2111, (_2110 * _38))); - } else { - _2124 = _2110; - _2125 = _2111; - _2126 = _2112; - } - float _2136 = exp2(log2(_2124 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2137 = exp2(log2(_2125 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2138 = exp2(log2(_2126 * 9.999999747378752e-05f) * 0.1593017578125f); - _2905 = exp2(log2((1.0f / ((_2136 * 18.6875f) + 1.0f)) * ((_2136 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2137 * 18.6875f) + 1.0f)) * ((_2137 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2907 = exp2(log2((1.0f / ((_2138 * 18.6875f) + 1.0f)) * ((_2138 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074x) & -3) == 4) { - float _2171 = _1434 * 3.0f; - float _2172 = _1435 * 3.0f; - float _2175 = mad(0.17733481526374817f, _2172, mad(0.38297808170318604f, _2171, (_1433 * 1.31910240650177f))); - float _2178 = mad(0.09676162153482437f, _2172, mad(0.8134231567382812f, _2171, (_1433 * 0.2693769633769989f))); - float _2181 = mad(0.870704174041748f, _2172, mad(0.11154405772686005f, _2171, (_1433 * 0.05263196676969528f))); - float _2185 = max(max(_2175, _2178), _2181); - float _2190 = (max(_2185, 1.000000013351432e-10f) - max(min(min(_2175, _2178), _2181), 1.000000013351432e-10f)) / max(_2185, 0.009999999776482582f); - float _2203 = ((_2178 + _2175) + _2181) + (sqrt((((_2181 - _2178) * _2181) + ((_2178 - _2175) * _2178)) + ((_2175 - _2181) * _2175)) * 1.75f); - float _2204 = _2203 * 0.3333333432674408f; - float _2205 = _2190 + -0.4000000059604645f; - float _2206 = _2205 * 5.0f; - float _2210 = max((1.0f - abs(_2205 * 2.5f)), 0.0f); - float _2221 = ((float(((int)(uint)((bool)(_2206 > 0.0f))) - ((int)(uint)((bool)(_2206 < 0.0f)))) * (1.0f - (_2210 * _2210))) + 1.0f) * 0.02500000037252903f; - if (!(_2204 <= 0.0533333346247673f)) { - if (!(_2204 >= 0.1599999964237213f)) { - _2230 = (((0.23999999463558197f / _2203) + -0.5f) * _2221); - } else { - _2230 = 0.0f; - } - } else { - _2230 = _2221; - } - float _2231 = _2230 + 1.0f; - float _2232 = _2231 * _2175; - float _2233 = _2231 * _2178; - float _2234 = _2231 * _2181; - if (!((bool)(_2232 == _2233) && (bool)(_2233 == _2234))) { - float _2241 = ((_2232 * 2.0f) - _2233) - _2234; - float _2244 = ((_2178 - _2181) * 1.7320507764816284f) * _2231; - float _2246 = atan(_2244 / _2241); - bool _2249 = (_2241 < 0.0f); - bool _2250 = (_2241 == 0.0f); - bool _2251 = (_2244 >= 0.0f); - bool _2252 = (_2244 < 0.0f); - _2263 = select((_2251 && _2250), 90.0f, select((_2252 && _2250), -90.0f, (select((_2252 && _2249), (_2246 + -3.1415927410125732f), select((_2251 && _2249), (_2246 + 3.1415927410125732f), _2246)) * 57.2957763671875f))); - } else { - _2263 = 0.0f; - } - float _2268 = min(max(select((_2263 < 0.0f), (_2263 + 360.0f), _2263), 0.0f), 360.0f); - if (_2268 < -180.0f) { - _2277 = (_2268 + 360.0f); - } else { - if (_2268 > 180.0f) { - _2277 = (_2268 + -360.0f); - } else { - _2277 = _2268; - } - } - if ((bool)(_2277 > -67.5f) && (bool)(_2277 < 67.5f)) { - float _2283 = (_2277 + 67.5f) * 0.029629629105329514f; - int _2284 = int(_2283); - float _2286 = _2283 - float(_2284); - float _2287 = _2286 * _2286; - float _2288 = _2287 * _2286; - if (_2284 == 3) { - _2316 = (((0.1666666716337204f - (_2286 * 0.5f)) + (_2287 * 0.5f)) - (_2288 * 0.1666666716337204f)); - } else { - if (_2284 == 2) { - _2316 = ((0.6666666865348816f - _2287) + (_2288 * 0.5f)); - } else { - if (_2284 == 1) { - _2316 = (((_2288 * -0.5f) + 0.1666666716337204f) + ((_2287 + _2286) * 0.5f)); - } else { - _2316 = select((_2284 == 0), (_2288 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2316 = 0.0f; - } - float _2325 = min(max(((((_2190 * 0.27000001072883606f) * (0.029999999329447746f - _2232)) * _2316) + _2232), 0.0f), 65535.0f); - float _2326 = min(max(_2233, 0.0f), 65535.0f); - float _2327 = min(max(_2234, 0.0f), 65535.0f); - float _2340 = min(max(mad(-0.21492856740951538f, _2327, mad(-0.2365107536315918f, _2326, (_2325 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2341 = min(max(mad(-0.09967592358589172f, _2327, mad(1.17622971534729f, _2326, (_2325 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2342 = min(max(mad(0.9977163076400757f, _2327, mad(-0.006032449658960104f, _2326, (_2325 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2343 = dot(float3(_2340, _2341, _2342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2350 = ((_2340 - _2343) * 0.9599999785423279f) + _2343; - float _2351 = ((_2341 - _2343) * 0.9599999785423279f) + _2343; - float _2352 = ((_2342 - _2343) * 0.9599999785423279f) + _2343; - float _2355 = log2(select((_2350 <= 0.0f), 6.103515625e-05f, _2350)); - float _2356 = _2355 * 0.3010300099849701f; - if (!(_2356 <= -5.2601776123046875f)) { - if ((bool)(_2356 > -5.2601776123046875f) && (bool)(_2356 < -0.7447274923324585f)) { - float _2364 = (_2355 * 0.19999998807907104f) + 3.494786262512207f; - int _2365 = int(_2364); - float _2367 = _2364 - float(_2365); - float _2369 = _global_0[_2365]; - float _2372 = _global_0[(_2365 + 1)]; - float _2377 = _2369 * 0.5f; - _2409 = dot(float3((_2367 * _2367), _2367, 1.0f), float3(mad((_global_0[(_2365 + 2)]), 0.5f, mad(_2372, -1.0f, _2377)), (_2372 - _2369), mad(_2372, 0.5f, _2377))); - } else { - if ((bool)(_2356 >= -0.7447274923324585f) && (bool)(_2356 < 4.673812389373779f)) { - float _2389 = (_2355 * 0.1666666567325592f) + 0.4123218357563019f; - int _2390 = int(_2389); - float _2392 = _2389 - float(_2390); - float _2394 = _global_1[_2390]; - float _2397 = _global_1[(_2390 + 1)]; - float _2402 = _2394 * 0.5f; - _2409 = dot(float3((_2392 * _2392), _2392, 1.0f), float3(mad((_global_1[(_2390 + 2)]), 0.5f, mad(_2397, -1.0f, _2402)), (_2397 - _2394), mad(_2397, 0.5f, _2402))); - } else { - _2409 = 4.0f; - } - } - } else { - _2409 = -4.0f; - } - float _2411 = exp2(_2409 * 3.321928024291992f); - float _2414 = log2(select((_2351 <= 0.0f), 6.103515625e-05f, _2351)); - float _2415 = _2414 * 0.3010300099849701f; - if (!(_2415 <= -5.2601776123046875f)) { - if ((bool)(_2415 > -5.2601776123046875f) && (bool)(_2415 < -0.7447274923324585f)) { - float _2423 = (_2414 * 0.19999998807907104f) + 3.494786262512207f; - int _2424 = int(_2423); - float _2426 = _2423 - float(_2424); - float _2428 = _global_0[_2424]; - float _2431 = _global_0[(_2424 + 1)]; - float _2436 = _2428 * 0.5f; - _2468 = dot(float3((_2426 * _2426), _2426, 1.0f), float3(mad((_global_0[(_2424 + 2)]), 0.5f, mad(_2431, -1.0f, _2436)), (_2431 - _2428), mad(_2431, 0.5f, _2436))); - } else { - if ((bool)(_2415 >= -0.7447274923324585f) && (bool)(_2415 < 4.673812389373779f)) { - float _2448 = (_2414 * 0.1666666567325592f) + 0.4123218357563019f; - int _2449 = int(_2448); - float _2451 = _2448 - float(_2449); - float _2453 = _global_1[_2449]; - float _2456 = _global_1[(_2449 + 1)]; - float _2461 = _2453 * 0.5f; - _2468 = dot(float3((_2451 * _2451), _2451, 1.0f), float3(mad((_global_1[(_2449 + 2)]), 0.5f, mad(_2456, -1.0f, _2461)), (_2456 - _2453), mad(_2456, 0.5f, _2461))); - } else { - _2468 = 4.0f; - } - } - } else { - _2468 = -4.0f; - } - float _2470 = exp2(_2468 * 3.321928024291992f); - float _2473 = log2(select((_2352 <= 0.0f), 6.103515625e-05f, _2352)); - float _2474 = _2473 * 0.3010300099849701f; - if (!(_2474 <= -5.2601776123046875f)) { - if ((bool)(_2474 > -5.2601776123046875f) && (bool)(_2474 < -0.7447274923324585f)) { - float _2482 = (_2473 * 0.19999998807907104f) + 3.494786262512207f; - int _2483 = int(_2482); - float _2485 = _2482 - float(_2483); - float _2487 = _global_0[_2483]; - float _2490 = _global_0[(_2483 + 1)]; - float _2495 = _2487 * 0.5f; - _2527 = dot(float3((_2485 * _2485), _2485, 1.0f), float3(mad((_global_0[(_2483 + 2)]), 0.5f, mad(_2490, -1.0f, _2495)), (_2490 - _2487), mad(_2490, 0.5f, _2495))); - } else { - if ((bool)(_2474 >= -0.7447274923324585f) && (bool)(_2474 < 4.673812389373779f)) { - float _2507 = (_2473 * 0.1666666567325592f) + 0.4123218357563019f; - int _2508 = int(_2507); - float _2510 = _2507 - float(_2508); - float _2512 = _global_1[_2508]; - float _2515 = _global_1[(_2508 + 1)]; - float _2520 = _2512 * 0.5f; - _2527 = dot(float3((_2510 * _2510), _2510, 1.0f), float3(mad((_global_1[(_2508 + 2)]), 0.5f, mad(_2515, -1.0f, _2520)), (_2515 - _2512), mad(_2515, 0.5f, _2520))); - } else { - _2527 = 4.0f; - } - } - } else { - _2527 = -4.0f; - } - float _2529 = exp2(_2527 * 3.321928024291992f); - float _2532 = mad(0.16386906802654266f, _2529, mad(0.14067870378494263f, _2470, (_2411 * 0.6954522132873535f))); - float _2535 = mad(0.0955343171954155f, _2529, mad(0.8596711158752441f, _2470, (_2411 * 0.044794563204050064f))); - float _2538 = mad(1.0015007257461548f, _2529, mad(0.004025210160762072f, _2470, (_2411 * -0.005525882821530104f))); - float _2541 = mad(-0.21492856740951538f, _2538, mad(-0.2365107536315918f, _2535, (_2532 * 1.4514392614364624f))); - float _2544 = mad(-0.09967592358589172f, _2538, mad(1.17622971534729f, _2535, (_2532 * -0.07655377686023712f))); - float _2547 = mad(0.9977163076400757f, _2538, mad(-0.006032449658960104f, _2535, (_2532 * 0.008316148072481155f))); - float _2550 = log2(select((_2541 <= 0.0f), 9.999999747378752e-05f, _2541)); - float _2551 = _2550 * 0.3010300099849701f; - if (!(_2551 <= -3.848327875137329f)) { - if ((bool)(_2551 > -3.848327875137329f) && (bool)(_2551 < 0.6812411546707153f)) { - float _2559 = (_2550 + 12.783867835998535f) * 0.46521204710006714f; - int _2560 = int(_2559); - float _2562 = _2559 - float(_2560); - float _2564 = _global_4[_2560]; - float _2567 = _global_4[(_2560 + 1)]; - float _2572 = _2564 * 0.5f; - _2607 = dot(float3((_2562 * _2562), _2562, 1.0f), float3(mad((_global_4[(_2560 + 2)]), 0.5f, mad(_2567, -1.0f, _2572)), (_2567 - _2564), mad(_2567, 0.5f, _2572))); - } else { - if ((bool)(_2551 >= 0.6812411546707153f) && (bool)(_2551 < 3.7613162994384766f)) { - float _2584 = (_2550 + -2.2630341053009033f) * 0.6841424107551575f; - int _2585 = int(_2584); - float _2587 = _2584 - float(_2585); - float _2589 = _global_5[_2585]; - float _2592 = _global_5[(_2585 + 1)]; - float _2597 = _2589 * 0.5f; - _2607 = dot(float3((_2587 * _2587), _2587, 1.0f), float3(mad((_global_5[(_2585 + 2)]), 0.5f, mad(_2592, -1.0f, _2597)), (_2592 - _2589), mad(_2592, 0.5f, _2597))); - } else { - _2607 = ((_2550 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2607 = -2.301030158996582f; - } - float _2609 = exp2(_2607 * 3.321928024291992f); - float _2612 = log2(select((_2544 <= 0.0f), 9.999999747378752e-05f, _2544)); - float _2613 = _2612 * 0.3010300099849701f; - if (!(_2613 <= -3.848327875137329f)) { - if ((bool)(_2613 > -3.848327875137329f) && (bool)(_2613 < 0.6812411546707153f)) { - float _2621 = (_2612 + 12.783867835998535f) * 0.46521204710006714f; - int _2622 = int(_2621); - float _2624 = _2621 - float(_2622); - float _2626 = _global_4[_2622]; - float _2629 = _global_4[(_2622 + 1)]; - float _2634 = _2626 * 0.5f; - _2669 = dot(float3((_2624 * _2624), _2624, 1.0f), float3(mad((_global_4[(_2622 + 2)]), 0.5f, mad(_2629, -1.0f, _2634)), (_2629 - _2626), mad(_2629, 0.5f, _2634))); - } else { - if ((bool)(_2613 >= 0.6812411546707153f) && (bool)(_2613 < 3.7613162994384766f)) { - float _2646 = (_2612 + -2.2630341053009033f) * 0.6841424107551575f; - int _2647 = int(_2646); - float _2649 = _2646 - float(_2647); - float _2651 = _global_5[_2647]; - float _2654 = _global_5[(_2647 + 1)]; - float _2659 = _2651 * 0.5f; - _2669 = dot(float3((_2649 * _2649), _2649, 1.0f), float3(mad((_global_5[(_2647 + 2)]), 0.5f, mad(_2654, -1.0f, _2659)), (_2654 - _2651), mad(_2654, 0.5f, _2659))); - } else { - _2669 = ((_2612 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2669 = -2.301030158996582f; - } - float _2671 = exp2(_2669 * 3.321928024291992f); - float _2674 = log2(select((_2547 <= 0.0f), 9.999999747378752e-05f, _2547)); - float _2675 = _2674 * 0.3010300099849701f; - if (!(_2675 <= -3.848327875137329f)) { - if ((bool)(_2675 > -3.848327875137329f) && (bool)(_2675 < 0.6812411546707153f)) { - float _2683 = (_2674 + 12.783867835998535f) * 0.46521204710006714f; - int _2684 = int(_2683); - float _2686 = _2683 - float(_2684); - float _2688 = _global_4[_2684]; - float _2691 = _global_4[(_2684 + 1)]; - float _2696 = _2688 * 0.5f; - _2731 = dot(float3((_2686 * _2686), _2686, 1.0f), float3(mad((_global_4[(_2684 + 2)]), 0.5f, mad(_2691, -1.0f, _2696)), (_2691 - _2688), mad(_2691, 0.5f, _2696))); - } else { - if ((bool)(_2675 >= 0.6812411546707153f) && (bool)(_2675 < 3.7613162994384766f)) { - float _2708 = (_2674 + -2.2630341053009033f) * 0.6841424107551575f; - int _2709 = int(_2708); - float _2711 = _2708 - float(_2709); - float _2713 = _global_5[_2709]; - float _2716 = _global_5[(_2709 + 1)]; - float _2721 = _2713 * 0.5f; - _2731 = dot(float3((_2711 * _2711), _2711, 1.0f), float3(mad((_global_5[(_2709 + 2)]), 0.5f, mad(_2716, -1.0f, _2721)), (_2716 - _2713), mad(_2716, 0.5f, _2721))); - } else { - _2731 = ((_2674 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2731 = -2.301030158996582f; - } - float _2733 = exp2(_2731 * 3.321928024291992f); - if (!((uint)(cb0_074x) == 6)) { - _2745 = mad(_34, _2733, mad(_33, _2671, (_2609 * _32))); - _2746 = mad(_37, _2733, mad(_36, _2671, (_2609 * _35))); - _2747 = mad(_40, _2733, mad(_39, _2671, (_2609 * _38))); - } else { - _2745 = _2609; - _2746 = _2671; - _2747 = _2733; - } - float _2757 = exp2(log2(_2745 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2758 = exp2(log2(_2746 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2759 = exp2(log2(_2747 * 9.999999747378752e-05f) * 0.1593017578125f); - _2905 = exp2(log2((1.0f / ((_2757 * 18.6875f) + 1.0f)) * ((_2757 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2758 * 18.6875f) + 1.0f)) * ((_2758 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2907 = exp2(log2((1.0f / ((_2759 * 18.6875f) + 1.0f)) * ((_2759 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074x) == 7) { - float _2792 = mad(0.04736635088920593f, _1435, mad(0.3395121395587921f, _1434, (_1433 * 0.613191545009613f))); - float _2795 = mad(0.01345000695437193f, _1435, mad(0.9163357615470886f, _1434, (_1433 * 0.07020691782236099f))); - float _2798 = mad(0.8696067929267883f, _1435, mad(0.1095672994852066f, _1434, (_1433 * 0.020618872717022896f))); - float _2817 = exp2(log2(mad(_34, _2798, mad(_33, _2795, (_2792 * _32))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2818 = exp2(log2(mad(_37, _2798, mad(_36, _2795, (_2792 * _35))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _2819 = exp2(log2(mad(_40, _2798, mad(_39, _2795, (_2792 * _38))) * 9.999999747378752e-05f) * 0.1593017578125f); - _2905 = exp2(log2((1.0f / ((_2817 * 18.6875f) + 1.0f)) * ((_2817 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2906 = exp2(log2((1.0f / ((_2818 * 18.6875f) + 1.0f)) * ((_2818 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _2907 = exp2(log2((1.0f / ((_2819 * 18.6875f) + 1.0f)) * ((_2819 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074x) == 8)) { - if ((uint)(cb0_074x) == 9) { - float _2854 = mad(0.04736635088920593f, _1423, mad(0.3395121395587921f, _1422, (_1421 * 0.613191545009613f))); - float _2857 = mad(0.01345000695437193f, _1423, mad(0.9163357615470886f, _1422, (_1421 * 0.07020691782236099f))); - float _2860 = mad(0.8696067929267883f, _1423, mad(0.1095672994852066f, _1422, (_1421 * 0.020618872717022896f))); - _2905 = mad(_34, _2860, mad(_33, _2857, (_2854 * _32))); - _2906 = mad(_37, _2860, mad(_36, _2857, (_2854 * _35))); - _2907 = mad(_40, _2860, mad(_39, _2857, (_2854 * _38))); - } else { - float _2873 = mad(0.04736635088920593f, _1449, mad(0.3395121395587921f, _1448, (_1447 * 0.613191545009613f))); - float _2876 = mad(0.01345000695437193f, _1449, mad(0.9163357615470886f, _1448, (_1447 * 0.07020691782236099f))); - float _2879 = mad(0.8696067929267883f, _1449, mad(0.1095672994852066f, _1448, (_1447 * 0.020618872717022896f))); - float _2894 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _2905 = exp2(_2894 * log2(mad(_34, _2879, mad(_33, _2876, (_2873 * _32))))); - _2906 = exp2(_2894 * log2(mad(_37, _2879, mad(_36, _2876, (_2873 * _35))))); - _2907 = exp2(_2894 * log2(mad(_40, _2879, mad(_39, _2876, (_2873 * _38))))); - } - } else { - _2905 = _1433; - _2906 = _1434; - _2907 = _1435; - } - } - } - } - } - } - SV_Target.x = (_2905 * 0.9523810148239136f); - SV_Target.y = (_2906 * 0.9523810148239136f); - SV_Target.z = (_2907 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xD6DDE4F6.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0xD6DDE4F6.ps_6_0.hlsl deleted file mode 100644 index 4678b79e3..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xD6DDE4F6.ps_6_0.hlsl +++ /dev/null @@ -1,1521 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -Texture2D t2 : register(t2); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -SamplerState s2 : register(s2); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _11 = TEXCOORD.x + -0.015625f; - float _12 = TEXCOORD.y + -0.015625f; - float _15 = float((uint)SV_RenderTargetArrayIndex); - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _43; - float _44; - float _101; - float _102; - float _103; - float _342; - float _343; - float _344; - float _510; - float _511; - float _533; - float _534; - float _535; - float _680; - float _681; - float _702; - float _703; - float _704; - float _850; - float _851; - float _872; - float _873; - float _874; - float _1009; - float _1010; - float _1031; - float _1032; - float _1033; - float _1128; - float _1161; - float _1175; - float _1239; - float _1376; - float _1377; - float _1378; - float _1521; - float _1522; - float _1523; - float _1537; - float _1548; - float _1559; - float _1760; - float _1771; - float _1893; - float _1926; - float _1940; - float _1979; - float _2072; - float _2131; - float _2190; - float _2273; - float _2338; - float _2403; - float _2420; - float _2421; - float _2422; - float _2526; - float _2559; - float _2573; - float _2612; - float _2705; - float _2764; - float _2823; - float _2903; - float _2965; - float _3027; - float _3041; - float _3042; - float _3043; - float _3199; - float _3200; - float _3201; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _25 = ((uint)(cb0_074w) == 4); - _36 = select(_25, 1.0f, 1.7050515413284302f); - _37 = select(_25, 0.0f, -0.6217905879020691f); - _38 = select(_25, 0.0f, -0.0832584798336029f); - _39 = select(_25, 0.0f, -0.13025718927383423f); - _40 = select(_25, 1.0f, 1.1408027410507202f); - _41 = select(_25, 0.0f, -0.010548528283834457f); - _42 = select(_25, 0.0f, -0.024003278464078903f); - _43 = select(_25, 0.0f, -0.1289687603712082f); - _44 = select(_25, 1.0f, 1.152971863746643f); - } else { - _36 = 0.6954522132873535f; - _37 = 0.14067870378494263f; - _38 = 0.16386906802654266f; - _39 = 0.044794563204050064f; - _40 = 0.8596711158752441f; - _41 = 0.0955343171954155f; - _42 = -0.005525882821530104f; - _43 = 0.004025210160762072f; - _44 = 1.0015007257461548f; - } - } else { - _36 = 1.02579927444458f; - _37 = -0.020052503794431686f; - _38 = -0.0057713985443115234f; - _39 = -0.0022350111976265907f; - _40 = 1.0045825242996216f; - _41 = -0.002352306619286537f; - _42 = -0.005014004185795784f; - _43 = -0.025293385609984398f; - _44 = 1.0304402112960815f; - } - } else { - _36 = 1.379158854484558f; - _37 = -0.3088507056236267f; - _38 = -0.07034677267074585f; - _39 = -0.06933528929948807f; - _40 = 1.0822921991348267f; - _41 = -0.012962047010660172f; - _42 = -0.002159259282052517f; - _43 = -0.045465391129255295f; - _44 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _54 = exp2(log2(_11 * 1.0322580337524414f) * 0.012683313339948654f); - float _55 = exp2(log2(_12 * 1.0322580337524414f) * 0.012683313339948654f); - float _56 = exp2(log2(_15 * 0.032258063554763794f) * 0.012683313339948654f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _102 = (exp2(log2(max(0.0f, (_55 + -0.8359375f)) / (18.8515625f - (_55 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _103 = (exp2(log2(max(0.0f, (_56 + -0.8359375f)) / (18.8515625f - (_56 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _101 = ((exp2((_11 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _102 = ((exp2((_12 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _103 = ((exp2((_15 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _106 = cb0_047x * 1.0005563497543335f; - float _120 = select((_106 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _106) + 99.11000061035156f) / _106) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _106) + 247.47999572753906f) / _106) + 0.23703999817371368f)); - float _134 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _144 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _149 = ((_134 * 2.0f) + 4.0f) - (_144 * 8.0f); - float _150 = (_134 * 3.0f) / _149; - float _152 = (_144 * 2.0f) / _149; - bool _153 = (cb0_047x < 4000.0f); - float _158 = rsqrt(dot(float2(_134, _144), float2(_134, _144))); - float _159 = cb0_047y * 0.05000000074505806f; - float _162 = _134 - ((_159 * _144) * _158); - float _165 = ((_159 * _134) * _158) + _144; - float _170 = (4.0f - (_165 * 8.0f)) + (_162 * 2.0f); - float _176 = (((_162 * 3.0f) / _170) - _150) + select(_153, _150, _120); - float _177 = (((_165 * 2.0f) / _170) - _152) + select(_153, _152, (((_120 * 2.869999885559082f) + -0.2750000059604645f) - ((_120 * _120) * 3.0f))); - float _178 = max(_177, 1.000000013351432e-10f); - float _179 = _176 / _178; - float _182 = ((1.0f - _176) - _177) / _178; - float _192 = 0.9413792490959167f / mad(-0.16140000522136688f, _182, ((_179 * 0.8950999975204468f) + 0.266400009393692f)); - float _193 = 1.0404363870620728f / mad(0.03669999912381172f, _182, (1.7135000228881836f - (_179 * 0.7501999735832214f))); - float _194 = 1.089766502380371f / mad(1.0296000242233276f, _182, ((_179 * 0.03889999911189079f) + -0.06849999725818634f)); - float _195 = mad(_193, -0.7501999735832214f, 0.0f); - float _196 = mad(_193, 1.7135000228881836f, 0.0f); - float _197 = mad(_193, 0.03669999912381172f, -0.0f); - float _198 = mad(_194, 0.03889999911189079f, 0.0f); - float _199 = mad(_194, -0.06849999725818634f, 0.0f); - float _200 = mad(_194, 1.0296000242233276f, 0.0f); - float _203 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_192 * 0.883457362651825f))); - float _206 = mad(0.1599626988172531f, _199, mad(-0.1470542997121811f, _196, (_192 * 0.26293492317199707f))); - float _209 = mad(0.1599626988172531f, _200, mad(-0.1470542997121811f, _197, (_192 * -0.15930065512657166f))); - float _212 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_192 * 0.38695648312568665f))); - float _215 = mad(0.04929120093584061f, _199, mad(0.5183603167533875f, _196, (_192 * 0.11516613513231277f))); - float _218 = mad(0.04929120093584061f, _200, mad(0.5183603167533875f, _197, (_192 * -0.0697740763425827f))); - float _221 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_192 * -0.007634039502590895f))); - float _224 = mad(0.9684867262840271f, _199, mad(0.04004279896616936f, _196, (_192 * -0.0022720457054674625f))); - float _227 = mad(0.9684867262840271f, _200, mad(0.04004279896616936f, _197, (_192 * 0.0013765322510153055f))); - float _230 = mad(_209, 0.01933390088379383f, mad(_206, 0.2126729041337967f, (_203 * 0.4124563932418823f))); - float _233 = mad(_209, 0.11919199675321579f, mad(_206, 0.7151522040367126f, (_203 * 0.3575761020183563f))); - float _236 = mad(_209, 0.9503040909767151f, mad(_206, 0.07217500358819962f, (_203 * 0.18043750524520874f))); - float _239 = mad(_218, 0.01933390088379383f, mad(_215, 0.2126729041337967f, (_212 * 0.4124563932418823f))); - float _242 = mad(_218, 0.11919199675321579f, mad(_215, 0.7151522040367126f, (_212 * 0.3575761020183563f))); - float _245 = mad(_218, 0.9503040909767151f, mad(_215, 0.07217500358819962f, (_212 * 0.18043750524520874f))); - float _248 = mad(_227, 0.01933390088379383f, mad(_224, 0.2126729041337967f, (_221 * 0.4124563932418823f))); - float _251 = mad(_227, 0.11919199675321579f, mad(_224, 0.7151522040367126f, (_221 * 0.3575761020183563f))); - float _254 = mad(_227, 0.9503040909767151f, mad(_224, 0.07217500358819962f, (_221 * 0.18043750524520874f))); - float _284 = mad(mad(-0.4986107647418976f, _254, mad(-1.5373831987380981f, _245, (_236 * 3.2409698963165283f))), _103, mad(mad(-0.4986107647418976f, _251, mad(-1.5373831987380981f, _242, (_233 * 3.2409698963165283f))), _102, (mad(-0.4986107647418976f, _248, mad(-1.5373831987380981f, _239, (_230 * 3.2409698963165283f))) * _101))); - float _287 = mad(mad(0.04155505821108818f, _254, mad(1.8759675025939941f, _245, (_236 * -0.9692436456680298f))), _103, mad(mad(0.04155505821108818f, _251, mad(1.8759675025939941f, _242, (_233 * -0.9692436456680298f))), _102, (mad(0.04155505821108818f, _248, mad(1.8759675025939941f, _239, (_230 * -0.9692436456680298f))) * _101))); - float _290 = mad(mad(1.056971549987793f, _254, mad(-0.20397695899009705f, _245, (_236 * 0.05563008040189743f))), _103, mad(mad(1.056971549987793f, _251, mad(-0.20397695899009705f, _242, (_233 * 0.05563008040189743f))), _102, (mad(1.056971549987793f, _248, mad(-0.20397695899009705f, _239, (_230 * 0.05563008040189743f))) * _101))); - float _293 = mad(0.04736635088920593f, _290, mad(0.3395121395587921f, _287, (_284 * 0.613191545009613f))); - float _296 = mad(0.01345000695437193f, _290, mad(0.9163357615470886f, _287, (_284 * 0.07020691782236099f))); - float _299 = mad(0.8696067929267883f, _290, mad(0.1095672994852066f, _287, (_284 * 0.020618872717022896f))); - // bool _302 = ((uint)(cb0_046x) == 0); - bool _302 = ((uint)(tm_flags.x) == 0); - if (_302) { - float _304 = dot(float3(_293, _296, _299), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _308 = (_293 / _304) + -1.0f; - float _309 = (_296 / _304) + -1.0f; - float _310 = (_299 / _304) + -1.0f; - float _322 = (1.0f - exp2(((_304 * _304) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_308, _309, _310), float3(_308, _309, _310)) * -4.0f)); - _342 = (((mad(-0.06368283927440643f, _299, mad(-0.32929131388664246f, _296, (_293 * 1.370412826538086f))) - _293) * _322) + _293); - _343 = (((mad(-0.010861567221581936f, _299, mad(1.0970908403396606f, _296, (_293 * -0.08343426138162613f))) - _296) * _322) + _296); - _344 = (((mad(1.203694462776184f, _299, mad(-0.09862564504146576f, _296, (_293 * -0.02579325996339321f))) - _299) * _322) + _299); - } else { - _342 = _293; - _343 = _296; - _344 = _299; - } - float _345 = dot(float3(_342, _343, _344), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _359 = cb0_052w + cb0_057w; - float _373 = cb0_051w * cb0_056w; - float _387 = cb0_050w * cb0_055w; - float _401 = cb0_049w * cb0_054w; - float _415 = cb0_048w * cb0_053w; - float _419 = _342 - _345; - float _420 = _343 - _345; - float _421 = _344 - _345; - float _478 = cb0_073w + 1.0f; - float _482 = saturate(_478 * (((cb0_052x + cb0_057x) + _359) + (((cb0_051x * cb0_056x) * _373) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _401) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _415) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _387)))))); - float _483 = saturate(_478 * (((cb0_052y + cb0_057y) + _359) + (((cb0_051y * cb0_056y) * _373) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _401) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _415) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _387)))))); - float _484 = saturate(_478 * (((cb0_052z + cb0_057z) + _359) + (((cb0_051z * cb0_056z) * _373) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _401) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _415) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _387)))))); - float _488 = max(_482, max(_483, _484)); - float _489 = _488 - min(_482, min(_483, _484)); - if (!(_489 == 0.0f)) { - float _492 = _489 / _488; - if (_482 == _488) { - _510 = ((_483 - _484) / _489); - _511 = _492; - } else { - if (_483 == _488) { - _510 = (((_484 - _482) / _489) + 2.0f); - _511 = _492; - } else { - if (_484 == _488) { - _510 = (((_482 - _483) / _489) + 4.0f); - _511 = _492; - } else { - _510 = 0.0f; - _511 = _492; - } - } - } - } else { - _510 = 0.0f; - _511 = 0.0f; - } - float _513 = cb0_073z + _510; - float _514 = floor(_513); - float _515 = _513 - _514; - float _516 = 1.0f - _511; - float _518 = 1.0f - (_515 * _511); - float _521 = 1.0f - ((1.0f - _515) * _511); - if (!(_514 == 0.0f)) { - if (!(_514 == 1.0f)) { - if (!(_514 == 2.0f)) { - if (!(_514 == 3.0f)) { - if (!(_514 == 4.0f)) { - _533 = 1.0f; - _534 = _516; - _535 = _518; - } else { - _533 = _521; - _534 = _516; - _535 = 1.0f; - } - } else { - _533 = _516; - _534 = _518; - _535 = 1.0f; - } - } else { - _533 = _516; - _534 = 1.0f; - _535 = _521; - } - } else { - _533 = _518; - _534 = 1.0f; - _535 = _516; - } - } else { - _533 = 1.0f; - _534 = _521; - _535 = _516; - } - float _541 = saturate(_345 / cb0_073x); - float _545 = (_541 * _541) * (3.0f - (_541 * 2.0f)); - float _546 = 1.0f - _545; - float _555 = cb0_052w + cb0_067w; - float _564 = cb0_051w * cb0_066w; - float _573 = cb0_050w * cb0_065w; - float _582 = cb0_049w * cb0_064w; - float _591 = cb0_048w * cb0_063w; - float _652 = saturate(_478 * (((cb0_052x + cb0_067x) + _555) + (((cb0_051x * cb0_066x) * _564) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _582) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _591) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _573)))))); - float _653 = saturate(_478 * (((cb0_052y + cb0_067y) + _555) + (((cb0_051y * cb0_066y) * _564) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _582) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _591) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _573)))))); - float _654 = saturate(_478 * (((cb0_052z + cb0_067z) + _555) + (((cb0_051z * cb0_066z) * _564) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _582) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _591) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _573)))))); - float _658 = max(_652, max(_653, _654)); - float _659 = _658 - min(_652, min(_653, _654)); - if (!(_659 == 0.0f)) { - float _662 = _659 / _658; - if (_652 == _658) { - _680 = ((_653 - _654) / _659); - _681 = _662; - } else { - if (_653 == _658) { - _680 = (((_654 - _652) / _659) + 2.0f); - _681 = _662; - } else { - if (_654 == _658) { - _680 = (((_652 - _653) / _659) + 4.0f); - _681 = _662; - } else { - _680 = 0.0f; - _681 = _662; - } - } - } - } else { - _680 = 0.0f; - _681 = 0.0f; - } - float _682 = cb0_073z + _680; - float _683 = floor(_682); - float _684 = _682 - _683; - float _685 = 1.0f - _681; - float _687 = 1.0f - (_684 * _681); - float _690 = 1.0f - ((1.0f - _684) * _681); - if (!(_683 == 0.0f)) { - if (!(_683 == 1.0f)) { - if (!(_683 == 2.0f)) { - if (!(_683 == 3.0f)) { - if (!(_683 == 4.0f)) { - _702 = 1.0f; - _703 = _685; - _704 = _687; - } else { - _702 = _690; - _703 = _685; - _704 = 1.0f; - } - } else { - _702 = _685; - _703 = _687; - _704 = 1.0f; - } - } else { - _702 = _685; - _703 = 1.0f; - _704 = _690; - } - } else { - _702 = _687; - _703 = 1.0f; - _704 = _685; - } - } else { - _702 = 1.0f; - _703 = _690; - _704 = _685; - } - float _712 = saturate((_345 - cb0_073y) / (1.0f - cb0_073y)); - float _716 = (_712 * _712) * (3.0f - (_712 * 2.0f)); - float _725 = cb0_052w + cb0_062w; - float _734 = cb0_051w * cb0_061w; - float _743 = cb0_050w * cb0_060w; - float _752 = cb0_049w * cb0_059w; - float _761 = cb0_048w * cb0_058w; - float _822 = saturate(_478 * (((cb0_052x + cb0_062x) + _725) + (((cb0_051x * cb0_061x) * _734) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _752) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _761) * _419) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _743)))))); - float _823 = saturate(_478 * (((cb0_052y + cb0_062y) + _725) + (((cb0_051y * cb0_061y) * _734) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _752) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _761) * _420) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _743)))))); - float _824 = saturate(_478 * (((cb0_052z + cb0_062z) + _725) + (((cb0_051z * cb0_061z) * _734) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _752) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _761) * _421) + _345)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _743)))))); - float _828 = max(_822, max(_823, _824)); - float _829 = _828 - min(_822, min(_823, _824)); - if (!(_829 == 0.0f)) { - float _832 = _829 / _828; - if (_822 == _828) { - _850 = ((_823 - _824) / _829); - _851 = _832; - } else { - if (_823 == _828) { - _850 = (((_824 - _822) / _829) + 2.0f); - _851 = _832; - } else { - if (_824 == _828) { - _850 = (((_822 - _823) / _829) + 4.0f); - _851 = _832; - } else { - _850 = 0.0f; - _851 = _832; - } - } - } - } else { - _850 = 0.0f; - _851 = 0.0f; - } - float _852 = cb0_073z + _850; - float _853 = floor(_852); - float _854 = _852 - _853; - float _855 = 1.0f - _851; - float _857 = 1.0f - (_854 * _851); - float _860 = 1.0f - ((1.0f - _854) * _851); - if (!(_853 == 0.0f)) { - if (!(_853 == 1.0f)) { - if (!(_853 == 2.0f)) { - if (!(_853 == 3.0f)) { - if (!(_853 == 4.0f)) { - _872 = 1.0f; - _873 = _855; - _874 = _857; - } else { - _872 = _860; - _873 = _855; - _874 = 1.0f; - } - } else { - _872 = _855; - _873 = _857; - _874 = 1.0f; - } - } else { - _872 = _855; - _873 = 1.0f; - _874 = _860; - } - } else { - _872 = _857; - _873 = 1.0f; - _874 = _855; - } - } else { - _872 = 1.0f; - _873 = _860; - _874 = _855; - } - float _879 = _828 * (_545 - _716); - float _887 = (((_702 * _658) * _716) + ((_533 * _488) * _546)) + (_879 * _872); - float _889 = (((_703 * _658) * _716) + ((_534 * _488) * _546)) + (_879 * _873); - float _891 = (((_704 * _658) * _716) + ((_535 * _488) * _546)) + (_879 * _874); - float _917 = dot(float3(_887, _889, _891), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _981 = saturate(_478 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_887 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _982 = saturate(_478 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_889 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _983 = saturate(_478 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_891 - _917)) + _917)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _987 = max(_981, max(_982, _983)); - float _988 = _987 - min(_981, min(_982, _983)); - if (!(_988 == 0.0f)) { - float _991 = _988 / _987; - if (_981 == _987) { - _1009 = ((_982 - _983) / _988); - _1010 = _991; - } else { - if (_982 == _987) { - _1009 = (((_983 - _981) / _988) + 2.0f); - _1010 = _991; - } else { - if (_983 == _987) { - _1009 = (((_981 - _982) / _988) + 4.0f); - _1010 = _991; - } else { - _1009 = 0.0f; - _1010 = _991; - } - } - } - } else { - _1009 = 0.0f; - _1010 = 0.0f; - } - float _1011 = cb0_073z + _1009; - float _1012 = floor(_1011); - float _1013 = _1011 - _1012; - float _1014 = 1.0f - _1010; - float _1016 = 1.0f - (_1013 * _1010); - float _1019 = 1.0f - ((1.0f - _1013) * _1010); - if (!(_1012 == 0.0f)) { - if (!(_1012 == 1.0f)) { - if (!(_1012 == 2.0f)) { - if (!(_1012 == 3.0f)) { - if (!(_1012 == 4.0f)) { - _1031 = 1.0f; - _1032 = _1014; - _1033 = _1016; - } else { - _1031 = _1019; - _1032 = _1014; - _1033 = 1.0f; - } - } else { - _1031 = _1014; - _1032 = _1016; - _1033 = 1.0f; - } - } else { - _1031 = _1014; - _1032 = 1.0f; - _1033 = _1019; - } - } else { - _1031 = _1016; - _1032 = 1.0f; - _1033 = _1014; - } - } else { - _1031 = 1.0f; - _1032 = _1019; - _1033 = _1014; - } - float _1034 = _1031 * _987; - float _1035 = _1032 * _987; - float _1036 = _1033 * _987; - float _1039 = mad(-0.0832584798336029f, _1036, mad(-0.6217905879020691f, _1035, (_1034 * 1.7050515413284302f))); - float _1042 = mad(-0.010548528283834457f, _1036, mad(1.1408027410507202f, _1035, (_1034 * -0.13025718927383423f))); - float _1045 = mad(1.152971863746643f, _1036, mad(-0.1289687603712082f, _1035, (_1034 * -0.024003278464078903f))); - float _1061 = ((mad(0.061360642313957214f, _1036, mad(-4.540197551250458e-09f, _1035, (_1034 * 0.9386394023895264f))) - _1034) * cb0_075x) + _1034; - float _1062 = ((mad(0.169205904006958f, _1036, mad(0.8307942152023315f, _1035, (_1034 * 6.775371730327606e-08f))) - _1035) * cb0_075x) + _1035; - float _1063 = (mad(-2.3283064365386963e-10f, _1035, (_1034 * -9.313225746154785e-10f)) * cb0_075x) + _1036; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1073 = mad(0.16386905312538147f, _1063, mad(0.14067868888378143f, _1062, (_1061 * 0.6954522132873535f))); - float _1076 = mad(0.0955343246459961f, _1063, mad(0.8596711158752441f, _1062, (_1061 * 0.044794581830501556f))); - float _1079 = mad(1.0015007257461548f, _1063, mad(0.004025210160762072f, _1062, (_1061 * -0.005525882821530104f))); - float _1083 = max(max(_1073, _1076), _1079); - float _1088 = (max(_1083, 1.000000013351432e-10f) - max(min(min(_1073, _1076), _1079), 1.000000013351432e-10f)) / max(_1083, 0.009999999776482582f); - float _1101 = ((_1076 + _1073) + _1079) + (sqrt((((_1079 - _1076) * _1079) + ((_1076 - _1073) * _1076)) + ((_1073 - _1079) * _1073)) * 1.75f); - float _1102 = _1101 * 0.3333333432674408f; - float _1103 = _1088 + -0.4000000059604645f; - float _1104 = _1103 * 5.0f; - float _1108 = max((1.0f - abs(_1103 * 2.5f)), 0.0f); - float _1119 = ((float(((int)(uint)((bool)(_1104 > 0.0f))) - ((int)(uint)((bool)(_1104 < 0.0f)))) * (1.0f - (_1108 * _1108))) + 1.0f) * 0.02500000037252903f; - if (!(_1102 <= 0.0533333346247673f)) { - if (!(_1102 >= 0.1599999964237213f)) { - _1128 = (((0.23999999463558197f / _1101) + -0.5f) * _1119); - } else { - _1128 = 0.0f; - } - } else { - _1128 = _1119; - } - float _1129 = _1128 + 1.0f; - float _1130 = _1129 * _1073; - float _1131 = _1129 * _1076; - float _1132 = _1129 * _1079; - if (!((bool)(_1130 == _1131) && (bool)(_1131 == _1132))) { - float _1139 = ((_1130 * 2.0f) - _1131) - _1132; - float _1142 = ((_1076 - _1079) * 1.7320507764816284f) * _1129; - float _1144 = atan(_1142 / _1139); - bool _1147 = (_1139 < 0.0f); - bool _1148 = (_1139 == 0.0f); - bool _1149 = (_1142 >= 0.0f); - bool _1150 = (_1142 < 0.0f); - _1161 = select((_1149 && _1148), 90.0f, select((_1150 && _1148), -90.0f, (select((_1150 && _1147), (_1144 + -3.1415927410125732f), select((_1149 && _1147), (_1144 + 3.1415927410125732f), _1144)) * 57.2957763671875f))); - } else { - _1161 = 0.0f; - } - float _1166 = min(max(select((_1161 < 0.0f), (_1161 + 360.0f), _1161), 0.0f), 360.0f); - if (_1166 < -180.0f) { - _1175 = (_1166 + 360.0f); - } else { - if (_1166 > 180.0f) { - _1175 = (_1166 + -360.0f); - } else { - _1175 = _1166; - } - } - float _1179 = saturate(1.0f - abs(_1175 * 0.014814814552664757f)); - float _1183 = (_1179 * _1179) * (3.0f - (_1179 * 2.0f)); - float _1189 = ((_1183 * _1183) * ((_1088 * 0.18000000715255737f) * (0.029999999329447746f - _1130))) + _1130; - float _1199 = max(0.0f, mad(-0.21492856740951538f, _1132, mad(-0.2365107536315918f, _1131, (_1189 * 1.4514392614364624f)))); - float _1200 = max(0.0f, mad(-0.09967592358589172f, _1132, mad(1.17622971534729f, _1131, (_1189 * -0.07655377686023712f)))); - float _1201 = max(0.0f, mad(0.9977163076400757f, _1132, mad(-0.006032449658960104f, _1131, (_1189 * 0.008316148072481155f)))); - float _1202 = dot(float3(_1199, _1200, _1201), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1216 = (cb0_036w + 1.0f) - cb0_036y; - float _1219 = cb0_037x + 1.0f; - float _1221 = _1219 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1239 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1230 = (cb0_036w + 0.18000000715255737f) / _1216; - _1239 = (-0.7447274923324585f - ((log2(_1230 / (2.0f - _1230)) * 0.3465735912322998f) * (_1216 / cb0_036x))); - } - float _1242 = ((1.0f - cb0_036y) / cb0_036x) - _1239; - float _1244 = (cb0_036z / cb0_036x) - _1242; - float _1248 = log2(lerp(_1202, _1199, 0.9599999785423279f)) * 0.3010300099849701f; - float _1249 = log2(lerp(_1202, _1200, 0.9599999785423279f)) * 0.3010300099849701f; - float _1250 = log2(lerp(_1202, _1201, 0.9599999785423279f)) * 0.3010300099849701f; - float _1254 = cb0_036x * (_1248 + _1242); - float _1255 = cb0_036x * (_1249 + _1242); - float _1256 = cb0_036x * (_1250 + _1242); - float _1257 = _1216 * 2.0f; - float _1259 = (cb0_036x * -2.0f) / _1216; - float _1260 = _1248 - _1239; - float _1261 = _1249 - _1239; - float _1262 = _1250 - _1239; - float _1281 = _1221 * 2.0f; - float _1283 = (cb0_036x * 2.0f) / _1221; - float _1308 = select((_1248 < _1239), ((_1257 / (exp2((_1260 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1254); - float _1309 = select((_1249 < _1239), ((_1257 / (exp2((_1261 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1255); - float _1310 = select((_1250 < _1239), ((_1257 / (exp2((_1262 * 1.4426950216293335f) * _1259) + 1.0f)) - cb0_036w), _1256); - float _1317 = _1244 - _1239; - float _1321 = saturate(_1260 / _1317); - float _1322 = saturate(_1261 / _1317); - float _1323 = saturate(_1262 / _1317); - bool _1324 = (_1244 < _1239); - float _1328 = select(_1324, (1.0f - _1321), _1321); - float _1329 = select(_1324, (1.0f - _1322), _1322); - float _1330 = select(_1324, (1.0f - _1323), _1323); - float _1349 = (((_1328 * _1328) * (select((_1248 > _1244), (_1219 - (_1281 / (exp2(((_1248 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; - float _1350 = (((_1329 * _1329) * (select((_1249 > _1244), (_1219 - (_1281 / (exp2(((_1249 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1255) - _1309)) * (3.0f - (_1329 * 2.0f))) + _1309; - float _1351 = (((_1330 * _1330) * (select((_1250 > _1244), (_1219 - (_1281 / (exp2(((_1250 - _1244) * 1.4426950216293335f) * _1283) + 1.0f))), _1256) - _1310)) * (3.0f - (_1330 * 2.0f))) + _1310; - float _1352 = dot(float3(_1349, _1350, _1351), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1376 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1349, 0.9300000071525574f))) - _1061)) + _1061); - _1377 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1350, 0.9300000071525574f))) - _1062)) + _1062); - _1378 = ((cb0_075z * (max(0.0f, (lerp(_1352, _1351, 0.9300000071525574f))) - _1063)) + _1063); - } else { - _1376 = _1061; - _1377 = _1062; - _1378 = _1063; - } - float _1394 = ((mad(-0.06537103652954102f, _1378, mad(1.451815478503704e-06f, _1377, (_1376 * 1.065374732017517f))) - _1376) * cb0_075x) + _1376; - float _1395 = ((mad(-0.20366770029067993f, _1378, mad(1.2036634683609009f, _1377, (_1376 * -2.57161445915699e-07f))) - _1377) * cb0_075x) + _1377; - float _1396 = ((mad(0.9999996423721313f, _1378, mad(2.0954757928848267e-08f, _1377, (_1376 * 1.862645149230957e-08f))) - _1378) * cb0_075x) + _1378; - [branch] - if (!_302) { - float _1439 = 1.0f / (dot(float3(_1039, _1042, _1045), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1449 = max(0.0f, (((_1439 * cb0_035x) + cb0_034x) * dot(float3(_1039, _1042, _1045), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1450 = max(0.0f, (((_1439 * cb0_035y) + cb0_034y) * dot(float3(_1039, _1042, _1045), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1451 = max(0.0f, (((_1439 * cb0_035z) + cb0_034z) * dot(float3(_1039, _1042, _1045), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1457 = max(0.0f, (cb0_031x - _1449)); - float _1458 = max(0.0f, (cb0_031x - _1450)); - float _1459 = max(0.0f, (cb0_031x - _1451)); - float _1461 = max(_1449, cb0_031z); - float _1462 = max(_1450, cb0_031z); - float _1463 = max(_1451, cb0_031z); - _1521 = (((((((cb0_032x * _1461) + cb0_032y) * (1.0f / (cb0_031w + _1461))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1449, cb0_031x), cb0_031z))) + ((cb0_028w * _1457) * (1.0f / (cb0_031y + _1457)))) + cb0_029w); - _1522 = ((((((1.0f / (cb0_031w + _1462)) * ((cb0_032x * _1462) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1450, cb0_031x), cb0_031z))) + ((cb0_028w * _1458) * (1.0f / (cb0_031y + _1458)))) + cb0_029w); - _1523 = ((((((1.0f / (cb0_031w + _1463)) * ((cb0_032x * _1463) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1451, cb0_031x), cb0_031z))) + ((cb0_028w * _1459) * (1.0f / (cb0_031y + _1459)))) + cb0_029w); - } else { - _1521 = max(0.0f, mad(-0.0832584798336029f, _1396, mad(-0.6217905879020691f, _1395, (_1394 * 1.7050515413284302f)))); - _1522 = max(0.0f, mad(-0.010548528283834457f, _1396, mad(1.1408027410507202f, _1395, (_1394 * -0.13025718927383423f)))); - _1523 = max(0.0f, mad(1.152971863746643f, _1396, mad(-0.1289687603712082f, _1395, (_1394 * -0.024003278464078903f)))); - } - float _1524 = saturate(_1521); - float _1525 = saturate(_1522); - float _1526 = saturate(_1523); - if (_1524 < 0.0031306699384003878f) { - _1537 = (_1524 * 12.920000076293945f); - } else { - _1537 = (((pow(_1524, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1525 < 0.0031306699384003878f) { - _1548 = (_1525 * 12.920000076293945f); - } else { - _1548 = (((pow(_1525, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1526 < 0.0031306699384003878f) { - _1559 = (_1526 * 12.920000076293945f); - } else { - _1559 = (((pow(_1526, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1563 = (_1548 * 0.9375f) + 0.03125f; - float _1571 = _1559 * 15.0f; - float _1572 = floor(_1571); - float _1573 = _1571 - _1572; - float _1575 = (_1572 + ((_1537 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1576 = t1.Sample(s1, float2(_1575, _1563)); - float _1580 = _1575 + 0.0625f; - float4 _1581 = t1.Sample(s1, float2(_1580, _1563)); - float4 _1602 = t2.Sample(s2, float2(_1575, _1563)); - float4 _1606 = t2.Sample(s2, float2(_1580, _1563)); - float _1622 = (((lerp(_1576.x, _1581.x, _1573)) * cb0_041x) + (cb0_040x * _1537)) + ((lerp(_1602.x, _1606.x, _1573)) * cb0_042x); - float _1623 = (((lerp(_1576.y, _1581.y, _1573)) * cb0_041x) + (cb0_040x * _1548)) + ((lerp(_1602.y, _1606.y, _1573)) * cb0_042x); - float _1624 = (((lerp(_1576.z, _1581.z, _1573)) * cb0_041x) + (cb0_040x * _1559)) + ((lerp(_1602.z, _1606.z, _1573)) * cb0_042x); - float4 _1627 = t0.Sample(s0, float2(_1575, _1563)); - float4 _1631 = t0.Sample(s0, float2(_1580, _1563)); - float _1649 = cb0_038w * cb0_039z; - float _1656 = max(6.103519990574569e-05f, ((_1649 * ((_1627.x - _1622) + ((_1631.x - _1627.x) * _1573))) + _1622)); - float _1657 = max(6.103519990574569e-05f, ((_1649 * ((_1627.y - _1623) + ((_1631.y - _1627.y) * _1573))) + _1623)); - float _1658 = max(6.103519990574569e-05f, ((_1649 * ((_1627.z - _1624) + ((_1631.z - _1627.z) * _1573))) + _1624)); - float _1680 = select((_1656 > 0.040449999272823334f), exp2(log2((_1656 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1656 * 0.07739938050508499f)); - float _1681 = select((_1657 > 0.040449999272823334f), exp2(log2((_1657 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1657 * 0.07739938050508499f)); - float _1682 = select((_1658 > 0.040449999272823334f), exp2(log2((_1658 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1658 * 0.07739938050508499f)); - float _1708 = cb0_044y * (((cb0_026y + (cb0_026x * _1680)) * _1680) + cb0_026z); - float _1709 = cb0_044z * (((cb0_026y + (cb0_026x * _1681)) * _1681) + cb0_026z); - float _1710 = cb0_044w * (((cb0_026y + (cb0_026x * _1682)) * _1682) + cb0_026z); - float _1717 = ((cb0_045x - _1708) * cb0_045w) + _1708; - float _1718 = ((cb0_045y - _1709) * cb0_045w) + _1709; - float _1719 = ((cb0_045z - _1710) * cb0_045w) + _1710; - float _1720 = cb0_044y * _1039; - float _1721 = cb0_044z * _1042; - float _1722 = cb0_044w * _1045; - float _1729 = ((cb0_045x - _1720) * cb0_045w) + _1720; - float _1730 = ((cb0_045y - _1721) * cb0_045w) + _1721; - float _1731 = ((cb0_045z - _1722) * cb0_045w) + _1722; - float _1743 = exp2(log2(max(0.0f, _1717)) * cb0_027y); - float _1744 = exp2(log2(max(0.0f, _1718)) * cb0_027y); - float _1745 = exp2(log2(max(0.0f, _1719)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1743, _1744, _1745)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1743 < 0.0031306699384003878f) { - _1760 = (_1743 * 12.920000076293945f); - } else { - _1760 = (((pow(_1743, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1744 < 0.0031306699384003878f) { - _1771 = (_1744 * 12.920000076293945f); - } else { - _1771 = (((pow(_1744, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1745 < 0.0031306699384003878f) { - _3199 = _1760; - _3200 = _1771; - _3201 = (_1745 * 12.920000076293945f); - } else { - _3199 = _1760; - _3200 = _1771; - _3201 = (((pow(_1745, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1786 = mad(0.04736635088920593f, _1745, mad(0.3395121395587921f, _1744, (_1743 * 0.613191545009613f))); - float _1789 = mad(0.01345000695437193f, _1745, mad(0.9163357615470886f, _1744, (_1743 * 0.07020691782236099f))); - float _1792 = mad(0.8696067929267883f, _1745, mad(0.1095672994852066f, _1744, (_1743 * 0.020618872717022896f))); - float _1802 = max(6.103519990574569e-05f, mad(_38, _1792, mad(_37, _1789, (_1786 * _36)))); - float _1803 = max(6.103519990574569e-05f, mad(_41, _1792, mad(_40, _1789, (_1786 * _39)))); - float _1804 = max(6.103519990574569e-05f, mad(_44, _1792, mad(_43, _1789, (_1786 * _42)))); - _3199 = min((_1802 * 4.5f), ((exp2(log2(max(_1802, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3200 = min((_1803 * 4.5f), ((exp2(log2(max(_1803, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3201 = min((_1804 * 4.5f), ((exp2(log2(max(_1804, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1831 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1831) { - float _1834 = _1730 * 3.0f; - float _1835 = _1731 * 3.0f; - float _1838 = mad(0.17733481526374817f, _1835, mad(0.38297808170318604f, _1834, (_1729 * 1.31910240650177f))); - float _1841 = mad(0.09676162153482437f, _1835, mad(0.8134231567382812f, _1834, (_1729 * 0.2693769633769989f))); - float _1844 = mad(0.870704174041748f, _1835, mad(0.11154405772686005f, _1834, (_1729 * 0.05263196676969528f))); - float _1848 = max(max(_1838, _1841), _1844); - float _1853 = (max(_1848, 1.000000013351432e-10f) - max(min(min(_1838, _1841), _1844), 1.000000013351432e-10f)) / max(_1848, 0.009999999776482582f); - float _1866 = ((_1841 + _1838) + _1844) + (sqrt((((_1844 - _1841) * _1844) + ((_1841 - _1838) * _1841)) + ((_1838 - _1844) * _1838)) * 1.75f); - float _1867 = _1866 * 0.3333333432674408f; - float _1868 = _1853 + -0.4000000059604645f; - float _1869 = _1868 * 5.0f; - float _1873 = max((1.0f - abs(_1868 * 2.5f)), 0.0f); - float _1884 = ((float(((int)(uint)((bool)(_1869 > 0.0f))) - ((int)(uint)((bool)(_1869 < 0.0f)))) * (1.0f - (_1873 * _1873))) + 1.0f) * 0.02500000037252903f; - if (!(_1867 <= 0.0533333346247673f)) { - if (!(_1867 >= 0.1599999964237213f)) { - _1893 = (((0.23999999463558197f / _1866) + -0.5f) * _1884); - } else { - _1893 = 0.0f; - } - } else { - _1893 = _1884; - } - float _1894 = _1893 + 1.0f; - float _1895 = _1894 * _1838; - float _1896 = _1894 * _1841; - float _1897 = _1894 * _1844; - if (!((bool)(_1895 == _1896) && (bool)(_1896 == _1897))) { - float _1904 = ((_1895 * 2.0f) - _1896) - _1897; - float _1907 = ((_1841 - _1844) * 1.7320507764816284f) * _1894; - float _1909 = atan(_1907 / _1904); - bool _1912 = (_1904 < 0.0f); - bool _1913 = (_1904 == 0.0f); - bool _1914 = (_1907 >= 0.0f); - bool _1915 = (_1907 < 0.0f); - _1926 = select((_1914 && _1913), 90.0f, select((_1915 && _1913), -90.0f, (select((_1915 && _1912), (_1909 + -3.1415927410125732f), select((_1914 && _1912), (_1909 + 3.1415927410125732f), _1909)) * 57.2957763671875f))); - } else { - _1926 = 0.0f; - } - float _1931 = min(max(select((_1926 < 0.0f), (_1926 + 360.0f), _1926), 0.0f), 360.0f); - if (_1931 < -180.0f) { - _1940 = (_1931 + 360.0f); - } else { - if (_1931 > 180.0f) { - _1940 = (_1931 + -360.0f); - } else { - _1940 = _1931; - } - } - if ((bool)(_1940 > -67.5f) && (bool)(_1940 < 67.5f)) { - float _1946 = (_1940 + 67.5f) * 0.029629629105329514f; - int _1947 = int(_1946); - float _1949 = _1946 - float(_1947); - float _1950 = _1949 * _1949; - float _1951 = _1950 * _1949; - if (_1947 == 3) { - _1979 = (((0.1666666716337204f - (_1949 * 0.5f)) + (_1950 * 0.5f)) - (_1951 * 0.1666666716337204f)); - } else { - if (_1947 == 2) { - _1979 = ((0.6666666865348816f - _1950) + (_1951 * 0.5f)); - } else { - if (_1947 == 1) { - _1979 = (((_1951 * -0.5f) + 0.1666666716337204f) + ((_1950 + _1949) * 0.5f)); - } else { - _1979 = select((_1947 == 0), (_1951 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1979 = 0.0f; - } - float _1988 = min(max(((((_1853 * 0.27000001072883606f) * (0.029999999329447746f - _1895)) * _1979) + _1895), 0.0f), 65535.0f); - float _1989 = min(max(_1896, 0.0f), 65535.0f); - float _1990 = min(max(_1897, 0.0f), 65535.0f); - float _2003 = min(max(mad(-0.21492856740951538f, _1990, mad(-0.2365107536315918f, _1989, (_1988 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2004 = min(max(mad(-0.09967592358589172f, _1990, mad(1.17622971534729f, _1989, (_1988 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2005 = min(max(mad(0.9977163076400757f, _1990, mad(-0.006032449658960104f, _1989, (_1988 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2006 = dot(float3(_2003, _2004, _2005), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2013 = ((_2003 - _2006) * 0.9599999785423279f) + _2006; - float _2014 = ((_2004 - _2006) * 0.9599999785423279f) + _2006; - float _2015 = ((_2005 - _2006) * 0.9599999785423279f) + _2006; - float _2018 = log2(select((_2013 <= 0.0f), 6.103515625e-05f, _2013)); - float _2019 = _2018 * 0.3010300099849701f; - if (!(_2019 <= -5.2601776123046875f)) { - if ((bool)(_2019 > -5.2601776123046875f) && (bool)(_2019 < -0.7447274923324585f)) { - float _2027 = (_2018 * 0.19999998807907104f) + 3.494786262512207f; - int _2028 = int(_2027); - float _2030 = _2027 - float(_2028); - float _2032 = _global_0[_2028]; - float _2035 = _global_0[(_2028 + 1)]; - float _2040 = _2032 * 0.5f; - _2072 = dot(float3((_2030 * _2030), _2030, 1.0f), float3(mad((_global_0[(_2028 + 2)]), 0.5f, mad(_2035, -1.0f, _2040)), (_2035 - _2032), mad(_2035, 0.5f, _2040))); - } else { - if ((bool)(_2019 >= -0.7447274923324585f) && (bool)(_2019 < 4.673812389373779f)) { - float _2052 = (_2018 * 0.1666666567325592f) + 0.4123218357563019f; - int _2053 = int(_2052); - float _2055 = _2052 - float(_2053); - float _2057 = _global_1[_2053]; - float _2060 = _global_1[(_2053 + 1)]; - float _2065 = _2057 * 0.5f; - _2072 = dot(float3((_2055 * _2055), _2055, 1.0f), float3(mad((_global_1[(_2053 + 2)]), 0.5f, mad(_2060, -1.0f, _2065)), (_2060 - _2057), mad(_2060, 0.5f, _2065))); - } else { - _2072 = 4.0f; - } - } - } else { - _2072 = -4.0f; - } - float _2074 = exp2(_2072 * 3.321928024291992f); - float _2077 = log2(select((_2014 <= 0.0f), 6.103515625e-05f, _2014)); - float _2078 = _2077 * 0.3010300099849701f; - if (!(_2078 <= -5.2601776123046875f)) { - if ((bool)(_2078 > -5.2601776123046875f) && (bool)(_2078 < -0.7447274923324585f)) { - float _2086 = (_2077 * 0.19999998807907104f) + 3.494786262512207f; - int _2087 = int(_2086); - float _2089 = _2086 - float(_2087); - float _2091 = _global_0[_2087]; - float _2094 = _global_0[(_2087 + 1)]; - float _2099 = _2091 * 0.5f; - _2131 = dot(float3((_2089 * _2089), _2089, 1.0f), float3(mad((_global_0[(_2087 + 2)]), 0.5f, mad(_2094, -1.0f, _2099)), (_2094 - _2091), mad(_2094, 0.5f, _2099))); - } else { - if ((bool)(_2078 >= -0.7447274923324585f) && (bool)(_2078 < 4.673812389373779f)) { - float _2111 = (_2077 * 0.1666666567325592f) + 0.4123218357563019f; - int _2112 = int(_2111); - float _2114 = _2111 - float(_2112); - float _2116 = _global_1[_2112]; - float _2119 = _global_1[(_2112 + 1)]; - float _2124 = _2116 * 0.5f; - _2131 = dot(float3((_2114 * _2114), _2114, 1.0f), float3(mad((_global_1[(_2112 + 2)]), 0.5f, mad(_2119, -1.0f, _2124)), (_2119 - _2116), mad(_2119, 0.5f, _2124))); - } else { - _2131 = 4.0f; - } - } - } else { - _2131 = -4.0f; - } - float _2133 = exp2(_2131 * 3.321928024291992f); - float _2136 = log2(select((_2015 <= 0.0f), 6.103515625e-05f, _2015)); - float _2137 = _2136 * 0.3010300099849701f; - if (!(_2137 <= -5.2601776123046875f)) { - if ((bool)(_2137 > -5.2601776123046875f) && (bool)(_2137 < -0.7447274923324585f)) { - float _2145 = (_2136 * 0.19999998807907104f) + 3.494786262512207f; - int _2146 = int(_2145); - float _2148 = _2145 - float(_2146); - float _2150 = _global_0[_2146]; - float _2153 = _global_0[(_2146 + 1)]; - float _2158 = _2150 * 0.5f; - _2190 = dot(float3((_2148 * _2148), _2148, 1.0f), float3(mad((_global_0[(_2146 + 2)]), 0.5f, mad(_2153, -1.0f, _2158)), (_2153 - _2150), mad(_2153, 0.5f, _2158))); - } else { - if ((bool)(_2137 >= -0.7447274923324585f) && (bool)(_2137 < 4.673812389373779f)) { - float _2170 = (_2136 * 0.1666666567325592f) + 0.4123218357563019f; - int _2171 = int(_2170); - float _2173 = _2170 - float(_2171); - float _2175 = _global_1[_2171]; - float _2178 = _global_1[(_2171 + 1)]; - float _2183 = _2175 * 0.5f; - _2190 = dot(float3((_2173 * _2173), _2173, 1.0f), float3(mad((_global_1[(_2171 + 2)]), 0.5f, mad(_2178, -1.0f, _2183)), (_2178 - _2175), mad(_2178, 0.5f, _2183))); - } else { - _2190 = 4.0f; - } - } - } else { - _2190 = -4.0f; - } - float _2192 = exp2(_2190 * 3.321928024291992f); - float _2195 = mad(0.16386906802654266f, _2192, mad(0.14067870378494263f, _2133, (_2074 * 0.6954522132873535f))); - float _2198 = mad(0.0955343171954155f, _2192, mad(0.8596711158752441f, _2133, (_2074 * 0.044794563204050064f))); - float _2201 = mad(1.0015007257461548f, _2192, mad(0.004025210160762072f, _2133, (_2074 * -0.005525882821530104f))); - float _2204 = mad(-0.21492856740951538f, _2201, mad(-0.2365107536315918f, _2198, (_2195 * 1.4514392614364624f))); - float _2207 = mad(-0.09967592358589172f, _2201, mad(1.17622971534729f, _2198, (_2195 * -0.07655377686023712f))); - float _2210 = mad(0.9977163076400757f, _2201, mad(-0.006032449658960104f, _2198, (_2195 * 0.008316148072481155f))); - float _2213 = log2(select((_2204 <= 0.0f), 9.999999747378752e-05f, _2204)); - float _2214 = _2213 * 0.3010300099849701f; - if (!(!(_2214 <= -3.848327875137329f))) { - _2273 = ((_2213 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2214 > -3.848327875137329f) && (bool)(_2214 < 0.6812411546707153f)) { - float _2225 = (_2213 + 12.783867835998535f) * 0.46521204710006714f; - int _2226 = int(_2225); - float _2228 = _2225 - float(_2226); - float _2230 = _global_2[_2226]; - float _2233 = _global_2[(_2226 + 1)]; - float _2238 = _2230 * 0.5f; - _2273 = dot(float3((_2228 * _2228), _2228, 1.0f), float3(mad((_global_2[(_2226 + 2)]), 0.5f, mad(_2233, -1.0f, _2238)), (_2233 - _2230), mad(_2233, 0.5f, _2238))); - } else { - if ((bool)(_2214 >= 0.6812411546707153f) && (bool)(_2214 < 3.653702974319458f)) { - float _2250 = (_2213 + -2.2630341053009033f) * 0.7089107632637024f; - int _2251 = int(_2250); - float _2253 = _2250 - float(_2251); - float _2255 = _global_3[_2251]; - float _2258 = _global_3[(_2251 + 1)]; - float _2263 = _2255 * 0.5f; - _2273 = dot(float3((_2253 * _2253), _2253, 1.0f), float3(mad((_global_3[(_2251 + 2)]), 0.5f, mad(_2258, -1.0f, _2263)), (_2258 - _2255), mad(_2258, 0.5f, _2263))); - } else { - _2273 = ((_2213 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2278 = log2(select((_2207 <= 0.0f), 9.999999747378752e-05f, _2207)); - float _2279 = _2278 * 0.3010300099849701f; - if (!(!(_2279 <= -3.848327875137329f))) { - _2338 = ((_2278 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2279 > -3.848327875137329f) && (bool)(_2279 < 0.6812411546707153f)) { - float _2290 = (_2278 + 12.783867835998535f) * 0.46521204710006714f; - int _2291 = int(_2290); - float _2293 = _2290 - float(_2291); - float _2295 = _global_2[_2291]; - float _2298 = _global_2[(_2291 + 1)]; - float _2303 = _2295 * 0.5f; - _2338 = dot(float3((_2293 * _2293), _2293, 1.0f), float3(mad((_global_2[(_2291 + 2)]), 0.5f, mad(_2298, -1.0f, _2303)), (_2298 - _2295), mad(_2298, 0.5f, _2303))); - } else { - if ((bool)(_2279 >= 0.6812411546707153f) && (bool)(_2279 < 3.653702974319458f)) { - float _2315 = (_2278 + -2.2630341053009033f) * 0.7089107632637024f; - int _2316 = int(_2315); - float _2318 = _2315 - float(_2316); - float _2320 = _global_3[_2316]; - float _2323 = _global_3[(_2316 + 1)]; - float _2328 = _2320 * 0.5f; - _2338 = dot(float3((_2318 * _2318), _2318, 1.0f), float3(mad((_global_3[(_2316 + 2)]), 0.5f, mad(_2323, -1.0f, _2328)), (_2323 - _2320), mad(_2323, 0.5f, _2328))); - } else { - _2338 = ((_2278 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2343 = log2(select((_2210 <= 0.0f), 9.999999747378752e-05f, _2210)); - float _2344 = _2343 * 0.3010300099849701f; - if (!(!(_2344 <= -3.848327875137329f))) { - _2403 = ((_2343 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2344 > -3.848327875137329f) && (bool)(_2344 < 0.6812411546707153f)) { - float _2355 = (_2343 + 12.783867835998535f) * 0.46521204710006714f; - int _2356 = int(_2355); - float _2358 = _2355 - float(_2356); - float _2360 = _global_2[_2356]; - float _2363 = _global_2[(_2356 + 1)]; - float _2368 = _2360 * 0.5f; - _2403 = dot(float3((_2358 * _2358), _2358, 1.0f), float3(mad((_global_2[(_2356 + 2)]), 0.5f, mad(_2363, -1.0f, _2368)), (_2363 - _2360), mad(_2363, 0.5f, _2368))); - } else { - if ((bool)(_2344 >= 0.6812411546707153f) && (bool)(_2344 < 3.653702974319458f)) { - float _2380 = (_2343 + -2.2630341053009033f) * 0.7089107632637024f; - int _2381 = int(_2380); - float _2383 = _2380 - float(_2381); - float _2385 = _global_3[_2381]; - float _2388 = _global_3[(_2381 + 1)]; - float _2393 = _2385 * 0.5f; - _2403 = dot(float3((_2383 * _2383), _2383, 1.0f), float3(mad((_global_3[(_2381 + 2)]), 0.5f, mad(_2388, -1.0f, _2393)), (_2388 - _2385), mad(_2388, 0.5f, _2393))); - } else { - _2403 = ((_2343 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2406 = exp2(_2273 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2407 = exp2(_2338 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2408 = exp2(_2403 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1831) { - _2420 = mad(_38, _2408, mad(_37, _2407, (_2406 * _36))); - _2421 = mad(_41, _2408, mad(_40, _2407, (_2406 * _39))); - _2422 = mad(_44, _2408, mad(_43, _2407, (_2406 * _42))); - } else { - _2420 = _2406; - _2421 = _2407; - _2422 = _2408; - } - float _2432 = exp2(log2(_2420 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2433 = exp2(log2(_2421 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2434 = exp2(log2(_2422 * 9.999999747378752e-05f) * 0.1593017578125f); - _3199 = exp2(log2((1.0f / ((_2432 * 18.6875f) + 1.0f)) * ((_2432 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3200 = exp2(log2((1.0f / ((_2433 * 18.6875f) + 1.0f)) * ((_2433 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_2434 * 18.6875f) + 1.0f)) * ((_2434 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2467 = _1730 * 3.0f; - float _2468 = _1731 * 3.0f; - float _2471 = mad(0.17733481526374817f, _2468, mad(0.38297808170318604f, _2467, (_1729 * 1.31910240650177f))); - float _2474 = mad(0.09676162153482437f, _2468, mad(0.8134231567382812f, _2467, (_1729 * 0.2693769633769989f))); - float _2477 = mad(0.870704174041748f, _2468, mad(0.11154405772686005f, _2467, (_1729 * 0.05263196676969528f))); - float _2481 = max(max(_2471, _2474), _2477); - float _2486 = (max(_2481, 1.000000013351432e-10f) - max(min(min(_2471, _2474), _2477), 1.000000013351432e-10f)) / max(_2481, 0.009999999776482582f); - float _2499 = ((_2474 + _2471) + _2477) + (sqrt((((_2477 - _2474) * _2477) + ((_2474 - _2471) * _2474)) + ((_2471 - _2477) * _2471)) * 1.75f); - float _2500 = _2499 * 0.3333333432674408f; - float _2501 = _2486 + -0.4000000059604645f; - float _2502 = _2501 * 5.0f; - float _2506 = max((1.0f - abs(_2501 * 2.5f)), 0.0f); - float _2517 = ((float(((int)(uint)((bool)(_2502 > 0.0f))) - ((int)(uint)((bool)(_2502 < 0.0f)))) * (1.0f - (_2506 * _2506))) + 1.0f) * 0.02500000037252903f; - if (!(_2500 <= 0.0533333346247673f)) { - if (!(_2500 >= 0.1599999964237213f)) { - _2526 = (((0.23999999463558197f / _2499) + -0.5f) * _2517); - } else { - _2526 = 0.0f; - } - } else { - _2526 = _2517; - } - float _2527 = _2526 + 1.0f; - float _2528 = _2527 * _2471; - float _2529 = _2527 * _2474; - float _2530 = _2527 * _2477; - if (!((bool)(_2528 == _2529) && (bool)(_2529 == _2530))) { - float _2537 = ((_2528 * 2.0f) - _2529) - _2530; - float _2540 = ((_2474 - _2477) * 1.7320507764816284f) * _2527; - float _2542 = atan(_2540 / _2537); - bool _2545 = (_2537 < 0.0f); - bool _2546 = (_2537 == 0.0f); - bool _2547 = (_2540 >= 0.0f); - bool _2548 = (_2540 < 0.0f); - _2559 = select((_2547 && _2546), 90.0f, select((_2548 && _2546), -90.0f, (select((_2548 && _2545), (_2542 + -3.1415927410125732f), select((_2547 && _2545), (_2542 + 3.1415927410125732f), _2542)) * 57.2957763671875f))); - } else { - _2559 = 0.0f; - } - float _2564 = min(max(select((_2559 < 0.0f), (_2559 + 360.0f), _2559), 0.0f), 360.0f); - if (_2564 < -180.0f) { - _2573 = (_2564 + 360.0f); - } else { - if (_2564 > 180.0f) { - _2573 = (_2564 + -360.0f); - } else { - _2573 = _2564; - } - } - if ((bool)(_2573 > -67.5f) && (bool)(_2573 < 67.5f)) { - float _2579 = (_2573 + 67.5f) * 0.029629629105329514f; - int _2580 = int(_2579); - float _2582 = _2579 - float(_2580); - float _2583 = _2582 * _2582; - float _2584 = _2583 * _2582; - if (_2580 == 3) { - _2612 = (((0.1666666716337204f - (_2582 * 0.5f)) + (_2583 * 0.5f)) - (_2584 * 0.1666666716337204f)); - } else { - if (_2580 == 2) { - _2612 = ((0.6666666865348816f - _2583) + (_2584 * 0.5f)); - } else { - if (_2580 == 1) { - _2612 = (((_2584 * -0.5f) + 0.1666666716337204f) + ((_2583 + _2582) * 0.5f)); - } else { - _2612 = select((_2580 == 0), (_2584 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2612 = 0.0f; - } - float _2621 = min(max(((((_2486 * 0.27000001072883606f) * (0.029999999329447746f - _2528)) * _2612) + _2528), 0.0f), 65535.0f); - float _2622 = min(max(_2529, 0.0f), 65535.0f); - float _2623 = min(max(_2530, 0.0f), 65535.0f); - float _2636 = min(max(mad(-0.21492856740951538f, _2623, mad(-0.2365107536315918f, _2622, (_2621 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2637 = min(max(mad(-0.09967592358589172f, _2623, mad(1.17622971534729f, _2622, (_2621 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2638 = min(max(mad(0.9977163076400757f, _2623, mad(-0.006032449658960104f, _2622, (_2621 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2639 = dot(float3(_2636, _2637, _2638), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2646 = ((_2636 - _2639) * 0.9599999785423279f) + _2639; - float _2647 = ((_2637 - _2639) * 0.9599999785423279f) + _2639; - float _2648 = ((_2638 - _2639) * 0.9599999785423279f) + _2639; - float _2651 = log2(select((_2646 <= 0.0f), 6.103515625e-05f, _2646)); - float _2652 = _2651 * 0.3010300099849701f; - if (!(_2652 <= -5.2601776123046875f)) { - if ((bool)(_2652 > -5.2601776123046875f) && (bool)(_2652 < -0.7447274923324585f)) { - float _2660 = (_2651 * 0.19999998807907104f) + 3.494786262512207f; - int _2661 = int(_2660); - float _2663 = _2660 - float(_2661); - float _2665 = _global_0[_2661]; - float _2668 = _global_0[(_2661 + 1)]; - float _2673 = _2665 * 0.5f; - _2705 = dot(float3((_2663 * _2663), _2663, 1.0f), float3(mad((_global_0[(_2661 + 2)]), 0.5f, mad(_2668, -1.0f, _2673)), (_2668 - _2665), mad(_2668, 0.5f, _2673))); - } else { - if ((bool)(_2652 >= -0.7447274923324585f) && (bool)(_2652 < 4.673812389373779f)) { - float _2685 = (_2651 * 0.1666666567325592f) + 0.4123218357563019f; - int _2686 = int(_2685); - float _2688 = _2685 - float(_2686); - float _2690 = _global_1[_2686]; - float _2693 = _global_1[(_2686 + 1)]; - float _2698 = _2690 * 0.5f; - _2705 = dot(float3((_2688 * _2688), _2688, 1.0f), float3(mad((_global_1[(_2686 + 2)]), 0.5f, mad(_2693, -1.0f, _2698)), (_2693 - _2690), mad(_2693, 0.5f, _2698))); - } else { - _2705 = 4.0f; - } - } - } else { - _2705 = -4.0f; - } - float _2707 = exp2(_2705 * 3.321928024291992f); - float _2710 = log2(select((_2647 <= 0.0f), 6.103515625e-05f, _2647)); - float _2711 = _2710 * 0.3010300099849701f; - if (!(_2711 <= -5.2601776123046875f)) { - if ((bool)(_2711 > -5.2601776123046875f) && (bool)(_2711 < -0.7447274923324585f)) { - float _2719 = (_2710 * 0.19999998807907104f) + 3.494786262512207f; - int _2720 = int(_2719); - float _2722 = _2719 - float(_2720); - float _2724 = _global_0[_2720]; - float _2727 = _global_0[(_2720 + 1)]; - float _2732 = _2724 * 0.5f; - _2764 = dot(float3((_2722 * _2722), _2722, 1.0f), float3(mad((_global_0[(_2720 + 2)]), 0.5f, mad(_2727, -1.0f, _2732)), (_2727 - _2724), mad(_2727, 0.5f, _2732))); - } else { - if ((bool)(_2711 >= -0.7447274923324585f) && (bool)(_2711 < 4.673812389373779f)) { - float _2744 = (_2710 * 0.1666666567325592f) + 0.4123218357563019f; - int _2745 = int(_2744); - float _2747 = _2744 - float(_2745); - float _2749 = _global_1[_2745]; - float _2752 = _global_1[(_2745 + 1)]; - float _2757 = _2749 * 0.5f; - _2764 = dot(float3((_2747 * _2747), _2747, 1.0f), float3(mad((_global_1[(_2745 + 2)]), 0.5f, mad(_2752, -1.0f, _2757)), (_2752 - _2749), mad(_2752, 0.5f, _2757))); - } else { - _2764 = 4.0f; - } - } - } else { - _2764 = -4.0f; - } - float _2766 = exp2(_2764 * 3.321928024291992f); - float _2769 = log2(select((_2648 <= 0.0f), 6.103515625e-05f, _2648)); - float _2770 = _2769 * 0.3010300099849701f; - if (!(_2770 <= -5.2601776123046875f)) { - if ((bool)(_2770 > -5.2601776123046875f) && (bool)(_2770 < -0.7447274923324585f)) { - float _2778 = (_2769 * 0.19999998807907104f) + 3.494786262512207f; - int _2779 = int(_2778); - float _2781 = _2778 - float(_2779); - float _2783 = _global_0[_2779]; - float _2786 = _global_0[(_2779 + 1)]; - float _2791 = _2783 * 0.5f; - _2823 = dot(float3((_2781 * _2781), _2781, 1.0f), float3(mad((_global_0[(_2779 + 2)]), 0.5f, mad(_2786, -1.0f, _2791)), (_2786 - _2783), mad(_2786, 0.5f, _2791))); - } else { - if ((bool)(_2770 >= -0.7447274923324585f) && (bool)(_2770 < 4.673812389373779f)) { - float _2803 = (_2769 * 0.1666666567325592f) + 0.4123218357563019f; - int _2804 = int(_2803); - float _2806 = _2803 - float(_2804); - float _2808 = _global_1[_2804]; - float _2811 = _global_1[(_2804 + 1)]; - float _2816 = _2808 * 0.5f; - _2823 = dot(float3((_2806 * _2806), _2806, 1.0f), float3(mad((_global_1[(_2804 + 2)]), 0.5f, mad(_2811, -1.0f, _2816)), (_2811 - _2808), mad(_2811, 0.5f, _2816))); - } else { - _2823 = 4.0f; - } - } - } else { - _2823 = -4.0f; - } - float _2825 = exp2(_2823 * 3.321928024291992f); - float _2828 = mad(0.16386906802654266f, _2825, mad(0.14067870378494263f, _2766, (_2707 * 0.6954522132873535f))); - float _2831 = mad(0.0955343171954155f, _2825, mad(0.8596711158752441f, _2766, (_2707 * 0.044794563204050064f))); - float _2834 = mad(1.0015007257461548f, _2825, mad(0.004025210160762072f, _2766, (_2707 * -0.005525882821530104f))); - float _2837 = mad(-0.21492856740951538f, _2834, mad(-0.2365107536315918f, _2831, (_2828 * 1.4514392614364624f))); - float _2840 = mad(-0.09967592358589172f, _2834, mad(1.17622971534729f, _2831, (_2828 * -0.07655377686023712f))); - float _2843 = mad(0.9977163076400757f, _2834, mad(-0.006032449658960104f, _2831, (_2828 * 0.008316148072481155f))); - float _2846 = log2(select((_2837 <= 0.0f), 9.999999747378752e-05f, _2837)); - float _2847 = _2846 * 0.3010300099849701f; - if (!(_2847 <= -3.848327875137329f)) { - if ((bool)(_2847 > -3.848327875137329f) && (bool)(_2847 < 0.6812411546707153f)) { - float _2855 = (_2846 + 12.783867835998535f) * 0.46521204710006714f; - int _2856 = int(_2855); - float _2858 = _2855 - float(_2856); - float _2860 = _global_4[_2856]; - float _2863 = _global_4[(_2856 + 1)]; - float _2868 = _2860 * 0.5f; - _2903 = dot(float3((_2858 * _2858), _2858, 1.0f), float3(mad((_global_4[(_2856 + 2)]), 0.5f, mad(_2863, -1.0f, _2868)), (_2863 - _2860), mad(_2863, 0.5f, _2868))); - } else { - if ((bool)(_2847 >= 0.6812411546707153f) && (bool)(_2847 < 3.7613162994384766f)) { - float _2880 = (_2846 + -2.2630341053009033f) * 0.6841424107551575f; - int _2881 = int(_2880); - float _2883 = _2880 - float(_2881); - float _2885 = _global_5[_2881]; - float _2888 = _global_5[(_2881 + 1)]; - float _2893 = _2885 * 0.5f; - _2903 = dot(float3((_2883 * _2883), _2883, 1.0f), float3(mad((_global_5[(_2881 + 2)]), 0.5f, mad(_2888, -1.0f, _2893)), (_2888 - _2885), mad(_2888, 0.5f, _2893))); - } else { - _2903 = ((_2846 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2903 = -2.301030158996582f; - } - float _2905 = exp2(_2903 * 3.321928024291992f); - float _2908 = log2(select((_2840 <= 0.0f), 9.999999747378752e-05f, _2840)); - float _2909 = _2908 * 0.3010300099849701f; - if (!(_2909 <= -3.848327875137329f)) { - if ((bool)(_2909 > -3.848327875137329f) && (bool)(_2909 < 0.6812411546707153f)) { - float _2917 = (_2908 + 12.783867835998535f) * 0.46521204710006714f; - int _2918 = int(_2917); - float _2920 = _2917 - float(_2918); - float _2922 = _global_4[_2918]; - float _2925 = _global_4[(_2918 + 1)]; - float _2930 = _2922 * 0.5f; - _2965 = dot(float3((_2920 * _2920), _2920, 1.0f), float3(mad((_global_4[(_2918 + 2)]), 0.5f, mad(_2925, -1.0f, _2930)), (_2925 - _2922), mad(_2925, 0.5f, _2930))); - } else { - if ((bool)(_2909 >= 0.6812411546707153f) && (bool)(_2909 < 3.7613162994384766f)) { - float _2942 = (_2908 + -2.2630341053009033f) * 0.6841424107551575f; - int _2943 = int(_2942); - float _2945 = _2942 - float(_2943); - float _2947 = _global_5[_2943]; - float _2950 = _global_5[(_2943 + 1)]; - float _2955 = _2947 * 0.5f; - _2965 = dot(float3((_2945 * _2945), _2945, 1.0f), float3(mad((_global_5[(_2943 + 2)]), 0.5f, mad(_2950, -1.0f, _2955)), (_2950 - _2947), mad(_2950, 0.5f, _2955))); - } else { - _2965 = ((_2908 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2965 = -2.301030158996582f; - } - float _2967 = exp2(_2965 * 3.321928024291992f); - float _2970 = log2(select((_2843 <= 0.0f), 9.999999747378752e-05f, _2843)); - float _2971 = _2970 * 0.3010300099849701f; - if (!(_2971 <= -3.848327875137329f)) { - if ((bool)(_2971 > -3.848327875137329f) && (bool)(_2971 < 0.6812411546707153f)) { - float _2979 = (_2970 + 12.783867835998535f) * 0.46521204710006714f; - int _2980 = int(_2979); - float _2982 = _2979 - float(_2980); - float _2984 = _global_4[_2980]; - float _2987 = _global_4[(_2980 + 1)]; - float _2992 = _2984 * 0.5f; - _3027 = dot(float3((_2982 * _2982), _2982, 1.0f), float3(mad((_global_4[(_2980 + 2)]), 0.5f, mad(_2987, -1.0f, _2992)), (_2987 - _2984), mad(_2987, 0.5f, _2992))); - } else { - if ((bool)(_2971 >= 0.6812411546707153f) && (bool)(_2971 < 3.7613162994384766f)) { - float _3004 = (_2970 + -2.2630341053009033f) * 0.6841424107551575f; - int _3005 = int(_3004); - float _3007 = _3004 - float(_3005); - float _3009 = _global_5[_3005]; - float _3012 = _global_5[(_3005 + 1)]; - float _3017 = _3009 * 0.5f; - _3027 = dot(float3((_3007 * _3007), _3007, 1.0f), float3(mad((_global_5[(_3005 + 2)]), 0.5f, mad(_3012, -1.0f, _3017)), (_3012 - _3009), mad(_3012, 0.5f, _3017))); - } else { - _3027 = ((_2970 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3027 = -2.301030158996582f; - } - float _3029 = exp2(_3027 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _3041 = mad(_38, _3029, mad(_37, _2967, (_2905 * _36))); - _3042 = mad(_41, _3029, mad(_40, _2967, (_2905 * _39))); - _3043 = mad(_44, _3029, mad(_43, _2967, (_2905 * _42))); - } else { - _3041 = _2905; - _3042 = _2967; - _3043 = _3029; - } - float _3053 = exp2(log2(_3041 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3054 = exp2(log2(_3042 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3055 = exp2(log2(_3043 * 9.999999747378752e-05f) * 0.1593017578125f); - _3199 = exp2(log2((1.0f / ((_3053 * 18.6875f) + 1.0f)) * ((_3053 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3200 = exp2(log2((1.0f / ((_3054 * 18.6875f) + 1.0f)) * ((_3054 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_3055 * 18.6875f) + 1.0f)) * ((_3055 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _3088 = mad(0.04736635088920593f, _1731, mad(0.3395121395587921f, _1730, (_1729 * 0.613191545009613f))); - float _3091 = mad(0.01345000695437193f, _1731, mad(0.9163357615470886f, _1730, (_1729 * 0.07020691782236099f))); - float _3094 = mad(0.8696067929267883f, _1731, mad(0.1095672994852066f, _1730, (_1729 * 0.020618872717022896f))); - float _3113 = exp2(log2(mad(_38, _3094, mad(_37, _3091, (_3088 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3114 = exp2(log2(mad(_41, _3094, mad(_40, _3091, (_3088 * _39))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3115 = exp2(log2(mad(_44, _3094, mad(_43, _3091, (_3088 * _42))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3199 = exp2(log2((1.0f / ((_3113 * 18.6875f) + 1.0f)) * ((_3113 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3200 = exp2(log2((1.0f / ((_3114 * 18.6875f) + 1.0f)) * ((_3114 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3201 = exp2(log2((1.0f / ((_3115 * 18.6875f) + 1.0f)) * ((_3115 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3150 = mad(0.04736635088920593f, _1719, mad(0.3395121395587921f, _1718, (_1717 * 0.613191545009613f))); - float _3153 = mad(0.01345000695437193f, _1719, mad(0.9163357615470886f, _1718, (_1717 * 0.07020691782236099f))); - float _3156 = mad(0.8696067929267883f, _1719, mad(0.1095672994852066f, _1718, (_1717 * 0.020618872717022896f))); - _3199 = mad(_38, _3156, mad(_37, _3153, (_3150 * _36))); - _3200 = mad(_41, _3156, mad(_40, _3153, (_3150 * _39))); - _3201 = mad(_44, _3156, mad(_43, _3153, (_3150 * _42))); - } else { - float _3169 = mad(0.04736635088920593f, _1745, mad(0.3395121395587921f, _1744, (_1743 * 0.613191545009613f))); - float _3172 = mad(0.01345000695437193f, _1745, mad(0.9163357615470886f, _1744, (_1743 * 0.07020691782236099f))); - float _3175 = mad(0.8696067929267883f, _1745, mad(0.1095672994852066f, _1744, (_1743 * 0.020618872717022896f))); - float _3188 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3199 = exp2(_3188 * log2(mad(_38, _3175, mad(_37, _3172, (_3169 * _36))))); - _3200 = exp2(_3188 * log2(mad(_41, _3175, mad(_40, _3172, (_3169 * _39))))); - _3201 = exp2(_3188 * log2(mad(_44, _3175, mad(_43, _3172, (_3169 * _42))))); - } - } else { - _3199 = _1729; - _3200 = _1730; - _3201 = _1731; - } - } - } - } - } - } - SV_Target.x = (_3199 * 0.9523810148239136f); - SV_Target.y = (_3200 * 0.9523810148239136f); - SV_Target.z = (_3201 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xDF01A82D.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0xDF01A82D.ps_6_0.hlsl deleted file mode 100644 index 2fe9a80ee..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xDF01A82D.ps_6_0.hlsl +++ /dev/null @@ -1,1659 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -Texture2D t2 : register(t2); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_042x : packoffset(c042.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - float cb0_074x : packoffset(c074.x); - float cb0_074y : packoffset(c074.y); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -SamplerState s2 : register(s2); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _11 = TEXCOORD.x + -0.015625f; - float _12 = TEXCOORD.y + -0.015625f; - float _15 = float((uint)SV_RenderTargetArrayIndex); - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _43; - float _44; - float _101; - float _102; - float _103; - float _341; - float _342; - float _343; - float _509; - float _510; - float _532; - float _533; - float _534; - float _673; - float _674; - float _695; - float _696; - float _697; - float _837; - float _838; - float _859; - float _860; - float _861; - float _940; - float _941; - float _1086; - float _1087; - float _1088; - float _1093; - float _1094; - float _1095; - float _1213; - float _1214; - float _1235; - float _1236; - float _1237; - float _1332; - float _1365; - float _1379; - float _1443; - float _1576; - float _1577; - float _1578; - float _1719; - float _1720; - float _1721; - float _1735; - float _1746; - float _1757; - float _1958; - float _1969; - float _2091; - float _2124; - float _2138; - float _2177; - float _2270; - float _2329; - float _2388; - float _2471; - float _2536; - float _2601; - float _2618; - float _2619; - float _2620; - float _2724; - float _2757; - float _2771; - float _2810; - float _2903; - float _2962; - float _3021; - float _3101; - float _3163; - float _3225; - float _3239; - float _3240; - float _3241; - float _3397; - float _3398; - float _3399; - - const int4 tm_flags = int4( - cb0_046x, - int(RENODX_WUWA_TM == 1.f), - int(RENODX_WUWA_TM == 2.f), - int(RENODX_WUWA_TM == 3.f) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _25 = ((uint)(cb0_074w) == 4); - _36 = select(_25, 1.0f, 1.7050515413284302f); - _37 = select(_25, 0.0f, -0.6217905879020691f); - _38 = select(_25, 0.0f, -0.0832584798336029f); - _39 = select(_25, 0.0f, -0.13025718927383423f); - _40 = select(_25, 1.0f, 1.1408027410507202f); - _41 = select(_25, 0.0f, -0.010548528283834457f); - _42 = select(_25, 0.0f, -0.024003278464078903f); - _43 = select(_25, 0.0f, -0.1289687603712082f); - _44 = select(_25, 1.0f, 1.152971863746643f); - } else { - _36 = 0.6954522132873535f; - _37 = 0.14067870378494263f; - _38 = 0.16386906802654266f; - _39 = 0.044794563204050064f; - _40 = 0.8596711158752441f; - _41 = 0.0955343171954155f; - _42 = -0.005525882821530104f; - _43 = 0.004025210160762072f; - _44 = 1.0015007257461548f; - } - } else { - _36 = 1.02579927444458f; - _37 = -0.020052503794431686f; - _38 = -0.0057713985443115234f; - _39 = -0.0022350111976265907f; - _40 = 1.0045825242996216f; - _41 = -0.002352306619286537f; - _42 = -0.005014004185795784f; - _43 = -0.025293385609984398f; - _44 = 1.0304402112960815f; - } - } else { - _36 = 1.379158854484558f; - _37 = -0.3088507056236267f; - _38 = -0.07034677267074585f; - _39 = -0.06933528929948807f; - _40 = 1.0822921991348267f; - _41 = -0.012962047010660172f; - _42 = -0.002159259282052517f; - _43 = -0.045465391129255295f; - _44 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _54 = exp2(log2(_11 * 1.0322580337524414f) * 0.012683313339948654f); - float _55 = exp2(log2(_12 * 1.0322580337524414f) * 0.012683313339948654f); - float _56 = exp2(log2(_15 * 0.032258063554763794f) * 0.012683313339948654f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _102 = (exp2(log2(max(0.0f, (_55 + -0.8359375f)) / (18.8515625f - (_55 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _103 = (exp2(log2(max(0.0f, (_56 + -0.8359375f)) / (18.8515625f - (_56 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _101 = ((exp2((_11 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _102 = ((exp2((_12 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _103 = ((exp2((_15 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _106 = cb0_047x * 1.0005563497543335f; - float _120 = select((_106 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _106) + 99.11000061035156f) / _106) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _106) + 247.47999572753906f) / _106) + 0.23703999817371368f)); - float _134 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _144 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _149 = ((_134 * 2.0f) + 4.0f) - (_144 * 8.0f); - float _150 = (_134 * 3.0f) / _149; - float _152 = (_144 * 2.0f) / _149; - bool _153 = (cb0_047x < 4000.0f); - float _160 = (cb0_047y * 0.05000000074505806f) * rsqrt(dot(float2(_134, _144), float2(_134, _144))); - float _162 = _134 - (_160 * _144); - float _164 = (_160 * _134) + _144; - float _169 = (4.0f - (_164 * 8.0f)) + (_162 * 2.0f); - float _175 = (((_162 * 3.0f) / _169) - _150) + select(_153, _150, _120); - float _176 = (((_164 * 2.0f) / _169) - _152) + select(_153, _152, (((_120 * 2.869999885559082f) + -0.2750000059604645f) - ((_120 * _120) * 3.0f))); - float _177 = max(_176, 1.000000013351432e-10f); - float _178 = _175 / _177; - float _181 = ((1.0f - _175) - _176) / _177; - float _191 = 0.9413792490959167f / mad(-0.16140000522136688f, _181, ((_178 * 0.8950999975204468f) + 0.266400009393692f)); - float _192 = 1.0404363870620728f / mad(0.03669999912381172f, _181, (1.7135000228881836f - (_178 * 0.7501999735832214f))); - float _193 = 1.089766502380371f / mad(1.0296000242233276f, _181, ((_178 * 0.03889999911189079f) + -0.06849999725818634f)); - float _194 = mad(_192, -0.7501999735832214f, 0.0f); - float _195 = mad(_192, 1.7135000228881836f, 0.0f); - float _196 = mad(_192, 0.03669999912381172f, -0.0f); - float _197 = mad(_193, 0.03889999911189079f, 0.0f); - float _198 = mad(_193, -0.06849999725818634f, 0.0f); - float _199 = mad(_193, 1.0296000242233276f, 0.0f); - float _202 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_191 * 0.883457362651825f))); - float _205 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_191 * 0.26293492317199707f))); - float _208 = mad(0.1599626988172531f, _199, mad(-0.1470542997121811f, _196, (_191 * -0.15930065512657166f))); - float _211 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_191 * 0.38695648312568665f))); - float _214 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_191 * 0.11516613513231277f))); - float _217 = mad(0.04929120093584061f, _199, mad(0.5183603167533875f, _196, (_191 * -0.0697740763425827f))); - float _220 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_191 * -0.007634039502590895f))); - float _223 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_191 * -0.0022720457054674625f))); - float _226 = mad(0.9684867262840271f, _199, mad(0.04004279896616936f, _196, (_191 * 0.0013765322510153055f))); - float _229 = mad(_208, 0.01933390088379383f, mad(_205, 0.2126729041337967f, (_202 * 0.4124563932418823f))); - float _232 = mad(_208, 0.11919199675321579f, mad(_205, 0.7151522040367126f, (_202 * 0.3575761020183563f))); - float _235 = mad(_208, 0.9503040909767151f, mad(_205, 0.07217500358819962f, (_202 * 0.18043750524520874f))); - float _238 = mad(_217, 0.01933390088379383f, mad(_214, 0.2126729041337967f, (_211 * 0.4124563932418823f))); - float _241 = mad(_217, 0.11919199675321579f, mad(_214, 0.7151522040367126f, (_211 * 0.3575761020183563f))); - float _244 = mad(_217, 0.9503040909767151f, mad(_214, 0.07217500358819962f, (_211 * 0.18043750524520874f))); - float _247 = mad(_226, 0.01933390088379383f, mad(_223, 0.2126729041337967f, (_220 * 0.4124563932418823f))); - float _250 = mad(_226, 0.11919199675321579f, mad(_223, 0.7151522040367126f, (_220 * 0.3575761020183563f))); - float _253 = mad(_226, 0.9503040909767151f, mad(_223, 0.07217500358819962f, (_220 * 0.18043750524520874f))); - float _283 = mad(mad(-0.4986107647418976f, _253, mad(-1.5373831987380981f, _244, (_235 * 3.2409698963165283f))), _103, mad(mad(-0.4986107647418976f, _250, mad(-1.5373831987380981f, _241, (_232 * 3.2409698963165283f))), _102, (mad(-0.4986107647418976f, _247, mad(-1.5373831987380981f, _238, (_229 * 3.2409698963165283f))) * _101))); - float _286 = mad(mad(0.04155505821108818f, _253, mad(1.8759675025939941f, _244, (_235 * -0.9692436456680298f))), _103, mad(mad(0.04155505821108818f, _250, mad(1.8759675025939941f, _241, (_232 * -0.9692436456680298f))), _102, (mad(0.04155505821108818f, _247, mad(1.8759675025939941f, _238, (_229 * -0.9692436456680298f))) * _101))); - float _289 = mad(mad(1.056971549987793f, _253, mad(-0.20397695899009705f, _244, (_235 * 0.05563008040189743f))), _103, mad(mad(1.056971549987793f, _250, mad(-0.20397695899009705f, _241, (_232 * 0.05563008040189743f))), _102, (mad(1.056971549987793f, _247, mad(-0.20397695899009705f, _238, (_229 * 0.05563008040189743f))) * _101))); - float _292 = mad(0.04736635088920593f, _289, mad(0.3395121395587921f, _286, (_283 * 0.613191545009613f))); - float _295 = mad(0.01345000695437193f, _289, mad(0.9163357615470886f, _286, (_283 * 0.07020691782236099f))); - float _298 = mad(0.8696067929267883f, _289, mad(0.1095672994852066f, _286, (_283 * 0.020618872717022896f))); - bool _301 = ((uint)(tm_flags.x) == 0); - if (_301) { - float _303 = dot(float3(_292, _295, _298), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _307 = (_292 / _303) + -1.0f; - float _308 = (_295 / _303) + -1.0f; - float _309 = (_298 / _303) + -1.0f; - float _321 = (1.0f - exp2(((_303 * _303) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_307, _308, _309), float3(_307, _308, _309)) * -4.0f)); - _341 = (((mad(-0.06368283927440643f, _298, mad(-0.32929131388664246f, _295, (_292 * 1.370412826538086f))) - _292) * _321) + _292); - _342 = (((mad(-0.010861567221581936f, _298, mad(1.0970908403396606f, _295, (_292 * -0.08343426138162613f))) - _295) * _321) + _295); - _343 = (((mad(1.203694462776184f, _298, mad(-0.09862564504146576f, _295, (_292 * -0.02579325996339321f))) - _298) * _321) + _298); - } else { - _341 = _292; - _342 = _295; - _343 = _298; - } - float _344 = dot(float3(_341, _342, _343), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _358 = cb0_052w + cb0_057w; - float _372 = cb0_051w * cb0_056w; - float _386 = cb0_050w * cb0_055w; - float _400 = cb0_049w * cb0_054w; - float _411 = cb0_048w * cb0_053w; - float _415 = cb0_048x * (_341 - _344); - float _418 = cb0_048y * (_342 - _344); - float _421 = cb0_048z * (_343 - _344); - float _477 = cb0_073w + 1.0f; - float _481 = saturate(_477 * (((cb0_052x + cb0_057x) + _358) + (((cb0_051x * cb0_056x) * _372) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _400) * log2(max(0.0f, (((_415 * cb0_053x) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _386)))))); - float _482 = saturate(_477 * (((cb0_052y + cb0_057y) + _358) + (((cb0_051y * cb0_056y) * _372) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _400) * log2(max(0.0f, (((_418 * cb0_053y) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _386)))))); - float _483 = saturate(_477 * (((cb0_052z + cb0_057z) + _358) + (((cb0_051z * cb0_056z) * _372) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _400) * log2(max(0.0f, (((_421 * cb0_053z) * _411) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _386)))))); - float _487 = max(_481, max(_482, _483)); - float _488 = _487 - min(_481, min(_482, _483)); - if (!(_488 == 0.0f)) { - float _491 = _488 / _487; - if (_481 == _487) { - _509 = ((_482 - _483) / _488); - _510 = _491; - } else { - if (_482 == _487) { - _509 = (((_483 - _481) / _488) + 2.0f); - _510 = _491; - } else { - if (_483 == _487) { - _509 = (((_481 - _482) / _488) + 4.0f); - _510 = _491; - } else { - _509 = 0.0f; - _510 = _491; - } - } - } - } else { - _509 = 0.0f; - _510 = 0.0f; - } - float _512 = _509 + cb0_073z; - float _513 = floor(_512); - float _514 = _512 - _513; - float _515 = 1.0f - _510; - float _517 = 1.0f - (_514 * _510); - float _520 = 1.0f - ((1.0f - _514) * _510); - if (!(_513 == 0.0f)) { - if (!(_513 == 1.0f)) { - if (!(_513 == 2.0f)) { - if (!(_513 == 3.0f)) { - if (!(_513 == 4.0f)) { - _532 = 1.0f; - _533 = _515; - _534 = _517; - } else { - _532 = _520; - _533 = _515; - _534 = 1.0f; - } - } else { - _532 = _515; - _533 = _517; - _534 = 1.0f; - } - } else { - _532 = _515; - _533 = 1.0f; - _534 = _520; - } - } else { - _532 = _517; - _533 = 1.0f; - _534 = _515; - } - } else { - _532 = 1.0f; - _533 = _520; - _534 = _515; - } - float _537 = saturate(_344 / cb0_073x); - float _541 = (_537 * _537) * (3.0f - (_537 * 2.0f)); - float _551 = cb0_067w + cb0_052w; - float _560 = cb0_066w * cb0_051w; - float _569 = cb0_065w * cb0_050w; - float _578 = cb0_064w * cb0_049w; - float _584 = cb0_063w * cb0_048w; - float _645 = saturate((((cb0_067x + cb0_052x) + _551) + (((cb0_066x * cb0_051x) * _560) * exp2(log2(exp2(((cb0_064x * cb0_049x) * _578) * log2(max(0.0f, (((_415 * cb0_063x) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065x * cb0_050x) * _569))))) * _477); - float _646 = saturate((((cb0_067y + cb0_052y) + _551) + (((cb0_066y * cb0_051y) * _560) * exp2(log2(exp2(((cb0_064y * cb0_049y) * _578) * log2(max(0.0f, (((_418 * cb0_063y) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065y * cb0_050y) * _569))))) * _477); - float _647 = saturate((((cb0_067z + cb0_052z) + _551) + (((cb0_066z * cb0_051z) * _560) * exp2(log2(exp2(((cb0_064z * cb0_049z) * _578) * log2(max(0.0f, (((_421 * cb0_063z) * _584) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_065z * cb0_050z) * _569))))) * _477); - float _651 = max(_645, max(_646, _647)); - float _652 = _651 - min(_645, min(_646, _647)); - if (!(_652 == 0.0f)) { - float _655 = _652 / _651; - if (_645 == _651) { - _673 = ((_646 - _647) / _652); - _674 = _655; - } else { - if (_646 == _651) { - _673 = (((_647 - _645) / _652) + 2.0f); - _674 = _655; - } else { - if (_647 == _651) { - _673 = (((_645 - _646) / _652) + 4.0f); - _674 = _655; - } else { - _673 = 0.0f; - _674 = _655; - } - } - } - } else { - _673 = 0.0f; - _674 = 0.0f; - } - float _675 = _673 + cb0_073z; - float _676 = floor(_675); - float _677 = _675 - _676; - float _678 = 1.0f - _674; - float _680 = 1.0f - (_677 * _674); - float _683 = 1.0f - ((1.0f - _677) * _674); - if (!(_676 == 0.0f)) { - if (!(_676 == 1.0f)) { - if (!(_676 == 2.0f)) { - if (!(_676 == 3.0f)) { - if (!(_676 == 4.0f)) { - _695 = 1.0f; - _696 = _678; - _697 = _680; - } else { - _695 = _683; - _696 = _678; - _697 = 1.0f; - } - } else { - _695 = _678; - _696 = _680; - _697 = 1.0f; - } - } else { - _695 = _678; - _696 = 1.0f; - _697 = _683; - } - } else { - _695 = _680; - _696 = 1.0f; - _697 = _678; - } - } else { - _695 = 1.0f; - _696 = _683; - _697 = _678; - } - float _702 = saturate((_344 - cb0_073y) / (1.0f - cb0_073y)); - float _706 = (_702 * _702) * (3.0f - (_702 * 2.0f)); - float _715 = cb0_062w + cb0_052w; - float _724 = cb0_061w * cb0_051w; - float _733 = cb0_060w * cb0_050w; - float _742 = cb0_059w * cb0_049w; - float _748 = cb0_058w * cb0_048w; - float _809 = saturate((((cb0_062x + cb0_052x) + _715) + (((cb0_061x * cb0_051x) * _724) * exp2(log2(exp2(((cb0_059x * cb0_049x) * _742) * log2(max(0.0f, (((_415 * cb0_058x) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060x * cb0_050x) * _733))))) * _477); - float _810 = saturate((((cb0_062y + cb0_052y) + _715) + (((cb0_061y * cb0_051y) * _724) * exp2(log2(exp2(((cb0_059y * cb0_049y) * _742) * log2(max(0.0f, (((_418 * cb0_058y) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060y * cb0_050y) * _733))))) * _477); - float _811 = saturate((((cb0_062z + cb0_052z) + _715) + (((cb0_061z * cb0_051z) * _724) * exp2(log2(exp2(((cb0_059z * cb0_049z) * _742) * log2(max(0.0f, (((_421 * cb0_058z) * _748) + _344)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_060z * cb0_050z) * _733))))) * _477); - float _815 = max(_809, max(_810, _811)); - float _816 = _815 - min(_809, min(_810, _811)); - if (!(_816 == 0.0f)) { - float _819 = _816 / _815; - if (_809 == _815) { - _837 = ((_810 - _811) / _816); - _838 = _819; - } else { - if (_810 == _815) { - _837 = (((_811 - _809) / _816) + 2.0f); - _838 = _819; - } else { - if (_811 == _815) { - _837 = (((_809 - _810) / _816) + 4.0f); - _838 = _819; - } else { - _837 = 0.0f; - _838 = _819; - } - } - } - } else { - _837 = 0.0f; - _838 = 0.0f; - } - float _839 = _837 + cb0_073z; - float _840 = floor(_839); - float _841 = _839 - _840; - float _842 = 1.0f - _838; - float _844 = 1.0f - (_841 * _838); - float _847 = 1.0f - ((1.0f - _841) * _838); - if (!(_840 == 0.0f)) { - if (!(_840 == 1.0f)) { - if (!(_840 == 2.0f)) { - if (!(_840 == 3.0f)) { - if (!(_840 == 4.0f)) { - _859 = 1.0f; - _860 = _842; - _861 = _844; - } else { - _859 = _847; - _860 = _842; - _861 = 1.0f; - } - } else { - _859 = _842; - _860 = _844; - _861 = 1.0f; - } - } else { - _859 = _842; - _860 = 1.0f; - _861 = _847; - } - } else { - _859 = _844; - _860 = 1.0f; - _861 = _842; - } - } else { - _859 = 1.0f; - _860 = _847; - _861 = _842; - } - float _863 = (1.0f - _541) * _487; - float _867 = _815 * (_541 - _706); - float _871 = _706 * _651; - float _876 = ((_871 * _695) + (_863 * _532)) + (_859 * _867); - float _878 = ((_871 * _696) + (_863 * _533)) + (_860 * _867); - float _880 = ((_871 * _697) + (_863 * _534)) + (_861 * _867); - if (!(cb0_074x <= 0.0f)) { - float _887 = min(max(cb0_074y, 1800.0f), 6500.0f); - float _888 = saturate(cb0_074x); - do { - if (_887 < 4000.0f) { - float _899 = ((((_887 * 1.2864121856637212e-07f) + 0.00015411825734190643f) * _887) + 0.8601177334785461f) / ((((_887 * 7.081451371959702e-07f) + 0.0008424202096648514f) * _887) + 1.0f); - float _909 = ((((_887 * 4.204816761443908e-08f) + 4.228062607580796e-05f) * _887) + 0.31739872694015503f) / ((1.0f - (_887 * 2.8974181986995973e-05f)) + ((_887 * _887) * 1.6145605741257896e-07f)); - float _914 = ((_899 * 2.0f) + 4.0f) - (_909 * 8.0f); - _940 = ((_899 * 3.0f) / _914); - _941 = ((_909 * 2.0f) / _914); - } else { - float _919 = _887 * 1.0005563497543335f; - float _933 = select((_919 <= 7000.0f), (((((2967800.0f - (4604438528.0f / _887)) / _919) + 99.11000061035156f) / _919) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / _887)) / _919) + 247.47999572753906f) / _919) + 0.23703999817371368f)); - _940 = _933; - _941 = (((_933 * 2.869999885559082f) + -0.2750000059604645f) - ((_933 * _933) * 3.0f)); - } - float _942 = max(_941, 1.000000013351432e-10f); - float _943 = _940 / _942; - float _946 = ((1.0f - _940) - _941) / _942; - float _949 = mad(-0.16140000522136688f, _946, ((_943 * 0.8950999975204468f) + 0.266400009393692f)); - float _956 = mad(0.03669999912381172f, _946, (1.7135000228881836f - (_943 * 0.7501999735832214f))) * 0.9611351490020752f; - float _957 = mad(1.0296000242233276f, _946, ((_943 * 0.03889999911189079f) + -0.06849999725818634f)) * 0.91762775182724f; - float _958 = mad(_956, -0.7501999735832214f, 0.0f); - float _959 = mad(_956, 1.7135000228881836f, 0.0f); - float _960 = mad(_956, 0.03669999912381172f, -0.0f); - float _961 = mad(_957, 0.03889999911189079f, 0.0f); - float _962 = mad(_957, -0.06849999725818634f, 0.0f); - float _963 = mad(_957, 1.0296000242233276f, 0.0f); - float _966 = mad(0.1599626988172531f, _961, mad(-0.1470542997121811f, _958, (_949 * 0.9384711980819702f))); - float _969 = mad(0.1599626988172531f, _962, mad(-0.1470542997121811f, _959, (_949 * 0.27930817008018494f))); - float _972 = mad(0.1599626988172531f, _963, mad(-0.1470542997121811f, _960, (_949 * -0.16922049224376678f))); - float _975 = mad(0.04929120093584061f, _961, mad(0.5183603167533875f, _958, (_949 * 0.4110526740550995f))); - float _978 = mad(0.04929120093584061f, _962, mad(0.5183603167533875f, _959, (_949 * 0.12233765423297882f))); - float _981 = mad(0.04929120093584061f, _963, mad(0.5183603167533875f, _960, (_949 * -0.07411899417638779f))); - float _984 = mad(0.9684867262840271f, _961, mad(0.04004279896616936f, _958, (_949 * -0.008109419606626034f))); - float _987 = mad(0.9684867262840271f, _962, mad(0.04004279896616936f, _959, (_949 * -0.0024135285057127476f))); - float _990 = mad(0.9684867262840271f, _963, mad(0.04004279896616936f, _960, (_949 * 0.0014622504822909832f))); - float _993 = mad(_972, 0.01933390088379383f, mad(_969, 0.2126729041337967f, (_966 * 0.4124563932418823f))); - float _996 = mad(_972, 0.11919199675321579f, mad(_969, 0.7151522040367126f, (_966 * 0.3575761020183563f))); - float _999 = mad(_972, 0.9503040909767151f, mad(_969, 0.07217500358819962f, (_966 * 0.18043750524520874f))); - float _1002 = mad(_981, 0.01933390088379383f, mad(_978, 0.2126729041337967f, (_975 * 0.4124563932418823f))); - float _1005 = mad(_981, 0.11919199675321579f, mad(_978, 0.7151522040367126f, (_975 * 0.3575761020183563f))); - float _1008 = mad(_981, 0.9503040909767151f, mad(_978, 0.07217500358819962f, (_975 * 0.18043750524520874f))); - float _1011 = mad(_990, 0.01933390088379383f, mad(_987, 0.2126729041337967f, (_984 * 0.4124563932418823f))); - float _1014 = mad(_990, 0.11919199675321579f, mad(_987, 0.7151522040367126f, (_984 * 0.3575761020183563f))); - float _1017 = mad(_990, 0.9503040909767151f, mad(_987, 0.07217500358819962f, (_984 * 0.18043750524520874f))); - float _1053 = mad(mad(1.056971549987793f, _1017, mad(-0.20397695899009705f, _1008, (_999 * 0.05563008040189743f))), _880, mad(mad(1.056971549987793f, _1014, mad(-0.20397695899009705f, _1005, (_996 * 0.05563008040189743f))), _878, (mad(1.056971549987793f, _1011, mad(-0.20397695899009705f, _1002, (_993 * 0.05563008040189743f))) * _876))); - float _1056 = ((_888 * _888) * -0.30000001192092896f) * _1053; - float _1071 = ((min(1.0f, (mad(mad(-0.4986107647418976f, _1017, mad(-1.5373831987380981f, _1008, (_999 * 3.2409698963165283f))), _880, mad(mad(-0.4986107647418976f, _1014, mad(-1.5373831987380981f, _1005, (_996 * 3.2409698963165283f))), _878, (mad(-0.4986107647418976f, _1011, mad(-1.5373831987380981f, _1002, (_993 * 3.2409698963165283f))) * _876))) - (_1056 * 0.18000000715255737f))) - _876) * _888) + _876; - float _1072 = ((min(1.0f, (mad(mad(0.04155505821108818f, _1017, mad(1.8759675025939941f, _1008, (_999 * -0.9692436456680298f))), _880, mad(mad(0.04155505821108818f, _1014, mad(1.8759675025939941f, _1005, (_996 * -0.9692436456680298f))), _878, (mad(0.04155505821108818f, _1011, mad(1.8759675025939941f, _1002, (_993 * -0.9692436456680298f))) * _876))) - (_1056 * 0.12000000476837158f))) - _878) * _888) + _878; - float _1073 = ((max(0.0f, (_1056 + _1053)) - _880) * _888) + _880; - float _1074 = dot(float3(_1071, _1072, _1073), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - do { - if (_1074 > 0.0010000000474974513f) { - float _1081 = (((dot(float3(_876, _878, _880), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)) / _1074) + -1.0f) * 0.800000011920929f) + 1.0f; - _1086 = (_1081 * _1071); - _1087 = (_1081 * _1072); - _1088 = (_1081 * _1073); - } else { - _1086 = _1071; - _1087 = _1072; - _1088 = _1073; - } - _1093 = max(0.0f, _1086); - _1094 = max(0.0f, _1087); - _1095 = max(0.0f, _1088); - } while (false); - } while (false); - } else { - _1093 = _876; - _1094 = _878; - _1095 = _880; - } - float _1121 = dot(float3(_1093, _1094, _1095), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1185 = saturate(((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_1093 - _1121)) + _1121)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w))))) * _477); - float _1186 = saturate(((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_1094 - _1121)) + _1121)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w))))) * _477); - float _1187 = saturate(((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_1095 - _1121)) + _1121)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w))))) * _477); - float _1191 = max(_1185, max(_1186, _1187)); - float _1192 = _1191 - min(_1185, min(_1186, _1187)); - if (!(_1192 == 0.0f)) { - float _1195 = _1192 / _1191; - if (_1185 == _1191) { - _1213 = ((_1186 - _1187) / _1192); - _1214 = _1195; - } else { - if (_1186 == _1191) { - _1213 = (((_1187 - _1185) / _1192) + 2.0f); - _1214 = _1195; - } else { - if (_1187 == _1191) { - _1213 = (((_1185 - _1186) / _1192) + 4.0f); - _1214 = _1195; - } else { - _1213 = 0.0f; - _1214 = _1195; - } - } - } - } else { - _1213 = 0.0f; - _1214 = 0.0f; - } - float _1215 = _1213 + cb0_073z; - float _1216 = floor(_1215); - float _1217 = _1215 - _1216; - float _1218 = 1.0f - _1214; - float _1220 = 1.0f - (_1217 * _1214); - float _1223 = 1.0f - ((1.0f - _1217) * _1214); - if (!(_1216 == 0.0f)) { - if (!(_1216 == 1.0f)) { - if (!(_1216 == 2.0f)) { - if (!(_1216 == 3.0f)) { - if (!(_1216 == 4.0f)) { - _1235 = 1.0f; - _1236 = _1218; - _1237 = _1220; - } else { - _1235 = _1223; - _1236 = _1218; - _1237 = 1.0f; - } - } else { - _1235 = _1218; - _1236 = _1220; - _1237 = 1.0f; - } - } else { - _1235 = _1218; - _1236 = 1.0f; - _1237 = _1223; - } - } else { - _1235 = _1220; - _1236 = 1.0f; - _1237 = _1218; - } - } else { - _1235 = 1.0f; - _1236 = _1223; - _1237 = _1218; - } - float _1238 = _1235 * _1191; - float _1239 = _1236 * _1191; - float _1240 = _1237 * _1191; - float _1243 = mad(-0.0832584798336029f, _1240, mad(-0.6217905879020691f, _1239, (_1238 * 1.7050515413284302f))); - float _1246 = mad(-0.010548528283834457f, _1240, mad(1.1408027410507202f, _1239, (_1238 * -0.13025718927383423f))); - float _1249 = mad(1.152971863746643f, _1240, mad(-0.1289687603712082f, _1239, (_1238 * -0.024003278464078903f))); - float _1265 = ((mad(0.061360642313957214f, _1240, mad(-4.540197551250458e-09f, _1239, (_1238 * 0.9386394023895264f))) - _1238) * cb0_075x) + _1238; - float _1266 = ((mad(0.169205904006958f, _1240, mad(0.8307942152023315f, _1239, (_1238 * 6.775371730327606e-08f))) - _1239) * cb0_075x) + _1239; - float _1267 = (mad(-2.3283064365386963e-10f, _1239, (_1238 * -9.313225746154785e-10f)) * cb0_075x) + _1240; - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1277 = mad(0.16386905312538147f, _1267, mad(0.14067868888378143f, _1266, (_1265 * 0.6954522132873535f))); - float _1280 = mad(0.0955343246459961f, _1267, mad(0.8596711158752441f, _1266, (_1265 * 0.044794581830501556f))); - float _1283 = mad(1.0015007257461548f, _1267, mad(0.004025210160762072f, _1266, (_1265 * -0.005525882821530104f))); - float _1287 = max(max(_1277, _1280), _1283); - float _1292 = (max(_1287, 1.000000013351432e-10f) - max(min(min(_1277, _1280), _1283), 1.000000013351432e-10f)) / max(_1287, 0.009999999776482582f); - float _1305 = ((_1280 + _1277) + _1283) + (sqrt((((_1283 - _1280) * _1283) + ((_1280 - _1277) * _1280)) + ((_1277 - _1283) * _1277)) * 1.75f); - float _1306 = _1305 * 0.3333333432674408f; - float _1307 = _1292 + -0.4000000059604645f; - float _1308 = _1307 * 5.0f; - float _1312 = max((1.0f - abs(_1307 * 2.5f)), 0.0f); - float _1323 = ((float(((int)(uint)((bool)(_1308 > 0.0f))) - ((int)(uint)((bool)(_1308 < 0.0f)))) * (1.0f - (_1312 * _1312))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_1306 <= 0.0533333346247673f)) { - if (!(_1306 >= 0.1599999964237213f)) { - _1332 = (((0.23999999463558197f / _1305) + -0.5f) * _1323); - } else { - _1332 = 0.0f; - } - } else { - _1332 = _1323; - } - float _1333 = _1332 + 1.0f; - float _1334 = _1333 * _1277; - float _1335 = _1333 * _1280; - float _1336 = _1333 * _1283; - do { - if (!((bool)(_1334 == _1335) && (bool)(_1335 == _1336))) { - float _1343 = ((_1334 * 2.0f) - _1335) - _1336; - float _1346 = ((_1280 - _1283) * 1.7320507764816284f) * _1333; - float _1348 = atan(_1346 / _1343); - bool _1351 = (_1343 < 0.0f); - bool _1352 = (_1343 == 0.0f); - bool _1353 = (_1346 >= 0.0f); - bool _1354 = (_1346 < 0.0f); - _1365 = select((_1353 && _1352), 90.0f, select((_1354 && _1352), -90.0f, (select((_1354 && _1351), (_1348 + -3.1415927410125732f), select((_1353 && _1351), (_1348 + 3.1415927410125732f), _1348)) * 57.2957763671875f))); - } else { - _1365 = 0.0f; - } - float _1370 = min(max(select((_1365 < 0.0f), (_1365 + 360.0f), _1365), 0.0f), 360.0f); - do { - if (_1370 < -180.0f) { - _1379 = (_1370 + 360.0f); - } else { - if (_1370 > 180.0f) { - _1379 = (_1370 + -360.0f); - } else { - _1379 = _1370; - } - } - float _1383 = saturate(1.0f - abs(_1379 * 0.014814814552664757f)); - float _1387 = (_1383 * _1383) * (3.0f - (_1383 * 2.0f)); - float _1393 = ((_1387 * _1387) * ((_1292 * 0.18000000715255737f) * (0.029999999329447746f - _1334))) + _1334; - float _1403 = max(0.0f, mad(-0.21492856740951538f, _1336, mad(-0.2365107536315918f, _1335, (_1393 * 1.4514392614364624f)))); - float _1404 = max(0.0f, mad(-0.09967592358589172f, _1336, mad(1.17622971534729f, _1335, (_1393 * -0.07655377686023712f)))); - float _1405 = max(0.0f, mad(0.9977163076400757f, _1336, mad(-0.006032449658960104f, _1335, (_1393 * 0.008316148072481155f)))); - float _1406 = dot(float3(_1403, _1404, _1405), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1420 = (cb0_036w + 1.0f) - cb0_036y; - float _1423 = cb0_037x + 1.0f; - float _1425 = _1423 - cb0_036z; - do { - if (cb0_036y > 0.800000011920929f) { - _1443 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1434 = (cb0_036w + 0.18000000715255737f) / _1420; - _1443 = (-0.7447274923324585f - ((log2(_1434 / (2.0f - _1434)) * 0.3465735912322998f) * (_1420 / cb0_036x))); - } - float _1446 = ((1.0f - cb0_036y) / cb0_036x) - _1443; - float _1448 = (cb0_036z / cb0_036x) - _1446; - float _1452 = log2(lerp(_1406, _1403, 0.9599999785423279f)) * 0.3010300099849701f; - float _1453 = log2(lerp(_1406, _1404, 0.9599999785423279f)) * 0.3010300099849701f; - float _1454 = log2(lerp(_1406, _1405, 0.9599999785423279f)) * 0.3010300099849701f; - float _1458 = (_1452 + _1446) * cb0_036x; - float _1459 = (_1453 + _1446) * cb0_036x; - float _1460 = (_1454 + _1446) * cb0_036x; - float _1461 = _1420 * 2.0f; - float _1464 = _1452 - _1443; - float _1465 = _1453 - _1443; - float _1466 = _1454 - _1443; - float _1467 = ((cb0_036x * -2.0f) / _1420) * 1.4426950216293335f; - float _1483 = _1425 * 2.0f; - float _1489 = ((cb0_036x * 2.0f) / _1425) * 1.4426950216293335f; - float _1508 = select((_1452 < _1443), ((_1461 / (exp2(_1467 * _1464) + 1.0f)) - cb0_036w), _1458); - float _1509 = select((_1453 < _1443), ((_1461 / (exp2(_1467 * _1465) + 1.0f)) - cb0_036w), _1459); - float _1510 = select((_1454 < _1443), ((_1461 / (exp2(_1467 * _1466) + 1.0f)) - cb0_036w), _1460); - float _1517 = _1448 - _1443; - float _1521 = saturate(_1464 / _1517); - float _1522 = saturate(_1465 / _1517); - float _1523 = saturate(_1466 / _1517); - bool _1524 = (_1448 < _1443); - float _1528 = select(_1524, (1.0f - _1521), _1521); - float _1529 = select(_1524, (1.0f - _1522), _1522); - float _1530 = select(_1524, (1.0f - _1523), _1523); - float _1549 = (((_1528 * _1528) * (select((_1452 > _1448), (_1423 - (_1483 / (exp2(_1489 * (_1452 - _1448)) + 1.0f))), _1458) - _1508)) * (3.0f - (_1528 * 2.0f))) + _1508; - float _1550 = (((_1529 * _1529) * (select((_1453 > _1448), (_1423 - (_1483 / (exp2(_1489 * (_1453 - _1448)) + 1.0f))), _1459) - _1509)) * (3.0f - (_1529 * 2.0f))) + _1509; - float _1551 = (((_1530 * _1530) * (select((_1454 > _1448), (_1423 - (_1483 / (exp2(_1489 * (_1454 - _1448)) + 1.0f))), _1460) - _1510)) * (3.0f - (_1530 * 2.0f))) + _1510; - float _1552 = dot(float3(_1549, _1550, _1551), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1576 = (((max(0.0f, (lerp(_1552, _1549, 0.9300000071525574f))) - _1265) * cb0_075z) + _1265); - _1577 = (((max(0.0f, (lerp(_1552, _1550, 0.9300000071525574f))) - _1266) * cb0_075z) + _1266); - _1578 = (((max(0.0f, (lerp(_1552, _1551, 0.9300000071525574f))) - _1267) * cb0_075z) + _1267); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - _1576 = _1265; - _1577 = _1266; - _1578 = _1267; - } - float _1594 = ((mad(-0.06537103652954102f, _1578, mad(1.451815478503704e-06f, _1577, (_1576 * 1.065374732017517f))) - _1576) * cb0_075x) + _1576; - float _1595 = ((mad(-0.20366770029067993f, _1578, mad(1.2036634683609009f, _1577, (_1576 * -2.57161445915699e-07f))) - _1577) * cb0_075x) + _1577; - float _1596 = ((mad(0.9999996423721313f, _1578, mad(2.0954757928848267e-08f, _1577, (_1576 * 1.862645149230957e-08f))) - _1578) * cb0_075x) + _1578; - [branch] - if (!_301) { - float _1639 = 1.0f / (dot(float3(_1243, _1246, _1249), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1649 = max(0.0f, (((_1639 * cb0_035x) + cb0_034x) * dot(float3(_1243, _1246, _1249), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1650 = max(0.0f, (((_1639 * cb0_035y) + cb0_034y) * dot(float3(_1243, _1246, _1249), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1651 = max(0.0f, (((_1639 * cb0_035z) + cb0_034z) * dot(float3(_1243, _1246, _1249), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1657 = max(0.0f, (cb0_031x - _1649)); - float _1658 = max(0.0f, (cb0_031x - _1650)); - float _1659 = max(0.0f, (cb0_031x - _1651)); - float _1661 = max(_1649, cb0_031z); - float _1662 = max(_1650, cb0_031z); - float _1663 = max(_1651, cb0_031z); - float _1708 = cb0_029w + -0.0020000000949949026f; - _1719 = ((((min(max(_1649, cb0_031x), cb0_031z) * cb0_030w) + _1708) + (((cb0_032x * _1661) + cb0_032y) * (1.0f / (_1661 + cb0_031w)))) + ((_1657 * cb0_028w) * (1.0f / (cb0_031y + _1657)))); - _1720 = ((((min(max(_1650, cb0_031x), cb0_031z) * cb0_030w) + _1708) + (((cb0_032x * _1662) + cb0_032y) * (1.0f / (_1662 + cb0_031w)))) + ((_1658 * cb0_028w) * (1.0f / (_1658 + cb0_031y)))); - _1721 = ((((min(max(_1651, cb0_031x), cb0_031z) * cb0_030w) + _1708) + ((1.0f / (_1663 + cb0_031w)) * ((cb0_032x * _1663) + cb0_032y))) + ((_1659 * cb0_028w) * (1.0f / (_1659 + cb0_031y)))); - } else { - _1719 = max(0.0f, mad(-0.0832584798336029f, _1596, mad(-0.6217905879020691f, _1595, (_1594 * 1.7050515413284302f)))); - _1720 = max(0.0f, mad(-0.010548528283834457f, _1596, mad(1.1408027410507202f, _1595, (_1594 * -0.13025718927383423f)))); - _1721 = max(0.0f, mad(1.152971863746643f, _1596, mad(-0.1289687603712082f, _1595, (_1594 * -0.024003278464078903f)))); - } - float _1722 = saturate(_1719); - float _1723 = saturate(_1720); - float _1724 = saturate(_1721); - if (_1722 < 0.0031306699384003878f) { - _1735 = (_1722 * 12.920000076293945f); - } else { - _1735 = (((pow(_1722, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1723 < 0.0031306699384003878f) { - _1746 = (_1723 * 12.920000076293945f); - } else { - _1746 = (((pow(_1723, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1724 < 0.0031306699384003878f) { - _1757 = (_1724 * 12.920000076293945f); - } else { - _1757 = (((pow(_1724, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1761 = (_1746 * 0.9375f) + 0.03125f; - float _1769 = _1757 * 15.0f; - float _1770 = floor(_1769); - float _1771 = _1769 - _1770; - float _1773 = (((_1735 * 0.9375f) + 0.03125f) + _1770) * 0.0625f; - float4 _1774 = t1.Sample(s1, float2(_1773, _1761)); - float _1778 = _1773 + 0.0625f; - float4 _1779 = t1.Sample(s1, float2(_1778, _1761)); - float4 _1800 = t2.Sample(s2, float2(_1773, _1761)); - float4 _1804 = t2.Sample(s2, float2(_1778, _1761)); - float _1820 = (((lerp(_1774.x, _1779.x, _1771)) * cb0_041x) + (cb0_040x * _1735)) + ((lerp(_1800.x, _1804.x, _1771)) * cb0_042x); - float _1821 = (((lerp(_1774.y, _1779.y, _1771)) * cb0_041x) + (cb0_040x * _1746)) + ((lerp(_1800.y, _1804.y, _1771)) * cb0_042x); - float _1822 = (((lerp(_1774.z, _1779.z, _1771)) * cb0_041x) + (cb0_040x * _1757)) + ((lerp(_1800.z, _1804.z, _1771)) * cb0_042x); - float4 _1825 = t0.Sample(s0, float2(_1773, _1761)); - float4 _1829 = t0.Sample(s0, float2(_1778, _1761)); - float _1847 = cb0_038w * cb0_039z; - float _1854 = max(6.103519990574569e-05f, ((((_1825.x - _1820) + ((_1829.x - _1825.x) * _1771)) * _1847) + _1820)); - float _1855 = max(6.103519990574569e-05f, ((((_1825.y - _1821) + ((_1829.y - _1825.y) * _1771)) * _1847) + _1821)); - float _1856 = max(6.103519990574569e-05f, ((((_1825.z - _1822) + ((_1829.z - _1825.z) * _1771)) * _1847) + _1822)); - float _1878 = select((_1854 > 0.040449999272823334f), exp2(log2((_1854 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1854 * 0.07739938050508499f)); - float _1879 = select((_1855 > 0.040449999272823334f), exp2(log2((_1855 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1855 * 0.07739938050508499f)); - float _1880 = select((_1856 > 0.040449999272823334f), exp2(log2((_1856 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1856 * 0.07739938050508499f)); - float _1906 = ((((cb0_026x * _1878) + cb0_026y) * _1878) + cb0_026z) * cb0_044y; - float _1907 = ((((cb0_026x * _1879) + cb0_026y) * _1879) + cb0_026z) * cb0_044z; - float _1908 = ((((cb0_026x * _1880) + cb0_026y) * _1880) + cb0_026z) * cb0_044w; - float _1915 = ((cb0_045x - _1906) * cb0_045w) + _1906; - float _1916 = ((cb0_045y - _1907) * cb0_045w) + _1907; - float _1917 = ((cb0_045z - _1908) * cb0_045w) + _1908; - float _1918 = cb0_044y * _1243; - float _1919 = cb0_044z * _1246; - float _1920 = cb0_044w * _1249; - float _1927 = ((cb0_045x - _1918) * cb0_045w) + _1918; - float _1928 = ((cb0_045y - _1919) * cb0_045w) + _1919; - float _1929 = ((cb0_045z - _1920) * cb0_045w) + _1920; - float _1941 = exp2(log2(max(0.0f, _1915)) * cb0_027y); - float _1942 = exp2(log2(max(0.0f, _1916)) * cb0_027y); - float _1943 = exp2(log2(max(0.0f, _1917)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1941, _1942, _1943)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - do { - if (_1941 < 0.0031306699384003878f) { - _1958 = (_1941 * 12.920000076293945f); - } else { - _1958 = (((pow(_1941, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - do { - if (_1942 < 0.0031306699384003878f) { - _1969 = (_1942 * 12.920000076293945f); - } else { - _1969 = (((pow(_1942, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1943 < 0.0031306699384003878f) { - _3397 = _1958; - _3398 = _1969; - _3399 = (_1943 * 12.920000076293945f); - } else { - _3397 = _1958; - _3398 = _1969; - _3399 = (((pow(_1943, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 1) { - float _1984 = mad(0.04736635088920593f, _1943, mad(0.3395121395587921f, _1942, (_1941 * 0.613191545009613f))); - float _1987 = mad(0.01345000695437193f, _1943, mad(0.9163357615470886f, _1942, (_1941 * 0.07020691782236099f))); - float _1990 = mad(0.8696067929267883f, _1943, mad(0.1095672994852066f, _1942, (_1941 * 0.020618872717022896f))); - float _2000 = max(6.103519990574569e-05f, mad(_38, _1990, mad(_37, _1987, (_1984 * _36)))); - float _2001 = max(6.103519990574569e-05f, mad(_41, _1990, mad(_40, _1987, (_1984 * _39)))); - float _2002 = max(6.103519990574569e-05f, mad(_44, _1990, mad(_43, _1987, (_1984 * _42)))); - _3397 = min((_2000 * 4.5f), ((exp2(log2(max(_2000, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3398 = min((_2001 * 4.5f), ((exp2(log2(max(_2001, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3399 = min((_2002 * 4.5f), ((exp2(log2(max(_2002, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _2029 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _2029) { - float _2032 = _1928 * 3.0f; - float _2033 = _1929 * 3.0f; - float _2036 = mad(0.17733481526374817f, _2033, mad(0.38297808170318604f, _2032, (_1927 * 1.31910240650177f))); - float _2039 = mad(0.09676162153482437f, _2033, mad(0.8134231567382812f, _2032, (_1927 * 0.2693769633769989f))); - float _2042 = mad(0.870704174041748f, _2033, mad(0.11154405772686005f, _2032, (_1927 * 0.05263196676969528f))); - float _2046 = max(max(_2036, _2039), _2042); - float _2051 = (max(_2046, 1.000000013351432e-10f) - max(min(min(_2036, _2039), _2042), 1.000000013351432e-10f)) / max(_2046, 0.009999999776482582f); - float _2064 = ((_2039 + _2036) + _2042) + (sqrt((((_2042 - _2039) * _2042) + ((_2039 - _2036) * _2039)) + ((_2036 - _2042) * _2036)) * 1.75f); - float _2065 = _2064 * 0.3333333432674408f; - float _2066 = _2051 + -0.4000000059604645f; - float _2067 = _2066 * 5.0f; - float _2071 = max((1.0f - abs(_2066 * 2.5f)), 0.0f); - float _2082 = ((float(((int)(uint)((bool)(_2067 > 0.0f))) - ((int)(uint)((bool)(_2067 < 0.0f)))) * (1.0f - (_2071 * _2071))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2065 <= 0.0533333346247673f)) { - if (!(_2065 >= 0.1599999964237213f)) { - _2091 = (((0.23999999463558197f / _2064) + -0.5f) * _2082); - } else { - _2091 = 0.0f; - } - } else { - _2091 = _2082; - } - float _2092 = _2091 + 1.0f; - float _2093 = _2092 * _2036; - float _2094 = _2092 * _2039; - float _2095 = _2092 * _2042; - do { - if (!((bool)(_2093 == _2094) && (bool)(_2094 == _2095))) { - float _2102 = ((_2093 * 2.0f) - _2094) - _2095; - float _2105 = ((_2039 - _2042) * 1.7320507764816284f) * _2092; - float _2107 = atan(_2105 / _2102); - bool _2110 = (_2102 < 0.0f); - bool _2111 = (_2102 == 0.0f); - bool _2112 = (_2105 >= 0.0f); - bool _2113 = (_2105 < 0.0f); - _2124 = select((_2112 && _2111), 90.0f, select((_2113 && _2111), -90.0f, (select((_2113 && _2110), (_2107 + -3.1415927410125732f), select((_2112 && _2110), (_2107 + 3.1415927410125732f), _2107)) * 57.2957763671875f))); - } else { - _2124 = 0.0f; - } - float _2129 = min(max(select((_2124 < 0.0f), (_2124 + 360.0f), _2124), 0.0f), 360.0f); - do { - if (_2129 < -180.0f) { - _2138 = (_2129 + 360.0f); - } else { - if (_2129 > 180.0f) { - _2138 = (_2129 + -360.0f); - } else { - _2138 = _2129; - } - } - do { - if ((bool)(_2138 > -67.5f) && (bool)(_2138 < 67.5f)) { - float _2144 = (_2138 + 67.5f) * 0.029629629105329514f; - int _2145 = int(_2144); - float _2147 = _2144 - float(_2145); - float _2148 = _2147 * _2147; - float _2149 = _2148 * _2147; - if (_2145 == 3) { - _2177 = (((0.1666666716337204f - (_2147 * 0.5f)) + (_2148 * 0.5f)) - (_2149 * 0.1666666716337204f)); - } else { - if (_2145 == 2) { - _2177 = ((0.6666666865348816f - _2148) + (_2149 * 0.5f)); - } else { - if (_2145 == 1) { - _2177 = ((0.1666666716337204f - (_2149 * 0.5f)) + ((_2148 + _2147) * 0.5f)); - } else { - _2177 = select((_2145 == 0), (_2149 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2177 = 0.0f; - } - float _2186 = min(max(((((_2051 * 0.27000001072883606f) * (0.029999999329447746f - _2093)) * _2177) + _2093), 0.0f), 65535.0f); - float _2187 = min(max(_2094, 0.0f), 65535.0f); - float _2188 = min(max(_2095, 0.0f), 65535.0f); - float _2201 = min(max(mad(-0.21492856740951538f, _2188, mad(-0.2365107536315918f, _2187, (_2186 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2202 = min(max(mad(-0.09967592358589172f, _2188, mad(1.17622971534729f, _2187, (_2186 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2203 = min(max(mad(0.9977163076400757f, _2188, mad(-0.006032449658960104f, _2187, (_2186 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2204 = dot(float3(_2201, _2202, _2203), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2211 = ((_2201 - _2204) * 0.9599999785423279f) + _2204; - float _2212 = ((_2202 - _2204) * 0.9599999785423279f) + _2204; - float _2213 = ((_2203 - _2204) * 0.9599999785423279f) + _2204; - float _2216 = log2(select((_2211 <= 0.0f), 6.103515625e-05f, _2211)); - float _2217 = _2216 * 0.3010300099849701f; - do { - if (!(_2217 <= -5.2601776123046875f)) { - if ((bool)(_2217 > -5.2601776123046875f) && (bool)(_2217 < -0.7447274923324585f)) { - float _2225 = (_2216 * 0.19999998807907104f) + 3.494786262512207f; - int _2226 = int(_2225); - float _2228 = _2225 - float(_2226); - float _2230 = _global_0[_2226]; - float _2233 = _global_0[(_2226 + 1)]; - float _2238 = _2230 * 0.5f; - _2270 = dot(float3((_2228 * _2228), _2228, 1.0f), float3(mad((_global_0[(_2226 + 2)]), 0.5f, mad(_2233, -1.0f, _2238)), (_2233 - _2230), mad(_2233, 0.5f, _2238))); - } else { - if ((bool)(_2217 >= -0.7447274923324585f) && (bool)(_2217 < 4.673812389373779f)) { - float _2250 = (_2216 * 0.1666666567325592f) + 0.4123218357563019f; - int _2251 = int(_2250); - float _2253 = _2250 - float(_2251); - float _2255 = _global_1[_2251]; - float _2258 = _global_1[(_2251 + 1)]; - float _2263 = _2255 * 0.5f; - _2270 = dot(float3((_2253 * _2253), _2253, 1.0f), float3(mad((_global_1[(_2251 + 2)]), 0.5f, mad(_2258, -1.0f, _2263)), (_2258 - _2255), mad(_2258, 0.5f, _2263))); - } else { - _2270 = 4.0f; - } - } - } else { - _2270 = -4.0f; - } - float _2272 = exp2(_2270 * 3.321928024291992f); - float _2275 = log2(select((_2212 <= 0.0f), 6.103515625e-05f, _2212)); - float _2276 = _2275 * 0.3010300099849701f; - do { - if (!(_2276 <= -5.2601776123046875f)) { - if ((bool)(_2276 > -5.2601776123046875f) && (bool)(_2276 < -0.7447274923324585f)) { - float _2284 = (_2275 * 0.19999998807907104f) + 3.494786262512207f; - int _2285 = int(_2284); - float _2287 = _2284 - float(_2285); - float _2289 = _global_0[_2285]; - float _2292 = _global_0[(_2285 + 1)]; - float _2297 = _2289 * 0.5f; - _2329 = dot(float3((_2287 * _2287), _2287, 1.0f), float3(mad((_global_0[(_2285 + 2)]), 0.5f, mad(_2292, -1.0f, _2297)), (_2292 - _2289), mad(_2292, 0.5f, _2297))); - } else { - if ((bool)(_2276 >= -0.7447274923324585f) && (bool)(_2276 < 4.673812389373779f)) { - float _2309 = (_2275 * 0.1666666567325592f) + 0.4123218357563019f; - int _2310 = int(_2309); - float _2312 = _2309 - float(_2310); - float _2314 = _global_1[_2310]; - float _2317 = _global_1[(_2310 + 1)]; - float _2322 = _2314 * 0.5f; - _2329 = dot(float3((_2312 * _2312), _2312, 1.0f), float3(mad((_global_1[(_2310 + 2)]), 0.5f, mad(_2317, -1.0f, _2322)), (_2317 - _2314), mad(_2317, 0.5f, _2322))); - } else { - _2329 = 4.0f; - } - } - } else { - _2329 = -4.0f; - } - float _2331 = exp2(_2329 * 3.321928024291992f); - float _2334 = log2(select((_2213 <= 0.0f), 6.103515625e-05f, _2213)); - float _2335 = _2334 * 0.3010300099849701f; - do { - if (!(_2335 <= -5.2601776123046875f)) { - if ((bool)(_2335 > -5.2601776123046875f) && (bool)(_2335 < -0.7447274923324585f)) { - float _2343 = (_2334 * 0.19999998807907104f) + 3.494786262512207f; - int _2344 = int(_2343); - float _2346 = _2343 - float(_2344); - float _2348 = _global_0[_2344]; - float _2351 = _global_0[(_2344 + 1)]; - float _2356 = _2348 * 0.5f; - _2388 = dot(float3((_2346 * _2346), _2346, 1.0f), float3(mad((_global_0[(_2344 + 2)]), 0.5f, mad(_2351, -1.0f, _2356)), (_2351 - _2348), mad(_2351, 0.5f, _2356))); - } else { - if ((bool)(_2335 >= -0.7447274923324585f) && (bool)(_2335 < 4.673812389373779f)) { - float _2368 = (_2334 * 0.1666666567325592f) + 0.4123218357563019f; - int _2369 = int(_2368); - float _2371 = _2368 - float(_2369); - float _2373 = _global_1[_2369]; - float _2376 = _global_1[(_2369 + 1)]; - float _2381 = _2373 * 0.5f; - _2388 = dot(float3((_2371 * _2371), _2371, 1.0f), float3(mad((_global_1[(_2369 + 2)]), 0.5f, mad(_2376, -1.0f, _2381)), (_2376 - _2373), mad(_2376, 0.5f, _2381))); - } else { - _2388 = 4.0f; - } - } - } else { - _2388 = -4.0f; - } - float _2390 = exp2(_2388 * 3.321928024291992f); - float _2393 = mad(0.16386906802654266f, _2390, mad(0.14067870378494263f, _2331, (_2272 * 0.6954522132873535f))); - float _2396 = mad(0.0955343171954155f, _2390, mad(0.8596711158752441f, _2331, (_2272 * 0.044794563204050064f))); - float _2399 = mad(1.0015007257461548f, _2390, mad(0.004025210160762072f, _2331, (_2272 * -0.005525882821530104f))); - float _2402 = mad(-0.21492856740951538f, _2399, mad(-0.2365107536315918f, _2396, (_2393 * 1.4514392614364624f))); - float _2405 = mad(-0.09967592358589172f, _2399, mad(1.17622971534729f, _2396, (_2393 * -0.07655377686023712f))); - float _2408 = mad(0.9977163076400757f, _2399, mad(-0.006032449658960104f, _2396, (_2393 * 0.008316148072481155f))); - float _2411 = log2(select((_2402 <= 0.0f), 9.999999747378752e-05f, _2402)); - float _2412 = _2411 * 0.3010300099849701f; - do { - if (!(!(_2412 <= -3.848327875137329f))) { - _2471 = ((_2411 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2412 > -3.848327875137329f) && (bool)(_2412 < 0.6812411546707153f)) { - float _2423 = (_2411 + 12.783867835998535f) * 0.46521204710006714f; - int _2424 = int(_2423); - float _2426 = _2423 - float(_2424); - float _2428 = _global_2[_2424]; - float _2431 = _global_2[(_2424 + 1)]; - float _2436 = _2428 * 0.5f; - _2471 = dot(float3((_2426 * _2426), _2426, 1.0f), float3(mad((_global_2[(_2424 + 2)]), 0.5f, mad(_2431, -1.0f, _2436)), (_2431 - _2428), mad(_2431, 0.5f, _2436))); - } else { - if ((bool)(_2412 >= 0.6812411546707153f) && (bool)(_2412 < 3.653702974319458f)) { - float _2448 = (_2411 + -2.2630341053009033f) * 0.7089107632637024f; - int _2449 = int(_2448); - float _2451 = _2448 - float(_2449); - float _2453 = _global_3[_2449]; - float _2456 = _global_3[(_2449 + 1)]; - float _2461 = _2453 * 0.5f; - _2471 = dot(float3((_2451 * _2451), _2451, 1.0f), float3(mad((_global_3[(_2449 + 2)]), 0.5f, mad(_2456, -1.0f, _2461)), (_2456 - _2453), mad(_2456, 0.5f, _2461))); - } else { - _2471 = ((_2411 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2476 = log2(select((_2405 <= 0.0f), 9.999999747378752e-05f, _2405)); - float _2477 = _2476 * 0.3010300099849701f; - do { - if (!(!(_2477 <= -3.848327875137329f))) { - _2536 = ((_2476 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2477 > -3.848327875137329f) && (bool)(_2477 < 0.6812411546707153f)) { - float _2488 = (_2476 + 12.783867835998535f) * 0.46521204710006714f; - int _2489 = int(_2488); - float _2491 = _2488 - float(_2489); - float _2493 = _global_2[_2489]; - float _2496 = _global_2[(_2489 + 1)]; - float _2501 = _2493 * 0.5f; - _2536 = dot(float3((_2491 * _2491), _2491, 1.0f), float3(mad((_global_2[(_2489 + 2)]), 0.5f, mad(_2496, -1.0f, _2501)), (_2496 - _2493), mad(_2496, 0.5f, _2501))); - } else { - if ((bool)(_2477 >= 0.6812411546707153f) && (bool)(_2477 < 3.653702974319458f)) { - float _2513 = (_2476 + -2.2630341053009033f) * 0.7089107632637024f; - int _2514 = int(_2513); - float _2516 = _2513 - float(_2514); - float _2518 = _global_3[_2514]; - float _2521 = _global_3[(_2514 + 1)]; - float _2526 = _2518 * 0.5f; - _2536 = dot(float3((_2516 * _2516), _2516, 1.0f), float3(mad((_global_3[(_2514 + 2)]), 0.5f, mad(_2521, -1.0f, _2526)), (_2521 - _2518), mad(_2521, 0.5f, _2526))); - } else { - _2536 = ((_2476 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2541 = log2(select((_2408 <= 0.0f), 9.999999747378752e-05f, _2408)); - float _2542 = _2541 * 0.3010300099849701f; - do { - if (!(!(_2542 <= -3.848327875137329f))) { - _2601 = ((_2541 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2542 > -3.848327875137329f) && (bool)(_2542 < 0.6812411546707153f)) { - float _2553 = (_2541 + 12.783867835998535f) * 0.46521204710006714f; - int _2554 = int(_2553); - float _2556 = _2553 - float(_2554); - float _2558 = _global_2[_2554]; - float _2561 = _global_2[(_2554 + 1)]; - float _2566 = _2558 * 0.5f; - _2601 = dot(float3((_2556 * _2556), _2556, 1.0f), float3(mad((_global_2[(_2554 + 2)]), 0.5f, mad(_2561, -1.0f, _2566)), (_2561 - _2558), mad(_2561, 0.5f, _2566))); - } else { - if ((bool)(_2542 >= 0.6812411546707153f) && (bool)(_2542 < 3.653702974319458f)) { - float _2578 = (_2541 + -2.2630341053009033f) * 0.7089107632637024f; - int _2579 = int(_2578); - float _2581 = _2578 - float(_2579); - float _2583 = _global_3[_2579]; - float _2586 = _global_3[(_2579 + 1)]; - float _2591 = _2583 * 0.5f; - _2601 = dot(float3((_2581 * _2581), _2581, 1.0f), float3(mad((_global_3[(_2579 + 2)]), 0.5f, mad(_2586, -1.0f, _2591)), (_2586 - _2583), mad(_2586, 0.5f, _2591))); - } else { - _2601 = ((_2541 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2604 = exp2(_2471 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2605 = exp2(_2536 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2606 = exp2(_2601 * 3.321928024291992f) + -3.507384462864138e-05f; - do { - if (!_2029) { - _2618 = mad(_38, _2606, mad(_37, _2605, (_2604 * _36))); - _2619 = mad(_41, _2606, mad(_40, _2605, (_2604 * _39))); - _2620 = mad(_44, _2606, mad(_43, _2605, (_2604 * _42))); - } else { - _2618 = _2604; - _2619 = _2605; - _2620 = _2606; - } - float _2630 = exp2(log2(_2618 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2631 = exp2(log2(_2619 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2632 = exp2(log2(_2620 * 9.999999747378752e-05f) * 0.1593017578125f); - _3397 = exp2(log2((1.0f / ((_2630 * 18.6875f) + 1.0f)) * ((_2630 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3398 = exp2(log2((1.0f / ((_2631 * 18.6875f) + 1.0f)) * ((_2631 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3399 = exp2(log2((1.0f / ((_2632 * 18.6875f) + 1.0f)) * ((_2632 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2665 = _1928 * 3.0f; - float _2666 = _1929 * 3.0f; - float _2669 = mad(0.17733481526374817f, _2666, mad(0.38297808170318604f, _2665, (_1927 * 1.31910240650177f))); - float _2672 = mad(0.09676162153482437f, _2666, mad(0.8134231567382812f, _2665, (_1927 * 0.2693769633769989f))); - float _2675 = mad(0.870704174041748f, _2666, mad(0.11154405772686005f, _2665, (_1927 * 0.05263196676969528f))); - float _2679 = max(max(_2669, _2672), _2675); - float _2684 = (max(_2679, 1.000000013351432e-10f) - max(min(min(_2669, _2672), _2675), 1.000000013351432e-10f)) / max(_2679, 0.009999999776482582f); - float _2697 = ((_2672 + _2669) + _2675) + (sqrt((((_2675 - _2672) * _2675) + ((_2672 - _2669) * _2672)) + ((_2669 - _2675) * _2669)) * 1.75f); - float _2698 = _2697 * 0.3333333432674408f; - float _2699 = _2684 + -0.4000000059604645f; - float _2700 = _2699 * 5.0f; - float _2704 = max((1.0f - abs(_2699 * 2.5f)), 0.0f); - float _2715 = ((float(((int)(uint)((bool)(_2700 > 0.0f))) - ((int)(uint)((bool)(_2700 < 0.0f)))) * (1.0f - (_2704 * _2704))) + 1.0f) * 0.02500000037252903f; - do { - if (!(_2698 <= 0.0533333346247673f)) { - if (!(_2698 >= 0.1599999964237213f)) { - _2724 = (((0.23999999463558197f / _2697) + -0.5f) * _2715); - } else { - _2724 = 0.0f; - } - } else { - _2724 = _2715; - } - float _2725 = _2724 + 1.0f; - float _2726 = _2725 * _2669; - float _2727 = _2725 * _2672; - float _2728 = _2725 * _2675; - do { - if (!((bool)(_2726 == _2727) && (bool)(_2727 == _2728))) { - float _2735 = ((_2726 * 2.0f) - _2727) - _2728; - float _2738 = ((_2672 - _2675) * 1.7320507764816284f) * _2725; - float _2740 = atan(_2738 / _2735); - bool _2743 = (_2735 < 0.0f); - bool _2744 = (_2735 == 0.0f); - bool _2745 = (_2738 >= 0.0f); - bool _2746 = (_2738 < 0.0f); - _2757 = select((_2745 && _2744), 90.0f, select((_2746 && _2744), -90.0f, (select((_2746 && _2743), (_2740 + -3.1415927410125732f), select((_2745 && _2743), (_2740 + 3.1415927410125732f), _2740)) * 57.2957763671875f))); - } else { - _2757 = 0.0f; - } - float _2762 = min(max(select((_2757 < 0.0f), (_2757 + 360.0f), _2757), 0.0f), 360.0f); - do { - if (_2762 < -180.0f) { - _2771 = (_2762 + 360.0f); - } else { - if (_2762 > 180.0f) { - _2771 = (_2762 + -360.0f); - } else { - _2771 = _2762; - } - } - do { - if ((bool)(_2771 > -67.5f) && (bool)(_2771 < 67.5f)) { - float _2777 = (_2771 + 67.5f) * 0.029629629105329514f; - int _2778 = int(_2777); - float _2780 = _2777 - float(_2778); - float _2781 = _2780 * _2780; - float _2782 = _2781 * _2780; - if (_2778 == 3) { - _2810 = (((0.1666666716337204f - (_2780 * 0.5f)) + (_2781 * 0.5f)) - (_2782 * 0.1666666716337204f)); - } else { - if (_2778 == 2) { - _2810 = ((0.6666666865348816f - _2781) + (_2782 * 0.5f)); - } else { - if (_2778 == 1) { - _2810 = ((0.1666666716337204f - (_2782 * 0.5f)) + ((_2781 + _2780) * 0.5f)); - } else { - _2810 = select((_2778 == 0), (_2782 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2810 = 0.0f; - } - float _2819 = min(max(((((_2684 * 0.27000001072883606f) * (0.029999999329447746f - _2726)) * _2810) + _2726), 0.0f), 65535.0f); - float _2820 = min(max(_2727, 0.0f), 65535.0f); - float _2821 = min(max(_2728, 0.0f), 65535.0f); - float _2834 = min(max(mad(-0.21492856740951538f, _2821, mad(-0.2365107536315918f, _2820, (_2819 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2835 = min(max(mad(-0.09967592358589172f, _2821, mad(1.17622971534729f, _2820, (_2819 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2836 = min(max(mad(0.9977163076400757f, _2821, mad(-0.006032449658960104f, _2820, (_2819 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2837 = dot(float3(_2834, _2835, _2836), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2844 = ((_2834 - _2837) * 0.9599999785423279f) + _2837; - float _2845 = ((_2835 - _2837) * 0.9599999785423279f) + _2837; - float _2846 = ((_2836 - _2837) * 0.9599999785423279f) + _2837; - float _2849 = log2(select((_2844 <= 0.0f), 6.103515625e-05f, _2844)); - float _2850 = _2849 * 0.3010300099849701f; - do { - if (!(_2850 <= -5.2601776123046875f)) { - if ((bool)(_2850 > -5.2601776123046875f) && (bool)(_2850 < -0.7447274923324585f)) { - float _2858 = (_2849 * 0.19999998807907104f) + 3.494786262512207f; - int _2859 = int(_2858); - float _2861 = _2858 - float(_2859); - float _2863 = _global_0[_2859]; - float _2866 = _global_0[(_2859 + 1)]; - float _2871 = _2863 * 0.5f; - _2903 = dot(float3((_2861 * _2861), _2861, 1.0f), float3(mad((_global_0[(_2859 + 2)]), 0.5f, mad(_2866, -1.0f, _2871)), (_2866 - _2863), mad(_2866, 0.5f, _2871))); - } else { - if ((bool)(_2850 >= -0.7447274923324585f) && (bool)(_2850 < 4.673812389373779f)) { - float _2883 = (_2849 * 0.1666666567325592f) + 0.4123218357563019f; - int _2884 = int(_2883); - float _2886 = _2883 - float(_2884); - float _2888 = _global_1[_2884]; - float _2891 = _global_1[(_2884 + 1)]; - float _2896 = _2888 * 0.5f; - _2903 = dot(float3((_2886 * _2886), _2886, 1.0f), float3(mad((_global_1[(_2884 + 2)]), 0.5f, mad(_2891, -1.0f, _2896)), (_2891 - _2888), mad(_2891, 0.5f, _2896))); - } else { - _2903 = 4.0f; - } - } - } else { - _2903 = -4.0f; - } - float _2905 = exp2(_2903 * 3.321928024291992f); - float _2908 = log2(select((_2845 <= 0.0f), 6.103515625e-05f, _2845)); - float _2909 = _2908 * 0.3010300099849701f; - do { - if (!(_2909 <= -5.2601776123046875f)) { - if ((bool)(_2909 > -5.2601776123046875f) && (bool)(_2909 < -0.7447274923324585f)) { - float _2917 = (_2908 * 0.19999998807907104f) + 3.494786262512207f; - int _2918 = int(_2917); - float _2920 = _2917 - float(_2918); - float _2922 = _global_0[_2918]; - float _2925 = _global_0[(_2918 + 1)]; - float _2930 = _2922 * 0.5f; - _2962 = dot(float3((_2920 * _2920), _2920, 1.0f), float3(mad((_global_0[(_2918 + 2)]), 0.5f, mad(_2925, -1.0f, _2930)), (_2925 - _2922), mad(_2925, 0.5f, _2930))); - } else { - if ((bool)(_2909 >= -0.7447274923324585f) && (bool)(_2909 < 4.673812389373779f)) { - float _2942 = (_2908 * 0.1666666567325592f) + 0.4123218357563019f; - int _2943 = int(_2942); - float _2945 = _2942 - float(_2943); - float _2947 = _global_1[_2943]; - float _2950 = _global_1[(_2943 + 1)]; - float _2955 = _2947 * 0.5f; - _2962 = dot(float3((_2945 * _2945), _2945, 1.0f), float3(mad((_global_1[(_2943 + 2)]), 0.5f, mad(_2950, -1.0f, _2955)), (_2950 - _2947), mad(_2950, 0.5f, _2955))); - } else { - _2962 = 4.0f; - } - } - } else { - _2962 = -4.0f; - } - float _2964 = exp2(_2962 * 3.321928024291992f); - float _2967 = log2(select((_2846 <= 0.0f), 6.103515625e-05f, _2846)); - float _2968 = _2967 * 0.3010300099849701f; - do { - if (!(_2968 <= -5.2601776123046875f)) { - if ((bool)(_2968 > -5.2601776123046875f) && (bool)(_2968 < -0.7447274923324585f)) { - float _2976 = (_2967 * 0.19999998807907104f) + 3.494786262512207f; - int _2977 = int(_2976); - float _2979 = _2976 - float(_2977); - float _2981 = _global_0[_2977]; - float _2984 = _global_0[(_2977 + 1)]; - float _2989 = _2981 * 0.5f; - _3021 = dot(float3((_2979 * _2979), _2979, 1.0f), float3(mad((_global_0[(_2977 + 2)]), 0.5f, mad(_2984, -1.0f, _2989)), (_2984 - _2981), mad(_2984, 0.5f, _2989))); - } else { - if ((bool)(_2968 >= -0.7447274923324585f) && (bool)(_2968 < 4.673812389373779f)) { - float _3001 = (_2967 * 0.1666666567325592f) + 0.4123218357563019f; - int _3002 = int(_3001); - float _3004 = _3001 - float(_3002); - float _3006 = _global_1[_3002]; - float _3009 = _global_1[(_3002 + 1)]; - float _3014 = _3006 * 0.5f; - _3021 = dot(float3((_3004 * _3004), _3004, 1.0f), float3(mad((_global_1[(_3002 + 2)]), 0.5f, mad(_3009, -1.0f, _3014)), (_3009 - _3006), mad(_3009, 0.5f, _3014))); - } else { - _3021 = 4.0f; - } - } - } else { - _3021 = -4.0f; - } - float _3023 = exp2(_3021 * 3.321928024291992f); - float _3026 = mad(0.16386906802654266f, _3023, mad(0.14067870378494263f, _2964, (_2905 * 0.6954522132873535f))); - float _3029 = mad(0.0955343171954155f, _3023, mad(0.8596711158752441f, _2964, (_2905 * 0.044794563204050064f))); - float _3032 = mad(1.0015007257461548f, _3023, mad(0.004025210160762072f, _2964, (_2905 * -0.005525882821530104f))); - float _3035 = mad(-0.21492856740951538f, _3032, mad(-0.2365107536315918f, _3029, (_3026 * 1.4514392614364624f))); - float _3038 = mad(-0.09967592358589172f, _3032, mad(1.17622971534729f, _3029, (_3026 * -0.07655377686023712f))); - float _3041 = mad(0.9977163076400757f, _3032, mad(-0.006032449658960104f, _3029, (_3026 * 0.008316148072481155f))); - float _3044 = log2(select((_3035 <= 0.0f), 9.999999747378752e-05f, _3035)); - float _3045 = _3044 * 0.3010300099849701f; - do { - if (!(_3045 <= -3.848327875137329f)) { - if ((bool)(_3045 > -3.848327875137329f) && (bool)(_3045 < 0.6812411546707153f)) { - float _3053 = (_3044 + 12.783867835998535f) * 0.46521204710006714f; - int _3054 = int(_3053); - float _3056 = _3053 - float(_3054); - float _3058 = _global_4[_3054]; - float _3061 = _global_4[(_3054 + 1)]; - float _3066 = _3058 * 0.5f; - _3101 = dot(float3((_3056 * _3056), _3056, 1.0f), float3(mad((_global_4[(_3054 + 2)]), 0.5f, mad(_3061, -1.0f, _3066)), (_3061 - _3058), mad(_3061, 0.5f, _3066))); - } else { - if ((bool)(_3045 >= 0.6812411546707153f) && (bool)(_3045 < 3.7613162994384766f)) { - float _3078 = (_3044 + -2.2630341053009033f) * 0.6841424107551575f; - int _3079 = int(_3078); - float _3081 = _3078 - float(_3079); - float _3083 = _global_5[_3079]; - float _3086 = _global_5[(_3079 + 1)]; - float _3091 = _3083 * 0.5f; - _3101 = dot(float3((_3081 * _3081), _3081, 1.0f), float3(mad((_global_5[(_3079 + 2)]), 0.5f, mad(_3086, -1.0f, _3091)), (_3086 - _3083), mad(_3086, 0.5f, _3091))); - } else { - _3101 = ((_3044 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3101 = -2.301030158996582f; - } - float _3103 = exp2(_3101 * 3.321928024291992f); - float _3106 = log2(select((_3038 <= 0.0f), 9.999999747378752e-05f, _3038)); - float _3107 = _3106 * 0.3010300099849701f; - do { - if (!(_3107 <= -3.848327875137329f)) { - if ((bool)(_3107 > -3.848327875137329f) && (bool)(_3107 < 0.6812411546707153f)) { - float _3115 = (_3106 + 12.783867835998535f) * 0.46521204710006714f; - int _3116 = int(_3115); - float _3118 = _3115 - float(_3116); - float _3120 = _global_4[_3116]; - float _3123 = _global_4[(_3116 + 1)]; - float _3128 = _3120 * 0.5f; - _3163 = dot(float3((_3118 * _3118), _3118, 1.0f), float3(mad((_global_4[(_3116 + 2)]), 0.5f, mad(_3123, -1.0f, _3128)), (_3123 - _3120), mad(_3123, 0.5f, _3128))); - } else { - if ((bool)(_3107 >= 0.6812411546707153f) && (bool)(_3107 < 3.7613162994384766f)) { - float _3140 = (_3106 + -2.2630341053009033f) * 0.6841424107551575f; - int _3141 = int(_3140); - float _3143 = _3140 - float(_3141); - float _3145 = _global_5[_3141]; - float _3148 = _global_5[(_3141 + 1)]; - float _3153 = _3145 * 0.5f; - _3163 = dot(float3((_3143 * _3143), _3143, 1.0f), float3(mad((_global_5[(_3141 + 2)]), 0.5f, mad(_3148, -1.0f, _3153)), (_3148 - _3145), mad(_3148, 0.5f, _3153))); - } else { - _3163 = ((_3106 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3163 = -2.301030158996582f; - } - float _3165 = exp2(_3163 * 3.321928024291992f); - float _3168 = log2(select((_3041 <= 0.0f), 9.999999747378752e-05f, _3041)); - float _3169 = _3168 * 0.3010300099849701f; - do { - if (!(_3169 <= -3.848327875137329f)) { - if ((bool)(_3169 > -3.848327875137329f) && (bool)(_3169 < 0.6812411546707153f)) { - float _3177 = (_3168 + 12.783867835998535f) * 0.46521204710006714f; - int _3178 = int(_3177); - float _3180 = _3177 - float(_3178); - float _3182 = _global_4[_3178]; - float _3185 = _global_4[(_3178 + 1)]; - float _3190 = _3182 * 0.5f; - _3225 = dot(float3((_3180 * _3180), _3180, 1.0f), float3(mad((_global_4[(_3178 + 2)]), 0.5f, mad(_3185, -1.0f, _3190)), (_3185 - _3182), mad(_3185, 0.5f, _3190))); - } else { - if ((bool)(_3169 >= 0.6812411546707153f) && (bool)(_3169 < 3.7613162994384766f)) { - float _3202 = (_3168 + -2.2630341053009033f) * 0.6841424107551575f; - int _3203 = int(_3202); - float _3205 = _3202 - float(_3203); - float _3207 = _global_5[_3203]; - float _3210 = _global_5[(_3203 + 1)]; - float _3215 = _3207 * 0.5f; - _3225 = dot(float3((_3205 * _3205), _3205, 1.0f), float3(mad((_global_5[(_3203 + 2)]), 0.5f, mad(_3210, -1.0f, _3215)), (_3210 - _3207), mad(_3210, 0.5f, _3215))); - } else { - _3225 = ((_3168 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3225 = -2.301030158996582f; - } - float _3227 = exp2(_3225 * 3.321928024291992f); - do { - if (!((uint)(cb0_074z) == 6)) { - _3239 = mad(_38, _3227, mad(_37, _3165, (_3103 * _36))); - _3240 = mad(_41, _3227, mad(_40, _3165, (_3103 * _39))); - _3241 = mad(_44, _3227, mad(_43, _3165, (_3103 * _42))); - } else { - _3239 = _3103; - _3240 = _3165; - _3241 = _3227; - } - float _3251 = exp2(log2(_3239 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3252 = exp2(log2(_3240 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3253 = exp2(log2(_3241 * 9.999999747378752e-05f) * 0.1593017578125f); - _3397 = exp2(log2((1.0f / ((_3251 * 18.6875f) + 1.0f)) * ((_3251 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3398 = exp2(log2((1.0f / ((_3252 * 18.6875f) + 1.0f)) * ((_3252 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3399 = exp2(log2((1.0f / ((_3253 * 18.6875f) + 1.0f)) * ((_3253 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } while (false); - } else { - if ((uint)(cb0_074z) == 7) { - float _3286 = mad(0.04736635088920593f, _1929, mad(0.3395121395587921f, _1928, (_1927 * 0.613191545009613f))); - float _3289 = mad(0.01345000695437193f, _1929, mad(0.9163357615470886f, _1928, (_1927 * 0.07020691782236099f))); - float _3292 = mad(0.8696067929267883f, _1929, mad(0.1095672994852066f, _1928, (_1927 * 0.020618872717022896f))); - float _3311 = exp2(log2(mad(_38, _3292, mad(_37, _3289, (_3286 * _36))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3312 = exp2(log2(mad(_41, _3292, mad(_40, _3289, (_3286 * _39))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3313 = exp2(log2(mad(_44, _3292, mad(_43, _3289, (_3286 * _42))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3397 = exp2(log2((1.0f / ((_3311 * 18.6875f) + 1.0f)) * ((_3311 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3398 = exp2(log2((1.0f / ((_3312 * 18.6875f) + 1.0f)) * ((_3312 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3399 = exp2(log2((1.0f / ((_3313 * 18.6875f) + 1.0f)) * ((_3313 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3348 = mad(0.04736635088920593f, _1917, mad(0.3395121395587921f, _1916, (_1915 * 0.613191545009613f))); - float _3351 = mad(0.01345000695437193f, _1917, mad(0.9163357615470886f, _1916, (_1915 * 0.07020691782236099f))); - float _3354 = mad(0.8696067929267883f, _1917, mad(0.1095672994852066f, _1916, (_1915 * 0.020618872717022896f))); - _3397 = mad(_38, _3354, mad(_37, _3351, (_3348 * _36))); - _3398 = mad(_41, _3354, mad(_40, _3351, (_3348 * _39))); - _3399 = mad(_44, _3354, mad(_43, _3351, (_3348 * _42))); - } else { - float _3367 = mad(0.04736635088920593f, _1943, mad(0.3395121395587921f, _1942, (_1941 * 0.613191545009613f))); - float _3370 = mad(0.01345000695437193f, _1943, mad(0.9163357615470886f, _1942, (_1941 * 0.07020691782236099f))); - float _3373 = mad(0.8696067929267883f, _1943, mad(0.1095672994852066f, _1942, (_1941 * 0.020618872717022896f))); - float _3386 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3397 = exp2(log2(mad(_38, _3373, mad(_37, _3370, (_3367 * _36)))) * _3386); - _3398 = exp2(log2(mad(_41, _3373, mad(_40, _3370, (_3367 * _39)))) * _3386); - _3399 = exp2(log2(mad(_44, _3373, mad(_43, _3370, (_3367 * _42)))) * _3386); - } - } else { - _3397 = _1927; - _3398 = _1928; - _3399 = _1929; - } - } - } - } - } - } - SV_Target.x = (_3397 * 0.9523810148239136f); - SV_Target.y = (_3398 * 0.9523810148239136f); - SV_Target.z = (_3399 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xF63FC0F4.ps_6_0.hlsl b/src/games/wutheringwaves/lutbuilders/lutbuilder_0xF63FC0F4.ps_6_0.hlsl deleted file mode 100644 index 6defa222a..000000000 --- a/src/games/wutheringwaves/lutbuilders/lutbuilder_0xF63FC0F4.ps_6_0.hlsl +++ /dev/null @@ -1,1514 +0,0 @@ -#include "../common.hlsl" - -Texture2D t0 : register(t0); - -Texture2D t1 : register(t1); - -cbuffer cb0 : register(b0) { - float cb0_026x : packoffset(c026.x); - float cb0_026y : packoffset(c026.y); - float cb0_026z : packoffset(c026.z); - float cb0_027y : packoffset(c027.y); - float cb0_027z : packoffset(c027.z); - float cb0_028x : packoffset(c028.x); - float cb0_028y : packoffset(c028.y); - float cb0_028z : packoffset(c028.z); - float cb0_028w : packoffset(c028.w); - float cb0_029x : packoffset(c029.x); - float cb0_029y : packoffset(c029.y); - float cb0_029z : packoffset(c029.z); - float cb0_029w : packoffset(c029.w); - float cb0_030x : packoffset(c030.x); - float cb0_030y : packoffset(c030.y); - float cb0_030z : packoffset(c030.z); - float cb0_030w : packoffset(c030.w); - float cb0_031x : packoffset(c031.x); - float cb0_031y : packoffset(c031.y); - float cb0_031z : packoffset(c031.z); - float cb0_031w : packoffset(c031.w); - float cb0_032x : packoffset(c032.x); - float cb0_032y : packoffset(c032.y); - float cb0_033x : packoffset(c033.x); - float cb0_033y : packoffset(c033.y); - float cb0_033z : packoffset(c033.z); - float cb0_034x : packoffset(c034.x); - float cb0_034y : packoffset(c034.y); - float cb0_034z : packoffset(c034.z); - float cb0_035x : packoffset(c035.x); - float cb0_035y : packoffset(c035.y); - float cb0_035z : packoffset(c035.z); - float cb0_036x : packoffset(c036.x); - float cb0_036y : packoffset(c036.y); - float cb0_036z : packoffset(c036.z); - float cb0_036w : packoffset(c036.w); - float cb0_037x : packoffset(c037.x); - float cb0_038w : packoffset(c038.w); - float cb0_039z : packoffset(c039.z); - float cb0_040x : packoffset(c040.x); - float cb0_041x : packoffset(c041.x); - float cb0_044y : packoffset(c044.y); - float cb0_044z : packoffset(c044.z); - float cb0_044w : packoffset(c044.w); - float cb0_045x : packoffset(c045.x); - float cb0_045y : packoffset(c045.y); - float cb0_045z : packoffset(c045.z); - float cb0_045w : packoffset(c045.w); - uint cb0_046x : packoffset(c046.x); - uint cb0_046y : packoffset(c046.y); - uint cb0_046z : packoffset(c046.z); - uint cb0_046w : packoffset(c046.w); - float cb0_047x : packoffset(c047.x); - float cb0_047y : packoffset(c047.y); - float cb0_048x : packoffset(c048.x); - float cb0_048y : packoffset(c048.y); - float cb0_048z : packoffset(c048.z); - float cb0_048w : packoffset(c048.w); - float cb0_049x : packoffset(c049.x); - float cb0_049y : packoffset(c049.y); - float cb0_049z : packoffset(c049.z); - float cb0_049w : packoffset(c049.w); - float cb0_050x : packoffset(c050.x); - float cb0_050y : packoffset(c050.y); - float cb0_050z : packoffset(c050.z); - float cb0_050w : packoffset(c050.w); - float cb0_051x : packoffset(c051.x); - float cb0_051y : packoffset(c051.y); - float cb0_051z : packoffset(c051.z); - float cb0_051w : packoffset(c051.w); - float cb0_052x : packoffset(c052.x); - float cb0_052y : packoffset(c052.y); - float cb0_052z : packoffset(c052.z); - float cb0_052w : packoffset(c052.w); - float cb0_053x : packoffset(c053.x); - float cb0_053y : packoffset(c053.y); - float cb0_053z : packoffset(c053.z); - float cb0_053w : packoffset(c053.w); - float cb0_054x : packoffset(c054.x); - float cb0_054y : packoffset(c054.y); - float cb0_054z : packoffset(c054.z); - float cb0_054w : packoffset(c054.w); - float cb0_055x : packoffset(c055.x); - float cb0_055y : packoffset(c055.y); - float cb0_055z : packoffset(c055.z); - float cb0_055w : packoffset(c055.w); - float cb0_056x : packoffset(c056.x); - float cb0_056y : packoffset(c056.y); - float cb0_056z : packoffset(c056.z); - float cb0_056w : packoffset(c056.w); - float cb0_057x : packoffset(c057.x); - float cb0_057y : packoffset(c057.y); - float cb0_057z : packoffset(c057.z); - float cb0_057w : packoffset(c057.w); - float cb0_058x : packoffset(c058.x); - float cb0_058y : packoffset(c058.y); - float cb0_058z : packoffset(c058.z); - float cb0_058w : packoffset(c058.w); - float cb0_059x : packoffset(c059.x); - float cb0_059y : packoffset(c059.y); - float cb0_059z : packoffset(c059.z); - float cb0_059w : packoffset(c059.w); - float cb0_060x : packoffset(c060.x); - float cb0_060y : packoffset(c060.y); - float cb0_060z : packoffset(c060.z); - float cb0_060w : packoffset(c060.w); - float cb0_061x : packoffset(c061.x); - float cb0_061y : packoffset(c061.y); - float cb0_061z : packoffset(c061.z); - float cb0_061w : packoffset(c061.w); - float cb0_062x : packoffset(c062.x); - float cb0_062y : packoffset(c062.y); - float cb0_062z : packoffset(c062.z); - float cb0_062w : packoffset(c062.w); - float cb0_063x : packoffset(c063.x); - float cb0_063y : packoffset(c063.y); - float cb0_063z : packoffset(c063.z); - float cb0_063w : packoffset(c063.w); - float cb0_064x : packoffset(c064.x); - float cb0_064y : packoffset(c064.y); - float cb0_064z : packoffset(c064.z); - float cb0_064w : packoffset(c064.w); - float cb0_065x : packoffset(c065.x); - float cb0_065y : packoffset(c065.y); - float cb0_065z : packoffset(c065.z); - float cb0_065w : packoffset(c065.w); - float cb0_066x : packoffset(c066.x); - float cb0_066y : packoffset(c066.y); - float cb0_066z : packoffset(c066.z); - float cb0_066w : packoffset(c066.w); - float cb0_067x : packoffset(c067.x); - float cb0_067y : packoffset(c067.y); - float cb0_067z : packoffset(c067.z); - float cb0_067w : packoffset(c067.w); - float cb0_068x : packoffset(c068.x); - float cb0_068y : packoffset(c068.y); - float cb0_068z : packoffset(c068.z); - float cb0_068w : packoffset(c068.w); - float cb0_069x : packoffset(c069.x); - float cb0_069y : packoffset(c069.y); - float cb0_069z : packoffset(c069.z); - float cb0_069w : packoffset(c069.w); - float cb0_070x : packoffset(c070.x); - float cb0_070y : packoffset(c070.y); - float cb0_070z : packoffset(c070.z); - float cb0_070w : packoffset(c070.w); - float cb0_071x : packoffset(c071.x); - float cb0_071y : packoffset(c071.y); - float cb0_071z : packoffset(c071.z); - float cb0_071w : packoffset(c071.w); - float cb0_072x : packoffset(c072.x); - float cb0_072y : packoffset(c072.y); - float cb0_072z : packoffset(c072.z); - float cb0_072w : packoffset(c072.w); - float cb0_073x : packoffset(c073.x); - float cb0_073y : packoffset(c073.y); - float cb0_073z : packoffset(c073.z); - float cb0_073w : packoffset(c073.w); - uint cb0_074z : packoffset(c074.z); - uint cb0_074w : packoffset(c074.w); - float cb0_075x : packoffset(c075.x); - float cb0_075y : packoffset(c075.y); - float cb0_075z : packoffset(c075.z); -}; - -SamplerState s0 : register(s0); - -SamplerState s1 : register(s1); - -static const float _global_0[6] = { -4.0f, -4.0f, -3.157376527786255f, -0.48524999618530273f, 1.847732424736023f, 1.847732424736023f }; -static const float _global_1[6] = { -0.7185482382774353f, 2.0810306072235107f, 3.668124198913574f, 4.0f, 4.0f, 4.0f }; -static const float _global_2[10] = { -4.9706220626831055f, -3.0293781757354736f, -2.126199960708618f, -1.5104999542236328f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_3[10] = { 0.8089132308959961f, 1.191086769104004f, 1.5683000087738037f, 1.9483000040054321f, 2.308300018310547f, 2.638400077819824f, 2.859499931335449f, 2.9872608184814453f, 3.0127391815185547f, 3.0127391815185547f }; -static const float _global_4[10] = { -2.301029920578003f, -2.301029920578003f, -1.9312000274658203f, -1.5204999446868896f, -1.057800054550171f, -0.4668000042438507f, 0.11937999725341797f, 0.7088134288787842f, 1.2911865711212158f, 1.2911865711212158f }; -static const float _global_5[10] = { 0.8019952178001404f, 1.1980048418045044f, 1.5943000316619873f, 1.9973000288009644f, 2.3782999515533447f, 2.768399953842163f, 3.051500082015991f, 3.2746293544769287f, 3.3274307250976562f, 3.3274307250976562f }; - -float4 main( - noperspective float2 TEXCOORD : TEXCOORD, - noperspective float4 SV_Position : SV_Position, - nointerpolation uint SV_RenderTargetArrayIndex : SV_RenderTargetArrayIndex -) : SV_Target { - float4 SV_Target; - float _9 = TEXCOORD.x + -0.015625f; - float _10 = TEXCOORD.y + -0.015625f; - float _13 = float((uint)SV_RenderTargetArrayIndex); - float _34; - float _35; - float _36; - float _37; - float _38; - float _39; - float _40; - float _41; - float _42; - float _99; - float _100; - float _101; - float _340; - float _341; - float _342; - float _508; - float _509; - float _531; - float _532; - float _533; - float _678; - float _679; - float _700; - float _701; - float _702; - float _848; - float _849; - float _870; - float _871; - float _872; - float _1007; - float _1008; - float _1029; - float _1030; - float _1031; - float _1126; - float _1159; - float _1173; - float _1237; - float _1374; - float _1375; - float _1376; - float _1519; - float _1520; - float _1521; - float _1535; - float _1546; - float _1557; - float _1733; - float _1744; - float _1866; - float _1899; - float _1913; - float _1952; - float _2045; - float _2104; - float _2163; - float _2246; - float _2311; - float _2376; - float _2393; - float _2394; - float _2395; - float _2499; - float _2532; - float _2546; - float _2585; - float _2678; - float _2737; - float _2796; - float _2876; - float _2938; - float _3000; - float _3014; - float _3015; - float _3016; - float _3172; - float _3173; - float _3174; - - const float4 tm_flags = float4( - cb0_046x, - float(RENODX_WUWA_TM == 1), - float(RENODX_WUWA_TM == 2), - float(RENODX_WUWA_TM == 3) - ); - - if (!((uint)(cb0_074w) == 1)) { - if (!((uint)(cb0_074w) == 2)) { - if (!((uint)(cb0_074w) == 3)) { - bool _23 = ((uint)(cb0_074w) == 4); - _34 = select(_23, 1.0f, 1.7050515413284302f); - _35 = select(_23, 0.0f, -0.6217905879020691f); - _36 = select(_23, 0.0f, -0.0832584798336029f); - _37 = select(_23, 0.0f, -0.13025718927383423f); - _38 = select(_23, 1.0f, 1.1408027410507202f); - _39 = select(_23, 0.0f, -0.010548528283834457f); - _40 = select(_23, 0.0f, -0.024003278464078903f); - _41 = select(_23, 0.0f, -0.1289687603712082f); - _42 = select(_23, 1.0f, 1.152971863746643f); - } else { - _34 = 0.6954522132873535f; - _35 = 0.14067870378494263f; - _36 = 0.16386906802654266f; - _37 = 0.044794563204050064f; - _38 = 0.8596711158752441f; - _39 = 0.0955343171954155f; - _40 = -0.005525882821530104f; - _41 = 0.004025210160762072f; - _42 = 1.0015007257461548f; - } - } else { - _34 = 1.02579927444458f; - _35 = -0.020052503794431686f; - _36 = -0.0057713985443115234f; - _37 = -0.0022350111976265907f; - _38 = 1.0045825242996216f; - _39 = -0.002352306619286537f; - _40 = -0.005014004185795784f; - _41 = -0.025293385609984398f; - _42 = 1.0304402112960815f; - } - } else { - _34 = 1.379158854484558f; - _35 = -0.3088507056236267f; - _36 = -0.07034677267074585f; - _37 = -0.06933528929948807f; - _38 = 1.0822921991348267f; - _39 = -0.012962047010660172f; - _40 = -0.002159259282052517f; - _41 = -0.045465391129255295f; - _42 = 1.0477596521377563f; - } - if ((uint)(uint)(cb0_074z) > (uint)2) { - float _52 = exp2(log2(_9 * 1.0322580337524414f) * 0.012683313339948654f); - float _53 = exp2(log2(_10 * 1.0322580337524414f) * 0.012683313339948654f); - float _54 = exp2(log2(_13 * 0.032258063554763794f) * 0.012683313339948654f); - _99 = (exp2(log2(max(0.0f, (_52 + -0.8359375f)) / (18.8515625f - (_52 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _100 = (exp2(log2(max(0.0f, (_53 + -0.8359375f)) / (18.8515625f - (_53 * 18.6875f))) * 6.277394771575928f) * 100.0f); - _101 = (exp2(log2(max(0.0f, (_54 + -0.8359375f)) / (18.8515625f - (_54 * 18.6875f))) * 6.277394771575928f) * 100.0f); - } else { - _99 = ((exp2((_9 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _100 = ((exp2((_10 * 14.45161247253418f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - _101 = ((exp2((_13 * 0.4516128897666931f) + -6.07624626159668f) * 0.18000000715255737f) + -0.002667719265446067f); - } - float _104 = cb0_047x * 1.0005563497543335f; - float _118 = select((_104 <= 7000.0f), (((((2967800.0f - (4604438528.0f / cb0_047x)) / _104) + 99.11000061035156f) / _104) + 0.24406300485134125f), (((((1901800.0f - (2005284352.0f / cb0_047x)) / _104) + 247.47999572753906f) / _104) + 0.23703999817371368f)); - float _132 = ((((cb0_047x * 1.2864121856637212e-07f) + 0.00015411825734190643f) * cb0_047x) + 0.8601177334785461f) / ((((cb0_047x * 7.081451371959702e-07f) + 0.0008424202096648514f) * cb0_047x) + 1.0f); - float _142 = ((((cb0_047x * 4.204816761443908e-08f) + 4.228062607580796e-05f) * cb0_047x) + 0.31739872694015503f) / ((1.0f - (cb0_047x * 2.8974181986995973e-05f)) + ((cb0_047x * cb0_047x) * 1.6145605741257896e-07f)); - float _147 = ((_132 * 2.0f) + 4.0f) - (_142 * 8.0f); - float _148 = (_132 * 3.0f) / _147; - float _150 = (_142 * 2.0f) / _147; - bool _151 = (cb0_047x < 4000.0f); - float _156 = rsqrt(dot(float2(_132, _142), float2(_132, _142))); - float _157 = cb0_047y * 0.05000000074505806f; - float _160 = _132 - ((_157 * _142) * _156); - float _163 = ((_157 * _132) * _156) + _142; - float _168 = (4.0f - (_163 * 8.0f)) + (_160 * 2.0f); - float _174 = (((_160 * 3.0f) / _168) - _148) + select(_151, _148, _118); - float _175 = (((_163 * 2.0f) / _168) - _150) + select(_151, _150, (((_118 * 2.869999885559082f) + -0.2750000059604645f) - ((_118 * _118) * 3.0f))); - float _176 = max(_175, 1.000000013351432e-10f); - float _177 = _174 / _176; - float _180 = ((1.0f - _174) - _175) / _176; - float _190 = 0.9413792490959167f / mad(-0.16140000522136688f, _180, ((_177 * 0.8950999975204468f) + 0.266400009393692f)); - float _191 = 1.0404363870620728f / mad(0.03669999912381172f, _180, (1.7135000228881836f - (_177 * 0.7501999735832214f))); - float _192 = 1.089766502380371f / mad(1.0296000242233276f, _180, ((_177 * 0.03889999911189079f) + -0.06849999725818634f)); - float _193 = mad(_191, -0.7501999735832214f, 0.0f); - float _194 = mad(_191, 1.7135000228881836f, 0.0f); - float _195 = mad(_191, 0.03669999912381172f, -0.0f); - float _196 = mad(_192, 0.03889999911189079f, 0.0f); - float _197 = mad(_192, -0.06849999725818634f, 0.0f); - float _198 = mad(_192, 1.0296000242233276f, 0.0f); - float _201 = mad(0.1599626988172531f, _196, mad(-0.1470542997121811f, _193, (_190 * 0.883457362651825f))); - float _204 = mad(0.1599626988172531f, _197, mad(-0.1470542997121811f, _194, (_190 * 0.26293492317199707f))); - float _207 = mad(0.1599626988172531f, _198, mad(-0.1470542997121811f, _195, (_190 * -0.15930065512657166f))); - float _210 = mad(0.04929120093584061f, _196, mad(0.5183603167533875f, _193, (_190 * 0.38695648312568665f))); - float _213 = mad(0.04929120093584061f, _197, mad(0.5183603167533875f, _194, (_190 * 0.11516613513231277f))); - float _216 = mad(0.04929120093584061f, _198, mad(0.5183603167533875f, _195, (_190 * -0.0697740763425827f))); - float _219 = mad(0.9684867262840271f, _196, mad(0.04004279896616936f, _193, (_190 * -0.007634039502590895f))); - float _222 = mad(0.9684867262840271f, _197, mad(0.04004279896616936f, _194, (_190 * -0.0022720457054674625f))); - float _225 = mad(0.9684867262840271f, _198, mad(0.04004279896616936f, _195, (_190 * 0.0013765322510153055f))); - float _228 = mad(_207, 0.01933390088379383f, mad(_204, 0.2126729041337967f, (_201 * 0.4124563932418823f))); - float _231 = mad(_207, 0.11919199675321579f, mad(_204, 0.7151522040367126f, (_201 * 0.3575761020183563f))); - float _234 = mad(_207, 0.9503040909767151f, mad(_204, 0.07217500358819962f, (_201 * 0.18043750524520874f))); - float _237 = mad(_216, 0.01933390088379383f, mad(_213, 0.2126729041337967f, (_210 * 0.4124563932418823f))); - float _240 = mad(_216, 0.11919199675321579f, mad(_213, 0.7151522040367126f, (_210 * 0.3575761020183563f))); - float _243 = mad(_216, 0.9503040909767151f, mad(_213, 0.07217500358819962f, (_210 * 0.18043750524520874f))); - float _246 = mad(_225, 0.01933390088379383f, mad(_222, 0.2126729041337967f, (_219 * 0.4124563932418823f))); - float _249 = mad(_225, 0.11919199675321579f, mad(_222, 0.7151522040367126f, (_219 * 0.3575761020183563f))); - float _252 = mad(_225, 0.9503040909767151f, mad(_222, 0.07217500358819962f, (_219 * 0.18043750524520874f))); - float _282 = mad(mad(-0.4986107647418976f, _252, mad(-1.5373831987380981f, _243, (_234 * 3.2409698963165283f))), _101, mad(mad(-0.4986107647418976f, _249, mad(-1.5373831987380981f, _240, (_231 * 3.2409698963165283f))), _100, (mad(-0.4986107647418976f, _246, mad(-1.5373831987380981f, _237, (_228 * 3.2409698963165283f))) * _99))); - float _285 = mad(mad(0.04155505821108818f, _252, mad(1.8759675025939941f, _243, (_234 * -0.9692436456680298f))), _101, mad(mad(0.04155505821108818f, _249, mad(1.8759675025939941f, _240, (_231 * -0.9692436456680298f))), _100, (mad(0.04155505821108818f, _246, mad(1.8759675025939941f, _237, (_228 * -0.9692436456680298f))) * _99))); - float _288 = mad(mad(1.056971549987793f, _252, mad(-0.20397695899009705f, _243, (_234 * 0.05563008040189743f))), _101, mad(mad(1.056971549987793f, _249, mad(-0.20397695899009705f, _240, (_231 * 0.05563008040189743f))), _100, (mad(1.056971549987793f, _246, mad(-0.20397695899009705f, _237, (_228 * 0.05563008040189743f))) * _99))); - float _291 = mad(0.04736635088920593f, _288, mad(0.3395121395587921f, _285, (_282 * 0.613191545009613f))); - float _294 = mad(0.01345000695437193f, _288, mad(0.9163357615470886f, _285, (_282 * 0.07020691782236099f))); - float _297 = mad(0.8696067929267883f, _288, mad(0.1095672994852066f, _285, (_282 * 0.020618872717022896f))); - // bool _300 = ((uint)(cb0_046x) == 0); - bool _300 = ((uint)(tm_flags.x) == 0); - if (_300) { - float _302 = dot(float3(_291, _294, _297), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _306 = (_291 / _302) + -1.0f; - float _307 = (_294 / _302) + -1.0f; - float _308 = (_297 / _302) + -1.0f; - float _320 = (1.0f - exp2(((_302 * _302) * -4.0f) * cb0_075y)) * (1.0f - exp2(dot(float3(_306, _307, _308), float3(_306, _307, _308)) * -4.0f)); - _340 = (((mad(-0.06368283927440643f, _297, mad(-0.32929131388664246f, _294, (_291 * 1.370412826538086f))) - _291) * _320) + _291); - _341 = (((mad(-0.010861567221581936f, _297, mad(1.0970908403396606f, _294, (_291 * -0.08343426138162613f))) - _294) * _320) + _294); - _342 = (((mad(1.203694462776184f, _297, mad(-0.09862564504146576f, _294, (_291 * -0.02579325996339321f))) - _297) * _320) + _297); - } else { - _340 = _291; - _341 = _294; - _342 = _297; - } - float _343 = dot(float3(_340, _341, _342), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _357 = cb0_052w + cb0_057w; - float _371 = cb0_051w * cb0_056w; - float _385 = cb0_050w * cb0_055w; - float _399 = cb0_049w * cb0_054w; - float _413 = cb0_048w * cb0_053w; - float _417 = _340 - _343; - float _418 = _341 - _343; - float _419 = _342 - _343; - float _476 = cb0_073w + 1.0f; - float _480 = saturate(_476 * (((cb0_052x + cb0_057x) + _357) + (((cb0_051x * cb0_056x) * _371) * exp2(log2(exp2(((cb0_049x * cb0_054x) * _399) * log2(max(0.0f, ((((cb0_048x * cb0_053x) * _413) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_055x) * _385)))))); - float _481 = saturate(_476 * (((cb0_052y + cb0_057y) + _357) + (((cb0_051y * cb0_056y) * _371) * exp2(log2(exp2(((cb0_049y * cb0_054y) * _399) * log2(max(0.0f, ((((cb0_048y * cb0_053y) * _413) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_055y) * _385)))))); - float _482 = saturate(_476 * (((cb0_052z + cb0_057z) + _357) + (((cb0_051z * cb0_056z) * _371) * exp2(log2(exp2(((cb0_049z * cb0_054z) * _399) * log2(max(0.0f, ((((cb0_048z * cb0_053z) * _413) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_055z) * _385)))))); - float _486 = max(_480, max(_481, _482)); - float _487 = _486 - min(_480, min(_481, _482)); - if (!(_487 == 0.0f)) { - float _490 = _487 / _486; - if (_480 == _486) { - _508 = ((_481 - _482) / _487); - _509 = _490; - } else { - if (_481 == _486) { - _508 = (((_482 - _480) / _487) + 2.0f); - _509 = _490; - } else { - if (_482 == _486) { - _508 = (((_480 - _481) / _487) + 4.0f); - _509 = _490; - } else { - _508 = 0.0f; - _509 = _490; - } - } - } - } else { - _508 = 0.0f; - _509 = 0.0f; - } - float _511 = cb0_073z + _508; - float _512 = floor(_511); - float _513 = _511 - _512; - float _514 = 1.0f - _509; - float _516 = 1.0f - (_513 * _509); - float _519 = 1.0f - ((1.0f - _513) * _509); - if (!(_512 == 0.0f)) { - if (!(_512 == 1.0f)) { - if (!(_512 == 2.0f)) { - if (!(_512 == 3.0f)) { - if (!(_512 == 4.0f)) { - _531 = 1.0f; - _532 = _514; - _533 = _516; - } else { - _531 = _519; - _532 = _514; - _533 = 1.0f; - } - } else { - _531 = _514; - _532 = _516; - _533 = 1.0f; - } - } else { - _531 = _514; - _532 = 1.0f; - _533 = _519; - } - } else { - _531 = _516; - _532 = 1.0f; - _533 = _514; - } - } else { - _531 = 1.0f; - _532 = _519; - _533 = _514; - } - float _539 = saturate(_343 / cb0_073x); - float _543 = (_539 * _539) * (3.0f - (_539 * 2.0f)); - float _544 = 1.0f - _543; - float _553 = cb0_052w + cb0_067w; - float _562 = cb0_051w * cb0_066w; - float _571 = cb0_050w * cb0_065w; - float _580 = cb0_049w * cb0_064w; - float _589 = cb0_048w * cb0_063w; - float _650 = saturate(_476 * (((cb0_052x + cb0_067x) + _553) + (((cb0_051x * cb0_066x) * _562) * exp2(log2(exp2(((cb0_049x * cb0_064x) * _580) * log2(max(0.0f, ((((cb0_048x * cb0_063x) * _589) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_065x) * _571)))))); - float _651 = saturate(_476 * (((cb0_052y + cb0_067y) + _553) + (((cb0_051y * cb0_066y) * _562) * exp2(log2(exp2(((cb0_049y * cb0_064y) * _580) * log2(max(0.0f, ((((cb0_048y * cb0_063y) * _589) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_065y) * _571)))))); - float _652 = saturate(_476 * (((cb0_052z + cb0_067z) + _553) + (((cb0_051z * cb0_066z) * _562) * exp2(log2(exp2(((cb0_049z * cb0_064z) * _580) * log2(max(0.0f, ((((cb0_048z * cb0_063z) * _589) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_065z) * _571)))))); - float _656 = max(_650, max(_651, _652)); - float _657 = _656 - min(_650, min(_651, _652)); - if (!(_657 == 0.0f)) { - float _660 = _657 / _656; - if (_650 == _656) { - _678 = ((_651 - _652) / _657); - _679 = _660; - } else { - if (_651 == _656) { - _678 = (((_652 - _650) / _657) + 2.0f); - _679 = _660; - } else { - if (_652 == _656) { - _678 = (((_650 - _651) / _657) + 4.0f); - _679 = _660; - } else { - _678 = 0.0f; - _679 = _660; - } - } - } - } else { - _678 = 0.0f; - _679 = 0.0f; - } - float _680 = cb0_073z + _678; - float _681 = floor(_680); - float _682 = _680 - _681; - float _683 = 1.0f - _679; - float _685 = 1.0f - (_682 * _679); - float _688 = 1.0f - ((1.0f - _682) * _679); - if (!(_681 == 0.0f)) { - if (!(_681 == 1.0f)) { - if (!(_681 == 2.0f)) { - if (!(_681 == 3.0f)) { - if (!(_681 == 4.0f)) { - _700 = 1.0f; - _701 = _683; - _702 = _685; - } else { - _700 = _688; - _701 = _683; - _702 = 1.0f; - } - } else { - _700 = _683; - _701 = _685; - _702 = 1.0f; - } - } else { - _700 = _683; - _701 = 1.0f; - _702 = _688; - } - } else { - _700 = _685; - _701 = 1.0f; - _702 = _683; - } - } else { - _700 = 1.0f; - _701 = _688; - _702 = _683; - } - float _710 = saturate((_343 - cb0_073y) / (1.0f - cb0_073y)); - float _714 = (_710 * _710) * (3.0f - (_710 * 2.0f)); - float _723 = cb0_052w + cb0_062w; - float _732 = cb0_051w * cb0_061w; - float _741 = cb0_050w * cb0_060w; - float _750 = cb0_049w * cb0_059w; - float _759 = cb0_048w * cb0_058w; - float _820 = saturate(_476 * (((cb0_052x + cb0_062x) + _723) + (((cb0_051x * cb0_061x) * _732) * exp2(log2(exp2(((cb0_049x * cb0_059x) * _750) * log2(max(0.0f, ((((cb0_048x * cb0_058x) * _759) * _417) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050x * cb0_060x) * _741)))))); - float _821 = saturate(_476 * (((cb0_052y + cb0_062y) + _723) + (((cb0_051y * cb0_061y) * _732) * exp2(log2(exp2(((cb0_049y * cb0_059y) * _750) * log2(max(0.0f, ((((cb0_048y * cb0_058y) * _759) * _418) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050y * cb0_060y) * _741)))))); - float _822 = saturate(_476 * (((cb0_052z + cb0_062z) + _723) + (((cb0_051z * cb0_061z) * _732) * exp2(log2(exp2(((cb0_049z * cb0_059z) * _750) * log2(max(0.0f, ((((cb0_048z * cb0_058z) * _759) * _419) + _343)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / ((cb0_050z * cb0_060z) * _741)))))); - float _826 = max(_820, max(_821, _822)); - float _827 = _826 - min(_820, min(_821, _822)); - if (!(_827 == 0.0f)) { - float _830 = _827 / _826; - if (_820 == _826) { - _848 = ((_821 - _822) / _827); - _849 = _830; - } else { - if (_821 == _826) { - _848 = (((_822 - _820) / _827) + 2.0f); - _849 = _830; - } else { - if (_822 == _826) { - _848 = (((_820 - _821) / _827) + 4.0f); - _849 = _830; - } else { - _848 = 0.0f; - _849 = _830; - } - } - } - } else { - _848 = 0.0f; - _849 = 0.0f; - } - float _850 = cb0_073z + _848; - float _851 = floor(_850); - float _852 = _850 - _851; - float _853 = 1.0f - _849; - float _855 = 1.0f - (_852 * _849); - float _858 = 1.0f - ((1.0f - _852) * _849); - if (!(_851 == 0.0f)) { - if (!(_851 == 1.0f)) { - if (!(_851 == 2.0f)) { - if (!(_851 == 3.0f)) { - if (!(_851 == 4.0f)) { - _870 = 1.0f; - _871 = _853; - _872 = _855; - } else { - _870 = _858; - _871 = _853; - _872 = 1.0f; - } - } else { - _870 = _853; - _871 = _855; - _872 = 1.0f; - } - } else { - _870 = _853; - _871 = 1.0f; - _872 = _858; - } - } else { - _870 = _855; - _871 = 1.0f; - _872 = _853; - } - } else { - _870 = 1.0f; - _871 = _858; - _872 = _853; - } - float _877 = _826 * (_543 - _714); - float _885 = (((_700 * _656) * _714) + ((_531 * _486) * _544)) + (_877 * _870); - float _887 = (((_701 * _656) * _714) + ((_532 * _486) * _544)) + (_877 * _871); - float _889 = (((_702 * _656) * _714) + ((_533 * _486) * _544)) + (_877 * _872); - float _915 = dot(float3(_885, _887, _889), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _979 = saturate(_476 * ((cb0_072x + cb0_072w) + ((cb0_071x * cb0_071w) * exp2(log2(exp2((cb0_069x * cb0_069w) * log2(max(0.0f, (((cb0_068x * cb0_068w) * (_885 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070x * cb0_070w)))))); - float _980 = saturate(_476 * ((cb0_072y + cb0_072w) + ((cb0_071y * cb0_071w) * exp2(log2(exp2((cb0_069y * cb0_069w) * log2(max(0.0f, (((cb0_068y * cb0_068w) * (_887 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070y * cb0_070w)))))); - float _981 = saturate(_476 * ((cb0_072z + cb0_072w) + ((cb0_071z * cb0_071w) * exp2(log2(exp2((cb0_069z * cb0_069w) * log2(max(0.0f, (((cb0_068z * cb0_068w) * (_889 - _915)) + _915)) * 5.55555534362793f)) * 0.18000000715255737f) * (1.0f / (cb0_070z * cb0_070w)))))); - float _985 = max(_979, max(_980, _981)); - float _986 = _985 - min(_979, min(_980, _981)); - if (!(_986 == 0.0f)) { - float _989 = _986 / _985; - if (_979 == _985) { - _1007 = ((_980 - _981) / _986); - _1008 = _989; - } else { - if (_980 == _985) { - _1007 = (((_981 - _979) / _986) + 2.0f); - _1008 = _989; - } else { - if (_981 == _985) { - _1007 = (((_979 - _980) / _986) + 4.0f); - _1008 = _989; - } else { - _1007 = 0.0f; - _1008 = _989; - } - } - } - } else { - _1007 = 0.0f; - _1008 = 0.0f; - } - float _1009 = cb0_073z + _1007; - float _1010 = floor(_1009); - float _1011 = _1009 - _1010; - float _1012 = 1.0f - _1008; - float _1014 = 1.0f - (_1011 * _1008); - float _1017 = 1.0f - ((1.0f - _1011) * _1008); - if (!(_1010 == 0.0f)) { - if (!(_1010 == 1.0f)) { - if (!(_1010 == 2.0f)) { - if (!(_1010 == 3.0f)) { - if (!(_1010 == 4.0f)) { - _1029 = 1.0f; - _1030 = _1012; - _1031 = _1014; - } else { - _1029 = _1017; - _1030 = _1012; - _1031 = 1.0f; - } - } else { - _1029 = _1012; - _1030 = _1014; - _1031 = 1.0f; - } - } else { - _1029 = _1012; - _1030 = 1.0f; - _1031 = _1017; - } - } else { - _1029 = _1014; - _1030 = 1.0f; - _1031 = _1012; - } - } else { - _1029 = 1.0f; - _1030 = _1017; - _1031 = _1012; - } - float _1032 = _1029 * _985; - float _1033 = _1030 * _985; - float _1034 = _1031 * _985; - float _1037 = mad(-0.0832584798336029f, _1034, mad(-0.6217905879020691f, _1033, (_1032 * 1.7050515413284302f))); - float _1040 = mad(-0.010548528283834457f, _1034, mad(1.1408027410507202f, _1033, (_1032 * -0.13025718927383423f))); - float _1043 = mad(1.152971863746643f, _1034, mad(-0.1289687603712082f, _1033, (_1032 * -0.024003278464078903f))); - float _1059 = ((mad(0.061360642313957214f, _1034, mad(-4.540197551250458e-09f, _1033, (_1032 * 0.9386394023895264f))) - _1032) * cb0_075x) + _1032; - float _1060 = ((mad(0.169205904006958f, _1034, mad(0.8307942152023315f, _1033, (_1032 * 6.775371730327606e-08f))) - _1033) * cb0_075x) + _1033; - float _1061 = (mad(-2.3283064365386963e-10f, _1033, (_1032 * -9.313225746154785e-10f)) * cb0_075x) + _1034; - // if ((((uint)(cb0_046z) | (uint)(cb0_046y)) | (uint)(cb0_046w)) == 0) { - if ((((uint)(tm_flags.z) | (uint)(tm_flags.y)) | (uint)(tm_flags.w)) == 0) { - float _1071 = mad(0.16386905312538147f, _1061, mad(0.14067868888378143f, _1060, (_1059 * 0.6954522132873535f))); - float _1074 = mad(0.0955343246459961f, _1061, mad(0.8596711158752441f, _1060, (_1059 * 0.044794581830501556f))); - float _1077 = mad(1.0015007257461548f, _1061, mad(0.004025210160762072f, _1060, (_1059 * -0.005525882821530104f))); - float _1081 = max(max(_1071, _1074), _1077); - float _1086 = (max(_1081, 1.000000013351432e-10f) - max(min(min(_1071, _1074), _1077), 1.000000013351432e-10f)) / max(_1081, 0.009999999776482582f); - float _1099 = ((_1074 + _1071) + _1077) + (sqrt((((_1077 - _1074) * _1077) + ((_1074 - _1071) * _1074)) + ((_1071 - _1077) * _1071)) * 1.75f); - float _1100 = _1099 * 0.3333333432674408f; - float _1101 = _1086 + -0.4000000059604645f; - float _1102 = _1101 * 5.0f; - float _1106 = max((1.0f - abs(_1101 * 2.5f)), 0.0f); - float _1117 = ((float(((int)(uint)((bool)(_1102 > 0.0f))) - ((int)(uint)((bool)(_1102 < 0.0f)))) * (1.0f - (_1106 * _1106))) + 1.0f) * 0.02500000037252903f; - if (!(_1100 <= 0.0533333346247673f)) { - if (!(_1100 >= 0.1599999964237213f)) { - _1126 = (((0.23999999463558197f / _1099) + -0.5f) * _1117); - } else { - _1126 = 0.0f; - } - } else { - _1126 = _1117; - } - float _1127 = _1126 + 1.0f; - float _1128 = _1127 * _1071; - float _1129 = _1127 * _1074; - float _1130 = _1127 * _1077; - if (!((bool)(_1128 == _1129) && (bool)(_1129 == _1130))) { - float _1137 = ((_1128 * 2.0f) - _1129) - _1130; - float _1140 = ((_1074 - _1077) * 1.7320507764816284f) * _1127; - float _1142 = atan(_1140 / _1137); - bool _1145 = (_1137 < 0.0f); - bool _1146 = (_1137 == 0.0f); - bool _1147 = (_1140 >= 0.0f); - bool _1148 = (_1140 < 0.0f); - _1159 = select((_1147 && _1146), 90.0f, select((_1148 && _1146), -90.0f, (select((_1148 && _1145), (_1142 + -3.1415927410125732f), select((_1147 && _1145), (_1142 + 3.1415927410125732f), _1142)) * 57.2957763671875f))); - } else { - _1159 = 0.0f; - } - float _1164 = min(max(select((_1159 < 0.0f), (_1159 + 360.0f), _1159), 0.0f), 360.0f); - if (_1164 < -180.0f) { - _1173 = (_1164 + 360.0f); - } else { - if (_1164 > 180.0f) { - _1173 = (_1164 + -360.0f); - } else { - _1173 = _1164; - } - } - float _1177 = saturate(1.0f - abs(_1173 * 0.014814814552664757f)); - float _1181 = (_1177 * _1177) * (3.0f - (_1177 * 2.0f)); - float _1187 = ((_1181 * _1181) * ((_1086 * 0.18000000715255737f) * (0.029999999329447746f - _1128))) + _1128; - float _1197 = max(0.0f, mad(-0.21492856740951538f, _1130, mad(-0.2365107536315918f, _1129, (_1187 * 1.4514392614364624f)))); - float _1198 = max(0.0f, mad(-0.09967592358589172f, _1130, mad(1.17622971534729f, _1129, (_1187 * -0.07655377686023712f)))); - float _1199 = max(0.0f, mad(0.9977163076400757f, _1130, mad(-0.006032449658960104f, _1129, (_1187 * 0.008316148072481155f)))); - float _1200 = dot(float3(_1197, _1198, _1199), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1214 = (cb0_036w + 1.0f) - cb0_036y; - float _1217 = cb0_037x + 1.0f; - float _1219 = _1217 - cb0_036z; - if (cb0_036y > 0.800000011920929f) { - _1237 = (((0.8199999928474426f - cb0_036y) / cb0_036x) + -0.7447274923324585f); - } else { - float _1228 = (cb0_036w + 0.18000000715255737f) / _1214; - _1237 = (-0.7447274923324585f - ((log2(_1228 / (2.0f - _1228)) * 0.3465735912322998f) * (_1214 / cb0_036x))); - } - float _1240 = ((1.0f - cb0_036y) / cb0_036x) - _1237; - float _1242 = (cb0_036z / cb0_036x) - _1240; - float _1246 = log2(lerp(_1200, _1197, 0.9599999785423279f)) * 0.3010300099849701f; - float _1247 = log2(lerp(_1200, _1198, 0.9599999785423279f)) * 0.3010300099849701f; - float _1248 = log2(lerp(_1200, _1199, 0.9599999785423279f)) * 0.3010300099849701f; - float _1252 = cb0_036x * (_1246 + _1240); - float _1253 = cb0_036x * (_1247 + _1240); - float _1254 = cb0_036x * (_1248 + _1240); - float _1255 = _1214 * 2.0f; - float _1257 = (cb0_036x * -2.0f) / _1214; - float _1258 = _1246 - _1237; - float _1259 = _1247 - _1237; - float _1260 = _1248 - _1237; - float _1279 = _1219 * 2.0f; - float _1281 = (cb0_036x * 2.0f) / _1219; - float _1306 = select((_1246 < _1237), ((_1255 / (exp2((_1258 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1252); - float _1307 = select((_1247 < _1237), ((_1255 / (exp2((_1259 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1253); - float _1308 = select((_1248 < _1237), ((_1255 / (exp2((_1260 * 1.4426950216293335f) * _1257) + 1.0f)) - cb0_036w), _1254); - float _1315 = _1242 - _1237; - float _1319 = saturate(_1258 / _1315); - float _1320 = saturate(_1259 / _1315); - float _1321 = saturate(_1260 / _1315); - bool _1322 = (_1242 < _1237); - float _1326 = select(_1322, (1.0f - _1319), _1319); - float _1327 = select(_1322, (1.0f - _1320), _1320); - float _1328 = select(_1322, (1.0f - _1321), _1321); - float _1347 = (((_1326 * _1326) * (select((_1246 > _1242), (_1217 - (_1279 / (exp2(((_1246 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1252) - _1306)) * (3.0f - (_1326 * 2.0f))) + _1306; - float _1348 = (((_1327 * _1327) * (select((_1247 > _1242), (_1217 - (_1279 / (exp2(((_1247 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1253) - _1307)) * (3.0f - (_1327 * 2.0f))) + _1307; - float _1349 = (((_1328 * _1328) * (select((_1248 > _1242), (_1217 - (_1279 / (exp2(((_1248 - _1242) * 1.4426950216293335f) * _1281) + 1.0f))), _1254) - _1308)) * (3.0f - (_1328 * 2.0f))) + _1308; - float _1350 = dot(float3(_1347, _1348, _1349), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - _1374 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1347, 0.9300000071525574f))) - _1059)) + _1059); - _1375 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1348, 0.9300000071525574f))) - _1060)) + _1060); - _1376 = ((cb0_075z * (max(0.0f, (lerp(_1350, _1349, 0.9300000071525574f))) - _1061)) + _1061); - } else { - _1374 = _1059; - _1375 = _1060; - _1376 = _1061; - } - float _1392 = ((mad(-0.06537103652954102f, _1376, mad(1.451815478503704e-06f, _1375, (_1374 * 1.065374732017517f))) - _1374) * cb0_075x) + _1374; - float _1393 = ((mad(-0.20366770029067993f, _1376, mad(1.2036634683609009f, _1375, (_1374 * -2.57161445915699e-07f))) - _1375) * cb0_075x) + _1375; - float _1394 = ((mad(0.9999996423721313f, _1376, mad(2.0954757928848267e-08f, _1375, (_1374 * 1.862645149230957e-08f))) - _1376) * cb0_075x) + _1376; - [branch] - if (!_300) { - float _1437 = 1.0f / (dot(float3(_1037, _1040, _1043), float3(cb0_033x, cb0_033y, cb0_033z)) + 1.0f); - float _1447 = max(0.0f, (((_1437 * cb0_035x) + cb0_034x) * dot(float3(_1037, _1040, _1043), float3(cb0_028x, cb0_028y, cb0_028z)))); - float _1448 = max(0.0f, (((_1437 * cb0_035y) + cb0_034y) * dot(float3(_1037, _1040, _1043), float3(cb0_029x, cb0_029y, cb0_029z)))); - float _1449 = max(0.0f, (((_1437 * cb0_035z) + cb0_034z) * dot(float3(_1037, _1040, _1043), float3(cb0_030x, cb0_030y, cb0_030z)))); - float _1455 = max(0.0f, (cb0_031x - _1447)); - float _1456 = max(0.0f, (cb0_031x - _1448)); - float _1457 = max(0.0f, (cb0_031x - _1449)); - float _1459 = max(_1447, cb0_031z); - float _1460 = max(_1448, cb0_031z); - float _1461 = max(_1449, cb0_031z); - _1519 = (((((((cb0_032x * _1459) + cb0_032y) * (1.0f / (cb0_031w + _1459))) + -0.0020000000949949026f) + (cb0_030w * min(max(_1447, cb0_031x), cb0_031z))) + ((cb0_028w * _1455) * (1.0f / (cb0_031y + _1455)))) + cb0_029w); - _1520 = ((((((1.0f / (cb0_031w + _1460)) * ((cb0_032x * _1460) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1448, cb0_031x), cb0_031z))) + ((cb0_028w * _1456) * (1.0f / (cb0_031y + _1456)))) + cb0_029w); - _1521 = ((((((1.0f / (cb0_031w + _1461)) * ((cb0_032x * _1461) + cb0_032y)) + -0.0020000000949949026f) + (cb0_030w * min(max(_1449, cb0_031x), cb0_031z))) + ((cb0_028w * _1457) * (1.0f / (cb0_031y + _1457)))) + cb0_029w); - } else { - _1519 = max(0.0f, mad(-0.0832584798336029f, _1394, mad(-0.6217905879020691f, _1393, (_1392 * 1.7050515413284302f)))); - _1520 = max(0.0f, mad(-0.010548528283834457f, _1394, mad(1.1408027410507202f, _1393, (_1392 * -0.13025718927383423f)))); - _1521 = max(0.0f, mad(1.152971863746643f, _1394, mad(-0.1289687603712082f, _1393, (_1392 * -0.024003278464078903f)))); - } - float _1522 = saturate(_1519); - float _1523 = saturate(_1520); - float _1524 = saturate(_1521); - if (_1522 < 0.0031306699384003878f) { - _1535 = (_1522 * 12.920000076293945f); - } else { - _1535 = (((pow(_1522, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1523 < 0.0031306699384003878f) { - _1546 = (_1523 * 12.920000076293945f); - } else { - _1546 = (((pow(_1523, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1524 < 0.0031306699384003878f) { - _1557 = (_1524 * 12.920000076293945f); - } else { - _1557 = (((pow(_1524, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - float _1561 = (_1546 * 0.9375f) + 0.03125f; - float _1569 = _1557 * 15.0f; - float _1570 = floor(_1569); - float _1571 = _1569 - _1570; - float _1573 = (_1570 + ((_1535 * 0.9375f) + 0.03125f)) * 0.0625f; - float4 _1574 = t1.Sample(s1, float2(_1573, _1561)); - float _1578 = _1573 + 0.0625f; - float4 _1579 = t1.Sample(s1, float2(_1578, _1561)); - float _1595 = ((lerp(_1574.x, _1579.x, _1571)) * cb0_041x) + (cb0_040x * _1535); - float _1596 = ((lerp(_1574.y, _1579.y, _1571)) * cb0_041x) + (cb0_040x * _1546); - float _1597 = ((lerp(_1574.z, _1579.z, _1571)) * cb0_041x) + (cb0_040x * _1557); - float4 _1600 = t0.Sample(s0, float2(_1573, _1561)); - float4 _1604 = t0.Sample(s0, float2(_1578, _1561)); - float _1622 = cb0_038w * cb0_039z; - float _1629 = max(6.103519990574569e-05f, ((_1622 * ((_1600.x - _1595) + ((_1604.x - _1600.x) * _1571))) + _1595)); - float _1630 = max(6.103519990574569e-05f, ((_1622 * ((_1600.y - _1596) + ((_1604.y - _1600.y) * _1571))) + _1596)); - float _1631 = max(6.103519990574569e-05f, ((_1622 * ((_1600.z - _1597) + ((_1604.z - _1600.z) * _1571))) + _1597)); - float _1653 = select((_1629 > 0.040449999272823334f), exp2(log2((_1629 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1629 * 0.07739938050508499f)); - float _1654 = select((_1630 > 0.040449999272823334f), exp2(log2((_1630 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1630 * 0.07739938050508499f)); - float _1655 = select((_1631 > 0.040449999272823334f), exp2(log2((_1631 * 0.9478672742843628f) + 0.05213269963860512f) * 2.4000000953674316f), (_1631 * 0.07739938050508499f)); - float _1681 = cb0_044y * (((cb0_026y + (cb0_026x * _1653)) * _1653) + cb0_026z); - float _1682 = cb0_044z * (((cb0_026y + (cb0_026x * _1654)) * _1654) + cb0_026z); - float _1683 = cb0_044w * (((cb0_026y + (cb0_026x * _1655)) * _1655) + cb0_026z); - float _1690 = ((cb0_045x - _1681) * cb0_045w) + _1681; - float _1691 = ((cb0_045y - _1682) * cb0_045w) + _1682; - float _1692 = ((cb0_045z - _1683) * cb0_045w) + _1683; - float _1693 = cb0_044y * _1037; - float _1694 = cb0_044z * _1040; - float _1695 = cb0_044w * _1043; - float _1702 = ((cb0_045x - _1693) * cb0_045w) + _1693; - float _1703 = ((cb0_045y - _1694) * cb0_045w) + _1694; - float _1704 = ((cb0_045z - _1695) * cb0_045w) + _1695; - float _1716 = exp2(log2(max(0.0f, _1690)) * cb0_027y); - float _1717 = exp2(log2(max(0.0f, _1691)) * cb0_027y); - float _1718 = exp2(log2(max(0.0f, _1692)) * cb0_027y); - - SV_Target.rgb = GenerateLUTOutput(float3(_1716, _1717, _1718)); - SV_Target.a = 0; - return SV_Target; - - [branch] - if ((uint)(cb0_074z) == 0) { - if (_1716 < 0.0031306699384003878f) { - _1733 = (_1716 * 12.920000076293945f); - } else { - _1733 = (((pow(_1716, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1717 < 0.0031306699384003878f) { - _1744 = (_1717 * 12.920000076293945f); - } else { - _1744 = (((pow(_1717, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - if (_1718 < 0.0031306699384003878f) { - _3172 = _1733; - _3173 = _1744; - _3174 = (_1718 * 12.920000076293945f); - } else { - _3172 = _1733; - _3173 = _1744; - _3174 = (((pow(_1718, 0.4166666567325592f)) * 1.0549999475479126f) + -0.054999999701976776f); - } - } else { - if ((uint)(cb0_074z) == 1) { - float _1759 = mad(0.04736635088920593f, _1718, mad(0.3395121395587921f, _1717, (_1716 * 0.613191545009613f))); - float _1762 = mad(0.01345000695437193f, _1718, mad(0.9163357615470886f, _1717, (_1716 * 0.07020691782236099f))); - float _1765 = mad(0.8696067929267883f, _1718, mad(0.1095672994852066f, _1717, (_1716 * 0.020618872717022896f))); - float _1775 = max(6.103519990574569e-05f, mad(_36, _1765, mad(_35, _1762, (_1759 * _34)))); - float _1776 = max(6.103519990574569e-05f, mad(_39, _1765, mad(_38, _1762, (_1759 * _37)))); - float _1777 = max(6.103519990574569e-05f, mad(_42, _1765, mad(_41, _1762, (_1759 * _40)))); - _3172 = min((_1775 * 4.5f), ((exp2(log2(max(_1775, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3173 = min((_1776 * 4.5f), ((exp2(log2(max(_1776, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - _3174 = min((_1777 * 4.5f), ((exp2(log2(max(_1777, 0.017999999225139618f)) * 0.44999998807907104f) * 1.0989999771118164f) + -0.0989999994635582f)); - } else { - bool _1804 = ((uint)(cb0_074z) == 5); - if ((bool)((uint)(cb0_074z) == 3) || _1804) { - float _1807 = _1703 * 3.0f; - float _1808 = _1704 * 3.0f; - float _1811 = mad(0.17733481526374817f, _1808, mad(0.38297808170318604f, _1807, (_1702 * 1.31910240650177f))); - float _1814 = mad(0.09676162153482437f, _1808, mad(0.8134231567382812f, _1807, (_1702 * 0.2693769633769989f))); - float _1817 = mad(0.870704174041748f, _1808, mad(0.11154405772686005f, _1807, (_1702 * 0.05263196676969528f))); - float _1821 = max(max(_1811, _1814), _1817); - float _1826 = (max(_1821, 1.000000013351432e-10f) - max(min(min(_1811, _1814), _1817), 1.000000013351432e-10f)) / max(_1821, 0.009999999776482582f); - float _1839 = ((_1814 + _1811) + _1817) + (sqrt((((_1817 - _1814) * _1817) + ((_1814 - _1811) * _1814)) + ((_1811 - _1817) * _1811)) * 1.75f); - float _1840 = _1839 * 0.3333333432674408f; - float _1841 = _1826 + -0.4000000059604645f; - float _1842 = _1841 * 5.0f; - float _1846 = max((1.0f - abs(_1841 * 2.5f)), 0.0f); - float _1857 = ((float(((int)(uint)((bool)(_1842 > 0.0f))) - ((int)(uint)((bool)(_1842 < 0.0f)))) * (1.0f - (_1846 * _1846))) + 1.0f) * 0.02500000037252903f; - if (!(_1840 <= 0.0533333346247673f)) { - if (!(_1840 >= 0.1599999964237213f)) { - _1866 = (((0.23999999463558197f / _1839) + -0.5f) * _1857); - } else { - _1866 = 0.0f; - } - } else { - _1866 = _1857; - } - float _1867 = _1866 + 1.0f; - float _1868 = _1867 * _1811; - float _1869 = _1867 * _1814; - float _1870 = _1867 * _1817; - if (!((bool)(_1868 == _1869) && (bool)(_1869 == _1870))) { - float _1877 = ((_1868 * 2.0f) - _1869) - _1870; - float _1880 = ((_1814 - _1817) * 1.7320507764816284f) * _1867; - float _1882 = atan(_1880 / _1877); - bool _1885 = (_1877 < 0.0f); - bool _1886 = (_1877 == 0.0f); - bool _1887 = (_1880 >= 0.0f); - bool _1888 = (_1880 < 0.0f); - _1899 = select((_1887 && _1886), 90.0f, select((_1888 && _1886), -90.0f, (select((_1888 && _1885), (_1882 + -3.1415927410125732f), select((_1887 && _1885), (_1882 + 3.1415927410125732f), _1882)) * 57.2957763671875f))); - } else { - _1899 = 0.0f; - } - float _1904 = min(max(select((_1899 < 0.0f), (_1899 + 360.0f), _1899), 0.0f), 360.0f); - if (_1904 < -180.0f) { - _1913 = (_1904 + 360.0f); - } else { - if (_1904 > 180.0f) { - _1913 = (_1904 + -360.0f); - } else { - _1913 = _1904; - } - } - if ((bool)(_1913 > -67.5f) && (bool)(_1913 < 67.5f)) { - float _1919 = (_1913 + 67.5f) * 0.029629629105329514f; - int _1920 = int(_1919); - float _1922 = _1919 - float(_1920); - float _1923 = _1922 * _1922; - float _1924 = _1923 * _1922; - if (_1920 == 3) { - _1952 = (((0.1666666716337204f - (_1922 * 0.5f)) + (_1923 * 0.5f)) - (_1924 * 0.1666666716337204f)); - } else { - if (_1920 == 2) { - _1952 = ((0.6666666865348816f - _1923) + (_1924 * 0.5f)); - } else { - if (_1920 == 1) { - _1952 = (((_1924 * -0.5f) + 0.1666666716337204f) + ((_1923 + _1922) * 0.5f)); - } else { - _1952 = select((_1920 == 0), (_1924 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _1952 = 0.0f; - } - float _1961 = min(max(((((_1826 * 0.27000001072883606f) * (0.029999999329447746f - _1868)) * _1952) + _1868), 0.0f), 65535.0f); - float _1962 = min(max(_1869, 0.0f), 65535.0f); - float _1963 = min(max(_1870, 0.0f), 65535.0f); - float _1976 = min(max(mad(-0.21492856740951538f, _1963, mad(-0.2365107536315918f, _1962, (_1961 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _1977 = min(max(mad(-0.09967592358589172f, _1963, mad(1.17622971534729f, _1962, (_1961 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _1978 = min(max(mad(0.9977163076400757f, _1963, mad(-0.006032449658960104f, _1962, (_1961 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _1979 = dot(float3(_1976, _1977, _1978), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _1986 = ((_1976 - _1979) * 0.9599999785423279f) + _1979; - float _1987 = ((_1977 - _1979) * 0.9599999785423279f) + _1979; - float _1988 = ((_1978 - _1979) * 0.9599999785423279f) + _1979; - float _1991 = log2(select((_1986 <= 0.0f), 6.103515625e-05f, _1986)); - float _1992 = _1991 * 0.3010300099849701f; - if (!(_1992 <= -5.2601776123046875f)) { - if ((bool)(_1992 > -5.2601776123046875f) && (bool)(_1992 < -0.7447274923324585f)) { - float _2000 = (_1991 * 0.19999998807907104f) + 3.494786262512207f; - int _2001 = int(_2000); - float _2003 = _2000 - float(_2001); - float _2005 = _global_0[_2001]; - float _2008 = _global_0[(_2001 + 1)]; - float _2013 = _2005 * 0.5f; - _2045 = dot(float3((_2003 * _2003), _2003, 1.0f), float3(mad((_global_0[(_2001 + 2)]), 0.5f, mad(_2008, -1.0f, _2013)), (_2008 - _2005), mad(_2008, 0.5f, _2013))); - } else { - if ((bool)(_1992 >= -0.7447274923324585f) && (bool)(_1992 < 4.673812389373779f)) { - float _2025 = (_1991 * 0.1666666567325592f) + 0.4123218357563019f; - int _2026 = int(_2025); - float _2028 = _2025 - float(_2026); - float _2030 = _global_1[_2026]; - float _2033 = _global_1[(_2026 + 1)]; - float _2038 = _2030 * 0.5f; - _2045 = dot(float3((_2028 * _2028), _2028, 1.0f), float3(mad((_global_1[(_2026 + 2)]), 0.5f, mad(_2033, -1.0f, _2038)), (_2033 - _2030), mad(_2033, 0.5f, _2038))); - } else { - _2045 = 4.0f; - } - } - } else { - _2045 = -4.0f; - } - float _2047 = exp2(_2045 * 3.321928024291992f); - float _2050 = log2(select((_1987 <= 0.0f), 6.103515625e-05f, _1987)); - float _2051 = _2050 * 0.3010300099849701f; - if (!(_2051 <= -5.2601776123046875f)) { - if ((bool)(_2051 > -5.2601776123046875f) && (bool)(_2051 < -0.7447274923324585f)) { - float _2059 = (_2050 * 0.19999998807907104f) + 3.494786262512207f; - int _2060 = int(_2059); - float _2062 = _2059 - float(_2060); - float _2064 = _global_0[_2060]; - float _2067 = _global_0[(_2060 + 1)]; - float _2072 = _2064 * 0.5f; - _2104 = dot(float3((_2062 * _2062), _2062, 1.0f), float3(mad((_global_0[(_2060 + 2)]), 0.5f, mad(_2067, -1.0f, _2072)), (_2067 - _2064), mad(_2067, 0.5f, _2072))); - } else { - if ((bool)(_2051 >= -0.7447274923324585f) && (bool)(_2051 < 4.673812389373779f)) { - float _2084 = (_2050 * 0.1666666567325592f) + 0.4123218357563019f; - int _2085 = int(_2084); - float _2087 = _2084 - float(_2085); - float _2089 = _global_1[_2085]; - float _2092 = _global_1[(_2085 + 1)]; - float _2097 = _2089 * 0.5f; - _2104 = dot(float3((_2087 * _2087), _2087, 1.0f), float3(mad((_global_1[(_2085 + 2)]), 0.5f, mad(_2092, -1.0f, _2097)), (_2092 - _2089), mad(_2092, 0.5f, _2097))); - } else { - _2104 = 4.0f; - } - } - } else { - _2104 = -4.0f; - } - float _2106 = exp2(_2104 * 3.321928024291992f); - float _2109 = log2(select((_1988 <= 0.0f), 6.103515625e-05f, _1988)); - float _2110 = _2109 * 0.3010300099849701f; - if (!(_2110 <= -5.2601776123046875f)) { - if ((bool)(_2110 > -5.2601776123046875f) && (bool)(_2110 < -0.7447274923324585f)) { - float _2118 = (_2109 * 0.19999998807907104f) + 3.494786262512207f; - int _2119 = int(_2118); - float _2121 = _2118 - float(_2119); - float _2123 = _global_0[_2119]; - float _2126 = _global_0[(_2119 + 1)]; - float _2131 = _2123 * 0.5f; - _2163 = dot(float3((_2121 * _2121), _2121, 1.0f), float3(mad((_global_0[(_2119 + 2)]), 0.5f, mad(_2126, -1.0f, _2131)), (_2126 - _2123), mad(_2126, 0.5f, _2131))); - } else { - if ((bool)(_2110 >= -0.7447274923324585f) && (bool)(_2110 < 4.673812389373779f)) { - float _2143 = (_2109 * 0.1666666567325592f) + 0.4123218357563019f; - int _2144 = int(_2143); - float _2146 = _2143 - float(_2144); - float _2148 = _global_1[_2144]; - float _2151 = _global_1[(_2144 + 1)]; - float _2156 = _2148 * 0.5f; - _2163 = dot(float3((_2146 * _2146), _2146, 1.0f), float3(mad((_global_1[(_2144 + 2)]), 0.5f, mad(_2151, -1.0f, _2156)), (_2151 - _2148), mad(_2151, 0.5f, _2156))); - } else { - _2163 = 4.0f; - } - } - } else { - _2163 = -4.0f; - } - float _2165 = exp2(_2163 * 3.321928024291992f); - float _2168 = mad(0.16386906802654266f, _2165, mad(0.14067870378494263f, _2106, (_2047 * 0.6954522132873535f))); - float _2171 = mad(0.0955343171954155f, _2165, mad(0.8596711158752441f, _2106, (_2047 * 0.044794563204050064f))); - float _2174 = mad(1.0015007257461548f, _2165, mad(0.004025210160762072f, _2106, (_2047 * -0.005525882821530104f))); - float _2177 = mad(-0.21492856740951538f, _2174, mad(-0.2365107536315918f, _2171, (_2168 * 1.4514392614364624f))); - float _2180 = mad(-0.09967592358589172f, _2174, mad(1.17622971534729f, _2171, (_2168 * -0.07655377686023712f))); - float _2183 = mad(0.9977163076400757f, _2174, mad(-0.006032449658960104f, _2171, (_2168 * 0.008316148072481155f))); - float _2186 = log2(select((_2177 <= 0.0f), 9.999999747378752e-05f, _2177)); - float _2187 = _2186 * 0.3010300099849701f; - if (!(!(_2187 <= -3.848327875137329f))) { - _2246 = ((_2186 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2187 > -3.848327875137329f) && (bool)(_2187 < 0.6812411546707153f)) { - float _2198 = (_2186 + 12.783867835998535f) * 0.46521204710006714f; - int _2199 = int(_2198); - float _2201 = _2198 - float(_2199); - float _2203 = _global_2[_2199]; - float _2206 = _global_2[(_2199 + 1)]; - float _2211 = _2203 * 0.5f; - _2246 = dot(float3((_2201 * _2201), _2201, 1.0f), float3(mad((_global_2[(_2199 + 2)]), 0.5f, mad(_2206, -1.0f, _2211)), (_2206 - _2203), mad(_2206, 0.5f, _2211))); - } else { - if ((bool)(_2187 >= 0.6812411546707153f) && (bool)(_2187 < 3.653702974319458f)) { - float _2223 = (_2186 + -2.2630341053009033f) * 0.7089107632637024f; - int _2224 = int(_2223); - float _2226 = _2223 - float(_2224); - float _2228 = _global_3[_2224]; - float _2231 = _global_3[(_2224 + 1)]; - float _2236 = _2228 * 0.5f; - _2246 = dot(float3((_2226 * _2226), _2226, 1.0f), float3(mad((_global_3[(_2224 + 2)]), 0.5f, mad(_2231, -1.0f, _2236)), (_2231 - _2228), mad(_2231, 0.5f, _2236))); - } else { - _2246 = ((_2186 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2251 = log2(select((_2180 <= 0.0f), 9.999999747378752e-05f, _2180)); - float _2252 = _2251 * 0.3010300099849701f; - if (!(!(_2252 <= -3.848327875137329f))) { - _2311 = ((_2251 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2252 > -3.848327875137329f) && (bool)(_2252 < 0.6812411546707153f)) { - float _2263 = (_2251 + 12.783867835998535f) * 0.46521204710006714f; - int _2264 = int(_2263); - float _2266 = _2263 - float(_2264); - float _2268 = _global_2[_2264]; - float _2271 = _global_2[(_2264 + 1)]; - float _2276 = _2268 * 0.5f; - _2311 = dot(float3((_2266 * _2266), _2266, 1.0f), float3(mad((_global_2[(_2264 + 2)]), 0.5f, mad(_2271, -1.0f, _2276)), (_2271 - _2268), mad(_2271, 0.5f, _2276))); - } else { - if ((bool)(_2252 >= 0.6812411546707153f) && (bool)(_2252 < 3.653702974319458f)) { - float _2288 = (_2251 + -2.2630341053009033f) * 0.7089107632637024f; - int _2289 = int(_2288); - float _2291 = _2288 - float(_2289); - float _2293 = _global_3[_2289]; - float _2296 = _global_3[(_2289 + 1)]; - float _2301 = _2293 * 0.5f; - _2311 = dot(float3((_2291 * _2291), _2291, 1.0f), float3(mad((_global_3[(_2289 + 2)]), 0.5f, mad(_2296, -1.0f, _2301)), (_2296 - _2293), mad(_2296, 0.5f, _2301))); - } else { - _2311 = ((_2251 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2316 = log2(select((_2183 <= 0.0f), 9.999999747378752e-05f, _2183)); - float _2317 = _2316 * 0.3010300099849701f; - if (!(!(_2317 <= -3.848327875137329f))) { - _2376 = ((_2316 * 0.9030900001525879f) + 7.54498291015625f); - } else { - if ((bool)(_2317 > -3.848327875137329f) && (bool)(_2317 < 0.6812411546707153f)) { - float _2328 = (_2316 + 12.783867835998535f) * 0.46521204710006714f; - int _2329 = int(_2328); - float _2331 = _2328 - float(_2329); - float _2333 = _global_2[_2329]; - float _2336 = _global_2[(_2329 + 1)]; - float _2341 = _2333 * 0.5f; - _2376 = dot(float3((_2331 * _2331), _2331, 1.0f), float3(mad((_global_2[(_2329 + 2)]), 0.5f, mad(_2336, -1.0f, _2341)), (_2336 - _2333), mad(_2336, 0.5f, _2341))); - } else { - if ((bool)(_2317 >= 0.6812411546707153f) && (bool)(_2317 < 3.653702974319458f)) { - float _2353 = (_2316 + -2.2630341053009033f) * 0.7089107632637024f; - int _2354 = int(_2353); - float _2356 = _2353 - float(_2354); - float _2358 = _global_3[_2354]; - float _2361 = _global_3[(_2354 + 1)]; - float _2366 = _2358 * 0.5f; - _2376 = dot(float3((_2356 * _2356), _2356, 1.0f), float3(mad((_global_3[(_2354 + 2)]), 0.5f, mad(_2361, -1.0f, _2366)), (_2361 - _2358), mad(_2361, 0.5f, _2366))); - } else { - _2376 = ((_2316 * 0.018061799928545952f) + 2.780777931213379f); - } - } - } - float _2379 = exp2(_2246 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2380 = exp2(_2311 * 3.321928024291992f) + -3.507384462864138e-05f; - float _2381 = exp2(_2376 * 3.321928024291992f) + -3.507384462864138e-05f; - if (!_1804) { - _2393 = mad(_36, _2381, mad(_35, _2380, (_2379 * _34))); - _2394 = mad(_39, _2381, mad(_38, _2380, (_2379 * _37))); - _2395 = mad(_42, _2381, mad(_41, _2380, (_2379 * _40))); - } else { - _2393 = _2379; - _2394 = _2380; - _2395 = _2381; - } - float _2405 = exp2(log2(_2393 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2406 = exp2(log2(_2394 * 9.999999747378752e-05f) * 0.1593017578125f); - float _2407 = exp2(log2(_2395 * 9.999999747378752e-05f) * 0.1593017578125f); - _3172 = exp2(log2((1.0f / ((_2405 * 18.6875f) + 1.0f)) * ((_2405 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3173 = exp2(log2((1.0f / ((_2406 * 18.6875f) + 1.0f)) * ((_2406 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_2407 * 18.6875f) + 1.0f)) * ((_2407 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (((uint)(cb0_074z) & -3) == 4) { - float _2440 = _1703 * 3.0f; - float _2441 = _1704 * 3.0f; - float _2444 = mad(0.17733481526374817f, _2441, mad(0.38297808170318604f, _2440, (_1702 * 1.31910240650177f))); - float _2447 = mad(0.09676162153482437f, _2441, mad(0.8134231567382812f, _2440, (_1702 * 0.2693769633769989f))); - float _2450 = mad(0.870704174041748f, _2441, mad(0.11154405772686005f, _2440, (_1702 * 0.05263196676969528f))); - float _2454 = max(max(_2444, _2447), _2450); - float _2459 = (max(_2454, 1.000000013351432e-10f) - max(min(min(_2444, _2447), _2450), 1.000000013351432e-10f)) / max(_2454, 0.009999999776482582f); - float _2472 = ((_2447 + _2444) + _2450) + (sqrt((((_2450 - _2447) * _2450) + ((_2447 - _2444) * _2447)) + ((_2444 - _2450) * _2444)) * 1.75f); - float _2473 = _2472 * 0.3333333432674408f; - float _2474 = _2459 + -0.4000000059604645f; - float _2475 = _2474 * 5.0f; - float _2479 = max((1.0f - abs(_2474 * 2.5f)), 0.0f); - float _2490 = ((float(((int)(uint)((bool)(_2475 > 0.0f))) - ((int)(uint)((bool)(_2475 < 0.0f)))) * (1.0f - (_2479 * _2479))) + 1.0f) * 0.02500000037252903f; - if (!(_2473 <= 0.0533333346247673f)) { - if (!(_2473 >= 0.1599999964237213f)) { - _2499 = (((0.23999999463558197f / _2472) + -0.5f) * _2490); - } else { - _2499 = 0.0f; - } - } else { - _2499 = _2490; - } - float _2500 = _2499 + 1.0f; - float _2501 = _2500 * _2444; - float _2502 = _2500 * _2447; - float _2503 = _2500 * _2450; - if (!((bool)(_2501 == _2502) && (bool)(_2502 == _2503))) { - float _2510 = ((_2501 * 2.0f) - _2502) - _2503; - float _2513 = ((_2447 - _2450) * 1.7320507764816284f) * _2500; - float _2515 = atan(_2513 / _2510); - bool _2518 = (_2510 < 0.0f); - bool _2519 = (_2510 == 0.0f); - bool _2520 = (_2513 >= 0.0f); - bool _2521 = (_2513 < 0.0f); - _2532 = select((_2520 && _2519), 90.0f, select((_2521 && _2519), -90.0f, (select((_2521 && _2518), (_2515 + -3.1415927410125732f), select((_2520 && _2518), (_2515 + 3.1415927410125732f), _2515)) * 57.2957763671875f))); - } else { - _2532 = 0.0f; - } - float _2537 = min(max(select((_2532 < 0.0f), (_2532 + 360.0f), _2532), 0.0f), 360.0f); - if (_2537 < -180.0f) { - _2546 = (_2537 + 360.0f); - } else { - if (_2537 > 180.0f) { - _2546 = (_2537 + -360.0f); - } else { - _2546 = _2537; - } - } - if ((bool)(_2546 > -67.5f) && (bool)(_2546 < 67.5f)) { - float _2552 = (_2546 + 67.5f) * 0.029629629105329514f; - int _2553 = int(_2552); - float _2555 = _2552 - float(_2553); - float _2556 = _2555 * _2555; - float _2557 = _2556 * _2555; - if (_2553 == 3) { - _2585 = (((0.1666666716337204f - (_2555 * 0.5f)) + (_2556 * 0.5f)) - (_2557 * 0.1666666716337204f)); - } else { - if (_2553 == 2) { - _2585 = ((0.6666666865348816f - _2556) + (_2557 * 0.5f)); - } else { - if (_2553 == 1) { - _2585 = (((_2557 * -0.5f) + 0.1666666716337204f) + ((_2556 + _2555) * 0.5f)); - } else { - _2585 = select((_2553 == 0), (_2557 * 0.1666666716337204f), 0.0f); - } - } - } - } else { - _2585 = 0.0f; - } - float _2594 = min(max(((((_2459 * 0.27000001072883606f) * (0.029999999329447746f - _2501)) * _2585) + _2501), 0.0f), 65535.0f); - float _2595 = min(max(_2502, 0.0f), 65535.0f); - float _2596 = min(max(_2503, 0.0f), 65535.0f); - float _2609 = min(max(mad(-0.21492856740951538f, _2596, mad(-0.2365107536315918f, _2595, (_2594 * 1.4514392614364624f))), 0.0f), 65535.0f); - float _2610 = min(max(mad(-0.09967592358589172f, _2596, mad(1.17622971534729f, _2595, (_2594 * -0.07655377686023712f))), 0.0f), 65535.0f); - float _2611 = min(max(mad(0.9977163076400757f, _2596, mad(-0.006032449658960104f, _2595, (_2594 * 0.008316148072481155f))), 0.0f), 65535.0f); - float _2612 = dot(float3(_2609, _2610, _2611), float3(0.2722287178039551f, 0.6740817427635193f, 0.053689517080783844f)); - float _2619 = ((_2609 - _2612) * 0.9599999785423279f) + _2612; - float _2620 = ((_2610 - _2612) * 0.9599999785423279f) + _2612; - float _2621 = ((_2611 - _2612) * 0.9599999785423279f) + _2612; - float _2624 = log2(select((_2619 <= 0.0f), 6.103515625e-05f, _2619)); - float _2625 = _2624 * 0.3010300099849701f; - if (!(_2625 <= -5.2601776123046875f)) { - if ((bool)(_2625 > -5.2601776123046875f) && (bool)(_2625 < -0.7447274923324585f)) { - float _2633 = (_2624 * 0.19999998807907104f) + 3.494786262512207f; - int _2634 = int(_2633); - float _2636 = _2633 - float(_2634); - float _2638 = _global_0[_2634]; - float _2641 = _global_0[(_2634 + 1)]; - float _2646 = _2638 * 0.5f; - _2678 = dot(float3((_2636 * _2636), _2636, 1.0f), float3(mad((_global_0[(_2634 + 2)]), 0.5f, mad(_2641, -1.0f, _2646)), (_2641 - _2638), mad(_2641, 0.5f, _2646))); - } else { - if ((bool)(_2625 >= -0.7447274923324585f) && (bool)(_2625 < 4.673812389373779f)) { - float _2658 = (_2624 * 0.1666666567325592f) + 0.4123218357563019f; - int _2659 = int(_2658); - float _2661 = _2658 - float(_2659); - float _2663 = _global_1[_2659]; - float _2666 = _global_1[(_2659 + 1)]; - float _2671 = _2663 * 0.5f; - _2678 = dot(float3((_2661 * _2661), _2661, 1.0f), float3(mad((_global_1[(_2659 + 2)]), 0.5f, mad(_2666, -1.0f, _2671)), (_2666 - _2663), mad(_2666, 0.5f, _2671))); - } else { - _2678 = 4.0f; - } - } - } else { - _2678 = -4.0f; - } - float _2680 = exp2(_2678 * 3.321928024291992f); - float _2683 = log2(select((_2620 <= 0.0f), 6.103515625e-05f, _2620)); - float _2684 = _2683 * 0.3010300099849701f; - if (!(_2684 <= -5.2601776123046875f)) { - if ((bool)(_2684 > -5.2601776123046875f) && (bool)(_2684 < -0.7447274923324585f)) { - float _2692 = (_2683 * 0.19999998807907104f) + 3.494786262512207f; - int _2693 = int(_2692); - float _2695 = _2692 - float(_2693); - float _2697 = _global_0[_2693]; - float _2700 = _global_0[(_2693 + 1)]; - float _2705 = _2697 * 0.5f; - _2737 = dot(float3((_2695 * _2695), _2695, 1.0f), float3(mad((_global_0[(_2693 + 2)]), 0.5f, mad(_2700, -1.0f, _2705)), (_2700 - _2697), mad(_2700, 0.5f, _2705))); - } else { - if ((bool)(_2684 >= -0.7447274923324585f) && (bool)(_2684 < 4.673812389373779f)) { - float _2717 = (_2683 * 0.1666666567325592f) + 0.4123218357563019f; - int _2718 = int(_2717); - float _2720 = _2717 - float(_2718); - float _2722 = _global_1[_2718]; - float _2725 = _global_1[(_2718 + 1)]; - float _2730 = _2722 * 0.5f; - _2737 = dot(float3((_2720 * _2720), _2720, 1.0f), float3(mad((_global_1[(_2718 + 2)]), 0.5f, mad(_2725, -1.0f, _2730)), (_2725 - _2722), mad(_2725, 0.5f, _2730))); - } else { - _2737 = 4.0f; - } - } - } else { - _2737 = -4.0f; - } - float _2739 = exp2(_2737 * 3.321928024291992f); - float _2742 = log2(select((_2621 <= 0.0f), 6.103515625e-05f, _2621)); - float _2743 = _2742 * 0.3010300099849701f; - if (!(_2743 <= -5.2601776123046875f)) { - if ((bool)(_2743 > -5.2601776123046875f) && (bool)(_2743 < -0.7447274923324585f)) { - float _2751 = (_2742 * 0.19999998807907104f) + 3.494786262512207f; - int _2752 = int(_2751); - float _2754 = _2751 - float(_2752); - float _2756 = _global_0[_2752]; - float _2759 = _global_0[(_2752 + 1)]; - float _2764 = _2756 * 0.5f; - _2796 = dot(float3((_2754 * _2754), _2754, 1.0f), float3(mad((_global_0[(_2752 + 2)]), 0.5f, mad(_2759, -1.0f, _2764)), (_2759 - _2756), mad(_2759, 0.5f, _2764))); - } else { - if ((bool)(_2743 >= -0.7447274923324585f) && (bool)(_2743 < 4.673812389373779f)) { - float _2776 = (_2742 * 0.1666666567325592f) + 0.4123218357563019f; - int _2777 = int(_2776); - float _2779 = _2776 - float(_2777); - float _2781 = _global_1[_2777]; - float _2784 = _global_1[(_2777 + 1)]; - float _2789 = _2781 * 0.5f; - _2796 = dot(float3((_2779 * _2779), _2779, 1.0f), float3(mad((_global_1[(_2777 + 2)]), 0.5f, mad(_2784, -1.0f, _2789)), (_2784 - _2781), mad(_2784, 0.5f, _2789))); - } else { - _2796 = 4.0f; - } - } - } else { - _2796 = -4.0f; - } - float _2798 = exp2(_2796 * 3.321928024291992f); - float _2801 = mad(0.16386906802654266f, _2798, mad(0.14067870378494263f, _2739, (_2680 * 0.6954522132873535f))); - float _2804 = mad(0.0955343171954155f, _2798, mad(0.8596711158752441f, _2739, (_2680 * 0.044794563204050064f))); - float _2807 = mad(1.0015007257461548f, _2798, mad(0.004025210160762072f, _2739, (_2680 * -0.005525882821530104f))); - float _2810 = mad(-0.21492856740951538f, _2807, mad(-0.2365107536315918f, _2804, (_2801 * 1.4514392614364624f))); - float _2813 = mad(-0.09967592358589172f, _2807, mad(1.17622971534729f, _2804, (_2801 * -0.07655377686023712f))); - float _2816 = mad(0.9977163076400757f, _2807, mad(-0.006032449658960104f, _2804, (_2801 * 0.008316148072481155f))); - float _2819 = log2(select((_2810 <= 0.0f), 9.999999747378752e-05f, _2810)); - float _2820 = _2819 * 0.3010300099849701f; - if (!(_2820 <= -3.848327875137329f)) { - if ((bool)(_2820 > -3.848327875137329f) && (bool)(_2820 < 0.6812411546707153f)) { - float _2828 = (_2819 + 12.783867835998535f) * 0.46521204710006714f; - int _2829 = int(_2828); - float _2831 = _2828 - float(_2829); - float _2833 = _global_4[_2829]; - float _2836 = _global_4[(_2829 + 1)]; - float _2841 = _2833 * 0.5f; - _2876 = dot(float3((_2831 * _2831), _2831, 1.0f), float3(mad((_global_4[(_2829 + 2)]), 0.5f, mad(_2836, -1.0f, _2841)), (_2836 - _2833), mad(_2836, 0.5f, _2841))); - } else { - if ((bool)(_2820 >= 0.6812411546707153f) && (bool)(_2820 < 3.7613162994384766f)) { - float _2853 = (_2819 + -2.2630341053009033f) * 0.6841424107551575f; - int _2854 = int(_2853); - float _2856 = _2853 - float(_2854); - float _2858 = _global_5[_2854]; - float _2861 = _global_5[(_2854 + 1)]; - float _2866 = _2858 * 0.5f; - _2876 = dot(float3((_2856 * _2856), _2856, 1.0f), float3(mad((_global_5[(_2854 + 2)]), 0.5f, mad(_2861, -1.0f, _2866)), (_2861 - _2858), mad(_2861, 0.5f, _2866))); - } else { - _2876 = ((_2819 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2876 = -2.301030158996582f; - } - float _2878 = exp2(_2876 * 3.321928024291992f); - float _2881 = log2(select((_2813 <= 0.0f), 9.999999747378752e-05f, _2813)); - float _2882 = _2881 * 0.3010300099849701f; - if (!(_2882 <= -3.848327875137329f)) { - if ((bool)(_2882 > -3.848327875137329f) && (bool)(_2882 < 0.6812411546707153f)) { - float _2890 = (_2881 + 12.783867835998535f) * 0.46521204710006714f; - int _2891 = int(_2890); - float _2893 = _2890 - float(_2891); - float _2895 = _global_4[_2891]; - float _2898 = _global_4[(_2891 + 1)]; - float _2903 = _2895 * 0.5f; - _2938 = dot(float3((_2893 * _2893), _2893, 1.0f), float3(mad((_global_4[(_2891 + 2)]), 0.5f, mad(_2898, -1.0f, _2903)), (_2898 - _2895), mad(_2898, 0.5f, _2903))); - } else { - if ((bool)(_2882 >= 0.6812411546707153f) && (bool)(_2882 < 3.7613162994384766f)) { - float _2915 = (_2881 + -2.2630341053009033f) * 0.6841424107551575f; - int _2916 = int(_2915); - float _2918 = _2915 - float(_2916); - float _2920 = _global_5[_2916]; - float _2923 = _global_5[(_2916 + 1)]; - float _2928 = _2920 * 0.5f; - _2938 = dot(float3((_2918 * _2918), _2918, 1.0f), float3(mad((_global_5[(_2916 + 2)]), 0.5f, mad(_2923, -1.0f, _2928)), (_2923 - _2920), mad(_2923, 0.5f, _2928))); - } else { - _2938 = ((_2881 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _2938 = -2.301030158996582f; - } - float _2940 = exp2(_2938 * 3.321928024291992f); - float _2943 = log2(select((_2816 <= 0.0f), 9.999999747378752e-05f, _2816)); - float _2944 = _2943 * 0.3010300099849701f; - if (!(_2944 <= -3.848327875137329f)) { - if ((bool)(_2944 > -3.848327875137329f) && (bool)(_2944 < 0.6812411546707153f)) { - float _2952 = (_2943 + 12.783867835998535f) * 0.46521204710006714f; - int _2953 = int(_2952); - float _2955 = _2952 - float(_2953); - float _2957 = _global_4[_2953]; - float _2960 = _global_4[(_2953 + 1)]; - float _2965 = _2957 * 0.5f; - _3000 = dot(float3((_2955 * _2955), _2955, 1.0f), float3(mad((_global_4[(_2953 + 2)]), 0.5f, mad(_2960, -1.0f, _2965)), (_2960 - _2957), mad(_2960, 0.5f, _2965))); - } else { - if ((bool)(_2944 >= 0.6812411546707153f) && (bool)(_2944 < 3.7613162994384766f)) { - float _2977 = (_2943 + -2.2630341053009033f) * 0.6841424107551575f; - int _2978 = int(_2977); - float _2980 = _2977 - float(_2978); - float _2982 = _global_5[_2978]; - float _2985 = _global_5[(_2978 + 1)]; - float _2990 = _2982 * 0.5f; - _3000 = dot(float3((_2980 * _2980), _2980, 1.0f), float3(mad((_global_5[(_2978 + 2)]), 0.5f, mad(_2985, -1.0f, _2990)), (_2985 - _2982), mad(_2985, 0.5f, _2990))); - } else { - _3000 = ((_2943 * 0.036123599857091904f) + 2.849672317504883f); - } - } - } else { - _3000 = -2.301030158996582f; - } - float _3002 = exp2(_3000 * 3.321928024291992f); - if (!((uint)(cb0_074z) == 6)) { - _3014 = mad(_36, _3002, mad(_35, _2940, (_2878 * _34))); - _3015 = mad(_39, _3002, mad(_38, _2940, (_2878 * _37))); - _3016 = mad(_42, _3002, mad(_41, _2940, (_2878 * _40))); - } else { - _3014 = _2878; - _3015 = _2940; - _3016 = _3002; - } - float _3026 = exp2(log2(_3014 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3027 = exp2(log2(_3015 * 9.999999747378752e-05f) * 0.1593017578125f); - float _3028 = exp2(log2(_3016 * 9.999999747378752e-05f) * 0.1593017578125f); - _3172 = exp2(log2((1.0f / ((_3026 * 18.6875f) + 1.0f)) * ((_3026 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3173 = exp2(log2((1.0f / ((_3027 * 18.6875f) + 1.0f)) * ((_3027 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_3028 * 18.6875f) + 1.0f)) * ((_3028 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if ((uint)(cb0_074z) == 7) { - float _3061 = mad(0.04736635088920593f, _1704, mad(0.3395121395587921f, _1703, (_1702 * 0.613191545009613f))); - float _3064 = mad(0.01345000695437193f, _1704, mad(0.9163357615470886f, _1703, (_1702 * 0.07020691782236099f))); - float _3067 = mad(0.8696067929267883f, _1704, mad(0.1095672994852066f, _1703, (_1702 * 0.020618872717022896f))); - float _3086 = exp2(log2(mad(_36, _3067, mad(_35, _3064, (_3061 * _34))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3087 = exp2(log2(mad(_39, _3067, mad(_38, _3064, (_3061 * _37))) * 9.999999747378752e-05f) * 0.1593017578125f); - float _3088 = exp2(log2(mad(_42, _3067, mad(_41, _3064, (_3061 * _40))) * 9.999999747378752e-05f) * 0.1593017578125f); - _3172 = exp2(log2((1.0f / ((_3086 * 18.6875f) + 1.0f)) * ((_3086 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3173 = exp2(log2((1.0f / ((_3087 * 18.6875f) + 1.0f)) * ((_3087 * 18.8515625f) + 0.8359375f)) * 78.84375f); - _3174 = exp2(log2((1.0f / ((_3088 * 18.6875f) + 1.0f)) * ((_3088 * 18.8515625f) + 0.8359375f)) * 78.84375f); - } else { - if (!((uint)(cb0_074z) == 8)) { - if ((uint)(cb0_074z) == 9) { - float _3123 = mad(0.04736635088920593f, _1692, mad(0.3395121395587921f, _1691, (_1690 * 0.613191545009613f))); - float _3126 = mad(0.01345000695437193f, _1692, mad(0.9163357615470886f, _1691, (_1690 * 0.07020691782236099f))); - float _3129 = mad(0.8696067929267883f, _1692, mad(0.1095672994852066f, _1691, (_1690 * 0.020618872717022896f))); - _3172 = mad(_36, _3129, mad(_35, _3126, (_3123 * _34))); - _3173 = mad(_39, _3129, mad(_38, _3126, (_3123 * _37))); - _3174 = mad(_42, _3129, mad(_41, _3126, (_3123 * _40))); - } else { - float _3142 = mad(0.04736635088920593f, _1718, mad(0.3395121395587921f, _1717, (_1716 * 0.613191545009613f))); - float _3145 = mad(0.01345000695437193f, _1718, mad(0.9163357615470886f, _1717, (_1716 * 0.07020691782236099f))); - float _3148 = mad(0.8696067929267883f, _1718, mad(0.1095672994852066f, _1717, (_1716 * 0.020618872717022896f))); - float _3161 = ((0.4545454680919647f - cb0_027z) * cb0_038w) + cb0_027z; - _3172 = exp2(_3161 * log2(mad(_36, _3148, mad(_35, _3145, (_3142 * _34))))); - _3173 = exp2(_3161 * log2(mad(_39, _3148, mad(_38, _3145, (_3142 * _37))))); - _3174 = exp2(_3161 * log2(mad(_42, _3148, mad(_41, _3145, (_3142 * _40))))); - } - } else { - _3172 = _1702; - _3173 = _1703; - _3174 = _1704; - } - } - } - } - } - } - SV_Target.x = (_3172 * 0.9523810148239136f); - SV_Target.y = (_3173 * 0.9523810148239136f); - SV_Target.z = (_3174 * 0.9523810148239136f); - SV_Target.w = 0.0f; - return SV_Target; -} diff --git a/src/games/wutheringwaves/psycho_test11.hlsli b/src/games/wutheringwaves/psycho_test11.hlsli new file mode 100644 index 000000000..e9843f081 --- /dev/null +++ b/src/games/wutheringwaves/psycho_test11.hlsli @@ -0,0 +1,722 @@ +#ifndef RENODX_WUTHERINGWAVES_PSYCHO_TEST11_HLSLI_ +#define RENODX_WUTHERINGWAVES_PSYCHO_TEST11_HLSLI_ + +namespace renodx_custom { +namespace tonemap { +namespace psycho { + +static const float3x3 PSYCHO11_BT709_TO_XYZ_MAT = float3x3( + 0.4123907993f, 0.3575843394f, 0.1804807884f, + 0.2126390059f, 0.7151686788f, 0.0721923154f, + 0.0193308187f, 0.1191947798f, 0.9505321522f); + +static const float3x3 PSYCHO11_XYZ_TO_BT709_MAT = float3x3( + 3.2409699419f, -1.5373831776f, -0.4986107603f, + -0.9692436363f, 1.8759675015f, 0.0415550574f, + 0.0556300797f, -0.2039769589f, 1.0569715142f); + +static const float3x3 PSYCHO11_BT2020_TO_XYZ_MAT = float3x3( + 0.6369580483f, 0.1446169036f, 0.1688809752f, + 0.2627002120f, 0.6779980715f, 0.0593017165f, + 0.0000000000f, 0.0280726930f, 1.0609850577f); + +static const float3x3 PSYCHO11_XYZ_TO_BT2020_MAT = float3x3( + 1.7166511880f, -0.3556707838f, -0.2533662814f, + -0.6666843518f, 1.6164812366f, 0.0157685458f, + 0.0176398574f, -0.0427706133f, 0.9421031212f); + +static const float3x3 PSYCHO11_XYZ_TO_STOCKMAN_SHARP_LMS_MAT = float3x3( + 0.2670502842655792f, 0.8471990148492798f, -0.03470416612462053f, + -0.38706882411220156f, 1.165429935890458f, 0.10302286696614202f, + 0.026727793989083093f, -0.02729131667566509f, 0.5333267257603284f); + +static const float3 PSYCHO11_CIE1702_MB_CIE_WEIGHTS = float3( + 0.68990272f, 0.34832189f, 0.0371597f); + +static const float2 PSYCHO11_WHITE_POINT_D65 = float2(0.31272f, 0.32903f); +// Precomputed psycho11_MB2FromLMS(XYZ_TO_LMS(xyY(D65, 1))).xy +static const float2 PSYCHO11_WHITE_D65_MB = float2(0.6983281224f, 0.0204761309f); + +float psycho11_DivideSafe(float dividend, float divisor, float fallback) { + return divisor == 0.f ? fallback : (dividend / divisor); +} + +float3 psycho11_SignPow(float3 x, float3 exponent) { + return float3( + (x.x < 0.f ? -1.f : 1.f) * pow(abs(x.x), exponent.x), + (x.y < 0.f ? -1.f : 1.f) * pow(abs(x.y), exponent.y), + (x.z < 0.f ? -1.f : 1.f) * pow(abs(x.z), exponent.z)); +} + +float3x3 psycho11_Invert3x3(float3x3 m) { + float a = m[0][0], b = m[0][1], c = m[0][2]; + float d = m[1][0], e = m[1][1], f = m[1][2]; + float g = m[2][0], h = m[2][1], i = m[2][2]; + + float A = (e * i - f * h); + float B = -(d * i - f * g); + float C = (d * h - e * g); + float D = -(b * i - c * h); + float E = (a * i - c * g); + float F = -(a * h - b * g); + float G = (b * f - c * e); + float H = -(a * f - c * d); + float I = (a * e - b * d); + + float det = a * A + b * B + c * C; + float inv_det = psycho11_DivideSafe(1.f, det, 0.f); + + return float3x3( + A, D, G, + B, E, H, + C, F, I) + * inv_det; +} + +float3 psycho11_XYZFromxyY(float3 xyY) { + float3 xyz; + xyz.xz = float2(xyY.x, (1.f - xyY.x - xyY.y)) / xyY.y * xyY.z; + xyz.y = xyY.z; + return xyz; +} + +float3 psycho11_BT2020FromBT709(float3 bt709) { + return mul(PSYCHO11_XYZ_TO_BT2020_MAT, mul(PSYCHO11_BT709_TO_XYZ_MAT, bt709)); +} + +float3 psycho11_BT709FromBT2020(float3 bt2020) { + return mul(PSYCHO11_XYZ_TO_BT709_MAT, mul(PSYCHO11_BT2020_TO_XYZ_MAT, bt2020)); +} + +float3 psycho11_LMSFromBT2020(float3 bt2020) { + float3 xyz = mul(PSYCHO11_BT2020_TO_XYZ_MAT, bt2020); + return mul(PSYCHO11_XYZ_TO_STOCKMAN_SHARP_LMS_MAT, xyz); +} + +float3 psycho11_BT2020FromLMS(float3 lms_abs) { + float3x3 lms_to_xyz = psycho11_Invert3x3(PSYCHO11_XYZ_TO_STOCKMAN_SHARP_LMS_MAT); + float3 xyz = mul(lms_to_xyz, lms_abs); + return mul(PSYCHO11_XYZ_TO_BT2020_MAT, xyz); +} + +float psycho11_StockmanLuminanceFromLMS(float3 lms_abs) { + return dot(lms_abs, float3(0.68990272f, 0.34832189f, 0.0f)); +} + +float psycho11_StockmanLuminanceFromBT2020(float3 bt2020) { + float3 lms_abs = psycho11_LMSFromBT2020(bt2020); + return psycho11_StockmanLuminanceFromLMS(lms_abs); +} + +float psycho11_StockmanLuminanceFromBT709(float3 bt709) { + float3 bt2020 = psycho11_BT2020FromBT709(bt709); + return psycho11_StockmanLuminanceFromBT2020(bt2020); +} + +float3 psycho11_MB2FromLMS(float3 lms_abs) { + const float mb2_eps = 1e-12f; + + float weighted_l = PSYCHO11_CIE1702_MB_CIE_WEIGHTS.x * lms_abs.x; + float weighted_m = PSYCHO11_CIE1702_MB_CIE_WEIGHTS.y * lms_abs.y; + float y_mb = weighted_l + weighted_m; + if (y_mb <= mb2_eps) return 0.f.xxx; + + float inv = psycho11_DivideSafe(1.f, y_mb, 0.f); + return float3( + weighted_l * inv, + PSYCHO11_CIE1702_MB_CIE_WEIGHTS.z * lms_abs.z * inv, + y_mb); +} + +float3 psycho11_LMSFromMB2(float3 mb2_lsy) { + float l = mb2_lsy.x; + float s = mb2_lsy.y; + float y = max(mb2_lsy.z, 0.f); + + float L = psycho11_DivideSafe(l * y, PSYCHO11_CIE1702_MB_CIE_WEIGHTS.x, 0.f); + float M = psycho11_DivideSafe((1.f - l) * y, PSYCHO11_CIE1702_MB_CIE_WEIGHTS.y, 0.f); + float S = psycho11_DivideSafe(s * y, PSYCHO11_CIE1702_MB_CIE_WEIGHTS.z, 0.f); + return float3(L, M, S); +} + +float2 psycho11_WhiteD65Chromaticity() { + return PSYCHO11_WHITE_D65_MB; +} + +float psycho11_Highlights(float x, float highlights, float mid_gray) { + if (highlights == 1.f) return x; + + if (highlights > 1.f) { + return max(x, lerp(x, mid_gray * pow(x / mid_gray, highlights), min(x, 1.f))); + } else { // highlights < 1 + float b = mid_gray * pow(x / mid_gray, 2.f - highlights); + float t = min(x, 1.f); + return min(x, psycho11_DivideSafe(x * x, lerp(x, b, t), x)); + } +} + +float psycho11_Shadows(float x, float shadows, float mid_gray) { + if (shadows == 1.f) return x; + + const float ratio = max(psycho11_DivideSafe(x, mid_gray, 0.f), 0.f); + const float base_term = x * mid_gray; + const float base_scale = psycho11_DivideSafe(base_term, ratio, 0.f); + + if (shadows > 1.f) { + float raised = x * (1.f + psycho11_DivideSafe(base_term, pow(ratio, shadows), 0.f)); + float reference = x * (1.f + base_scale); + return max(x, x + (raised - reference)); + } else { // shadows < 1 + float lowered = x * (1.f - psycho11_DivideSafe(base_term, pow(ratio, 2.f - shadows), 0.f)); + float reference = x * (1.f - base_scale); + return clamp(x + (lowered - reference), 0.f, x); + } +} + +float psycho11_ContrastAndFlare( + float x, + float contrast, + float contrast_highlights, + float contrast_shadows, + float flare, + float mid_gray = 0.18f) { + if (contrast == 1.f && flare == 0.f && contrast_highlights == 1.f && contrast_shadows == 1.f) return x; + + const float x_normalized = x / mid_gray; + const float split_contrast = (x < mid_gray) ? contrast_shadows : contrast_highlights; + float flare_ratio = psycho11_DivideSafe(x_normalized + flare, x_normalized, 1.f); + float exponent = contrast * split_contrast * flare_ratio; + return pow(x_normalized, exponent) * mid_gray; +} + +float psycho11_Neutwo(float x) { + return x * rsqrt(mad(x, x, 1.f)); +} + +float psycho11_Neutwo(float x, float peak) { + return (peak * x) * rsqrt(mad(x, x, peak * peak)); +} + +float psycho11_Neutwo(float x, float peak, float clip) { + float cc = clip * clip; + float pp = peak * peak; + float xx = x * x; + float numerator = clip * peak * x; + float denominator_squared = mad(xx, (cc - pp), cc * pp); + return numerator * rsqrt(denominator_squared); +} + +// f_{mi}\left(x\right)=\frac{qzx\left(cc-gg\right)}{\sqrt{\left(cc-gg\right)\cdot\left(-xx\cdot\left(cczz-qqgg\right)+ccgg\cdot\left(qq-zz\right)\right)}}-m +float psycho11_NeutwoMin(float x, float peak, float clip, float gray_in, float gray_out, float minimum) { + float m = minimum; + float g = gray_in; + float z = gray_out - m; + float q = peak - m; + float c = clip; + + float cc = c * c; + float gg = g * g; + float cc_minus_gg = cc - gg; + + float numerator = q * z * x * cc_minus_gg; + + float xx = x * x; + float zz = z * z; + float qq = q * q; + + float cczz = cc * zz; + float qqgg = qq * gg; + float ccgg = cc * gg; + + float denominator_squared = cc_minus_gg * mad(-xx, (cczz - qqgg), ccgg * (qq - zz)); + + return mad(numerator, rsqrt(denominator_squared), -m); +} + +float3 psycho11_NeutwoPerChannel(float3 color, float3 peak) { + return float3( + psycho11_Neutwo(color.r, peak.r), + psycho11_Neutwo(color.g, peak.g), + psycho11_Neutwo(color.b, peak.b)); +} + +float3 psycho11_NeutwoPerChannel(float3 color, float3 peak, float3 clip) { + return float3( + psycho11_Neutwo(color.r, peak.r, clip.r), + psycho11_Neutwo(color.g, peak.g, clip.g), + psycho11_Neutwo(color.b, peak.b, clip.b)); +} + +float3 psycho11_NeutwoPerChannelMin(float3 color, float3 peak, float3 clip, float gray_in, float gray_out, float minimum) { + return float3( + psycho11_NeutwoMin(color.r, peak.r, clip.r, gray_in, gray_out, minimum), + psycho11_NeutwoMin(color.g, peak.g, clip.g, gray_in, gray_out, minimum), + psycho11_NeutwoMin(color.b, peak.b, clip.b, gray_in, gray_out, minimum)); +} + +float3 psycho11_NakaRushton(float3 x, float3 peak, float3 gray, float cone_response_exponent) { + float3 n = cone_response_exponent * peak / (peak - gray); + float3 x_n = psycho11_SignPow(x, n); + float3 num = peak * x_n; + float3 den = mad(pow(gray, n - 1.f), (peak - gray), x_n); + return num / den; +} + +float3 psycho11_ComputeReinhardScale(float3 peak = 1.f, float minimum = 0.f, float3 gray_in = 0.18f, float3 gray_out = 0.18f) { + // s = (p * y - p * m) / (x * p - x * y) + + float3 num = peak * (gray_out - minimum); // p * (y - m) + float3 den = gray_in * (peak - gray_out); // x * (p - y) + + return num / den; +} + +float3 psycho11_ReinhardPiecewise(float3 x, float3 x_max = 1.f, float3 shoulder = 0.18f) { + const float x_min = 0.f; + float3 exposure = psycho11_ComputeReinhardScale(x_max, x_min, shoulder, shoulder); + float3 tonemapped = mad(x, exposure, x_min) / mad(x, exposure / x_max, 1.f - x_min); + + return lerp(x, tonemapped, step(shoulder, x)); +} + +float psycho11_MBYFromLMS(float3 lms) { + return PSYCHO11_CIE1702_MB_CIE_WEIGHTS.x * lms.x + PSYCHO11_CIE1702_MB_CIE_WEIGHTS.y * lms.y; +} + +float2 psycho11_MBFromLMS(float3 lms) { + float y_mb = psycho11_MBYFromLMS(lms); + if (y_mb <= 0.f) { + return float2(0.f, 0.f); + } + + return float2( + psycho11_DivideSafe(PSYCHO11_CIE1702_MB_CIE_WEIGHTS.x * lms.x, y_mb, 0.f), + psycho11_DivideSafe(PSYCHO11_CIE1702_MB_CIE_WEIGHTS.z * lms.z, y_mb, 0.f)); +} + +float2 psycho11_MBFromBT2020Primary(float3 primary_rgb) { + float3 xyz = mul(PSYCHO11_BT2020_TO_XYZ_MAT, primary_rgb); + float3 lms = mul(PSYCHO11_XYZ_TO_STOCKMAN_SHARP_LMS_MAT, xyz); + return psycho11_MBFromLMS(lms); +} + +float psycho11_Cross2(float2 a, float2 b) { + return a.x * b.y - a.y * b.x; +} + +bool psycho11_RaySegmentHit2D(float2 origin, float2 direction, float2 a, float2 b, out float t_hit) { + const float eps = 1e-20f; + + t_hit = 0.f; + float2 e = b - a; + float denom = psycho11_Cross2(direction, e); + if (abs(denom) <= eps) return false; + + float2 ao = a - origin; + float t = psycho11_Cross2(ao, e) / denom; + float u = psycho11_Cross2(ao, direction) / denom; + if (t < 0.f || u < 0.f || u > 1.f) return false; + + t_hit = t; + return true; +} + +float psycho11_RayMaxT_BT2020TriangleInMB(float2 origin, float2 direction, out bool has_solution) { + const float interval_max = 1e30f; + const float mb_near_white_epsilon = 1e-14f; + + has_solution = false; + if (dot(direction, direction) <= mb_near_white_epsilon) return 0.f; + + float2 r = psycho11_MBFromBT2020Primary(float3(1.f, 0.f, 0.f)); + float2 g = psycho11_MBFromBT2020Primary(float3(0.f, 1.f, 0.f)); + float2 b = psycho11_MBFromBT2020Primary(float3(0.f, 0.f, 1.f)); + + float t_best = interval_max; + float t; + bool hit_any = false; + + if (psycho11_RaySegmentHit2D(origin, direction, r, g, t)) { + t_best = min(t_best, t); + hit_any = true; + } + if (psycho11_RaySegmentHit2D(origin, direction, g, b, t)) { + t_best = min(t_best, t); + hit_any = true; + } + if (psycho11_RaySegmentHit2D(origin, direction, b, r, t)) { + t_best = min(t_best, t); + hit_any = true; + } + + has_solution = hit_any; + return hit_any ? max(t_best, 0.f) : 0.f; +} + +float3 psycho11_GamutCompressAddWhiteBT2020Bounded(float3 lms) { + const float mb_near_white_epsilon = 1e-14f; + + float y_mb = psycho11_MBYFromLMS(abs(lms)); + float2 white = psycho11_WhiteD65Chromaticity(); + + float2 mb0 = psycho11_MBFromLMS(lms); + float2 direction = mb0 - white; + if (dot(direction, direction) < mb_near_white_epsilon) { + return lms; + } + + bool has_solution; + float t_max = psycho11_RayMaxT_BT2020TriangleInMB(white, direction, has_solution); + if (!has_solution) { + return lms; + } + + float white_ratio = max(psycho11_DivideSafe(1.f - t_max, t_max, 0.f), 0.f); + float white_add = y_mb * white_ratio; + float3 white_unit_lms = psycho11_LMSFromMB2(float3(white, 1.f)); + return lms + white_unit_lms * white_add; +} + +float3 psycho11_RestoreHueMB2( + float3 lms_source_raw_d65, + float3 lms_target_raw_d65, + float amount, + float eps = 1e-7f) { + if (amount <= 0.f) return lms_target_raw_d65; + + float3 mb_source = psycho11_MB2FromLMS(lms_source_raw_d65); + float3 mb_target = psycho11_MB2FromLMS(lms_target_raw_d65); + float2 mb_white = psycho11_WhiteD65Chromaticity(); + + float2 source_offset = mb_source.xy - mb_white; + float2 target_offset = mb_target.xy - mb_white; + float src2 = dot(source_offset, source_offset); + float tgt2 = dot(target_offset, target_offset); + if (src2 <= eps || tgt2 <= eps) { + return lms_target_raw_d65; + } + + float2 source_dir = source_offset * rsqrt(src2); + float2 target_dir = target_offset * rsqrt(tgt2); + float2 blended_dir = lerp(target_dir, source_dir, amount); + float blended_len2 = dot(blended_dir, blended_dir); + if (blended_len2 <= eps) { + blended_dir = target_dir; + } else { + blended_dir *= rsqrt(blended_len2); + } + + float target_radius = sqrt(tgt2); + float2 mb_restored_xy = mb_white + blended_dir * target_radius; + float3 mb_restored = float3(mb_restored_xy, mb_target.z); + return psycho11_LMSFromMB2(mb_restored); +} + +float3 psycho11_RestoreHueBT2020( + float3 bt2020_source, + float3 bt2020_target, + float amount = 1.f, + float eps = 1e-7f) { + if (amount == 0.f) return bt2020_target; + + float3 lms_target_raw_d65 = psycho11_LMSFromBT2020(bt2020_target); + + float3 lms_source_raw_d65 = psycho11_LMSFromBT2020(bt2020_source); + float3 lms_out_raw_d65 = psycho11_RestoreHueMB2( + lms_source_raw_d65, + lms_target_raw_d65, + amount, + eps); + + // Keep final output inside a BT.2020-feasible region. + lms_out_raw_d65 = psycho11_GamutCompressAddWhiteBT2020Bounded(lms_out_raw_d65); + return psycho11_BT2020FromLMS(lms_out_raw_d65); +} + +float3 psycho11_ScalePurityMB2(float3 lms_raw_d65, float purity_scale, float eps = 1e-7f) { + if (abs(purity_scale - 1.f) <= eps) return lms_raw_d65; + + float3 mb = psycho11_MB2FromLMS(lms_raw_d65); + float2 mb_white = psycho11_WhiteD65Chromaticity(); + float2 mb_offset = mb.xy - mb_white; + float2 mb_scaled = mb_white + mb_offset * purity_scale; + return psycho11_LMSFromMB2(float3(mb_scaled, mb.z)); +} + +float3 psycho11_ApplyPurityFromLMS( + float3 lms_source_raw_d65, + float3 lms_target_raw_d65, + float amount = 1.f, + float clamp_purity_loss = 0.f, + float eps = 1e-7f) { + float3 mb_source = psycho11_MB2FromLMS(lms_source_raw_d65); + float3 mb_target = psycho11_MB2FromLMS(lms_target_raw_d65); + float2 mb_white = psycho11_WhiteD65Chromaticity(); + + float2 source_offset = mb_source.xy - mb_white; + float2 target_offset = mb_target.xy - mb_white; + float src_radius = length(source_offset); + float tgt_radius = length(target_offset); + if (tgt_radius <= eps) return lms_target_raw_d65; + + float transfer_scale = src_radius / max(tgt_radius, eps); + float no_purity_loss_scale = max(transfer_scale, 1.f); + transfer_scale = lerp(transfer_scale, no_purity_loss_scale, clamp_purity_loss); + float scale = lerp(1.f, transfer_scale, amount); + float2 mb_scaled = mb_white + target_offset * scale; + return psycho11_LMSFromMB2(float3(mb_scaled, mb_target.z)); +} + +float3 psycho11_ApplyPurityFromBT2020( + float3 bt2020_source, + float3 bt2020_target, + float amount = 1.f, + float clamp_purity_loss = 0.f, + float eps = 1e-7f) { + float3 lms_target_raw_d65 = psycho11_LMSFromBT2020(bt2020_target); + float blend = amount; + + if (blend <= 0.f) { + float3 lms_bounded_target = psycho11_GamutCompressAddWhiteBT2020Bounded(lms_target_raw_d65); + return psycho11_BT2020FromLMS(lms_bounded_target); + } + + float3 lms_source_raw_d65 = psycho11_LMSFromBT2020(bt2020_source); + + float3 lms_out_raw_d65 = psycho11_ApplyPurityFromLMS( + lms_source_raw_d65, + lms_target_raw_d65, + blend, + clamp_purity_loss, + eps); + + // Keep final output inside a BT.2020-feasible region. + lms_out_raw_d65 = psycho11_GamutCompressAddWhiteBT2020Bounded(lms_out_raw_d65); + return psycho11_BT2020FromLMS(lms_out_raw_d65); +} + +namespace config { + +struct Config { + bool apply_tonemap; + float peak_value; + float exposure; + float gamma; + float highlights; + float shadows; + float contrast; + float flare; + float contrast_highlights; + float contrast_shadows; + float purity_scale; + float purity_highlights; + float adaptation_contrast; + float hue_restore; + float bleaching_intensity; + float clip_point; + float mid_gray; + bool pre_gamut_compress; + bool post_gamut_compress; +}; + +Config Create( + bool apply_tonemap = true, + float peak_value = 1000.f / 203.f, + float exposure = 1.f, + float gamma = 1.f, + float highlights = 1.f, + float shadows = 1.f, + float contrast = 1.f, + float flare = 0.f, + float contrast_highlights = 1.f, + float contrast_shadows = 1.f, + float purity_scale = 1.f, + float purity_highlights = 1.f, + float adaptation_contrast = 1.f, + float hue_restore = 1.f, + float bleaching_intensity = 0.f, + float clip_point = 100.f, + float mid_gray = 0.18f, + bool pre_gamut_compress = true, + bool post_gamut_compress = true) { + const Config cg_config = { + apply_tonemap, + peak_value, + exposure, + gamma, + highlights, + shadows, + contrast, + flare, + contrast_highlights, + contrast_shadows, + purity_scale, + purity_highlights, + adaptation_contrast, + hue_restore, + bleaching_intensity, + clip_point, + mid_gray, + pre_gamut_compress, + post_gamut_compress + }; + return cg_config; +} +} // namespace config + +float3 ApplyBT2020(float3 color_bt2020, config::Config psycho_config) { + const float kEps = 1e-7f; + + const float3 midgray_lms = psycho11_LMSFromBT2020(psycho_config.mid_gray); + + float3 color_lms_raw = psycho11_LMSFromBT2020(color_bt2020); + if (psycho_config.pre_gamut_compress) { + color_lms_raw = psycho11_GamutCompressAddWhiteBT2020Bounded(color_lms_raw); + } + + float3 color_lms = color_lms_raw; + float lum_original = renodx_custom::tonemap::psycho::psycho11_StockmanLuminanceFromLMS(color_lms_raw); + + if (psycho_config.bleaching_intensity != 0.f) { + const float kHalfBleachTrolands = 20000.f; + + float adapted_lum = max( + lum_original, + 0.18f); + float3 adapted_bt2020 = adapted_lum.xxx; + float3 lms_adapted_unit = psycho11_LMSFromBT2020(adapted_bt2020); + float3 lms_signal_unit = color_lms; + + float3 stimulus_nits = max(lms_adapted_unit, 0.f) * 100.f; + float3 stimulus_trolands = stimulus_nits * 4.f; + float3 availability_raw = 1.f / (1.f + stimulus_trolands / max(kHalfBleachTrolands, kEps)); + float3 availability = lerp(1.f, availability_raw, psycho_config.bleaching_intensity); + color_lms = lms_signal_unit * max(availability, 0.f); + } + + if (psycho_config.apply_tonemap) { // apply hue shift and blowout + // tonemap + float3 lms_peak_unit = psycho11_LMSFromBT2020(psycho_config.peak_value.xxx); + + color_lms = psycho11_ReinhardPiecewise(color_lms, lms_peak_unit, midgray_lms); + + color_lms = psycho11_RestoreHueMB2( + color_lms_raw, + color_lms, + psycho_config.hue_restore, + kEps); + + // restore original luminance + color_lms *= psycho11_DivideSafe( + lum_original, + renodx_custom::tonemap::psycho::psycho11_StockmanLuminanceFromLMS(color_lms), + 1.f); + } + + if (psycho_config.adaptation_contrast != 1.f) { + float3 source_lms = color_lms; + float3 lms_sigma_unit = max(midgray_lms, kEps.xxx); + float exponent = max(psycho_config.adaptation_contrast, kEps); + + float3 ax = abs(color_lms); + float3 ax_n = pow(ax, exponent); + float3 s_n = pow(lms_sigma_unit, exponent); + float3 response_target = ax_n / max(ax_n + s_n, kEps.xxx); + float3 response_baseline = ax / max(ax + lms_sigma_unit, kEps.xxx); + float3 gain = response_target / max(response_baseline, kEps.xxx); + float3 sign_raw = float3( + color_lms.x < 0.f ? -1.f : 1.f, + color_lms.y < 0.f ? -1.f : 1.f, + color_lms.z < 0.f ? -1.f : 1.f); + color_lms = sign_raw * (ax * gain); + + color_lms = psycho11_RestoreHueMB2( + source_lms, + color_lms, + 1.f, + kEps); + } + + if (psycho_config.exposure != 1.f + || psycho_config.gamma != 1.f + || psycho_config.highlights != 1.f + || psycho_config.shadows != 1.f + || psycho_config.contrast != 1.f + || psycho_config.contrast_highlights != 1.f + || psycho_config.contrast_shadows != 1.f + || psycho_config.flare != 0.f + || psycho_config.purity_scale != 1.f + || psycho_config.purity_highlights != 0.f) { + const float midgray_lum = psycho11_StockmanLuminanceFromLMS(midgray_lms); + float lum_target = lum_original; + + lum_target *= psycho_config.exposure; + if (psycho_config.gamma != 1.f) { + // Original code (kept for reference): + // lum_target = select(lum_target < 1.f, pow(lum_target, psycho_config.gamma), lum_target); + lum_target = (lum_target < 1.f) ? pow(lum_target, psycho_config.gamma) : lum_target; + } + + if (psycho_config.highlights != 1.f) { + lum_target = psycho11_Highlights(lum_target, psycho_config.highlights, midgray_lum); + } + + if (psycho_config.shadows != 1.f) { + lum_target = psycho11_Shadows(lum_target, psycho_config.shadows, midgray_lum); + } + + if (psycho_config.contrast != 1.f + || psycho_config.contrast_highlights != 1.f + || psycho_config.contrast_shadows != 1.f + || psycho_config.flare != 0.f) { + lum_target = psycho11_ContrastAndFlare( + lum_target, + psycho_config.contrast, + psycho_config.contrast_highlights, + psycho_config.contrast_shadows, + psycho_config.flare, + midgray_lum); + } + + float lum_scale = psycho11_DivideSafe(lum_target, lum_original, 1.f); + psycho_config.clip_point *= lum_scale; + color_lms *= lum_scale; + + float purity_scale = psycho_config.purity_scale; + + if (psycho_config.purity_highlights != 0.f) { + float percent_max = saturate(lum_target * 100.f / 10000.f); + float blowout_change = pow(1.f - percent_max, 100.f * abs(psycho_config.purity_highlights)); + if (psycho_config.purity_highlights < 0.f) { + blowout_change = 2.f - blowout_change; + } + + purity_scale *= blowout_change; + } + + if (purity_scale != 1.f) { + color_lms = psycho11_ScalePurityMB2(color_lms, purity_scale, kEps); + } + } + + if (psycho_config.post_gamut_compress) { + color_lms = psycho11_GamutCompressAddWhiteBT2020Bounded(color_lms); + } + + color_bt2020 = psycho11_BT2020FromLMS(color_lms); + + if (psycho_config.apply_tonemap) { // apply maxch tonemap + color_bt2020 = max(0, color_bt2020); + float max_channel = max(max(color_bt2020.r, color_bt2020.g), color_bt2020.b); + float new_max = psycho11_Neutwo(max_channel, psycho_config.peak_value, psycho_config.clip_point); + color_bt2020 *= psycho11_DivideSafe(new_max, max_channel, 1.f); + } + + return color_bt2020; +} + +} // namespace psycho +} // namespace tonemap +} // namespace renodx + +#endif // RENODX_WUTHERINGWAVES_PSYCHO_TEST11_HLSLI_ diff --git a/src/games/wutheringwaves/shared.h b/src/games/wutheringwaves/shared.h index 6c538895d..e1c35712c 100644 --- a/src/games/wutheringwaves/shared.h +++ b/src/games/wutheringwaves/shared.h @@ -14,33 +14,34 @@ struct ShaderInjectData { float color_grade_hue_correction; float color_grade_saturation_correction; float color_grade_hue_shift; + float color_grade_hue_emulation; + float color_grade_chrominance_emulation; + float color_grade_hue_piecewise_a; + float color_grade_hue_piecewise_b; float tone_map_type; float tone_map_hdr_video; float color_grade_exposure; float color_grade_highlights; - float color_grade_highlights_version; float color_grade_shadows; - float color_grade_shadows_version; float color_grade_contrast; float color_grade_saturation; float color_grade_highlight_saturation; float color_grade_blowout; float color_grade_flare; + float color_grade_gamma; + float color_grade_contrast_highlights; + float color_grade_contrast_shadows; + float color_grade_adaptation_contrast; - float tone_map_hue_processor; - - float reno_drt_white_clip; + float tone_map_scaling; float gamma_correction; float swap_chain_gamma_correction; - float output_color_space; float processing_use_scrgb; float wuwa_tonemapper; - float wuwa_ktm_sharpening; - float wuwa_chromatic_aberration; float wuwa_bloom; float wuwa_blowout; float wuwa_hdr_sun; @@ -52,8 +53,8 @@ struct ShaderInjectData { // Per-frame random seed (temporal dither/grain). float custom_random; - float custom_random_pad0; - float custom_random_pad1; + float wuwa_tonemap_strength; + float wuwa_lut_strength; float custom_random_pad2; }; @@ -82,18 +83,32 @@ cbuffer injected_buffer : register(b13) { shader_injection.color_grade_saturation_correction #define RENODX_PER_CHANNEL_HUE_SHIFT shader_injection.color_grade_hue_shift +// PsychoV semantic aliases for legacy-bound controls. +#define RENODX_PSYCHOV_BLEND shader_injection.color_grade_strength +#define RENODX_PSYCHOV_HUE_RESTORE shader_injection.color_grade_hue_correction +#define RENODX_PSYCHOV_PURITY_SCALE shader_injection.color_grade_saturation_correction +#define RENODX_PSYCHOV_HIGHLIGHT_PURITY_BIAS shader_injection.color_grade_hue_shift +#define RENODX_PSYCHOV_HUE_EMULATION shader_injection.color_grade_hue_emulation +#define RENODX_PSYCHOV_CHROMA_EMULATION shader_injection.color_grade_chrominance_emulation +#define RENODX_PSYCHOV_HUE_PIECEWISE_A shader_injection.color_grade_hue_piecewise_a +#define RENODX_PSYCHOV_HUE_PIECEWISE_B shader_injection.color_grade_hue_piecewise_b + #define RENODX_TONE_MAP_TYPE shader_injection.tone_map_type #define RENODX_TONE_MAP_HDR_VIDEO shader_injection.tone_map_hdr_video #define RENODX_TONE_MAP_EXPOSURE shader_injection.color_grade_exposure #define RENODX_TONE_MAP_HIGHLIGHTS shader_injection.color_grade_highlights -#define RENODX_COLOR_GRADE_HIGHLIGHTS_VERSION shader_injection.color_grade_highlights_version #define RENODX_TONE_MAP_SHADOWS shader_injection.color_grade_shadows -#define RENODX_COLOR_GRADE_SHADOWS_VERSION shader_injection.color_grade_shadows_version #define RENODX_TONE_MAP_CONTRAST shader_injection.color_grade_contrast #define RENODX_TONE_MAP_SATURATION shader_injection.color_grade_saturation #define RENODX_TONE_MAP_HIGHLIGHT_SATURATION shader_injection.color_grade_highlight_saturation +#define RENODX_TONE_MAP_DECHROMA shader_injection.color_grade_blowout #define RENODX_TONE_MAP_FLARE shader_injection.color_grade_flare +#define RENODX_TONE_MAP_GAMMA shader_injection.color_grade_gamma +#define RENODX_TONE_MAP_CONTRAST_HIGHLIGHTS shader_injection.color_grade_contrast_highlights +#define RENODX_TONE_MAP_CONTRAST_SHADOWS shader_injection.color_grade_contrast_shadows +#define RENODX_TONE_MAP_ADAPTATION_CONTRAST shader_injection.color_grade_adaptation_contrast +#define RENODX_TONE_MAP_SCALING shader_injection.tone_map_scaling // #define RENODX_TONE_MAP_HUE_CORRECTION 1.f #define RENODX_TONE_MAP_HUE_SHIFT 0.f @@ -102,12 +117,11 @@ cbuffer injected_buffer : register(b13) { #define RENODX_TONE_MAP_WORKING_COLOR_SPACE renodx::color::convert::COLOR_SPACE_NONE #define RENODX_TONE_MAP_CLAMP_COLOR_SPACE renodx::color::convert::COLOR_SPACE_NONE #define RENODX_TONE_MAP_CLAMP_PEAK renodx::color::convert::COLOR_SPACE_NONE -#define RENODX_TONE_MAP_HUE_PROCESSOR shader_injection.tone_map_hue_processor // #define RENODX_TONE_MAP_PER_CHANNEL 0.f #define RENODX_TONE_MAP_PASS_AUTOCORRECTION 1.f #define RENODX_RENO_DRT_TONE_MAP_METHOD renodx::tonemap::renodrt::config::tone_map_method::REINHARD -#define RENODX_RENO_DRT_WHITE_CLIP shader_injection.reno_drt_white_clip +#define RENODX_RENO_DRT_WHITE_CLIP 65.f // Swapchain ------------------------------------------------------------------- #define RENODX_INTERMEDIATE_ENCODING renodx::draw::ENCODING_SRGB @@ -137,8 +151,8 @@ cbuffer injected_buffer : register(b13) { #define RENODX_INTERMEDIATE_COLOR_SPACE renodx::color::convert::COLOR_SPACE_BT709 #define RENODX_SWAP_CHAIN_CLAMP_COLOR_SPACE renodx::color::convert::COLOR_SPACE_BT2020 #define RENODX_SWAP_CHAIN_DECODING_COLOR_SPACE RENODX_INTERMEDIATE_COLOR_SPACE -// Only used for HDR10 -#define RENODX_OUTPUT_COLOR_SPACE shader_injection.output_color_space +// Fixed to BT.709 -> BT.2020 conversion for HDR10 path. +#define RENODX_OUTPUT_COLOR_SPACE 0.f // Only used for scRGB #define RENODX_SWAP_CHAIN_ENCODING_COLOR_SPACE (renodx::color::convert::COLOR_SPACE_BT2020 - shader_injection.processing_use_scrgb) @@ -146,8 +160,6 @@ cbuffer injected_buffer : register(b13) { // ----------------------------------------------------------------------------- #define RENODX_WUWA_TM shader_injection.wuwa_tonemapper -#define RENODX_WUWA_KTM_SHARPENING shader_injection.wuwa_ktm_sharpening -#define RENODX_WUWA_CA 1.f #define RENODX_WUWA_BLOOM shader_injection.wuwa_bloom #define RENODX_WUWA_GRAIN 1.f #define RENODX_WUWA_BLOWOUT shader_injection.wuwa_blowout @@ -159,6 +171,9 @@ cbuffer injected_buffer : register(b13) { #define CUSTOM_RANDOM shader_injection.custom_random +#define RENODX_WUWA_TONEMAP_STRENGTH shader_injection.wuwa_tonemap_strength +#define RENODX_WUWA_LUT_STRENGTH shader_injection.wuwa_lut_strength + #include "../../shaders/renodx.hlsl" #endif diff --git a/src/games/wutheringwaves/swapchainproxy/swap_chain_proxy_pixel_shader.ps_5_x.hlsl b/src/games/wutheringwaves/swapchainproxy/swap_chain_proxy_pixel_shader.ps_5_x.hlsl index ee8cc8164..dbbd1ded0 100644 --- a/src/games/wutheringwaves/swapchainproxy/swap_chain_proxy_pixel_shader.ps_5_x.hlsl +++ b/src/games/wutheringwaves/swapchainproxy/swap_chain_proxy_pixel_shader.ps_5_x.hlsl @@ -22,7 +22,6 @@ float4 main(float4 vpos: SV_POSITION, float2 uv: TEXCOORD0) [branch] if (RENODX_SWAP_CHAIN_CLAMP_COLOR_SPACE == RENODX_SWAP_CHAIN_ENCODING_COLOR_SPACE) { // HDR10 - [branch] if (RENODX_OUTPUT_COLOR_SPACE < 2.f) { // BT.2020 [branch] if (RENODX_OUTPUT_COLOR_SPACE == 0.f) { // BT.709 -> BT.2020