From cf11b81bbe0c6123f7c8fd33119fd10e7e9855e0 Mon Sep 17 00:00:00 2001 From: Crementif <26669564+Crementif@users.noreply.github.com> Date: Tue, 12 Jan 2021 01:19:38 +0100 Subject: [PATCH] [BotW] Also remove old packs, whoops --- .../cb0e6e8cbec4502a_0000000000000079_ps.txt | 47 - Enhancements/BreathOfTheWild_!NoDoF/rules.txt | 6 - .../rules.txt | 33 - .../0f2b9ee517917425_00000000000003c9_ps.txt | 1048 ------- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 1097 ------- .../BreathOfTheWild_AntiAliasing/rules.txt | 80 - .../37040a485a29d54e_00000000000003c9_ps.txt | 1745 ----------- .../how_to_make_your_own_preset.txt | 53 - .../BreathOfTheWild_Clarity/rules.txt | 66 - .../BreathOfTheWild_LODBias/rules.txt | 62 - .../49ce4bf04a654e80_00000003c9249749_ps.txt | 685 ---- .../8ff2cf86e789335f_00000003c9249749_ps.txt | 684 ---- .../BreathOfTheWild_ReflExtra/rules.txt | 6 - .../22c410044398c7af_0000000000000000_vs.txt | 104 - .../2a2f55a2b2d64474_0000000000000000_vs.txt | 108 - .../88133ee405eaae28_000003c000009269_ps.txt | 740 ----- .../ffe0e8c84f6e8da9_000003c000009269_ps.txt | 730 ----- .../BreathOfTheWild_Shadows/rules.txt | 61 - .../8d24f32f18e6de47_0000000079249749_ps.txt | 703 ----- .../Botw_AmiiboMode/rules.txt | 55 - .../2f7ecb9f0022d8ca_0000000000000001_ps.txt | 116 - .../314b77345f06369b_0000000000000000_vs.txt | 114 - .../314b77349f0636db_0000000000000000_vs.txt | 112 - .../314b7734df06371b_0000000000000000_vs.txt | 118 - .../Botw_CelShadingRemoval/rules.txt | 28 - .../57cecf2ed6c8e3f0_00000003c9249749_ps.txt | 980 ------ .../f4e1147ab34a1677_0000000000000000_vs.txt | 235 -- .../Botw_MenuWorkaround/rules.txt | 9 - .../1c7db40ff5d693ab_001ffffe4924b249_ps.txt | 1171 ------- .../Botw_ShadowFix_Altros/rules.txt | 73 - .../1c7db40ff5d693ab_001ffffe4924b249_ps.txt | 934 ------ .../Botw_ShadowFix_SkalFate/rules.txt | 289 -- .../56bdb3903699990d_0000079a492a9249_ps.txt | 1070 ------- .../7cd50058a8f1d6dd_00001e1e1fea9249_ps.txt | 969 ------ .../cc51c2b5a4fce06c_00000078787f9249_ps.txt | 215 -- .../Ancient_Armor/rules.txt | 55 - .../5c4fc00fefe604eb_00000078787f9249_ps.txt | 227 -- .../b1b149918fac0b8d_00001e1e1fea9249_ps.txt | 987 ------ .../f611e1b3827b5e13_0000079a492a9249_ps.txt | 1102 ------- .../Ancient_Weapons/rules.txt | 55 - .../85d00659937443d5_000003c3c3fc9249_ps.txt | 232 -- .../Decayed_Guardian/rules.txt | 55 - .../4e0bab929e11836f_00003cd249549249_ps.txt | 1111 ------- .../83573681c1fcb0ac_0000f0f0ff549249_ps.txt | 1006 ------ .../91b6e09da2ff63cc_000003c3c3fc9249_ps.txt | 251 -- .../rules.txt | 55 - .../133297c9a66bfc98_000003c3c3fc9249_ps.txt | 332 -- .../Guardian_Turret_Skywatcher/rules.txt | 55 - .../Readme.txt | 11 - .../patches.txt | 17 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../BreathOfTheWild_Cheats_InfDaruk/rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../BreathOfTheWild_Cheats_InfMipha/rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 9 - .../readme.txt | 4 - .../rules.txt | 6 - .../patches.txt | 4 - .../readme.txt | 4 - .../rules.txt | 6 - Mods/BreathOfTheWild_DayLength/patches.txt | 4 - Mods/BreathOfTheWild_DayLength/rules.txt | 46 - .../2e2543216c04766d_0000000079249749_ps.txt | 713 ----- .../bec68ec6f40a864f_00fffff249259249_ps.txt | 996 ------ .../fb2e18ae56397ca7_00fffff249259249_ps.txt | 988 ------ .../Botw_DistantFog/rules.txt | 338 -- .../29c30aaa023dc7e6_0000000000000709_ps.txt | 210 -- .../397f3d8521c96e30_0000000000000709_ps.txt | 233 -- .../5a8eb2055c65a0c2_0000000000003849_ps.txt | 252 -- .../Botw_HyruleCastleAura/ReadMe.txt | 24 - .../Botw_HyruleCastleAura/rules.txt | 132 - .../699b238ae15d113b_00000000000000e1_ps.txt | 219 -- .../Botw_HyruleCastleBaseFog/ReadMe.txt | 21 - .../Botw_HyruleCastleBaseFog/rules.txt | 100 - .../1c7db40ff5d693ab_001ffffe4924b249_ps.txt | 847 ----- .../Botw_NPCFog/ReadMe.txt | 16 - .../Botw_NPCFog/rules.txt | 74 - .../527591781440691a_000000000001c24b_ps.txt | 358 --- .../Botw_WorldFogFields/ReadMe.txt | 21 - .../Botw_WorldFogFields/rules.txt | 100 - .../6fa2baef8a4ece42_0000000000000709_ps.txt | 171 - .../de960d36a997b34d_0000000000000709_ps.txt | 189 -- .../rules.txt | 48 - .../patch_extendedHeaps.asm | 37 - Mods/BreathOfTheWild_ExtendedMemory/rules.txt | 13 - .../Dynamic Gamespeed/patches.txt | 261 -- .../Dynamic Gamespeed/readme.txt | 4 - .../Dynamic Gamespeed/rules.txt | 26 - .../Fence Method/patches.txt | 81 - .../Fence Method/rules.txt | 18 - .../BreathOfTheWild_FPS++/Limit FPS/rules.txt | 57 - .../Occlusion Query/patches.txt | 11 - .../Occlusion Query/rules.txt | 6 - .../0453fb7ad9cc0f79_0000000000003849_ps.txt | 205 -- .../097eac672c26b4a4_00000000000000e1_ps.txt | 139 - .../0ce5fca5c70640d1_0000000000003849_ps.txt | 168 - .../12fe44a2273b452c_000000000000001c_ps.txt | 141 - .../146164991e2929e2_0000000000000709_ps.txt | 173 -- .../14f5a7cf99f2904a_00000000000000f1_ps.txt | 120 - .../15e2d4f74a5e8445_000000000000001c_ps.txt | 175 -- .../1dd8be9054c94f4e_0000000000003849_ps.txt | 247 -- .../233a000439032e75_00000000000000e1_ps.txt | 142 - .../266a0d760fe1ddfc_0000000000003849_ps.txt | 224 -- .../2a045e62b99640b5_00000001e1e21c49_ps.txt | 200 -- .../2a87149b7154c69d_000000000001c24b_ps.txt | 339 -- .../2f64af19b1835ab0_00000000000000e1_ps.txt | 147 - .../319e60116b59ceec_00000001e1e1fe49_ps.txt | 215 -- .../38d70ed9280bb3bc_0000000000000079_ps.txt | 96 - .../3d383d2d61500c9c_0000000f0f0ff249_ps.txt | 196 -- .../42c9208b54ad72ca_00000000000000e1_ps.txt | 128 - .../458dd826bd589332_0000000000000709_ps.txt | 157 - .../48a94cda336d2976_00000000000000e1_ps.txt | 134 - .../4af8a4670205be4c_00000000000000e1_ps.txt | 254 -- .../4bdac25bb98f5804_0000000000003849_ps.txt | 202 -- .../5219277e990fe5ba_00000000000000e1_ps.txt | 125 - .../5b04d28f319a1d6d_0000000f0f0ff249_ps.txt | 220 -- .../5b9b7727ca24e22b_0000000000000709_ps.txt | 195 -- .../5f4e60117b59cf65_00000001e1e1fe49_ps.txt | 215 -- .../603d7ad06d86617e_00000000000000e1_ps.txt | 127 - .../6240983542445009_00000001e1e21c49_ps.txt | 247 -- .../64342503518ca97a_0000000000000709_ps.txt | 156 - .../6832b00344c32a71_00000000000000e1_ps.txt | 142 - .../687da8c1b555b262_0000000000003849_ps.txt | 181 -- .../68aa37ce58db094d_00000000000000e1_ps.txt | 154 - .../70a79265ab7d498a_0000000f0f10e249_ps.txt | 217 -- .../70d96b85a0ce93ef_00000000000000e1_ps.txt | 119 - .../751393d6cbcd0c76_000003c3c3fc9249_ps.txt | 278 -- .../80b87385a0d2942f_00000000000000e1_ps.txt | 120 - .../81adf9797e4661a7_00000000000000e1_ps.txt | 136 - .../8438998c284fe428_000000000000001c_ps.txt | 105 - .../87790fa17c847fea_0000000000000709_ps.txt | 182 -- .../8798144a6f066e7c_00000000000000e1_ps.txt | 185 -- .../87babe7569572ff5_0000000000003849_ps.txt | 177 -- .../8836c3a20b053cf0_000000000000001c_ps.txt | 170 - .../8d0a18894dd0c9cb_0000000000000709_ps.txt | 201 -- .../8e9e804a3cd384c3_00000000000ff259_ps.txt | 657 ---- .../8fe014235f134ac1_00000000000000e1_ps.txt | 138 - .../99122c964b6a1a19_000000000001fe49_ps.txt | 640 ---- .../99fc7f42b65ca284_0000000000000709_ps.txt | 230 -- .../9aacad682248145f_0000000000000709_ps.txt | 169 - .../9c9c75d87bb9b4ef_0000000f0f10e249_ps.txt | 218 -- .../Readme.txt | 17 - .../a02a462f9ba59f2e_000000003c3c4389_ps.txt | 202 -- .../a11251f0bffe8631_000000000000001c_ps.txt | 116 - .../a54bdb88a57b9be9_0000000000003849_ps.txt | 183 -- .../a6ea718e4c60e157_00000000000000e1_ps.txt | 151 - .../a6eb708e4b616557_00000000000000e1_ps.txt | 149 - .../a95fbb49ae2c8f46_00000000000000e1_ps.txt | 129 - .../b2cf5924b04ea6a4_0000000f0f0ff249_ps.txt | 205 -- .../b2e1c9ce2f160aab_000000003c3c4389_ps.txt | 241 -- .../b5b53042daaad65c_00000001e1e21c49_ps.txt | 212 -- .../bc9529a682410603_00000001e1e1fe49_ps.txt | 197 -- .../beb15cab79e5ca5d_000000000000001c_ps.txt | 118 - .../bee298edc2f7e315_00000001e1e1fe49_ps.txt | 205 -- .../bf72a1fd35401be2_0000079749255249_ps.txt | 1254 -------- .../c36b10f0e410def8_00000000000000e1_ps.txt | 129 - .../cb27783c5e10df0e_000000000000001c_ps.txt | 210 -- .../cc9529ae1a492d03_00000001e1e1fe49_ps.txt | 197 -- .../cd1eba6802df67f7_0000000f0f0ff249_ps.txt | 202 -- .../ce76f7a67517c0b2_000000003c3c4389_ps.txt | 217 -- .../cf2e9b7aab93e342_000000000001fe49_ps.txt | 549 ---- .../d178de668517df1e_000000003c3c4389_ps.txt | 217 -- .../d3ac3a61f7749326_000000000000001c_ps.txt | 114 - .../d48de6ada1e9ad03_00000001e1e1fe49_ps.txt | 196 -- .../db8bc69330c08206_0000000000003849_ps.txt | 148 - .../e53233e53de8434f_0000000000000709_ps.txt | 129 - .../e95d54571be1c0a9_000000000001fe49_ps.txt | 452 --- .../f62be0d03546ec39_00000000000000e1_ps.txt | 147 - .../fb135efcb4540fb1_00000078787f9249_ps.txt | 210 -- .../rules.txt | 6 - .../37b9100c1310d3bb_0000000000000000_vs.txt | 1030 ------ .../4d58e6f0906ff5cf_0000000000000000_vs.txt | 952 ------ .../75faf095372864b1_0000000000000000_vs.txt | 1455 --------- .../b88c6020a8b17332_0000000000000000_vs.txt | 505 --- .../f56fcbd319ceba00_0000000000000000_vs.txt | 740 ----- .../f7ba548c1fefe24a_0000000000000000_vs.txt | 1247 -------- Mods/BreathOfTheWild_HUDRemover/rules.txt | 27 - Mods/BreathOfTheWild_NoMMTriforce/rules.txt | 12 - .../patches.txt | 4 - .../rules.txt | 6 - Mods/BreathOfTheWild_StaticFPS/patches.txt | 144 - Mods/BreathOfTheWild_StaticFPS/readme.txt | 14 - Mods/BreathOfTheWild_StaticFPS/rules.txt | 109 - Mods/BreathOfTheWild_Weather/patches.txt | 34 - Mods/BreathOfTheWild_Weather/rules.txt | 43 - .../01ba1a725afa0b96_0000000000000000_vs.txt | 138 - .../01bef64ec0cccd53_0000000000000000_vs.txt | 124 - .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 135 - .../0bcd653c18367d59_0000000000000000_vs.txt | 239 -- .../0d6127fbed646d2b_0000000000000000_vs.txt | 203 -- .../0f2b9ee517917425_00000000000003c9_ps.txt | 681 ---- .../141f484aff9b9f5a_0000000000000000_vs.txt | 102 - .../15afdae4307b9a3d_0000000000000000_vs.txt | 103 - .../1a14de8e58d5b30a_0000000000000000_vs.txt | 248 -- .../381d034349896360_0000000000000000_vs.txt | 132 - .../44b73ce02e05c2e6_0000000000000000_vs.txt | 123 - .../4721609a424e9a1f_0000000000000000_vs.txt | 214 -- .../5c1761d13feccdff_0000000000000000_vs.txt | 103 - .../5c975b0e3dac0562_0000000000000000_vs.txt | 111 - .../75a85b0cbcab764b_0000000000000000_vs.txt | 111 - .../771e24915acbb074_0000000000000000_vs.txt | 117 - .../81eb264a750163d9_0000000000000000_vs.txt | 132 - .../8cab2ed476b991ea_0000000000000000_vs.txt | 109 - .../93f16bf1d083933b_0000000000000000_vs.txt | 120 - .../a1cb9f79d093badb_0000f0f0ff34db6d_ps.txt | 562 ---- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 127 - .../b4a729584b6188ea_0000000000001e49_ps.txt | 110 - .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 196 -- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 182 -- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 223 -- .../cb0e6e8cbec4502a_0000000000000079_ps.txt | 53 - .../d1cf6920c3d5b194_0000000000000000_vs.txt | 98 - .../e06e20b2efe87a84_0000000000000000_vs.txt | 106 - .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 131 - .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 182 -- .../f69e84515ae56e70_0000000000000000_vs.txt | 118 - .../fc3e63a2007625f8_0000000000000000_vs.txt | 132 - .../BreathOfTheWild_Resolution/patches.txt | 159 - .../BreathOfTheWild_Resolution/rules.txt | 915 ------ .../09085793b5a9f364_00001ffe492e9249_ps.txt | 1168 ------- .../45e72a252caba763_000003c000009269_ps.txt | 581 ---- .../59cba7eb9a9c1df6_00000007f924d249_ps.txt | 848 ----- .../808ba0411f6f526e_0000007ff9249a49_ps.txt | 723 ----- .../88133ee405eaae28_000003c000009269_ps.txt | 797 ----- .../9c0b7031078fba88_0000007800001269_ps.txt | 590 ---- .../BreathOfTheWild_!Intel_Shadows/rules.txt | 8 - .../09085793b5a9f364_00001ffe492e9249_ps.txt | 1168 ------- .../45e72a252caba763_000003c000009269_ps.txt | 581 ---- .../59cba7eb9a9c1df6_00000007f924d249_ps.txt | 848 ----- .../808ba0411f6f526e_0000007ff9249a49_ps.txt | 723 ----- .../88133ee405eaae28_000003c000009269_ps.txt | 797 ----- .../9c0b7031078fba88_0000007800001269_ps.txt | 590 ---- .../BreathOfTheWild_!ShadowFix/rules.txt | 7 - .../15bc7edf9de2ed30_0000000000000000_vs.txt | 61 - .../24838b84d15a1da1_0000000000000000_vs.txt | 72 - .../83a697d61a3b9202_0000000000000000_vs.txt | 61 - .../97bc44a5028381c6_0000000000000000_vs.txt | 11 - .../BreathOfTheWild_AMD_ShaderCrash/rules.txt | 8 - .../7fb9a62472e80c0f_0000000000000079_ps.txt | 93 - .../BreathOfTheWild_GrassWorkaround/rules.txt | 7 - .../8e9e804a3cd384c3_00000000000ff259_ps.txt | 630 ---- .../ab0a485b9ae1bb1e_00000000000ff259_ps.txt | 627 ---- .../BreathOfTheWild_KakarikoShadows/rules.txt | 7 - .../BreathOfTheWild_LwzxNullCheck/patches.txt | 329 -- .../BreathOfTheWild_LwzxNullCheck/rules.txt | 7 - .../17aae2b035ae850c_0000000000000000_vs.txt | 1850 ----------- .../2938a1b3abfdfe49_0000000000000000_vs.txt | 2575 --------------- .../314c2583a1612026_0000000000000000_vs.txt | 1992 ------------ .../344d8b1f7d6f2b8e_0000000000000000_vs.txt | 2391 -------------- .../961cf134642327cc_0000000000000000_vs.txt | 1849 ----------- .../a4f029f0b16e3776_0000000000000000_vs.txt | 2259 -------------- .../b9eeedc9f6628c36_0000000000000000_vs.txt | 2465 --------------- .../ea77e7f80b23e7b7_0000000000000000_vs.txt | 2748 ----------------- .../fc4a738a3df2bcce_0000000000000000_vs.txt | 2737 ---------------- .../rules.txt | 8 - .../73ddf96c9094eb92_0000000000000000_vs.txt | 2337 -------------- .../rules.txt | 8 - 282 files changed, 90355 deletions(-) delete mode 100644 Enhancements/BreathOfTheWild_!NoDoF/cb0e6e8cbec4502a_0000000000000079_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_!NoDoF/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_AnisotropicFiltering/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_AntiAliasing/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_AntiAliasing/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_AntiAliasing/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_Clarity/37040a485a29d54e_00000000000003c9_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_Clarity/how_to_make_your_own_preset.txt delete mode 100644 Enhancements/BreathOfTheWild_Clarity/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_LODBias/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_ReflExtra/49ce4bf04a654e80_00000003c9249749_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_ReflExtra/8ff2cf86e789335f_00000003c9249749_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_ReflExtra/rules.txt delete mode 100644 Enhancements/BreathOfTheWild_Shadows/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Enhancements/BreathOfTheWild_Shadows/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Enhancements/BreathOfTheWild_Shadows/88133ee405eaae28_000003c000009269_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_Shadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt delete mode 100644 Enhancements/BreathOfTheWild_Shadows/rules.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/8d24f32f18e6de47_0000000079249749_ps.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/rules.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/2f7ecb9f0022d8ca_0000000000000001_ps.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77345f06369b_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77349f0636db_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b7734df06371b_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/rules.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/57cecf2ed6c8e3f0_00000003c9249749_ps.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/f4e1147ab34a1677_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/rules.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/1c7db40ff5d693ab_001ffffe4924b249_ps.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/rules.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/1c7db40ff5d693ab_001ffffe4924b249_ps.txt delete mode 100644 Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/56bdb3903699990d_0000079a492a9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/7cd50058a8f1d6dd_00001e1e1fea9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/cc51c2b5a4fce06c_00000078787f9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/5c4fc00fefe604eb_00000078787f9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/b1b149918fac0b8d_00001e1e1fea9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/f611e1b3827b5e13_0000079a492a9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/85d00659937443d5_000003c3c3fc9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/4e0bab929e11836f_00003cd249549249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/83573681c1fcb0ac_0000f0f0ff549249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/91b6e09da2ff63cc_000003c3c3fc9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/133297c9a66bfc98_000003c3c3fc9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/rules.txt delete mode 100644 Mods/BreathOfTheWild_ChangeAncientGlowColor/Readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_FasterArrowDraw/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_FasterArrowDraw/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_FasterArrowDraw/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfAmiibo/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfAmiibo/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfAmiibo/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfArrows/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfArrows/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfArrows/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfDaruk/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfDaruk/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfDaruk/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfHearts/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfHearts/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfHearts/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMipha/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMipha/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMipha/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMotorcycle/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMotorcycle/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfMotorcycle/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfRevali/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfRevali/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfRevali/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfStamina/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfStamina/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfStamina/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfUrbosa/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfUrbosa/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfUrbosa/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfWeapons/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfWeapons/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_InfWeapons/rules.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/patches.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/readme.txt delete mode 100644 Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/rules.txt delete mode 100644 Mods/BreathOfTheWild_DayLength/patches.txt delete mode 100644 Mods/BreathOfTheWild_DayLength/rules.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/2e2543216c04766d_0000000079249749_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/bec68ec6f40a864f_00fffff249259249_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/fb2e18ae56397ca7_00fffff249259249_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/rules.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/29c30aaa023dc7e6_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/397f3d8521c96e30_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/5a8eb2055c65a0c2_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/ReadMe.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/rules.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/699b238ae15d113b_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/ReadMe.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/rules.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/1c7db40ff5d693ab_001ffffe4924b249_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/ReadMe.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/rules.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/527591781440691a_000000000001c24b_ps.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/ReadMe.txt delete mode 100644 Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/rules.txt delete mode 100644 Mods/BreathOfTheWild_DivineLaserBeamCustomizer/6fa2baef8a4ece42_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_DivineLaserBeamCustomizer/de960d36a997b34d_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_DivineLaserBeamCustomizer/rules.txt delete mode 100644 Mods/BreathOfTheWild_ExtendedMemory/patch_extendedHeaps.asm delete mode 100644 Mods/BreathOfTheWild_ExtendedMemory/rules.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/patches.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/readme.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/rules.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Fence Method/patches.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Fence Method/rules.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Limit FPS/rules.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Occlusion Query/patches.txt delete mode 100644 Mods/BreathOfTheWild_FPS++/Occlusion Query/rules.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/0453fb7ad9cc0f79_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/097eac672c26b4a4_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/0ce5fca5c70640d1_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/12fe44a2273b452c_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/146164991e2929e2_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/14f5a7cf99f2904a_00000000000000f1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/15e2d4f74a5e8445_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/1dd8be9054c94f4e_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/233a000439032e75_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/266a0d760fe1ddfc_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/2a045e62b99640b5_00000001e1e21c49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/2a87149b7154c69d_000000000001c24b_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/2f64af19b1835ab0_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/319e60116b59ceec_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/38d70ed9280bb3bc_0000000000000079_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/3d383d2d61500c9c_0000000f0f0ff249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/42c9208b54ad72ca_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/458dd826bd589332_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/48a94cda336d2976_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/4af8a4670205be4c_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/4bdac25bb98f5804_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/5219277e990fe5ba_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/5b04d28f319a1d6d_0000000f0f0ff249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/5b9b7727ca24e22b_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/5f4e60117b59cf65_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/603d7ad06d86617e_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/6240983542445009_00000001e1e21c49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/64342503518ca97a_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/6832b00344c32a71_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/687da8c1b555b262_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/68aa37ce58db094d_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/70a79265ab7d498a_0000000f0f10e249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/70d96b85a0ce93ef_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/751393d6cbcd0c76_000003c3c3fc9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/80b87385a0d2942f_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/81adf9797e4661a7_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8438998c284fe428_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/87790fa17c847fea_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8798144a6f066e7c_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/87babe7569572ff5_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8836c3a20b053cf0_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8d0a18894dd0c9cb_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8e9e804a3cd384c3_00000000000ff259_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/8fe014235f134ac1_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/99122c964b6a1a19_000000000001fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/99fc7f42b65ca284_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/9aacad682248145f_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/9c9c75d87bb9b4ef_0000000f0f10e249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/Readme.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a02a462f9ba59f2e_000000003c3c4389_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a11251f0bffe8631_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a54bdb88a57b9be9_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a6ea718e4c60e157_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a6eb708e4b616557_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/a95fbb49ae2c8f46_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/b2cf5924b04ea6a4_0000000f0f0ff249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/b2e1c9ce2f160aab_000000003c3c4389_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/b5b53042daaad65c_00000001e1e21c49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/bc9529a682410603_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/beb15cab79e5ca5d_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/bee298edc2f7e315_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/bf72a1fd35401be2_0000079749255249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/c36b10f0e410def8_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/cb27783c5e10df0e_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/cc9529ae1a492d03_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/cd1eba6802df67f7_0000000f0f0ff249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/ce76f7a67517c0b2_000000003c3c4389_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/cf2e9b7aab93e342_000000000001fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/d178de668517df1e_000000003c3c4389_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/d3ac3a61f7749326_000000000000001c_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/d48de6ada1e9ad03_00000001e1e1fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/db8bc69330c08206_0000000000003849_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/e53233e53de8434f_0000000000000709_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/e95d54571be1c0a9_000000000001fe49_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/f62be0d03546ec39_00000000000000e1_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/fb135efcb4540fb1_00000078787f9249_ps.txt delete mode 100644 Mods/BreathOfTheWild_GlowLightsColors/rules.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/37b9100c1310d3bb_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/4d58e6f0906ff5cf_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/75faf095372864b1_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/b88c6020a8b17332_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/f56fcbd319ceba00_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/f7ba548c1fefe24a_0000000000000000_vs.txt delete mode 100644 Mods/BreathOfTheWild_HUDRemover/rules.txt delete mode 100644 Mods/BreathOfTheWild_NoMMTriforce/rules.txt delete mode 100644 Mods/BreathOfTheWild_ReshadeCompatibility/patches.txt delete mode 100644 Mods/BreathOfTheWild_ReshadeCompatibility/rules.txt delete mode 100644 Mods/BreathOfTheWild_StaticFPS/patches.txt delete mode 100644 Mods/BreathOfTheWild_StaticFPS/readme.txt delete mode 100644 Mods/BreathOfTheWild_StaticFPS/rules.txt delete mode 100644 Mods/BreathOfTheWild_Weather/patches.txt delete mode 100644 Mods/BreathOfTheWild_Weather/rules.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/01ba1a725afa0b96_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/01bef64ec0cccd53_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/141f484aff9b9f5a_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/15afdae4307b9a3d_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/381d034349896360_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/44b73ce02e05c2e6_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/93f16bf1d083933b_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/a1cb9f79d093badb_0000f0f0ff34db6d_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/b4a729584b6188ea_0000000000001e49_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/cb0e6e8cbec4502a_0000000000000079_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/d1cf6920c3d5b194_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/e06e20b2efe87a84_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/patches.txt delete mode 100644 Resolutions/BreathOfTheWild_Resolution/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/09085793b5a9f364_00001ffe492e9249_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/45e72a252caba763_000003c000009269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/59cba7eb9a9c1df6_00000007f924d249_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/808ba0411f6f526e_0000007ff9249a49_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/88133ee405eaae28_000003c000009269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/9c0b7031078fba88_0000007800001269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!Intel_Shadows/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/09085793b5a9f364_00001ffe492e9249_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/45e72a252caba763_000003c000009269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/59cba7eb9a9c1df6_00000007f924d249_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/808ba0411f6f526e_0000007ff9249a49_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/88133ee405eaae28_000003c000009269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/9c0b7031078fba88_0000007800001269_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_!ShadowFix/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_AMD_ShaderCrash/15bc7edf9de2ed30_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_AMD_ShaderCrash/24838b84d15a1da1_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_AMD_ShaderCrash/83a697d61a3b9202_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_AMD_ShaderCrash/97bc44a5028381c6_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_AMD_ShaderCrash/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_GrassWorkaround/7fb9a62472e80c0f_0000000000000079_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_GrassWorkaround/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_KakarikoShadows/8e9e804a3cd384c3_00000000000ff259_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_KakarikoShadows/ab0a485b9ae1bb1e_00000000000ff259_ps.txt delete mode 100644 Workarounds/BreathOfTheWild_KakarikoShadows/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_LwzxNullCheck/patches.txt delete mode 100644 Workarounds/BreathOfTheWild_LwzxNullCheck/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/17aae2b035ae850c_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/2938a1b3abfdfe49_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/314c2583a1612026_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/344d8b1f7d6f2b8e_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/961cf134642327cc_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/a4f029f0b16e3776_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/b9eeedc9f6628c36_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/ea77e7f80b23e7b7_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/fc4a738a3df2bcce_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/rules.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/73ddf96c9094eb92_0000000000000000_vs.txt delete mode 100644 Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/rules.txt diff --git a/Enhancements/BreathOfTheWild_!NoDoF/cb0e6e8cbec4502a_0000000000000079_ps.txt b/Enhancements/BreathOfTheWild_!NoDoF/cb0e6e8cbec4502a_0000000000000079_ps.txt deleted file mode 100644 index 6428e4e8..00000000 --- a/Enhancements/BreathOfTheWild_!NoDoF/cb0e6e8cbec4502a_0000000000000079_ps.txt +++ /dev/null @@ -1,47 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. -// shader cb0e6e8cbec4502a -// DoF blur effect - Battle, Camera, Scope -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem3; -layout(location = 0) out vec4 passPixelColor0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -const int radius = int(0); -void main() { - vec2 center = (passParameterSem3.xy + passParameterSem3.zw) / 2; - vec2 step = passParameterSem3.xw - passParameterSem3.zy; - vec4 result = vec4(0.0); - float count = 0.0; - for (int x = -radius; x <= radius; x++) { - for (int y = -radius; y <= radius; y++) { - if (length(vec2(x, y)) <= radius) { - result += texture(textureUnitPS0, center + vec2(x, y)*step); - count += 1.0; - } - } - } - passPixelColor0 = result / count; -} \ No newline at end of file diff --git a/Enhancements/BreathOfTheWild_!NoDoF/rules.txt b/Enhancements/BreathOfTheWild_!NoDoF/rules.txt deleted file mode 100644 index e22ced96..00000000 --- a/Enhancements/BreathOfTheWild_!NoDoF/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "No Depth of Field" -path = "The Legend of Zelda: Breath of the Wild/Enhancements/No Depth of Field" -description = Disables depth of field, may possibly improve performance. Made by BSoD Gaming. -version = 4 diff --git a/Enhancements/BreathOfTheWild_AnisotropicFiltering/rules.txt b/Enhancements/BreathOfTheWild_AnisotropicFiltering/rules.txt deleted file mode 100644 index 20c47298..00000000 --- a/Enhancements/BreathOfTheWild_AnisotropicFiltering/rules.txt +++ /dev/null @@ -1,33 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Anisotropic Filtering -path = "The Legend of Zelda: Breath of the Wild/Enhancements/Anisotropic Filtering" -description = Requires Cemu 1.21.3 or above|Allows adjustment of anisotropic filtering on geometry.|Has a minimal performance impact.|Made by M&&M. -version = 6 - -[Default] -$anisotropy = 1 - -[Preset] -name = 1x - -[Preset] -name = 2x -$anisotropy = 2 - -[Preset] -name = 4x -$anisotropy = 4 - -[Preset] -name = 8x -$anisotropy = 8 - -[Preset] -name = 16x -$anisotropy = 16 - -[TextureRedefine] -tileModesExcluded = 0x001 # ignore cpu processed textures (ex. videos) -formatsExcluded = 0x001,0x005,0x007,0x019,0x01a,0x01f,0x122,0x41a,0x806,0x80e,0x816,0x820 # ignore viewports, cubemaps, and shadows -overwriteAnisotropy = $anisotropy diff --git a/Enhancements/BreathOfTheWild_AntiAliasing/0f2b9ee517917425_00000000000003c9_ps.txt b/Enhancements/BreathOfTheWild_AntiAliasing/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 10198c39..00000000 --- a/Enhancements/BreathOfTheWild_AntiAliasing/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,1048 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -// shader 0f2b9ee517917425 - dumped 1.15 -// Used for: Removing/Restoring the native BotW Anti-Aliasing implementation to link in inventory screen - -#define preset $preset -#define iSharper $inventorySharper -#define iBlurrier $inventoryBlurrier - -#if (preset == 0) // Native AA Disabled -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; - -void main() -{ -passPixelColor0 = texture(textureUnitPS0, passParameterSem2.xy); -} -#endif - -#if (preset == 1) // Native AA Enabled - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock - -ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float -float iresX = ( (float(resDim.x)/float(1280)) + iSharper ) - iBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper -float iresY = ( (float(resDim.y)/float(720)) + iSharper ) - iBlurrier; // 2nd comes aablurier needs to be subtracted from final result to make it more blurrier - -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); // These variables make the difference -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem2); -if( activeMaskStackC[1] == true ) { -R2i.xzw = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.xy)).xzw); -R1i.xz = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.zw)).xz); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw); -R0i.w = floatBitsToInt(textureOffset(textureUnitPS1, intBitsToFloat(R0i.xy),ivec2(1,-1)).x); -R1i.y = floatBitsToInt(textureOffset(textureUnitPS1, intBitsToFloat(R0i.xy),ivec2(-1,1)).x); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 --- Point of Interest 1 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z)) / iresX ); // Divide looks better for minimum - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z)) * iresY ); // Multiply looks beeter for max - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z)) * iresX ); // Multiply looks better for max - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 ---Point of Interest 2 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.w))); -// 2 -PV0i.z = floatBitsToInt(min(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.x))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[0].x) / iresX )); -R1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R2i.y = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[0].y))); -// 5 -predResult = (intBitsToFloat(R1i.w) >= intBitsToFloat(R2i.y)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.xyz = floatBitsToInt(vec3(intBitsToFloat(R2i.z),intBitsToFloat(R1i.x),intBitsToFloat(R2i.z)) + vec3(intBitsToFloat(R0i.w),intBitsToFloat(R1i.y),intBitsToFloat(R1i.x))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(R1i.z)); -PV0i.w = R127i.w; -R127i.y = R1i.z; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -PS0i = R127i.y; -// 1 -PV1i.x = R2i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R0i.w)); -R127i.z = floatBitsToInt((-(intBitsToFloat(R2i.w)) * 2.0 + intBitsToFloat(PV0i.z))); -PV1i.w = PV0i.w; -PS1i = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(R1i.y)); -// 2 -R127i.x = floatBitsToInt((-(intBitsToFloat(R2i.w)) * 2.0 + intBitsToFloat(PV1i.w))); -R1i.y = R2i.z; -PV0i.y = R1i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) + -(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(R127i.y))); -PS0i = R126i.x; -// 3 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((-(intBitsToFloat(R1i.x)) * 2.0 + intBitsToFloat(R126i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -R123i.w = floatBitsToInt((-(intBitsToFloat(PV0i.y)) * 2.0 + intBitsToFloat(PS0i))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 4 -backupReg0i = R126i.y; -PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); -R126i.y = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R127i.x), -(intBitsToFloat(R127i.x)))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PS1i)); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(backupReg0i)); -PS0i = R126i.w; -// 5 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R126i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R1i.w)); // Rli.w * 2 has the same affect as line 85------------------------------------------------------ -PS1i = R127i.y; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.y)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.x)); -// 7 -PV1i.x = ((intBitsToFloat(PV0i.y) >= intBitsToFloat(R127i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3daaaaab)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.y))); -R4i.z = ((PV1i.x == 0)?(0x3f800000):(0)); -PV0i.z = R4i.z; -R5i.w = ((PV1i.x == 0)?(0):(0x3f800000)); -PV0i.w = R5i.w; -// 9 --- Point fo Interest -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[1].x) / iresX )); // Default implementation division took place here -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[1].x) / iresX )); // Default implementation division took place here -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[1].y) / iresY )); // Default implementation division took place here -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 --- Point of Interest -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); // Divide looks good same as below line ---------------------------------------------------------------------- -R127i.x = clampFI32(R127i.x); // Divide looks good same as above line---------------------------------------------------------------------------------------------------- -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(uf_remappedPS[1].y) / iresY ) + intBitsToFloat(PV1i.y))); // Default implementation division took place here -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R5i.w)) + intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R4i.z))); -// 11 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.w))); -PV1i.x = R124i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z)); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c00000) + intBitsToFloat(0xc1700000))); -PV1i.w = R123i.w; -// 12 -R125i.x = floatBitsToInt(max(intBitsToFloat(PV1i.y), -(intBitsToFloat(PV1i.y)))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.x)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(0x41200000))); -PV0i.z = R123i.z; -// 13 -R126i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.z))); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -R126i.w = ((intBitsToFloat(R125i.x) >= intBitsToFloat(PV1i.x))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R126i.w; -// 15 -R6i.x = floatBitsToInt(((PV0i.w == 0)?(intBitsToFloat(R127i.y)):(-(intBitsToFloat(R127i.y))))); -PV1i.x = R6i.x; -R123i.z = ((PV0i.w == 0)?(R126i.x):(R125i.x)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -// 16 --- Point of Interest -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); // Important Doubling improves curves and clarity -R123i.y = ((R126i.w == 0)?(R124i.x):(R127i.z)); -PV0i.y = R123i.y; -R3i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f400000)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * 0.25); -PS0i = R4i.x; -// 17 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.w)); -R4i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -PV1i.w = R4i.w; -// 18 -R3i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(PV1i.x)); -R3i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(PV1i.z)); -R1i.z = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.x)); -R1i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.z)); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.w))); -PS0i = R2i.x; -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R2i.x; -R2i.x = ((0.0 > intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R3i.x))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R3i.y))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -// 3 -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -// 4 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg1i))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R2i.z))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R2i.w))); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R1i.x))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R1i.y))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -// 1 -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -// 3 -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -// 4 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * 1.5 + intBitsToFloat(R3i.x))); -R1i.y = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * 1.5 + intBitsToFloat(R3i.y))); -R2i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * 1.5 + intBitsToFloat(backupReg0i))); -R2i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * 1.5 + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.z)) + vec3(-(intBitsToFloat(PV0i.w)),-(intBitsToFloat(PV0i.z)),intBitsToFloat(PV0i.x))); -R1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R3i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(PV0i.x))); -R3i.y = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(PV0i.w))); -R1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R1i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.w))); -R3i.y = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(PV0i.z))); -R2i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -R2i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.x))); -R1i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R2i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); -// 5 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.z)) + vec3(-(intBitsToFloat(PV0i.w)),-(intBitsToFloat(PV0i.z)),intBitsToFloat(PV0i.x))); -R1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R5i.x = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * intBitsToFloat(0x41000000) + intBitsToFloat(R1i.x))); -R5i.y = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x41000000) + intBitsToFloat(R1i.y))); -R1i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x41000000) + intBitsToFloat(backupReg0i))); -R1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x41000000) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R5i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R5i.x))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(R5i.y))); -PS0i = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS0i))); -PV1i.z = ((0.0 > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.y))); -PS1i = ((0.0 > intBitsToFloat(PV0i.x))?int(0xFFFFFFFF):int(0x0)); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = (PV1i.z != R2i.x)?int(0xFFFFFFFF):int(0x0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R126i.w = (PS1i != R2i.x)?int(0xFFFFFFFF):int(0x0); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x)); -R126i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); -PV1i.z = ((intBitsToFloat(PV0i.x) > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -// 4 -backupReg0i = R127i.y; -R127i.y = ((PV1i.z == 0)?(R126i.w):(backupReg0i)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -// 6 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 0.5); -// 7 -R123i.x = ((R127i.y == 0)?(0):(PV0i.y)); -PV1i.x = R123i.x; -// 8 -PV0i.w = floatBitsToInt(max(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.x))); -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV0i.w))); -// 10 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -passPixelColor0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -} - -#endif - -#if (preset == 2) // FXAA -//-----------------------------settings-------------------------------------// - -#define Subpix $subPix //[0.000 to 1.000] Choose the amount of sub-pixel aliasing removal. -#define EdgeThreshold $edgeThreshold //[0.000 to 1.000] Edge detection threshold. The minimum amount of local contrast required to apply algorithm. -#define EdgeThresholdMin $edgeThresholdMin //[0.000 to 1.000] Darkness threshold. Trims the algorithm from processing darks. - -//--------------------------------------------------------------------------// - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; - - -#define FXAA_QUALITY_PS 12 -#define FXAA_QUALITY_P0 1.0 -#define FXAA_QUALITY_P1 1.0 -#define FXAA_QUALITY_P2 1.0 -#define FXAA_QUALITY_P3 1.0 -#define FXAA_QUALITY_P4 1.0 -#define FXAA_QUALITY_P5 1.5 -#define FXAA_QUALITY_P6 2.0 -#define FXAA_QUALITY_P7 2.0 -#define FXAA_QUALITY_P8 2.0 -#define FXAA_QUALITY_P9 2.0 -#define FXAA_QUALITY_P10 4.0 -#define FXAA_QUALITY_P11 8.0 - -#define FxaaBool bool -#define FxaaDiscard discard -#define FxaaFloat float -#define FxaaFloat2 vec2 -#define FxaaFloat3 vec3 -#define FxaaFloat4 vec4 -#define FxaaHalf float -#define FxaaHalf2 vec2 -#define FxaaHalf3 vec3 -#define FxaaHalf4 vec4 -#define FxaaInt2 ivec2 -#define FxaaSat(x) clamp(x, 0.0, 1.0) -#define FxaaTex sampler2D - -#define FxaaTexTop(t, p) textureLod(t, p, 0.0) -#define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o) - -#define FxaaTexAlpha4(t, p) textureGather(t, p, 3) -#define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) -#define FxaaTexGreen4(t, p) textureGather(t, p, 1) -#define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) - -FxaaFloat4 FxaaPixelShader( - FxaaFloat2 pos, - FxaaTex tex, - FxaaTex lum, - FxaaFloat2 fxaaQualityRcpFrame, - FxaaFloat fxaaQualitySubpix, - FxaaFloat fxaaQualityEdgeThreshold, - FxaaFloat fxaaQualityEdgeThresholdMin -) { - FxaaFloat2 posM; - posM.x = pos.x; - posM.y = pos.y; - FxaaFloat4 rgbyM = vec4(FxaaTexTop(tex, posM).xyz, FxaaTexTop(lum, posM).x); - #define lumaM rgbyM.w - FxaaFloat4 luma4A = textureGather(lum, posM); - FxaaFloat4 luma4B = textureGatherOffset(lum, posM, FxaaInt2(-1, -1)); - #define lumaE luma4A.z - #define lumaS luma4A.x - #define lumaSE luma4A.y - #define lumaNW luma4B.w - #define lumaN luma4B.z - #define lumaW luma4B.x - FxaaFloat maxSM = max(lumaS, lumaM); - FxaaFloat minSM = min(lumaS, lumaM); - FxaaFloat maxESM = max(lumaE, maxSM); - FxaaFloat minESM = min(lumaE, minSM); - FxaaFloat maxWN = max(lumaN, lumaW); - FxaaFloat minWN = min(lumaN, lumaW); - FxaaFloat rangeMax = max(maxWN, maxESM); - FxaaFloat rangeMin = min(minWN, minESM); - FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold; - FxaaFloat range = rangeMax - rangeMin; - FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled); - FxaaBool earlyExit = range < rangeMaxClamped; - if(earlyExit) - return rgbyM; - FxaaFloat lumaNE = FxaaTexOff(lum, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy).x; - FxaaFloat lumaSW = FxaaTexOff(lum, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy).x; - FxaaFloat lumaNS = lumaN + lumaS; - FxaaFloat lumaWE = lumaW + lumaE; - FxaaFloat subpixRcpRange = 1.0/range; - FxaaFloat subpixNSWE = lumaNS + lumaWE; - FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS; - FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE; - FxaaFloat lumaNESE = lumaNE + lumaSE; - FxaaFloat lumaNWNE = lumaNW + lumaNE; - FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE; - FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE; - FxaaFloat lumaNWSW = lumaNW + lumaSW; - FxaaFloat lumaSWSE = lumaSW + lumaSE; - FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2); - FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2); - FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW; - FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE; - FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4; - FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4; - FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE; - FxaaFloat lengthSign = fxaaQualityRcpFrame.x; - FxaaBool horzSpan = edgeHorz >= edgeVert; - FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE; - if(!horzSpan) lumaN = lumaW; - if(!horzSpan) lumaS = lumaE; - if(horzSpan) lengthSign = fxaaQualityRcpFrame.y; - FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM; - FxaaFloat gradientN = lumaN - lumaM; - FxaaFloat gradientS = lumaS - lumaM; - FxaaFloat lumaNN = lumaN + lumaM; - FxaaFloat lumaSS = lumaS + lumaM; - FxaaBool pairN = abs(gradientN) >= abs(gradientS); - FxaaFloat gradient = max(abs(gradientN), abs(gradientS)); - if(pairN) lengthSign = -lengthSign; - FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange); - FxaaFloat2 posB; - posB.x = posM.x; - posB.y = posM.y; - FxaaFloat2 offNP; - offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x; - offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y; - if(!horzSpan) posB.x += lengthSign * 0.5; - if( horzSpan) posB.y += lengthSign * 0.5; - FxaaFloat2 posN; - posN.x = posB.x - offNP.x * FXAA_QUALITY_P0; - posN.y = posB.y - offNP.y * FXAA_QUALITY_P0; - FxaaFloat2 posP; - posP.x = posB.x + offNP.x * FXAA_QUALITY_P0; - posP.y = posB.y + offNP.y * FXAA_QUALITY_P0; - FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0; - FxaaFloat lumaEndN = FxaaTexTop(lum, posN).x; - FxaaFloat subpixE = subpixC * subpixC; - FxaaFloat lumaEndP = FxaaTexTop(lum, posP).x; - if(!pairN) lumaNN = lumaSS; - FxaaFloat gradientScaled = gradient * 1.0/4.0; - FxaaFloat lumaMM = lumaM - lumaNN * 0.5; - FxaaFloat subpixF = subpixD * subpixE; - FxaaBool lumaMLTZero = lumaMM < 0.0; - lumaEndN -= lumaNN * 0.5; - lumaEndP -= lumaNN * 0.5; - FxaaBool doneN = abs(lumaEndN) >= gradientScaled; - FxaaBool doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1; - FxaaBool doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1; - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2; - #if (FXAA_QUALITY_PS > 3) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3; - #if (FXAA_QUALITY_PS > 4) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4; - #if (FXAA_QUALITY_PS > 5) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5; - #if (FXAA_QUALITY_PS > 6) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6; - #if (FXAA_QUALITY_PS > 7) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7; - #if (FXAA_QUALITY_PS > 8) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8; - #if (FXAA_QUALITY_PS > 9) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9; - #if (FXAA_QUALITY_PS > 10) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10; - #if (FXAA_QUALITY_PS > 11) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11; - #if (FXAA_QUALITY_PS > 12) - if(doneNP) { - if(!doneN) lumaEndN = FxaaTexTop(lum, posN.xy).x; - if(!doneP) lumaEndP = FxaaTexTop(lum, posP.xy).x; - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12; - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - #endif - } - FxaaFloat dstN = posM.x - posN.x; - FxaaFloat dstP = posP.x - posM.x; - if(!horzSpan) dstN = posM.y - posN.y; - if(!horzSpan) dstP = posP.y - posM.y; - FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero; - FxaaFloat spanLength = (dstP + dstN); - FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero; - FxaaFloat spanLengthRcp = 1.0/spanLength; - FxaaBool directionN = dstN < dstP; - FxaaFloat dst = min(dstN, dstP); - FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP; - FxaaFloat subpixG = subpixF * subpixF; - FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5; - FxaaFloat subpixH = subpixG * fxaaQualitySubpix; - FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0; - FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH); - if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign; - if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign; - return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM); -} - -ivec2 resolution = textureSize(textureUnitPS0,0); -vec2 RcpFrame = vec2(1.0 / float(resolution.x), 1.0 / float(resolution.y)); -void main() -{ -passPixelColor0 = FxaaPixelShader(passParameterSem2.xy, textureUnitPS0, textureUnitPS1, RcpFrame, Subpix, EdgeThreshold, EdgeThresholdMin); -} -#endif diff --git a/Enhancements/BreathOfTheWild_AntiAliasing/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Enhancements/BreathOfTheWild_AntiAliasing/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index beb5acde..00000000 --- a/Enhancements/BreathOfTheWild_AntiAliasing/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,1097 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform vec2 uf_fragCoordScale; -#endif -// shader f14bb57cd5c9cb77 - dumped 1.15 -// Used for: Removing/Restoring the native BotW World Anti-Aliasing Implementation - -#define preset $preset -#define wSharper $worldSharper -#define wBlurrier $worldBlurrier - -#if (preset == 0) // Native AA Disabled -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -void main() -{ -passPixelColor0 = texture(textureUnitPS0, passParameterSem2.xy); -} -#endif - -#if (preset == 1) // Native AA Enabled - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock - -ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float -float wresX = ( (float(resDim.x)/float(1280)) + wSharper ) - wBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper -float wresY = ( (float(resDim.y)/float(720)) + wSharper ) - wBlurrier; // 2nd comes aablurier needs to be subtracted from final result to make it more blurrier - -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); // Important variable -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); // Important variable -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem2; -if( activeMaskStackC[1] == true ) { -R1f.xyzw = (textureGather(textureUnitPS1, R0f.xy).wzxy); -R2f.xyzw = (texture(textureUnitPS0, R0f.xy).xyzw); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0f.x = R1f.w + -(R1f.x); -PV0f.y = R1f.z + -(R1f.y); -PV0f.z = mul_nonIEEE(R2f.x, intBitsToFloat(uf_remappedPS[0].x)); -R127f.w = min(R1f.z, R1f.x); -R127f.x = min(R1f.w, R1f.y); -PS0f = R127f.x; -// 1 -R123f.x = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedPS[0].y) * wresX ) + PV0f.z); // Important line - multiply y - bundled with main point of interests looks better -PV1f.x = R123f.x; -PV1f.y = max(R1f.z, R1f.x); -R127f.z = PV0f.y + -(PV0f.x); -PV1f.z = R127f.z; -R126f.w = PV0f.y + PV0f.x; -PV1f.w = R126f.w; -PS1f = max(R1f.w, R1f.y); -// 2 -PV0f.x = max(PV1f.z, -(PV1f.z)); -PV0f.y = max(PV1f.w, -(PV1f.w)); -R123f.z = (mul_nonIEEE(R2f.z,intBitsToFloat(uf_remappedPS[0].z)) + PV1f.x); -PV0f.z = R123f.z; -PV0f.w = min(R127f.w, R127f.x); -PS0f = max(PV1f.y, PS1f); -// 3 -PV1f.x = mul_nonIEEE(PS0f, intBitsToFloat(uf_remappedPS[1].x)); -PV1f.y = max(PV0f.z, PS0f); -PV1f.z = min(PV0f.z, PV0f.w); -PV1f.w = min(PV0f.y, PV0f.x); -// 4 ---Point of Interest -R1f.x = -(PV1f.z) + PV1f.y; -R0f.z = max(PV1f.x, intBitsToFloat(uf_remappedPS[1].y)); // Important - Divide looks blurrier/fuzzy and multiply looks sharper good -PS0f = 1.0 / PV1f.w; // Important line affects aliasing strongly, increasing it is blurier and decreasing sharpens -// 5 -PV1f.x = mul_nonIEEE(R127f.z, PS0f); -PV1f.y = mul_nonIEEE(R126f.w, PS0f); -// 6 -PV0f.z = max(PV1f.x, -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.w = max(PV1f.y, -(intBitsToFloat(uf_remappedPS[2].y))); -// 7 --- Point of Interest -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); // Important - Another way to do it - Divide looks sharper and better and multiply looks blurier fuzzy -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); // Important - Another Way to do it - Divide looks sharper and better and multiply looks blurier fuzzy -// 8 -predResult = (R1f.x > R0f.z); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0f = R3f.x; -backupReg0f = R3f.x; -R3f.x = (mul_nonIEEE(backupReg0f,intBitsToFloat(uf_remappedPS[3].x) / wresX ) + R0f.x); // Original Implementation divided x -R3f.y = (mul_nonIEEE(R1f.y,intBitsToFloat(uf_remappedPS[3].y) / wresY ) + R0f.y); // Original Implementation divided y -R1f.x = (mul_nonIEEE(backupReg0f,-(intBitsToFloat(uf_remappedPS[3].x) / wresX )) + R0f.x); // Original Implementation divided x -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-(intBitsToFloat(uf_remappedPS[3].y) / wresY )) + R0f.y); // Original Implementation divided y -} -if( activeMaskStackC[2] == true ) { -R0f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R1f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127f.x = R0f.w + R1f.w; -R127f.x /= 2.0; -PV0f.x = R127f.x; -R127f.y = R0f.z + R1f.z; -R127f.y /= 2.0; -PV0f.y = R127f.y; -R127f.z = R0f.y + R1f.y; -R127f.z /= 2.0; -PV0f.z = R127f.z; -R127f.w = R0f.x + R1f.x; -R127f.w /= 2.0; -PV0f.w = R127f.w; -// 1 -PV1f.x = R2f.w + -(PV0f.x); -PV1f.y = R2f.z + -(PV0f.y); -PV1f.z = R2f.y + -(PV0f.z); -PV1f.w = R2f.x + -(PV0f.w); -// 2 -R2f.x = (PV1f.w * intBitsToFloat(0x3eb33333) + R127f.w); -R2f.y = (PV1f.z * intBitsToFloat(0x3eb33333) + R127f.z); -R2f.z = (PV1f.y * intBitsToFloat(0x3eb33333) + R127f.y); -R2f.w = (PV1f.x * intBitsToFloat(0x3eb33333) + R127f.x); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} -#endif - -#if (preset == 2) // FXAA -//-----------------------------settings-------------------------------------// - -#define Subpix $subPix //[0.000 to 1.000] Choose the amount of sub-pixel aliasing removal. -#define EdgeThreshold $edgeThreshold //[0.000 to 1.000] Edge detection threshold. The minimum amount of local contrast required to apply algorithm. -#define EdgeThresholdMin $edgeThresholdMin //[0.000 to 1.000] Darkness threshold. Trims the algorithm from processing darks. - -//--------------------------------------------------------------------------// - -#define FXAA_PC 1 -#define FXAA_GLSL_130 1 -#define FXAA_QUALITY_PRESET 14 - -#define FXAA_GREEN_AS_LUMA 1 -#define FXAA_DISCARD 0 -#define FXAA_GATHER4_ALPHA 0 // Needs #extension GL_ARB_gpu_shader5 : enable - -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_GLSL_120 - #define FXAA_GLSL_120 0 -#endif -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_GLSL_130 - #define FXAA_GLSL_130 0 -#endif -/*--------------------------------------------------------------------------*/ - - -/*==========================================================================*/ -#ifndef FXAA_GREEN_AS_LUMA - // - // For those using non-linear color, - // and either not able to get luma in alpha, or not wanting to, - // this enables FXAA to run using green as a proxy for luma. - // So with this enabled, no need to pack luma in alpha. - // - // This will turn off AA on anything which lacks some amount of green. - // Pure red and blue or combination of only R and B, will get no AA. - // - // Might want to lower the settings for both, - // fxaaConsoleEdgeThresholdMin - // fxaaQualityEdgeThresholdMin - // In order to insure AA does not get turned off on colors - // which contain a minor amount of green. - // - // 1 = On. - // 0 = Off. - // - #define FXAA_GREEN_AS_LUMA 0 -#endif -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_EARLY_EXIT - // - // Controls algorithm's early exit path. - // On PS3 turning this ON adds 2 cycles to the shader. - // On 360 turning this OFF adds 10ths of a millisecond to the shader. - // Turning this off on console will result in a more blurry image. - // So this defaults to on. - // - // 1 = On. - // 0 = Off. - // - #define FXAA_EARLY_EXIT 1 -#endif -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_DISCARD - // - // Only valid for PC OpenGL currently. - // Probably will not work when FXAA_GREEN_AS_LUMA = 1. - // - // 1 = Use discard on pixels which don't need AA. - // For APIs which enable concurrent TEX+ROP from same surface. - // 0 = Return unchanged color on pixels which don't need AA. - // - #define FXAA_DISCARD 0 -#endif -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_FAST_PIXEL_OFFSET - // - // Used for GLSL 120 only. - // - // 1 = GL API supports fast pixel offsets - // 0 = do not use fast pixel offsets - // - #ifdef GL_EXT_gpu_shader4 - #define FXAA_FAST_PIXEL_OFFSET 1 - #endif - #ifdef GL_NV_gpu_shader5 - #define FXAA_FAST_PIXEL_OFFSET 1 - #endif - #ifdef GL_ARB_gpu_shader5 - #define FXAA_FAST_PIXEL_OFFSET 1 - #endif - #ifndef FXAA_FAST_PIXEL_OFFSET - #define FXAA_FAST_PIXEL_OFFSET 0 - #endif -#endif -/*--------------------------------------------------------------------------*/ -#ifndef FXAA_GATHER4_ALPHA - // - // 1 = API supports gather4 on alpha channel. - // 0 = API does not support gather4 on alpha channel. - // - #if (FXAA_HLSL_5 == 1) - #define FXAA_GATHER4_ALPHA 1 - #endif - #ifdef GL_ARB_gpu_shader5 - #define FXAA_GATHER4_ALPHA 1 - #endif - #ifdef GL_NV_gpu_shader5 - #define FXAA_GATHER4_ALPHA 1 - #endif - #ifndef FXAA_GATHER4_ALPHA - #define FXAA_GATHER4_ALPHA 0 - #endif -#endif - - -/*============================================================================ - FXAA QUALITY - TUNING KNOBS ------------------------------------------------------------------------------- -NOTE the other tuning knobs are now in the shader function inputs! -============================================================================*/ -#ifndef FXAA_QUALITY_PRESET - // - // Choose the quality preset. - // This needs to be compiled into the shader as it effects code. - // Best option to include multiple presets is to - // in each shader define the preset, then include this file. - // - // OPTIONS - // ----------------------------------------------------------------------- - // 10 to 15 - default medium dither (10=fastest, 15=highest quality) - // 20 to 29 - less dither, more expensive (20=fastest, 29=highest quality) - // 39 - no dither, very expensive - // - // NOTES - // ----------------------------------------------------------------------- - // 12 = slightly faster then FXAA 3.9 and higher edge quality (default) - // 13 = about same speed as FXAA 3.9 and better than 12 - // 23 = closest to FXAA 3.9 visually and performance wise - // _ = the lowest digit is directly related to performance - // _ = the highest digit is directly related to style - // - #define FXAA_QUALITY_PRESET 12 -#endif - - -/*============================================================================ - - FXAA QUALITY - PRESETS - -============================================================================*/ - -/*============================================================================ - FXAA QUALITY - MEDIUM DITHER PRESETS -============================================================================*/ -#if (FXAA_QUALITY_PRESET == 10) - #define FXAA_QUALITY_PS 3 - #define FXAA_QUALITY_P0 1.5 - #define FXAA_QUALITY_P1 3.0 - #define FXAA_QUALITY_P2 12.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 11) - #define FXAA_QUALITY_PS 4 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 3.0 - #define FXAA_QUALITY_P3 12.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 12) - #define FXAA_QUALITY_PS 5 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 4.0 - #define FXAA_QUALITY_P4 12.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 13) - #define FXAA_QUALITY_PS 6 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 4.0 - #define FXAA_QUALITY_P5 12.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 14) - #define FXAA_QUALITY_PS 7 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 4.0 - #define FXAA_QUALITY_P6 12.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 15) - #define FXAA_QUALITY_PS 8 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 4.0 - #define FXAA_QUALITY_P7 12.0 -#endif - -/*============================================================================ - FXAA QUALITY - LOW DITHER PRESETS -============================================================================*/ -#if (FXAA_QUALITY_PRESET == 20) - #define FXAA_QUALITY_PS 3 - #define FXAA_QUALITY_P0 1.5 - #define FXAA_QUALITY_P1 2.0 - #define FXAA_QUALITY_P2 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 21) - #define FXAA_QUALITY_PS 4 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 22) - #define FXAA_QUALITY_PS 5 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 23) - #define FXAA_QUALITY_PS 6 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 24) - #define FXAA_QUALITY_PS 7 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 3.0 - #define FXAA_QUALITY_P6 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 25) - #define FXAA_QUALITY_PS 8 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 4.0 - #define FXAA_QUALITY_P7 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 26) - #define FXAA_QUALITY_PS 9 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 2.0 - #define FXAA_QUALITY_P7 4.0 - #define FXAA_QUALITY_P8 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 27) - #define FXAA_QUALITY_PS 10 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 2.0 - #define FXAA_QUALITY_P7 2.0 - #define FXAA_QUALITY_P8 4.0 - #define FXAA_QUALITY_P9 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 28) - #define FXAA_QUALITY_PS 11 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 2.0 - #define FXAA_QUALITY_P7 2.0 - #define FXAA_QUALITY_P8 2.0 - #define FXAA_QUALITY_P9 4.0 - #define FXAA_QUALITY_P10 8.0 -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_QUALITY_PRESET == 29) - #define FXAA_QUALITY_PS 12 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.5 - #define FXAA_QUALITY_P2 2.0 - #define FXAA_QUALITY_P3 2.0 - #define FXAA_QUALITY_P4 2.0 - #define FXAA_QUALITY_P5 2.0 - #define FXAA_QUALITY_P6 2.0 - #define FXAA_QUALITY_P7 2.0 - #define FXAA_QUALITY_P8 2.0 - #define FXAA_QUALITY_P9 2.0 - #define FXAA_QUALITY_P10 4.0 - #define FXAA_QUALITY_P11 8.0 -#endif - -/*============================================================================ - FXAA QUALITY - EXTREME QUALITY -============================================================================*/ -#if (FXAA_QUALITY_PRESET == 39) - #define FXAA_QUALITY_PS 12 - #define FXAA_QUALITY_P0 1.0 - #define FXAA_QUALITY_P1 1.0 - #define FXAA_QUALITY_P2 1.0 - #define FXAA_QUALITY_P3 1.0 - #define FXAA_QUALITY_P4 1.0 - #define FXAA_QUALITY_P5 1.5 - #define FXAA_QUALITY_P6 2.0 - #define FXAA_QUALITY_P7 2.0 - #define FXAA_QUALITY_P8 2.0 - #define FXAA_QUALITY_P9 2.0 - #define FXAA_QUALITY_P10 4.0 - #define FXAA_QUALITY_P11 8.0 -#endif - - - -/*============================================================================ - - API PORTING - -============================================================================*/ -#if (FXAA_GLSL_120 == 1) || (FXAA_GLSL_130 == 1) - #define FxaaBool bool - #define FxaaDiscard discard - #define FxaaFloat float - #define FxaaFloat2 vec2 - #define FxaaFloat3 vec3 - #define FxaaFloat4 vec4 - #define FxaaHalf float - #define FxaaHalf2 vec2 - #define FxaaHalf3 vec3 - #define FxaaHalf4 vec4 - #define FxaaInt2 ivec2 - #define FxaaSat(x) clamp(x, 0.0, 1.0) - #define FxaaTex sampler2D -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_GLSL_120 == 1) - // Requires, - // #version 120 - // And at least, - // #extension GL_EXT_gpu_shader4 : enable - // (or set FXAA_FAST_PIXEL_OFFSET 1 to work like DX9) - #define FxaaTexTop(t, p) texture2DLod(t, p, 0.0) - #if (FXAA_FAST_PIXEL_OFFSET == 1) - #define FxaaTexOff(t, p, o, r) texture2DLodOffset(t, p, 0.0, o) - #else - #define FxaaTexOff(t, p, o, r) texture2DLod(t, p + (o * r), 0.0) - #endif - #if (FXAA_GATHER4_ALPHA == 1) - // use #extension GL_ARB_gpu_shader5 : enable - #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) - #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) - #define FxaaTexGreen4(t, p) textureGather(t, p, 1) - #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) - #endif -#endif -/*--------------------------------------------------------------------------*/ -#if (FXAA_GLSL_130 == 1) - // Requires "#version 130" or better - #define FxaaTexTop(t, p) textureLod(t, p, 0.0) - #define FxaaTexOff(t, p, o, r) textureLodOffset(t, p, 0.0, o) - #if (FXAA_GATHER4_ALPHA == 1) - // use #extension GL_ARB_gpu_shader5 : enable - #define FxaaTexAlpha4(t, p) textureGather(t, p, 3) - #define FxaaTexOffAlpha4(t, p, o) textureGatherOffset(t, p, o, 3) - #define FxaaTexGreen4(t, p) textureGather(t, p, 1) - #define FxaaTexOffGreen4(t, p, o) textureGatherOffset(t, p, o, 1) - #endif -#endif -/*--------------------------------------------------------------------------*/ - - -/*============================================================================ - GREEN AS LUMA OPTION SUPPORT FUNCTION -============================================================================*/ -#if (FXAA_GREEN_AS_LUMA == 0) - FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.w; } -#else - FxaaFloat FxaaLuma(FxaaFloat4 rgba) { return rgba.y; } -#endif - - -/*============================================================================ - - FXAA3 QUALITY - PC - -============================================================================*/ -#if (FXAA_PC == 1) -/*--------------------------------------------------------------------------*/ -FxaaFloat4 FxaaPixelShader( - // - // Use noperspective interpolation here (turn off perspective interpolation). - // {xy} = center of pixel - FxaaFloat2 pos, - // - // Input color texture. - // {rgb_} = color in linear or perceptual color space - // if (FXAA_GREEN_AS_LUMA == 0) - // {___a} = luma in perceptual color space (not linear) - FxaaTex tex, - // - // Only used on FXAA Quality. - // This must be from a constant/uniform. - // {x_} = 1.0/screenWidthInPixels - // {_y} = 1.0/screenHeightInPixels - FxaaFloat2 fxaaQualityRcpFrame, - // - // Only used on FXAA Quality. - // This used to be the FXAA_QUALITY_SUBPIX define. - // It is here now to allow easier tuning. - // Choose the amount of sub-pixel aliasing removal. - // This can effect sharpness. - // 1.00 - upper limit (softer) - // 0.75 - default amount of filtering - // 0.50 - lower limit (sharper, less sub-pixel aliasing removal) - // 0.25 - almost off - // 0.00 - completely off - FxaaFloat fxaaQualitySubpix, - // - // Only used on FXAA Quality. - // This used to be the FXAA_QUALITY_EDGE_THRESHOLD define. - // It is here now to allow easier tuning. - // The minimum amount of local contrast required to apply algorithm. - // 0.333 - too little (faster) - // 0.250 - low quality - // 0.166 - default - // 0.125 - high quality - // 0.063 - overkill (slower) - FxaaFloat fxaaQualityEdgeThreshold, - // - // Only used on FXAA Quality. - // This used to be the FXAA_QUALITY_EDGE_THRESHOLD_MIN define. - // It is here now to allow easier tuning. - // Trims the algorithm from processing darks. - // 0.0833 - upper limit (default, the start of visible unfiltered edges) - // 0.0625 - high quality (faster) - // 0.0312 - visible limit (slower) - // Special notes when using FXAA_GREEN_AS_LUMA, - // Likely want to set this to zero. - // As colors that are mostly not-green - // will appear very dark in the green channel! - // Tune by looking at mostly non-green content, - // then start at zero and increase until aliasing is a problem. - FxaaFloat fxaaQualityEdgeThresholdMin -) { -/*--------------------------------------------------------------------------*/ - FxaaFloat2 posM; - posM.x = pos.x; - posM.y = pos.y; - #if (FXAA_GATHER4_ALPHA == 1) - #if (FXAA_DISCARD == 0) - FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); - #if (FXAA_GREEN_AS_LUMA == 0) - #define lumaM rgbyM.w - #else - #define lumaM rgbyM.y - #endif - #endif - #if (FXAA_GREEN_AS_LUMA == 0) - FxaaFloat4 luma4A = FxaaTexAlpha4(tex, posM); - FxaaFloat4 luma4B = FxaaTexOffAlpha4(tex, posM, FxaaInt2(-1, -1)); - #else - FxaaFloat4 luma4A = FxaaTexGreen4(tex, posM); - FxaaFloat4 luma4B = FxaaTexOffGreen4(tex, posM, FxaaInt2(-1, -1)); - #endif - #if (FXAA_DISCARD == 1) - #define lumaM luma4A.w - #endif - #define lumaE luma4A.z - #define lumaS luma4A.x - #define lumaSE luma4A.y - #define lumaNW luma4B.w - #define lumaN luma4B.z - #define lumaW luma4B.x - #else - FxaaFloat4 rgbyM = FxaaTexTop(tex, posM); - #if (FXAA_GREEN_AS_LUMA == 0) - #define lumaM rgbyM.w - #else - #define lumaM rgbyM.y - #endif - FxaaFloat lumaS = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0, 1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 0), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaN = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 0,-1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 0), fxaaQualityRcpFrame.xy)); - #endif -/*--------------------------------------------------------------------------*/ - FxaaFloat maxSM = max(lumaS, lumaM); - FxaaFloat minSM = min(lumaS, lumaM); - FxaaFloat maxESM = max(lumaE, maxSM); - FxaaFloat minESM = min(lumaE, minSM); - FxaaFloat maxWN = max(lumaN, lumaW); - FxaaFloat minWN = min(lumaN, lumaW); - FxaaFloat rangeMax = max(maxWN, maxESM); - FxaaFloat rangeMin = min(minWN, minESM); - FxaaFloat rangeMaxScaled = rangeMax * fxaaQualityEdgeThreshold; - FxaaFloat range = rangeMax - rangeMin; - FxaaFloat rangeMaxClamped = max(fxaaQualityEdgeThresholdMin, rangeMaxScaled); - FxaaBool earlyExit = range < rangeMaxClamped; -/*--------------------------------------------------------------------------*/ - if(earlyExit) - #if (FXAA_DISCARD == 1) - FxaaDiscard; - #else - return rgbyM; - #endif -/*--------------------------------------------------------------------------*/ - #if (FXAA_GATHER4_ALPHA == 0) - FxaaFloat lumaNW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1,-1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaSE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1, 1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2( 1,-1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); - #else - FxaaFloat lumaNE = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(1, -1), fxaaQualityRcpFrame.xy)); - FxaaFloat lumaSW = FxaaLuma(FxaaTexOff(tex, posM, FxaaInt2(-1, 1), fxaaQualityRcpFrame.xy)); - #endif -/*--------------------------------------------------------------------------*/ - FxaaFloat lumaNS = lumaN + lumaS; - FxaaFloat lumaWE = lumaW + lumaE; - FxaaFloat subpixRcpRange = 1.0/range; - FxaaFloat subpixNSWE = lumaNS + lumaWE; - FxaaFloat edgeHorz1 = (-2.0 * lumaM) + lumaNS; - FxaaFloat edgeVert1 = (-2.0 * lumaM) + lumaWE; -/*--------------------------------------------------------------------------*/ - FxaaFloat lumaNESE = lumaNE + lumaSE; - FxaaFloat lumaNWNE = lumaNW + lumaNE; - FxaaFloat edgeHorz2 = (-2.0 * lumaE) + lumaNESE; - FxaaFloat edgeVert2 = (-2.0 * lumaN) + lumaNWNE; -/*--------------------------------------------------------------------------*/ - FxaaFloat lumaNWSW = lumaNW + lumaSW; - FxaaFloat lumaSWSE = lumaSW + lumaSE; - FxaaFloat edgeHorz4 = (abs(edgeHorz1) * 2.0) + abs(edgeHorz2); - FxaaFloat edgeVert4 = (abs(edgeVert1) * 2.0) + abs(edgeVert2); - FxaaFloat edgeHorz3 = (-2.0 * lumaW) + lumaNWSW; - FxaaFloat edgeVert3 = (-2.0 * lumaS) + lumaSWSE; - FxaaFloat edgeHorz = abs(edgeHorz3) + edgeHorz4; - FxaaFloat edgeVert = abs(edgeVert3) + edgeVert4; -/*--------------------------------------------------------------------------*/ - FxaaFloat subpixNWSWNESE = lumaNWSW + lumaNESE; - FxaaFloat lengthSign = fxaaQualityRcpFrame.x; - FxaaBool horzSpan = edgeHorz >= edgeVert; - FxaaFloat subpixA = subpixNSWE * 2.0 + subpixNWSWNESE; -/*--------------------------------------------------------------------------*/ - if(!horzSpan) lumaN = lumaW; - if(!horzSpan) lumaS = lumaE; - if(horzSpan) lengthSign = fxaaQualityRcpFrame.y; - FxaaFloat subpixB = (subpixA * (1.0/12.0)) - lumaM; -/*--------------------------------------------------------------------------*/ - FxaaFloat gradientN = lumaN - lumaM; - FxaaFloat gradientS = lumaS - lumaM; - FxaaFloat lumaNN = lumaN + lumaM; - FxaaFloat lumaSS = lumaS + lumaM; - FxaaBool pairN = abs(gradientN) >= abs(gradientS); - FxaaFloat gradient = max(abs(gradientN), abs(gradientS)); - if(pairN) lengthSign = -lengthSign; - FxaaFloat subpixC = FxaaSat(abs(subpixB) * subpixRcpRange); -/*--------------------------------------------------------------------------*/ - FxaaFloat2 posB; - posB.x = posM.x; - posB.y = posM.y; - FxaaFloat2 offNP; - offNP.x = (!horzSpan) ? 0.0 : fxaaQualityRcpFrame.x; - offNP.y = ( horzSpan) ? 0.0 : fxaaQualityRcpFrame.y; - if(!horzSpan) posB.x += lengthSign * 0.5; - if( horzSpan) posB.y += lengthSign * 0.5; -/*--------------------------------------------------------------------------*/ - FxaaFloat2 posN; - posN.x = posB.x - offNP.x * FXAA_QUALITY_P0; - posN.y = posB.y - offNP.y * FXAA_QUALITY_P0; - FxaaFloat2 posP; - posP.x = posB.x + offNP.x * FXAA_QUALITY_P0; - posP.y = posB.y + offNP.y * FXAA_QUALITY_P0; - FxaaFloat subpixD = ((-2.0)*subpixC) + 3.0; - FxaaFloat lumaEndN = FxaaLuma(FxaaTexTop(tex, posN)); - FxaaFloat subpixE = subpixC * subpixC; - FxaaFloat lumaEndP = FxaaLuma(FxaaTexTop(tex, posP)); -/*--------------------------------------------------------------------------*/ - if(!pairN) lumaNN = lumaSS; - FxaaFloat gradientScaled = gradient * 1.0/4.0; - FxaaFloat lumaMM = lumaM - lumaNN * 0.5; - FxaaFloat subpixF = subpixD * subpixE; - FxaaBool lumaMLTZero = lumaMM < 0.0; -/*--------------------------------------------------------------------------*/ - lumaEndN -= lumaNN * 0.5; - lumaEndP -= lumaNN * 0.5; - FxaaBool doneN = abs(lumaEndN) >= gradientScaled; - FxaaBool doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P1; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P1; - FxaaBool doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P1; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P1; -/*--------------------------------------------------------------------------*/ - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P2; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P2; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P2; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P2; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 3) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P3; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P3; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P3; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P3; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 4) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P4; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P4; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P4; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P4; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 5) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P5; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P5; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P5; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P5; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 6) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P6; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P6; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P6; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P6; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 7) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P7; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P7; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P7; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P7; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 8) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P8; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P8; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P8; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P8; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 9) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P9; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P9; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P9; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P9; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 10) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P10; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P10; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P10; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P10; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 11) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P11; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P11; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P11; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P11; -/*--------------------------------------------------------------------------*/ - #if (FXAA_QUALITY_PS > 12) - if(doneNP) { - if(!doneN) lumaEndN = FxaaLuma(FxaaTexTop(tex, posN.xy)); - if(!doneP) lumaEndP = FxaaLuma(FxaaTexTop(tex, posP.xy)); - if(!doneN) lumaEndN = lumaEndN - lumaNN * 0.5; - if(!doneP) lumaEndP = lumaEndP - lumaNN * 0.5; - doneN = abs(lumaEndN) >= gradientScaled; - doneP = abs(lumaEndP) >= gradientScaled; - if(!doneN) posN.x -= offNP.x * FXAA_QUALITY_P12; - if(!doneN) posN.y -= offNP.y * FXAA_QUALITY_P12; - doneNP = (!doneN) || (!doneP); - if(!doneP) posP.x += offNP.x * FXAA_QUALITY_P12; - if(!doneP) posP.y += offNP.y * FXAA_QUALITY_P12; -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } - #endif -/*--------------------------------------------------------------------------*/ - } -/*--------------------------------------------------------------------------*/ - FxaaFloat dstN = posM.x - posN.x; - FxaaFloat dstP = posP.x - posM.x; - if(!horzSpan) dstN = posM.y - posN.y; - if(!horzSpan) dstP = posP.y - posM.y; -/*--------------------------------------------------------------------------*/ - FxaaBool goodSpanN = (lumaEndN < 0.0) != lumaMLTZero; - FxaaFloat spanLength = (dstP + dstN); - FxaaBool goodSpanP = (lumaEndP < 0.0) != lumaMLTZero; - FxaaFloat spanLengthRcp = 1.0/spanLength; -/*--------------------------------------------------------------------------*/ - FxaaBool directionN = dstN < dstP; - FxaaFloat dst = min(dstN, dstP); - FxaaBool goodSpan = directionN ? goodSpanN : goodSpanP; - FxaaFloat subpixG = subpixF * subpixF; - FxaaFloat pixelOffset = (dst * (-spanLengthRcp)) + 0.5; - FxaaFloat subpixH = subpixG * fxaaQualitySubpix; -/*--------------------------------------------------------------------------*/ - FxaaFloat pixelOffsetGood = goodSpan ? pixelOffset : 0.0; - FxaaFloat pixelOffsetSubpix = max(pixelOffsetGood, subpixH); - if(!horzSpan) posM.x += pixelOffsetSubpix * lengthSign; - if( horzSpan) posM.y += pixelOffsetSubpix * lengthSign; - #if (FXAA_DISCARD == 1) - return FxaaTexTop(tex, posM); - #else - return FxaaFloat4(FxaaTexTop(tex, posM).xyz, lumaM); - #endif -} -/*==========================================================================*/ -#endif - -//---------------------------------------------------------------------------------- -// File: es3-kepler\FXAA\assets\shaders/FXAA_Default.frag -// SDK Version: v3.00 -// Email: gameworks@nvidia.com -// Site: http://developer.nvidia.com/ -// -// Copyright (c) 2014-2015, NVIDIA CORPORATION. All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of NVIDIA CORPORATION nor the names of its -// contributors may be used to endorse or promote products derived -// from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY -// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -// PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR -// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -//---------------------------------------------------------------------------------- -//#version 100 - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; - - -ivec2 resolution = textureSize(textureUnitPS0,0); // Retrieve Texture Dimensions in float data type so we dont need to convert - -precision highp float; - -vec2 RcpFrame = vec2(1.0 / float(resolution.x), 1.0 / float(resolution.y)); -void main() -{ -passPixelColor0 = FxaaPixelShader(passParameterSem2.xy, textureUnitPS0, RcpFrame, Subpix, EdgeThreshold, EdgeThresholdMin); -} - -#endif diff --git a/Enhancements/BreathOfTheWild_AntiAliasing/rules.txt b/Enhancements/BreathOfTheWild_AntiAliasing/rules.txt deleted file mode 100644 index 6a700d95..00000000 --- a/Enhancements/BreathOfTheWild_AntiAliasing/rules.txt +++ /dev/null @@ -1,80 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Anti-Aliasing -path = "The Legend of Zelda: Breath of the Wild/Graphics/Anti-Aliasing" -description = Enables or Disables Native Botw Anti-Aliasing. Also includes an alternative FXAA implementation. Check the rules.txt of this pack for info about the individual settings. Made by Skalfate. -version = 4 - -[Preset] -name = Alternative FXAA (NVIDIA's implementation) -$preset:int = 2 -# Customize these 3 values -$subPix:int = 1.0 -$edgeThreshold:int = 0.125 -$edgeThresholdMin:int = 0.0156 - -# Not used for NVIDIA's FXAA, do not touch. -$inventorySharper:int = 0.0 # Ignore -$inventoryBlurrier:int = 0.0 # Ignore -$worldSharper:int = 0.0 # Ignore -$worldBlurrier:int = 0.0 # Ignore - -[Preset] -name = Enable Native AA -$preset:int = 1 -# Customize these 4 values below -$inventorySharper:int = 0.0 -$inventoryBlurrier:int = 0.0 -$worldSharper:int = 0.0 -$worldBlurrier:int = 0.0 - -# Not used for Native AA, do not touch. -$subPix:int = 0.75 # Ignore -$edgeThreshold:int = 0.166 # Ignore -$edgeThresholdMin:int = 0.0312 # Ignore - - -[Preset] -name = Disable Native AA -$preset:int = 0 -# Disables all anti-aliasing, doesn't have any customizations - -$inventorySharper:int = 0.0 # Ignore -$inventoryBlurrier:int = 0.0 # Ignore -$worldSharper:int = 0.0 # Ignore -$worldBlurrier:int = 0.0 # Ignore -$subPix:int = 0.75 # Ignore -$edgeThreshold:int = 0.166 # Ignore -$edgeThresholdMin:int = 0.0312 # Ignore - - -# Adjust native AA implmentation - Only applies to Enabled preset -# --- keep one of the varaibles at 0 while adjusting the other one -# Sharper : Values - [0.0 - 1.0] - Recommended to Raise in increments of 0.1 -# Blurrier : Values - [1.0 - 0.0] - Recommended to Lower in decrements of 0.1 - -# Subpix: -# Choose the amount of sub-pixel aliasing removal. -# This affects how sharp or smooth you want the image to be. -# 1.00 - upper limit (softer) -# 0.75 - default amount of filtering -# 0.50 - lower limit (sharper, less sub-pixel aliasing removal) -# 0.25 - almost off -# 0.00 - completely off - -# EdgeThreshold: -# The minimum amount of local contrast required to apply algorithm. -# 0.333 - too little (faster) -# 0.250 - low quality -# 0.166 - default -# 0.125 - high quality -# 0.063 - overkill (slower) - -# EdgeThresholdMin: -# Trims the algorithm from processing darks. -# 0.0833 - upper limit (default, the start of visible unfiltered edges) -# 0.0625 - high quality (faster) -# 0.0312 - visible limit (slower) - -# Credit: Kiri, NAVras -# Credit: SkalFate for V3 import. diff --git a/Enhancements/BreathOfTheWild_Clarity/37040a485a29d54e_00000000000003c9_ps.txt b/Enhancements/BreathOfTheWild_Clarity/37040a485a29d54e_00000000000003c9_ps.txt deleted file mode 100644 index 20be970c..00000000 --- a/Enhancements/BreathOfTheWild_Clarity/37040a485a29d54e_00000000000003c9_ps.txt +++ /dev/null @@ -1,1745 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 37040a485a29d54e - -//########################################################## - -// Being below game update version 1.4.0 will give you double-vision with recent graphic packs. - -// Clarity GFX -// Credit to Jamie for main coding. -// Credit to Kiri coding & Reshade logic. -// Credit to Crementif for additional assistance. -// Credit to all other creators for their time in making alternative presets. - -// Shader dumped from Cemu 1.11.2 from BotW 1.4.0 -// Added Cemu 1.13.x Preset support -// v 2.3 Final - -//########################################################## - -#define Preset $preset - - // User Defined Preset 0 - // Bruz Preset 1 - // BSOD Gaming Preset 2 - // Jamie Preset 3 - // Contrasty Preset 4 - // The Complaining Gamer Preset 5 - // Filmic Preset Preset 6 - // CellHunter Preset 7 - // Serfrost Preset (Bright Display) 8 - // Serfrost Preset (Dim Display) 9 - // Serfrost Preset (Default) 10 - // ViskClarity Preset 11 - // Survival of the Wild Preset (Warmer) 12 - // Survival of the Wild Preset (Colder) 13 - // t3nka Neutral+ 14 - -//########################################################## - -#if (Preset == 0) - -// User Defined, values to change are below. End before main presets. - -//########################################################## - -#define adjust_bloom 1 // 0: disable, 1: enable. - -//BloomFactor -const float bloomFactor = 0.020; // Default is 0.020 (rough estimate based on Switch) - -#define HDRpassing 0 // 0: disable, 1: enable. - -//Fake High Dynamic Range. -const float HDRPower = 1.00; // 0.0 to 8.0 Default 1.30. -const float radius1 = 1.00; // 0.0 to 8.0 Default 0.793 -const float radius2 = 0.80; // 0.0 to 8.0 Default 0.87 "Raising this seems to make the effect stronger and also brighter." - -#define lumapassing 0 // 0: disable, 1: enable. - -//LumaShapening -const float sharp_strength = 0.35; //[0.10 to 3.00] Strength of the sharpening Default is 0.65 -const float sharp_clamp = 0.85; //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 - -//Advanced sharpening settings -const float offset_bias = 1.0; //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. - -#define Tone_map 0 - - // 0: disable, -1 to 9: enable. - // -1: disable, loss of bright detail/color but keep [0,1] intact - // 0: (Wii U) BotW original - // Reshade ToneMap Option 1 - // linearToneMapping Option 2 - // simpleReinhardToneMapping Option 3 - // lumaBasedReinhardToneMapping Option 4 - // whitePreservingLumaBasedReinhardToneMapping Option 5 - // RomBinDaHouseToneMapping Option 6 - // filmicToneMapping Option 7 - // Uncharted2ToneMapping Option 8 - // ACES Filmic Option 9 - // Reshade ToneMap Controls / "Contrasty" Parameters - -const float Exposure = 1.17; // [0.0, 1.0+] Adjust exposure -const float Bleach = 0.4; // "More bleach means more contrasted and less colorful image" min -0.5 max 1.0 Default 0.0 -const float Gamma = 1.00; // "Adjust midtones. 1.000 is neutral. This setting does exactly the same as the one in Lift Gamma Gain, only with less control." -const float defog = 0.00; // Default is 0.0 //How much of the overall color you want removed form the values of FogColor. -vec3 FogColor = vec3(1.0, 1.0, 1.0); // Color you want to Add or Remove 0.25 would add .25 percent of that color 1.25 would remove .25 percent of the color." -const float sat = 0.000; // "Adjust saturation" min -1.0 max 1.0 Default 0.0 -const float crushContrast = 0.000; // 0.0 is neutral. Use small increments, loss of shadow detail - -#define post_process 0 - -//----------------"BotW original" vibrance adjust-------------// -const float satFactor = 0.25; // 0.18 is neutral. Experimental, adjust native saturation -//------------------------------------------------------------// - -#define blacknwhitepass 0 // 0: disable, 1: enable. -// Levels Control -const int BlackPoint = 16; // [0, 255] The black point is the new black - literally. Everything darker than this will become completely black -const int WhitePoint = 235; // [0, 255] The new white point. Everything brighter than this becomes completely white - -#define lggpass 0 // 0: disable, 1: enable. -//Lift Gamma Gain -vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); // [0.000 to 2.000] Adjust shadows for Red, Green and Blue. -vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); // [0.000 to 2.000] Adjust midtones for Red, Green and Blue -vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); // [0.000 to 2.000] Adjust highlights for Red, Green and Blue - // Note that a value of 1.0 is a neutral setting that leave the color unchanged. - -#define vibpass 0 // 0: disable, 1: enable. -//VibrancePass -const float Vibrance = 0.150; // Default [0.150] "Intelligently saturates (or desaturates if you use negative values) the pixels depending on their original saturation." -vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); // "A per channel multiplier to the Vibrance strength so you can give more boost to certain colors over others."; - -#define Tech 0 // 0: disable, 1: enable. -//Technicolor -const float Power = 4.0; // Min 0.0 Max 8.0 Default 4.0 -vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); -float Strength = 0.20; // Min 0.0 Max 1.0 Default 0.4 - -#define Techine 0 // 0: disable, 1: enable. -//Technicolor2 -const float Technicolor2_Red_Strength = 0.02; // "Higher means darker and more intense colors." Default 0.2 -const float Technicolor2_Green_Strength = 0.02; // "Higher means darker and more intense colors." Default 0.2 -const float Technicolor2_Blue_Strength = 0.02; // "Higher means darker and more intense colors." Default 0.2 -const float Technicolor2_Brightness = 1.00; // "Higher means brighter image." min 0.5 max 1.5 Default 1.0 -const float Technicolor2_Strength = 1.00; // [Default is 1.0] -const float Technicolor2_Saturation = 1.00; // Default is 1.0 min 0.0 max 1.5 "Additional saturation control since this effect tends to oversaturate the image." - -#define cmatrix 0 -//Color Matrix -vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); -vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); -vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); -float CM_Strength = 1.0; - -//Curves Contrast -#define CurvesPss 0 // 0: disable, 1: enable. -const float Contrast = 0.65; // Default 0.65 min -1.0 max = 1.0 "The amount of contrast you want." - -#define Filmicpass 0 // 0: disable, 1: enable. -//Filmic Pass -const float Filmic_Contrast = 1.0; // Default 1.0 min 0.5 max 2.0 -const float Filmic_Bleach = 0.0; // "More bleach means more contrasted and less colorful image" min -0.5 max 1.0 Default 0.0 -const float Saturation = -0.15; // min -1.0 max 1.0 Default -0.15 - -const float Filmic_Strength = 0.85; // "Strength of the color curve altering"; min 0.0 max 1.5 Default 0.85 -const float Fade = 0.4; // "Decreases contrast to imitate faded image" min 0.0 max 0.6 Default 0.4 -const float Linearization = 0.5; // min 0.5 max 2.0 Default 0.5 - -const float BaseCurve = 1.5; // min 0.0 max 2.0 Default 1.5 -const float BaseGamma = 1.00; // min 0.7 max 2.0 Default 1.0 -const float EffectGamma = 0.68; // min 0.0 max 2.0 Default 0.68 - -#define dpxpass 0 -//DPX -vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); -vec3 RGB_C = vec3(0.36, 0.36, 0.34); - -float DPX_Contrast = 0.1; -float DPX_Saturation = 3.0; -float Colorfulness = 2.5; - -float DPX_Strength = 0.20; - -//########################################################### - -//Do not edit under this line, unless explicitly desired. Keep backups! - -//########################################################### - -//Presets - -#elif (Preset == 1) //Bruz - - #define adjust_bloom 1 - const float bloomFactor = 0.30; - #define HDRpassing 0 - float HDRPower = 1.3; - float radius1 = 0.795; - float radius2 = 0.85; - #define lumapassing 0 - const float sharp_strength = 0.45; - const float sharp_clamp = 0.085; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.4; - const float Gamma = 0.9; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 1 - const float satFactor = 0.25; - #define blacknwhitepass 1 - const int BlackPoint = 0; - const int WhitePoint = 255; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 0 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 1 - const float Power = 8.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.3; - #define Techine 1 - float Technicolor2_Red_Strength = 0.05; - float Technicolor2_Green_Strength = 0.02; - float Technicolor2_Blue_Strength = 0.12; - float Technicolor2_Brightness = 0.4; - float Technicolor2_Strength = 3.0; - float Technicolor2_Saturation = 1.0; - #define cmatrix 7 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.65; - #define Filmicpass 1 - const float Filmic_Strength = 0.60; - const float Filmic_Contrast = 1.03; - const float Fade = 0.0; - const float Linearization = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.25; - const float BaseCurve = 1.5; - const float BaseGamma = 1.0; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#elif (Preset == 2) //BSoD Gaming - - #define adjust_bloom 1 - const float bloomFactor = 0.010; - #define HDRpassing 1 - const float HDRPower = 1.085; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.25; - const float sharp_clamp = 0.085; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 0.6; - const float Bleach = 0.3; - const float Gamma = 1.00; - const float defog = 0.004; - vec3 FogColor = vec3(1.0, 1.5, 1.7); - const float sat = 0.050; - const float crushContrast = 0.000; - #define post_process 0 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 8; - const int WhitePoint = 235; - #define lggpass 1 - vec3 RGB_Lift = vec3(0.994, 0.994, 0.994); - vec3 RGB_Gamma = vec3(1.0, 0.990, 1.0); - vec3 RGB_Gain = vec3(1.0, 0.990, 1.00); - #define vibpass 1 - const float Vibrance = 0.113; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 0 - const float Technicolor2_Red_Strength = 0.000; - const float Technicolor2_Green_Strength = 0.000; - const float Technicolor2_Blue_Strength = 0.000; - const float Technicolor2_Brightness = 1.0; - const float Technicolor2_Strength = 0.40; - const float Technicolor2_Saturation = 0.70; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.65; - #define Filmicpass 1 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.85; - const float Fade = 0.4; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 0.7; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#elif (Preset == 3) //Jamie - - #define adjust_bloom 1 - const float bloomFactor = 0.020; - #define HDRpassing 1 - const float HDRPower = 1.00; - const float radius1 = 1.00; - const float radius2 = 0.80; - #define lumapassing 1 - const float sharp_strength = 0.35; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.4; - const float Gamma = 1.00; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 1 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 235; - #define lggpass 1 - vec3 RGB_Lift = vec3(0.980, 0.980, 0.980); - vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 0 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 0 - const float Technicolor2_Red_Strength = 0.02; - const float Technicolor2_Green_Strength = 0.02; - const float Technicolor2_Blue_Strength = 0.02; - const float Technicolor2_Brightness = 1.00; - const float Technicolor2_Strength = 1.00; - const float Technicolor2_Saturation = 1.00; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.65; - #define Filmicpass 0 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.85; - const float Fade = 0.4; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 1.00; - const float EffectGamma = 0.68; - #define dpxpass 1 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 0.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.20; - -#elif (Preset == 4) //Contrasty - - #define adjust_bloom 1 - const float bloomFactor = 0.020; - #define HDRpassing 0 - const float HDRPower = 1.00; - const float radius1 = 1.00; - const float radius2 = 0.80; - #define lumapassing 0 - const float sharp_strength = 0.35; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 1 - const float Exposure = 1.17; - const float Bleach = 0.3; - const float Gamma = 0.810; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 1 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 235; - #define lggpass 0 - vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 0 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 0 - const float Technicolor2_Red_Strength = 0.02; - const float Technicolor2_Green_Strength = 0.02; - const float Technicolor2_Blue_Strength = 0.02; - const float Technicolor2_Brightness = 1.00; - const float Technicolor2_Strength = 1.00; - const float Technicolor2_Saturation = 1.00; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = 0.65; - #define Filmicpass 0 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.85; - const float Fade = 0.4; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 1.00; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#elif (Preset == 5) //The Complaining Gamer - - #define adjust_bloom 1 - const float bloomFactor = 0.33; - #define HDRpassing 1 - const float HDRPower = 1.020; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.25; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.4; - const float Gamma = 1.00; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 0 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 235; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gamma = vec3(0.600, 0.600, 0.600); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 1 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 1 - const float Technicolor2_Red_Strength = 0.000; - const float Technicolor2_Green_Strength = 0.000; - const float Technicolor2_Blue_Strength = 0.000; - const float Technicolor2_Brightness = 1.0; - const float Technicolor2_Strength = 0.40; - const float Technicolor2_Saturation = 0.51; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = 0.65; - #define Filmicpass 0 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.85; - const float Fade = 0.4; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 1.00; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#elif (Preset == 6) //Filmic - - #define adjust_bloom 1 - const float bloomFactor = 0.020; - #define HDRpassing 1 - const float HDRPower = 1.20; - const float radius1 = 1.00; - const float radius2 = 0.80; - #define lumapassing 1 - const float sharp_strength = 0.35; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.4; - const float Gamma = 1.00; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 1 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 235; - #define lggpass 0 - vec3 RGB_Lift = vec3(0.990, 0.990, 0.990); - vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 1 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 0 - const float Technicolor2_Red_Strength = 0.02; - const float Technicolor2_Green_Strength = 0.02; - const float Technicolor2_Blue_Strength = 0.02; - const float Technicolor2_Brightness = 1.00; - const float Technicolor2_Strength = 1.00; - const float Technicolor2_Saturation = 1.00; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = 0.65; - #define Filmicpass 1 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.85; - const float Fade = 0.4; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 1.00; - const float EffectGamma = 0.68; - #define dpxpass 1 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 2.0; - float Colorfulness = 1.5; - float DPX_Strength = 0.20; - -#elif (Preset == 7) //CellHunter - - #define adjust_bloom 1 - const float bloomFactor = 0.215; - #define HDRpassing 1 - const float HDRPower = 1.200; - const float radius1 = 1.050; - const float radius2 = 1.000; - #define lumapassing 0 - const float sharp_strength = 0.45; - const float sharp_clamp = 0.65; - const float offset_bias = 1.00; - #define Tone_map 0 - const float Exposure = 1.00; - const float Bleach = 0.0; - const float Gamma = 1.00; - const float defog = 0.003; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 0 - const float satFactor = 0.05; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 215; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gamma = vec3(1.000, 0.965, 1.010); - vec3 RGB_Gain = vec3(1.000, 0.975, 1.010); - #define vibpass 1 - const float Vibrance = 0.335; - vec3 VibranceRGBBalance = vec3(0.7, 0.9, 0.7); - #define Tech 0 - const float Power = 1.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.05; - #define Techine 1 - const float Technicolor2_Red_Strength = 0.10; - const float Technicolor2_Green_Strength = 0.15; - const float Technicolor2_Blue_Strength = 0.15; - const float Technicolor2_Brightness = 0.10; - const float Technicolor2_Strength = 1.00; - const float Technicolor2_Saturation = 0.80; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = 0.115; - #define Filmicpass 1 - const float Filmic_Contrast = 1.00; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float Filmic_Strength = 0.60; - const float Fade = 0.05; - const float Linearization = 0.7; - const float BaseCurve = 0.7; - const float BaseGamma = 1.00; - const float EffectGamma = 1.75; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#elif (Preset == 8) //Serfrost (Bright Display) - - #define adjust_bloom 1 - const float bloomFactor = 0.40; - #define HDRpassing 1 - const float HDRPower = 1.20; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 0 - const float sharp_strength = 0.45; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.0; - const float Gamma = 0.98; - const float defog = 1.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.00; - const float crushContrast = 0.00; - #define post_process 0 - const float satFactor = 0.07; - #define blacknwhitepass 1 - const int BlackPoint = 2; - const int WhitePoint = 300; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.027, 1.027, 1.027); - vec3 RGB_Gamma = vec3(0.83, 0.83, 0.83); - vec3 RGB_Gain = vec3(1.10, 1.10, 1.10); - #define vibpass 1 - const float Vibrance = 0.15; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 5.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.10; - #define Techine 1 - float Technicolor2_Red_Strength = -0.09; - float Technicolor2_Green_Strength = -0.09; - float Technicolor2_Blue_Strength = -0.00; - float Technicolor2_Brightness = 0.4; - float Technicolor2_Strength = 1.2; - float Technicolor2_Saturation = 1.1; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.0; - #define Filmicpass 1 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.17; - const float Filmic_Strength = 0.48; - const float Fade = 0.08; - const float Linearization = 1.0; - const float BaseCurve = 1.0; - const float BaseGamma = 1.0; - const float EffectGamma = 1.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.20; - -#elif (Preset == 9) //Serfrost (Dim Display) - - #define adjust_bloom 1 - const float bloomFactor = 0.7; - #define HDRpassing 1 - const float HDRPower = 1.20; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 0 - const float sharp_strength = 0.45; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.0; - const float Gamma = 1.05; - const float defog = 1.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.0; - const float crushContrast = 0.00; - #define post_process 0 - const float satFactor = 0.07; - #define blacknwhitepass 1 - const int BlackPoint = 1; - const int WhitePoint = 235; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.027, 1.027, 1.027); - vec3 RGB_Gamma = vec3(0.83, 0.83, 0.83); - vec3 RGB_Gain = vec3(1.10, 1.10, 1.10); - #define vibpass 1 - const float Vibrance = 0.45; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 5.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.10; - #define Techine 1 - float Technicolor2_Red_Strength = -0.09; - float Technicolor2_Green_Strength = -0.09; - float Technicolor2_Blue_Strength = -0.00; - float Technicolor2_Brightness = 0.4; - float Technicolor2_Strength = 1.2; - float Technicolor2_Saturation = 1.15; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.0; - #define Filmicpass 1 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.17; - const float Filmic_Strength = 0.48; - const float Fade = 0.08; - const float Linearization = 1.0; - const float BaseCurve = 1.0; - const float BaseGamma = 1.0; - const float EffectGamma = 1.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.20; - -#elif (Preset == 10) //Serfrost (Other) - - #define adjust_bloom 1 - const float bloomFactor = 0.3; - #define HDRpassing 1 - const float HDRPower = 1.15; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.45; - const float sharp_clamp = 0.085; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.10; - const float Bleach = 0.1; - const float Gamma = 1.0; - const float defog = 0.0; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.0; - const float crushContrast = 0.00; - #define post_process 0 - const float satFactor = 0.07; - #define blacknwhitepass 1 - const int BlackPoint = 5; - const int WhitePoint = 210; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.027, 1.027, 1.027); - vec3 RGB_Gamma = vec3(0.83, 0.83, 0.83); - vec3 RGB_Gain = vec3(1.10, 1.10, 1.10); - #define vibpass 1 - const float Vibrance = 0.45; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.3); - #define Tech 1 - const float Power = 6.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.3; - #define Techine 1 - float Technicolor2_Red_Strength = -0.12; - float Technicolor2_Green_Strength = -0.25; - float Technicolor2_Blue_Strength = -0.15; - float Technicolor2_Brightness = 0.4; - float Technicolor2_Strength = 1.0; - float Technicolor2_Saturation = 0.90; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.5; - #define Filmicpass 1 - const float Filmic_Contrast = 1.03; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.35; - const float Filmic_Strength = 0.60; - const float Fade = 0.1; - const float Linearization = 1.0; - const float BaseCurve = 1.5; - const float BaseGamma = 1.0; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.20; - -#elif (Preset == 11) //ViskClarity - - #define adjust_bloom 1 - const float bloomFactor = 4.050; - #define HDRpassing 1 - const float HDRPower = 1.3; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.50; - const float sharp_clamp = 0.085; - const float offset_bias = 0.0; - #define Tone_map 8 - const float Exposure = 0.6; - const float Bleach = 0.2; - const float Gamma = 1.00; - const float defog = 0.004; - vec3 FogColor = vec3(1.0, 1.5, 1.7); - const float sat = 0.050; - const float crushContrast = 0.000; - #define post_process 0 - const float satFactor = 0; - #define blacknwhitepass 1 - const int BlackPoint = 2; - const int WhitePoint = 285; - #define lggpass 1 - vec3 RGB_Lift = vec3(0.994, 0.994, 0.994); - vec3 RGB_Gamma = vec3(1.0, 0.990, 1.0); - vec3 RGB_Gain = vec3(1.0, 0.990, 1.00); - #define vibpass 1 - const float Vibrance = 0.500; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 1 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 1 - const float Technicolor2_Red_Strength = 0.000; - const float Technicolor2_Green_Strength = 0.000; - const float Technicolor2_Blue_Strength = 0.000; - const float Technicolor2_Brightness = 0.0; - const float Technicolor2_Strength = 0.40; - const float Technicolor2_Saturation = 1.00; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = -0.35; - #define Filmicpass 1 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = 0; - const float Filmic_Strength = 0.85; - const float Fade = 0.1; - const float Linearization = 0.5; - const float BaseCurve = 1.5; - const float BaseGamma = 0.7; - const float EffectGamma = 0.65; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 1.5; - float DPX_Saturation = 0.8; - float Colorfulness = 0.8; - float DPX_Strength = 0.50; - -#elif (Preset == 12) //Survival of the Wild (Warmer) - - #define adjust_bloom 1 - const float bloomFactor = 0.75; - #define HDRpassing 1 - const float HDRPower = 1.20; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.15; - const float sharp_clamp = 0.35; - const float offset_bias = 0.1; - #define Tone_map 0 - const float Exposure = 1.17; - const float Bleach = 0.0; - const float Gamma = 0.97; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.0; - const float crushContrast = 0.00; - #define post_process 0 - const float satFactor = 0.07; - #define blacknwhitepass 0 - const int BlackPoint = 0; - const int WhitePoint = 245; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.0, 1.0, 1.0); - vec3 RGB_Gamma = vec3(0.95, 0.95, 0.95); - vec3 RGB_Gain = vec3(1.0, 1.0, 1.0); - #define vibpass 1 - const float Vibrance = 3.0; - vec3 VibranceRGBBalance = vec3(0.102656, 0.050158, 0.102186); - #define Tech 0 - const float Power = 5.0; - vec3 RGBNegativeAmount = vec3(0.98, 0.98, 0.98); - float Strength = 0.10; - #define Techine 0 - float Technicolor2_Red_Strength = -0.10; - float Technicolor2_Green_Strength = -0.09; - float Technicolor2_Blue_Strength = 0.05; - float Technicolor2_Brightness = 0.5; - float Technicolor2_Strength = 1.2; - float Technicolor2_Saturation = 1.1; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.25; - #define Filmicpass 0 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.17; - const float Filmic_Strength = 0.48; - const float Fade = 0.08; - const float Linearization = 1.0; - const float BaseCurve = 1.0; - const float BaseGamma = 1.0; - const float EffectGamma = 1.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.5; - float DPX_Saturation = 3.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.10; - -#elif (Preset == 13) //Survival of the Wild (Colder) - - #define adjust_bloom 1 - const float bloomFactor = 0.75; - #define HDRpassing 0 - const float HDRPower = 1.20; - const float radius1 = 0.793; - const float radius2 = 0.87; - #define lumapassing 1 - const float sharp_strength = 0.22; - const float sharp_clamp = 0.35; - const float offset_bias = 0.05; - #define Tone_map 0 - const float Exposure = 1.17; - const float Bleach = 0.0; - const float Gamma = 0.97; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.0; - const float crushContrast = 0.00; - #define post_process 0 - const float satFactor = 0.07; - #define blacknwhitepass 0 - const int BlackPoint = 0; - const int WhitePoint = 245; - #define lggpass 1 - vec3 RGB_Lift = vec3(1.0, 1.0, 1.0); - vec3 RGB_Gamma = vec3(0.93, 0.93, 0.93); - vec3 RGB_Gain = vec3(1.0, 1.0, 1.0); - #define vibpass 1 - const float Vibrance = 2.0; - vec3 VibranceRGBBalance = vec3(0.142656, 0.000158, 0.172186); - #define Tech 0 - const float Power = 5.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.10; - #define Techine 1 - float Technicolor2_Red_Strength = -0.10; - float Technicolor2_Green_Strength = -0.09; - float Technicolor2_Blue_Strength = 0.05; - float Technicolor2_Brightness = 0.30; - float Technicolor2_Strength = 1.2; - float Technicolor2_Saturation = 1.1; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 1 - const float Contrast = 0.1; - #define Filmicpass 0 - const float Filmic_Contrast = 1.0; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.17; - const float Filmic_Strength = 0.48; - const float Fade = 0.08; - const float Linearization = 1.0; - const float BaseCurve = 1.0; - const float BaseGamma = 1.0; - const float EffectGamma = 1.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.5; - float DPX_Saturation = 3.0; - float Colorfulness = 1.0; - float DPX_Strength = 0.10; - -#elif (Preset == 14) //t3nka Neutral+ - - #define adjust_bloom 1 - const float bloomFactor = 0.30; - #define HDRpassing 1 - float HDRPower = 1.50; - float radius1 = 0.793; - float radius2 = 0.87; - #define lumapassing 0 - const float sharp_strength = 0.35; - const float sharp_clamp = 0.85; - const float offset_bias = 1.0; - #define Tone_map 8 - const float Exposure = 1.17; - const float Bleach = 0.4; - const float Gamma = 1.00; - const float defog = 0.00; - vec3 FogColor = vec3(1.0, 1.0, 1.0); - const float sat = 0.000; - const float crushContrast = 0.000; - #define post_process 1 - const float satFactor = 0.25; - #define blacknwhitepass 0 - const int BlackPoint = 16; - const int WhitePoint = 235; - #define lggpass 0 - vec3 RGB_Lift = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gamma = vec3(1.000, 1.000, 1.000); - vec3 RGB_Gain = vec3(1.000, 1.000, 1.000); - #define vibpass 0 - const float Vibrance = 0.150; - vec3 VibranceRGBBalance = vec3(1.0, 1.0, 1.0); - #define Tech 0 - const float Power = 4.0; - vec3 RGBNegativeAmount = vec3(0.88, 0.88, 0.88); - float Strength = 0.20; - #define Techine 0 - float Technicolor2_Red_Strength = 0.02; - float Technicolor2_Green_Strength = 0.02; - float Technicolor2_Blue_Strength = 0.02; - float Technicolor2_Brightness = 1.00; - float Technicolor2_Strength = 1.00; - float Technicolor2_Saturation = 1.00; - #define cmatrix 0 - vec3 ColorMatrix_Red = vec3(0.817, 0.183, 0.000); - vec3 ColorMatrix_Green = vec3(0.333, 0.667, 0.000); - vec3 ColorMatrix_Blue = vec3(0.000, 0.125, 0.875); - float CM_Strength = 1.0; - #define CurvesPss 0 - const float Contrast = 0.65; - #define Filmicpass 0 - const float Filmic_Strength = 0.85; - const float Filmic_Contrast = 1.00; - const float Fade = 0.4; - const float Linearization = 0.5; - const float Filmic_Bleach = 0.0; - const float Saturation = -0.15; - const float BaseCurve = 1.5; - const float BaseGamma = 1.0; - const float EffectGamma = 0.68; - #define dpxpass 0 - vec3 RGB_Curve = vec3(8.0, 8.0, 8.0); - vec3 RGB_C = vec3(0.36, 0.36, 0.34); - float DPX_Contrast = 0.1; - float DPX_Saturation = 3.0; - float Colorfulness = 2.5; - float DPX_Strength = 0.20; - -#endif - -//########################################################### - -//Never touch anything below this line unless you plan to break and fix things. - -//########################################################### - -// Start of shader inputs/outputs, predetermined by Cemu. Do not touch - -#ifdef VULKAN - #define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) - #define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) - #define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#else - #define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) - #define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) - #define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif - -// uniform vars -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ - uniform ivec4 uf_remappedPS[1]; - uniform vec4 uf_fragCoordScale; -}; -#else - uniform ivec4 uf_remappedPS[1]; - uniform vec2 uf_fragCoordScale; -#endif - -// textures -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; // Bloom -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; // HDR LumaShapening - -// pixel shader inputs -layout(location = 0) in vec4 passParameterSem0; - -// color outputs -layout(location = 0) out vec4 passPixelColor0; - -// End of shader inputs/outputs - -//ToneMapping - -vec3 linearToneMapping(vec3 color) -{ - float exposure = 1.; - color = clamp(exposure * color, 0., 1.); - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 simpleReinhardToneMapping(vec3 color) -{ - float exposure = 1.5; - color *= exposure / (1. + color / exposure); - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 lumaBasedReinhardToneMapping(vec3 color) -{ - float luma = dot(color, vec3(0.2126, 0.7152, 0.0722)); - float toneMappedLuma = luma / (1. + luma); - color *= toneMappedLuma / luma; - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 whitePreservingLumaBasedReinhardToneMapping(vec3 color) -{ - float white = 2.; - float luma = dot(color, vec3(0.2126, 0.7152, 0.0722)); - float toneMappedLuma = luma * (1. + luma / (white*white)) / (1. + luma); - color *= toneMappedLuma / luma; - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 RomBinDaHouseToneMapping(vec3 color) -{ - color = exp(-1.0 / (2.72*color + 0.15)); - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 filmicToneMapping(vec3 color) -{ - color = max(vec3(0.), color - vec3(0.004)); - color = (color * (6.2 * color + .5)) / (color * (6.2 * color + 1.7) + 0.06); - return color; -} - -vec3 Uncharted2ToneMapping(vec3 color) -{ - float A = 0.15; - float B = 0.50; - float C = 0.10; - float D = 0.20; - float E = 0.02; - float F = 0.30; - float W = 11.2; - float exposure = 2.; - color *= exposure; - color = ((color * (A * color + C * B) + D * E) / (color * (A * color + B) + D * F)) - E / F; - float white = ((W * (A * W + C * B) + D * E) / (W * (A * W + B) + D * F)) - E / F; - color /= white; - color = pow(color, vec3(1. / Gamma)); - return color; -} - -vec3 ReshadeToneMap(vec3 inputColor) { - vec3 color = inputColor; - color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog - color *= Exposure / (1.0 + color / Exposure); - color = pow(color, vec3(1. / Gamma)); // Gamma - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float lum = dot(coefLuma, color); - - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0f * color * lum; - vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0f - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - - color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - - return color; -} - -float getL601(vec3 rgb) { - return dot(rgb, vec3(0.2989, 0.5866, 0.1145)); -} - -float getL709(vec3 rgb) { - return dot(rgb, vec3(0.2126, 0.7152, 0.0722)); -} - -vec3 BotWToneMap(vec3 color) { - float Lumn = getL601(color); - vec4 exptm = 1.0 - exp(-vec4(color, Lumn)); - vec3 cpre = exptm.w / Lumn * color; - vec3 colorldr = mix(cpre, exptm.rgb, vec3(pow(exptm.w, 2.0)));//refine - return colorldr; -} -vec3 ACESFilm(vec3 color) { - color *= Exposure; - float Lumn = getL709(color); - vec4 tm = vec4(color, Lumn); - tm = (tm*(2.51*tm + 0.03)) / (tm*(2.43*tm + 0.59) + 0.14); // tonemap - vec3 cpre = tm.w / Lumn * color; - vec3 colorldr = mix(cpre, tm.rgb, vec3(pow(tm.w, 2.0)));//refine - return colorldr; -} - -//Curves - -vec3 CurvesPass(vec3 inputColor) { - vec3 colorInput = inputColor; - float Contrast_blend = Contrast * 1.5; - vec3 x = colorInput.rgb; - x = x - 0.5; - x = ( x / (0.5 + abs(x)) ) + 0.5; - vec3 color = x; - colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); - return colorInput; -} - -//TECHNICOLOR2 - -vec3 Technicolor2(vec3 inputColor) { - vec3 color = inputColor; - vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); - vec3 source = color; - vec3 temp = 1.0 - source; - vec3 target = temp.grg; - vec3 target2 = temp.bbr; - vec3 temp2 = source * target; - temp2 *= target2; - - temp = temp2 * Color_Strength; - temp2 *= Technicolor2_Brightness; - - target = temp.grg; - target2 = temp.bbr; - - temp = source - target; - temp += temp2; - temp2 = temp - target2; - - color = mix(source, temp2, Technicolor2_Strength); - - color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); - - return color; -} - -//Technicolor -vec3 TechnicolorPass(vec3 color) -{ - - const vec3 cyanfilter = vec3(0.0, 1.30, 1.0); - const vec3 magentafilter = vec3(1.0, 0.0, 1.05); - const vec3 yellowfilter = vec3(1.6, 1.6, 0.05); - const vec2 redorangefilter = vec2(1.05, 0.620); // RG_ - const vec2 greenfilter = vec2(0.30, 1.0); // RG_ - const vec2 magentafilter2 = magentafilter.rb; // R_B - - vec3 tcol = color.rgb; - - vec2 negative_mul_r = tcol.rg * (1.0 / (RGBNegativeAmount.r * Power)); - vec2 negative_mul_g = tcol.rg * (1.0 / (RGBNegativeAmount.g * Power)); - vec2 negative_mul_b = tcol.rb * (1.0 / (RGBNegativeAmount.b * Power)); - vec3 output_r = dot(redorangefilter, negative_mul_r).xxx + cyanfilter; - vec3 output_g = dot(greenfilter, negative_mul_g).xxx + magentafilter; - vec3 output_b = dot(magentafilter2, negative_mul_b).xxx + yellowfilter; - - return mix(tcol, output_r * output_g * output_b, Strength); -} - -//ColorMatrix -vec3 ColorMatrixPass(vec3 inputColor) -{ - vec3 color = inputColor; - - const mat3 ColorMatrix = mat3(ColorMatrix_Red, ColorMatrix_Green, ColorMatrix_Blue); - //color = mix(color, * (ColorMatrix, color), CM_Strength); - color *= mix(color, (ColorMatrix, color), CM_Strength); - return clamp(color, 0.0, 1.); -} - -//Contrasty - -vec3 BotWVibrance(vec3 color) { - float avg = (color.r + color.g + color.b) / 3.0; - float maxc = max(color.r, max(color.g, color.b)); - float w = 1.0 - pow(1.0 - 2.0 * avg, 2.0); - float weight = 1.0 + w * satFactor; - vec3 satcolor = mix(vec3(maxc), color, weight); - return satcolor; -} - -vec3 ReshadeVibrance(vec3 color) { - float max_color = max(color.r, max(color.g, color.b)); // Find the strongest color - float min_color = min(color.r, min(color.g, color.b)); // Find the weakest color - float luma = getL709(color); - float color_saturation = max_color - min_color; // The difference between the two is the saturation - vec3 coeffVibrance = VibranceRGBBalance * Vibrance; - color = mix(vec3(luma), color, 1.0 + (coeffVibrance * (1.0 - (sign(coeffVibrance) * color_saturation)))); - return color; -} - -vec3 Contrasty(vec3 fColour) { - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(Exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / Gamma)); - fColour = ReshadeVibrance(fColour); // reshade's identical, only a little stronger when at same setting - return fColour; -} - -//Levels - -vec3 LevelsPass(vec3 inputColor) { - float black_point_float = BlackPoint / 255.0; - float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same - - vec3 color = inputColor; - color = color * white_point_float - (black_point_float * white_point_float); - - return color; -} - -//FilmPass - -vec3 FilmPass(vec3 inputColor) { - vec3 B = inputColor.rgb; - vec3 G = B; - vec3 H = vec3(0.0); - - B = clamp(B, 0.0, 1.); - B = pow(vec3(B), vec3(Linearization)); - B = mix(H, B, Filmic_Contrast); - - vec3 LumCoeff = vec3(0.2126, 0.7152, 0.0722); - float A = dot(B.rgb, LumCoeff); - vec3 D = vec3(A); - - B = pow(B, 1.0 / vec3(BaseGamma)); - - float RedCurve = 1.0; - float GreenCurve = 1.0; - float BlueCurve = 1.0; - float a = RedCurve; - float b = GreenCurve; - float c = BlueCurve; - float d = BaseCurve; - - float y = 1.0 / (1.0 + exp(a / 2.0)); - float z = 1.0 / (1.0 + exp(b / 2.0)); - float w = 1.0 / (1.0 + exp(c / 2.0)); - float v = 1.0 / (1.0 + exp(d / 2.0)); - - vec3 C = B; - - D.r = (1.0 / (1.0 + exp(-a * (D.r - 0.5))) - y) / (1.0 - 2.0 * y); - D.g = (1.0 / (1.0 + exp(-b * (D.g - 0.5))) - z) / (1.0 - 2.0 * z); - D.b = (1.0 / (1.0 + exp(-c * (D.b - 0.5))) - w) / (1.0 - 2.0 * w); - - D = pow(D, 1.0 / vec3(EffectGamma)); - - vec3 Di = 1.0 - D; - - D = mix(D, Di, Filmic_Bleach); - float EffectGammaR = 1.0; - float EffectGammaG = 1.0; - float EffectGammaB = 1.0; - D.r = pow(abs(D.r), 1.0 / EffectGammaR); - D.g = pow(abs(D.g), 1.0 / EffectGammaG); - D.b = pow(abs(D.b), 1.0 / EffectGammaB); - - if (D.r < 0.5) - C.r = (2.0 * D.r - 1.0) * (B.r - B.r * B.r) + B.r; - else - C.r = (2.0 * D.r - 1.0) * (sqrt(B.r) - B.r) + B.r; - - if (D.g < 0.5) - C.g = (2.0 * D.g - 1.0) * (B.g - B.g * B.g) + B.g; - else - C.g = (2.0 * D.g - 1.0) * (sqrt(B.g) - B.g) + B.g; - - if (D.b < 0.5) - C.b = (2.0 * D.b - 1.0) * (B.b - B.b * B.b) + B.b; - else - C.b = (2.0 * D.b - 1.0) * (sqrt(B.b) - B.b) + B.b; - - vec3 F = mix(B, C, Filmic_Strength); - - F = (1.0 / (1.0 + exp(-d * (F - 0.5))) - v) / (1.0 - 2.0 * v); - - float r2R = 1.0 - Saturation; - float g2R = 0.0 + Saturation; - float b2R = 0.0 + Saturation; - - float r2G = 0.0 + Saturation; - float g2G = (1.0 - Fade) - Saturation; - float b2G = (0.0 + Fade) + Saturation; - - float r2B = 0.0 + Saturation; - float g2B = (0.0 + Fade) + Saturation; - float b2B = (1.0 - Fade) - Saturation; - - vec3 iF = F; - - F.r = (iF.r * r2R + iF.g * g2R + iF.b * b2R); - F.g = (iF.r * r2G + iF.g * g2G + iF.b * b2G); - F.b = (iF.r * r2B + iF.g * g2B + iF.b * b2B); - - float N = dot(F.rgb, LumCoeff); - vec3 Cn = F; - - if (N < 0.5) - Cn = (2.0 * N - 1.0) * (F - F * F) + F; - else - Cn = (2.0 * N - 1.0) * (sqrt(F) - F) + F; - - Cn = pow(max(Cn, 0), 1.0 / vec3(Linearization)); - - vec3 Fn = mix(B, Cn, Filmic_Strength); - return Fn; -} - -//DPX -const mat3 RGB = mat3( - 2.6714711726599600, -1.2672360578624100, -0.4109956021722270, - -1.0251070293466400, 1.9840911624108900, 0.0439502493584124, - 0.0610009456429445, -0.2236707508128630, 1.1590210416706100 -); -const mat3 XYZ = mat3( - 0.5003033835433160, 0.3380975732227390, 0.1645897795458570, - 0.2579688942747580, 0.6761952591447060, 0.0658358459823868, - 0.0234517888692628, 0.1126992737203000, 0.8668396731242010 -); -vec3 DPXPass(vec3 inputColor) -{ - vec3 color = inputColor; - - vec3 B = color; - B = B * (1.0 - DPX_Contrast) + (0.5 * DPX_Contrast); - vec3 Btemp = (1.0 / (1.0 + exp(RGB_Curve / 2.0))); - B = ((1.0 / (1.0 + exp(-RGB_Curve * (B - RGB_C)))) / (-2.0 * Btemp + 1.0)) + (-Btemp / (-2.0 * Btemp + 1.0)); - - float value = max(max(B.r, B.g), B.b); - vec3 Ztemp = B / value; - color = pow(abs(color), 1. / vec3(Colorfulness)); - - vec3 c0 = Ztemp * value; - c0 *= (XYZ, c0); - float luma = dot(c0, vec3(0.30, 0.59, 0.11)); - c0 = (1.0 - DPX_Saturation) * luma + DPX_Saturation * c0; - c0 *= (RGB, c0); - - return mix(color, c0, DPX_Strength); -} - -//Lift Gamma Gain - -vec3 LiftGammaGainPass(vec3 colorInput) -{ - // -- Get input -- - vec3 color = colorInput; - - // -- Lift -- - - color = color * (1.5 - 0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; - color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. - - // -- Gain -- - color *= RGB_Gain; - - // -- Gamma -- - color = pow(color, 1.0 / RGB_Gamma); //Gamma - - // -- Return output -- - return clamp(color, 0.0, 1.0); -} - -//VibrancePass -vec3 VibrancePass(vec3 color) { - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float luma = dot(coefLuma, color); - - float max_color = max(color.r, max(color.g, color.b)); // Find the strongest color - float min_color = min(color.r, min(color.g, color.b)); // Find the weakest color - - float color_saturation = max_color - min_color; // The difference between the two is the saturation - - // Extrapolate between luma and original by 1 + (1-saturation) - current - vec3 coeffVibrance = VibranceRGBBalance * Vibrance; - - color = mix(vec3(luma), color, 1.0 + (coeffVibrance * (1.0 - (sign(coeffVibrance) * color_saturation)))); - - return color; -} - -//LumaShapening - -#define px (1.0/1280.0*uf_fragCoordScale.x) -#define py (1.0/720.0*uf_fragCoordScale.y) -#define CoefLuma vec3(0.2126, 0.7152, 0.0722) - -float lumasharping(sampler2D tex, vec2 pos) { - vec4 colorInput = texture(tex, pos); - - vec3 ori = colorInput.rgb; - - // -- Combining the strength and luma multipliers -- - vec3 sharp_strength_luma = (CoefLuma * sharp_strength); - - // -- Gaussian filter -- - // [ .25, .50, .25] [ 1 , 2 , 1 ] - // [ .50, 1, .50] = [ 2 , 4 , 2 ] - // [ .25, .50, .25] [ 1 , 2 , 1 ] - - vec3 blur_ori = texture(tex, pos + vec2(px, -py) * 0.5 * offset_bias).rgb; // South East - blur_ori += texture(tex, pos + vec2(-px, -py) * 0.5 * offset_bias).rgb; // South West - blur_ori += texture(tex, pos + vec2(px, py) * 0.5 * offset_bias).rgb; // North East - blur_ori += texture(tex, pos + vec2(-px, py) * 0.5 * offset_bias).rgb; // North West - - blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches - - // -- Calculate the sharpening -- - vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image - - // -- Adjust strength of the sharpening and clamp it-- - vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp), 0.5); //Roll part of the clamp into the dot - - float sharp_luma = clamp((dot(vec4(sharp, 1.0), sharp_strength_luma_clamp)), 0.0, 1.0); //Calculate the luma, adjust the strength, scale up and clamp - sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down - - return sharp_luma; -} - -//Fake High Dynamic Range - -vec3 HDRPass(sampler2D tex, vec2 pos) { - vec3 color = texture(tex, pos).rgb; - - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(1.5, 1.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(0.0, -2.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(0.0, 2.5) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px, py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(2.5, 0.0) * radius1 * vec2(px, py)).rgb; - - bloom_sum1 *= 0.005; - - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(1.5, 1.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(0.0, -2.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(0.0, 2.5) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px, py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(2.5, 0.0) * radius2 * vec2(px, py)).rgb; - - bloom_sum2 *= 0.010; - - float dist = radius2 - radius1; - vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; - - vec3 blend = HDR + color; - color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; - - return color; -} - -void main() -{ - //Bloom - vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; -#if (adjust_bloom == 1) - bloom *= bloomFactor; -#endif - - //HDR and LumaShapening -#if (HDRpassing == 1) - passPixelColor0.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy).xyz; -#endif -#if (HDRpassing == 0) - passPixelColor0.xyz = texture(textureUnitPS1, passParameterSem0.xy).xyz; -#endif -#if (lumapassing == 1) - float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); - passPixelColor0.xyz += vec3(smask); -#endif - - // Do not edit this - vec3 color = (passPixelColor0.xyz); - color += bloom; - //++++++++++++++++++++++++++++++++++ - - // Tonemapping -#if (Tone_map == -1) - color = clamp(color*Exposure, 0.0, 1.0); -#elif (Tone_map == 0) - color = BotWToneMap(color); -#elif (Tone_map == 1) - color = ReshadeToneMap(color); -#elif (Tone_map == 2) - color = linearToneMapping(color); -#elif (Tone_map == 3) - color = simpleReinhardToneMapping(color); -#elif (Tone_map == 4) - color = lumaBasedReinhardToneMapping(color); -#elif (Tone_map == 5) - color = whitePreservingLumaBasedReinhardToneMapping(color); -#elif (Tone_map == 6) - color = RomBinDaHouseToneMapping(color); -#elif (Tone_map == 7) - color = filmicToneMapping(color); -#elif (Tone_map == 8) - color = Uncharted2ToneMapping(color); -#elif (tone_mapping == 9) - color = ACESFilm(color); -#endif - - // Levels Control if we tone map to 16-235 , 0 - 255 or usr defined range. -#if (blacknwhitepass == 1) - color = LevelsPass(color); -#endif - - // Color matrix -#if (cmatrix == 1) - color = ColorMatrixPass(color); -#endif - - - // Post Processing -#if (Tech == 1) - color = TechnicolorPass(color); -#endif -#if (Techine == 1) - color = Technicolor2(color); -#endif -#if (post_process == 0) - color = BotWVibrance(color); -#endif -#if (post_process == 1) - color = Contrasty(color); -#endif -#if (dpxpass == 1) - color = DPXPass(color); -#endif -#if (Filmicpass == 1) - color = FilmPass(color); -#endif -#if (lggpass == 1) - color = LiftGammaGainPass(color); -#endif -#if (CurvesPss == 1) - color = CurvesPass(color); -#endif -#if (vibpass == 1) - color = VibrancePass(color); -#endif - passPixelColor0 = vec4(color, passParameterSem0.w); -} diff --git a/Enhancements/BreathOfTheWild_Clarity/how_to_make_your_own_preset.txt b/Enhancements/BreathOfTheWild_Clarity/how_to_make_your_own_preset.txt deleted file mode 100644 index 912e70f1..00000000 --- a/Enhancements/BreathOfTheWild_Clarity/how_to_make_your_own_preset.txt +++ /dev/null @@ -1,53 +0,0 @@ - - -- How to set up your own Clarity Preset -- - -=================================================================== - - Hey, it's Serfrost. I'm writing this out because it's come to our attention that no matter what we really do for presets, it won't really matter in the long run. Every user has a unique monitor / display they use with their PC, yeah? A lot of them are calibrated differently, and they often come with numerous presets that alter colors, brightness, contrast, you name it. Because of this, the presets that look good to me might not look good to you--the presets that look good to Jamie might not look good to you; you get the idea. So I'm writing this hoping you'll take the time to do a few short steps to get you on your way to making the game look the way YOU want it to look on YOUR display! - - Jamie has coded this faithfully and diligently, and he's added a lot of different functions that were previously unavailable with these newer updates. We hope you enjoy this and use it to it's fullest potential. - - This tutorial has been shortened by Slash in order to make use of the new graphic pack to its full potential. - -=================================================================== - - There are 6 steps total. Please read very carefully and with your full attention. As long as you do that, it's relatively just "point and click" and the rest is changing the numbers on your own and testing them to see what they do. - -=================================================================== - - -1) Open up Cemu that's at least version 1.13.0. - - -2) After Cemu opens itself, load the game and your save file. - - -3) Open up the graphic pack menu and select Clarity under Breath of the Wild. - - -4) Open up 37040a485a29d54e_00000000000003c9_ps.txt in the Clarity graphic pack folder. - - -5) You may now edit all the variables in realtime. To view your changes hit "Reload shaders" - - -===============\ - - Note: "Realtime", as in, you can view your changes by using the button. You do not have to stop the game, etc. - - Pro Tip: If time changes too fast for you, you can use Cemuhook's custom timer option (Debug > Custom Timer) to slow down time to 0.125x! - - MAKE SURE YOU CHECK VARIOUS AREAS IN THE GAME TO MAKE SURE YOUR COLOR / SHADOW BALANCING IS CORRECT. - -===============/ - - -6) When you have your variables for your preset where you want them, you don't have to do anything! The file with your preset is already saved. - - -- Make backups of files before making changes. Keep track of your work! -- - - === - - MAKE SURE YOU CHECK VARIOUS AREAS IN THE GAME TO MAKE SURE YOUR COLOR / SHADOW BALANCING IS CORRECT. - - === \ No newline at end of file diff --git a/Enhancements/BreathOfTheWild_Clarity/rules.txt b/Enhancements/BreathOfTheWild_Clarity/rules.txt deleted file mode 100644 index c1affb47..00000000 --- a/Enhancements/BreathOfTheWild_Clarity/rules.txt +++ /dev/null @@ -1,66 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Clarity" -path = "The Legend of Zelda: Breath of the Wild/Enhancements/Clarity" -description = Select the visual look of the game that you'll like with these hand-made presets that adjusts saturation, vibrance, colors and more. You can select a preset. Selecting "User-Defined" requires making your own preset. check the "BreathOfTheWild_Clarity/37040a485a29d54e_00000000000003c9_ps.txt" file in your graphicPacks folder to create one. Made by Jamie and preset creators (names are listed). -version = 4 - -[Preset] -name = Serfrost's Preset (Default) -$preset:int = 10 - -[Preset] -name = Serfrost's Preset (Dim Display) -$preset:int = 9 - -[Preset] -name = Serfrost's Preset (Bright Display) -$preset:int = 8 - -[Preset] -name = Bruz's Preset -$preset:int = 1 - -[Preset] -name = CellHunter's Preset -$preset:int = 7 - -[Preset] -name = Jamie's Preset -$preset:int = 3 - -[Preset] -name = BSoD Gaming's Preset -$preset:int = 2 - -[Preset] -name = The Complaining Gamer's Preset -$preset:int = 5 - -[Preset] -name = ViskClarity Preset -$preset:int = 11 - -[Preset] -name = Contrasty Preset -$preset:int = 4 - -[Preset] -name = Filmic Preset -$preset:int = 6 - -[Preset] -name = Silentverge's Survival of the Wild Preset (Warmer) -$preset:int = 12 - -[Preset] -name = Silentverge's Survival of the Wild Preset (Colder) -$preset:int = 13 - -[Preset] -name = t3nka Neutral+ -$preset:int = 14 - -[Preset] -name = User-Defined Preset -$preset:int = 0 diff --git a/Enhancements/BreathOfTheWild_LODBias/rules.txt b/Enhancements/BreathOfTheWild_LODBias/rules.txt deleted file mode 100644 index 29b4285c..00000000 --- a/Enhancements/BreathOfTheWild_LODBias/rules.txt +++ /dev/null @@ -1,62 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Level Of Detail Bias" -path = "The Legend of Zelda: Breath of the Wild/Enhancements/LOD Bias" -description = Setting your Level Of Detail bias changes the detail level of the textures that are used. Using a preset with a negative value will use higher resolution textures whereas choosing a preset with a positive value decreases the resolution of the textures that are used. -version = 4 - -[Preset] -name = Normal texture detail (Default) -$lodBias = 0 - -[Preset] -name = Lowest texture detail (+16) -$lodBias = +16 - -[Preset] -name = Extremely low texture detail (+8) -$lodBias = +8 - -[Preset] -name = Very low texture detail (+4) -$lodBias = +4 - -[Preset] -name = Much lower texture detail (+3) -$lodBias = +3 - -[Preset] -name = Lower texture detail (+2) -$lodBias = +2 - -[Preset] -name = Slightly lower texture detail (+1) -$lodBias = +1 - -[Preset] -name = Slightly higher texture detail (-1) -$lodBias = -1 - -[Preset] -name = Higher texture detail (-2) -$lodBias = -2 - -[Preset] -name = Much higher texture detail (-3) -$lodBias = -3 - -[Preset] -name = Very high texture detail (-4) -$lodBias = -4 - -[Preset] -name = Extremely high texture detail (-8) -$lodBias = -8 - -[Preset] -name = Highest texture detail (-16) -$lodBias = -16 - -[TextureRedefine] -formats = 0x31,0x32,0x34,0x35,0x431,0x432,0x433,0x234,0x235 -overwriteRelativeLodBias = $lodBias diff --git a/Enhancements/BreathOfTheWild_ReflExtra/49ce4bf04a654e80_00000003c9249749_ps.txt b/Enhancements/BreathOfTheWild_ReflExtra/49ce4bf04a654e80_00000003c9249749_ps.txt deleted file mode 100644 index c692a267..00000000 --- a/Enhancements/BreathOfTheWild_ReflExtra/49ce4bf04a654e80_00000003c9249749_ps.txt +++ /dev/null @@ -1,685 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 49ce4bf04a654e80 -// ReflExtra - Enhanced Reflections -// Reflections can be seen at greater distances -// shader dumped from BotW v1.3.1, using Cemu 1.9.1 -#ifdef VULKAN -layout(set = 1, binding = 10) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2DArray textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex9 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem3); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem6); -R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R4i.zw)).xyzw); -R2i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); -R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS8, intBitsToFloat(R0i.xy)).xyzw); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R124i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -PV0i.z = R124i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R127i.w; -R126i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R8i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PS1i = R8i.z; -// 2 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R127i.w)))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R127i.w)))); -R125i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(uf_remappedPS[2].y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.x = floatBitsToInt(tempResultf); -PS0i = R125i.x; -// 3 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R5i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); -R127i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R126i.z; -// 4 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -PS0i = R8i.x; -// 5 -backupReg0i = R126i.w; -backupReg0i = R126i.w; -R127i.x = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R0i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R126i.z))); -R126i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.w)); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS0i))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); -PS1i = R9i.z; -// 8 -PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.z)); -PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.x)); -R126i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), -(intBitsToFloat(R125i.z)))); -PS0i = R126i.x; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 4.0); -// 10 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R125i.x))); -PV0i.z = R6i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w))); -R127i.z = floatBitsToInt(floor(intBitsToFloat(R3i.x))); -PS0i = R127i.z; -// 11 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),0.0))); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x)); -// 12 -PV0i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(R127i.z))); -R126i.x = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); -PS0i = R126i.x; -// 13 -backupReg0i = R127i.y; -PV1i.x = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.w)); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PS1i = R5i.x; -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 14 -PV0i.x = R5i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.y = clampFI32(PV0i.y); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); -PV0i.w = R6i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R10i.y))); -PS0i = R126i.x; -// 15 -backupReg0i = R127i.y; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.w))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.z))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(backupReg0i)); -R2i.z = floatBitsToInt(roundEven(0.0)); -PS1i = R2i.z; -// 16 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R1i.z))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R1i.w))); -R0i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -R1i.x = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(uf_remappedPS[3].x)); -PS0i = R1i.x; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -PS1i = R127i.w; -// 18 -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = R124i.x; -PV0i.y = R124i.x; -PV0i.z = R124i.x; -PV0i.w = R124i.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -PS0i = R124i.z; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = tempi.x; -R127i.z = floatBitsToInt(max(-(intBitsToFloat(R125i.x)), 0.0)); -PS1i = R127i.z; -// 20 -backupReg0i = R124i.x; -backupReg0i = R124i.x; -backupReg1i = R124i.z; -backupReg1i = R124i.z; -redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R124i.x = floatBitsToInt(cubeMapSTM.x); -R124i.y = floatBitsToInt(cubeMapSTM.y); -R124i.z = floatBitsToInt(cubeMapSTM.z); -R124i.w = cubeMapFaceId; -PV0i.x = R124i.x; -PV0i.y = R124i.y; -PV0i.z = R124i.z; -PV0i.w = R124i.w; -R3i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(uf_remappedPS[3].y)); -PS0i = R3i.y; -// 21 -R3i.x = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(uf_remappedPS[3].z)); -R6i.y = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); -PV1i.y = R6i.y; -R0i.z = PV0i.w; -R3i.w = 0; -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); -// 22 -R6i.x = floatBitsToInt(min(intBitsToFloat(R127i.z), 1.0)); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS1i)) + 1.5)); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + 1.5)); -R3i.z = int(intBitsToFloat(R127i.w)); -PS0i = R3i.z; -// 0 -R0i.x = R1i.y; -R0i.y = R1i.w; -R127i.z = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(uf_remappedPS[7].w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(uf_remappedPS[7].w))); -PS0i = R127i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.x),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.x),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(uf_remappedPS[7].w))); -PS1i = R125i.z; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(0x3c23d70a)); -PV0i.x = clampFI32(PV0i.x); -R124i.y = R3i.z & 0x000000fc; -R124i.z = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); -R124i.w = 0; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PS0i))); -R126i.y = int(intBitsToFloat(R127i.z)); -PS1i = R126i.y; -// 4 -backupReg0i = R124i.y; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[7].w))); -PV0i.x = R124i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[7].w))); -PV0i.y = R124i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(uf_remappedPS[7].w))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 0.5 + 0.5)); -R126i.x = floatBitsToInt(float(backupReg0i)); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.z))); -PS1i = R125i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R3i.w))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R127i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-(intBitsToFloat(R124i.w))))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 8 -PV0i.x = R126i.y & int(1); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); -R6i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3b820821)); -PV0i.w = R6i.w; -R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); -PS0i = R124i.y; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV1i.x = R123i.x; -R126i.y = R127i.w; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -R127i.z = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); -R7i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * 0.25 + 0.25)); -R7i.y = ((PV0i.x == 0)?(0):(0x3f800000)); -PS1i = R7i.y; -// 10 -backupReg0i = R6i.x; -backupReg0i = R6i.x; -backupReg1i = R125i.y; -R6i.x = R127i.w; -R6i.x = clampFI32(R6i.x); -PV0i.x = R6i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R127i.y) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R125i.z))) + intBitsToFloat(backupReg0i))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.x))); -R124i.z = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PS0i = R124i.z; -// 11 -backupReg0i = R127i.w; -backupReg1i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R124i.y)) + intBitsToFloat(R124i.y))); -R126i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(R125i.z))) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 12 -backupReg0i = R127i.y; -backupReg1i = R125i.z; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV0i.w = R123i.w; -R127i.z = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV1i.z)); -PS0i = R127i.z; -// 13 -backupReg0i = R124i.y; -backupReg1i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); -PV1i.w = R127i.w; -R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.z; -// 14 -backupReg0i = R127i.y; -backupReg0i = R127i.y; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R127i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(R125i.z))); -R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(backupReg0i))); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); -PS0i = R127i.x; -// 15 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R126i.x))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R124i.y))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R125i.z))); -R124i.y = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -PS1i = R124i.y; -// 16 -backupReg0i = R127i.w; -R7i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(R124i.x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R124i.z))); -R126i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R127i.y)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R7i.z)); -R7i.y = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x)); -PS0i = R7i.y; -// 17 -R5i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(R126i.w)); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.y))); -R12i.z = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R12i.z = clampFI32(R12i.z); -PV1i.w = floatBitsToInt(0.25 * intBitsToFloat(R127i.x)); -R5i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R5i.w = clampFI32(R5i.w); -PS1i = R5i.w; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.w))); -R8i.w = floatBitsToInt((intBitsToFloat(R4i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R8i.w = clampFI32(R8i.w); -PS0i = R3i.z & int(1); -// 19 -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z), intBitsToFloat(PV0i.x))); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y), intBitsToFloat(PV0i.y))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x), intBitsToFloat(PV0i.z))); -R4i.z = floatBitsToInt(float(PS0i)); -PS1i = R4i.z; -// 20 -R3i.x = R2i.x; -R3i.y = R2i.y; -R3i.z = floatBitsToInt(roundEven(1.0)); -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R8i.xy)).x); -R13i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R2i.xy)).xyz); -R11i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).xyz); -R1i.xyzw = floatBitsToInt(textureLod(textureUnitPS2, intBitsToFloat(R2i.xy),0.0).xyzw); -R3i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z))).xyz); -///R0i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex9),intBitsToFloat(R0i.w)).xyz); -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex9),0.0).xyz); -R2i.xyz = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R2i.xy)).xyz); -// 0 -R123i.x = floatBitsToInt((intBitsToFloat(R13i.y) * 0.5 + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.y),-(intBitsToFloat(R7i.w))) + intBitsToFloat(R13i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R4i.w)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(R6i.x))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R5i.x)) + intBitsToFloat(R3i.z))); -PS0i = R126i.w; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV0i.x)); -PV1i.y = clampFI32(PV1i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R5i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R9i.x))); -PS1i = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.y)); -// 2 -R127i.x = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.w)); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.x)); -R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.y))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),-(intBitsToFloat(R1i.w))) + intBitsToFloat(PS1i))); -PS0i = R124i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.y = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R127i.w))); -// 4 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R6i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R13i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -// 5 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(R3i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R3i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.z))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R7i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R5i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R7i.y))); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R126i.w))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R5i.y))); -PV1i.w = R126i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 8 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.x))); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -// 9 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); -PV0i.y = clampFI32(PV0i.y); -// 11 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R10i.z)) + 1.0)); -PV1i.y = R123i.y; -// 12 -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.x))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.y))); -PV0i.w = R123i.w; -// 1 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R0i.x))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R5i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R12i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R8i.w))); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.z = R123i.z; -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.z)); -// 5 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R2i.x))); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R2i.y))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.z))); -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Enhancements/BreathOfTheWild_ReflExtra/8ff2cf86e789335f_00000003c9249749_ps.txt b/Enhancements/BreathOfTheWild_ReflExtra/8ff2cf86e789335f_00000003c9249749_ps.txt deleted file mode 100644 index 206b4265..00000000 --- a/Enhancements/BreathOfTheWild_ReflExtra/8ff2cf86e789335f_00000003c9249749_ps.txt +++ /dev/null @@ -1,684 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8ff2cf86e789335f -// ReflExtra - Enhanced Reflections -// Reflections can be seen at greater distances -// shader dumped from BotW v1.4.0, using Cemu 1.11.1 -#ifdef VULKAN -layout(set = 1, binding = 10) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2DArray textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex9 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem3); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem6); -R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R4i.zw)).xyzw); -R2i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); -R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS8, intBitsToFloat(R0i.xy)).xyzw); -R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R127i.w; -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); -PS0i = R127i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PS1i = R2i.z; -// 2 -R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R127i.w)))); -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R127i.w)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(uf_remappedPS[2].y))); -R125i.w = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R126i.y = floatBitsToInt(tempResultf); -PS0i = R126i.y; -// 3 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R4i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); -R126i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -PS1i = R127i.w; -// 4 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R12i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R12i.x),intBitsToFloat(R12i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -PS0i = R9i.x; -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R126i.x = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(R0i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 6 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 7 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(PS0i))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.y), intBitsToFloat(PS0i))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.x)); -R125i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); -PS1i = R125i.x; -// 8 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R126i.w), -(intBitsToFloat(R126i.w)))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.w)); -R125i.z = floatBitsToInt(max(intBitsToFloat(R126i.x), -(intBitsToFloat(R126i.x)))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.z)); -PS0i = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 4.0); -// 9 -backupReg0i = R126i.z; -PV1i.x = floatBitsToInt(max(intBitsToFloat(R125i.x), -(intBitsToFloat(R125i.x)))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 4.0); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 4.0); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); -PS1i = R5i.z; -// 10 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(fract(intBitsToFloat(R3i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt(fract(intBitsToFloat(R3i.y))); -PS0i = R125i.x; -// 11 -R127i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV0i.w))); -PV1i.x = R127i.x; -R126i.y = R4i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.y)); -PV1i.z = R126i.z; -R127i.w = R4i.y; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -R125i.w = R5i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -PS1i = R125i.w; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R13i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -// 13 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R126i.y)) + intBitsToFloat(R2i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(backupReg0i))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(R13i.y))); -PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(R127i.z)); -PV1i.w = clampFI32(PV1i.w); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R9i.z))); -PS1i = R125i.z; -// 14 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R125i.x)); -PV0i.y = clampFI32(PV0i.y); -R11i.z = floatBitsToInt(roundEven(0.0)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w)); -R10i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PS0i = R10i.w; -// 15 -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R9i.y)) + intBitsToFloat(R1i.w))); -R1i.z = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(uf_remappedPS[3].x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(PV0i.y)); -R1i.y = floatBitsToInt(intBitsToFloat(R13i.y) + intBitsToFloat(uf_remappedPS[3].y)); -PS1i = R1i.y; -// 16 -R125i.x = floatBitsToInt(max(-(intBitsToFloat(R127i.y)), 0.0)); -R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R0i.y))); -R6i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(uf_remappedPS[3].z)); -R127i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); -R6i.y = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); -PS0i = R6i.y; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = 0; -PS1i = R1i.w; -// 18 -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV0i.x = R124i.x; -PV0i.y = R124i.x; -PV0i.z = R124i.x; -PV0i.w = R124i.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -PS0i = R124i.z; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = tempi.x; -R4i.z = int(intBitsToFloat(R127i.w)); -PS1i = R4i.z; -// 20 -redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(R124i.x),intBitsToFloat(PV1i.x)),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(R124i.x),intBitsToFloat(R124i.z),intBitsToFloat(R124i.z)),cubeMapSTM,cubeMapFaceId); -R0i.x = floatBitsToInt(cubeMapSTM.x); -R0i.y = floatBitsToInt(cubeMapSTM.y); -R0i.z = floatBitsToInt(cubeMapSTM.z); -R0i.w = cubeMapFaceId; -PV0i.x = R0i.x; -PV0i.y = R0i.y; -PV0i.z = R0i.z; -PV0i.w = R0i.w; -R2i.y = floatBitsToInt(min(intBitsToFloat(R125i.x), 1.0)); -PS0i = R2i.y; -// 21 -R3i.x = 0; -R3i.y = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); -R10i.z = PV0i.w; -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(R6i.y)) + intBitsToFloat(R6i.y))); -R3i.z = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); -PS1i = R3i.z; -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(uf_remappedPS[7].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R3i.z)) + 1.5)); -PV0i.y = R123i.y; -R124i.z = R4i.z & 0x000000fc; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R3i.z)) + 1.5)); -PV0i.w = R123i.w; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(uf_remappedPS[7].w))); -PS0i = R127i.y; -// 1 -R10i.x = PV0i.y; -R10i.y = PV0i.w; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(uf_remappedPS[7].w))); -R127i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(0x3c23d70a)); -R127i.w = clampFI32(R127i.w); -R126i.z = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.z),intBitsToFloat(R1i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R1i.z),intBitsToFloat(R1i.y),intBitsToFloat(R6i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.y = int(intBitsToFloat(R3i.y)); -PS0i = R124i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z)),vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-(intBitsToFloat(R3i.x))))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PS1i))); -R127i.x = floatBitsToInt(float(backupReg0i)); -PS0i = R127i.x; -// 5 -backupReg0i = R126i.z; -backupReg0i = R126i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.x = R124i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.y = R126i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 0.5 + 0.5)); -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); -PS1i = R125i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z)),vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),-(intBitsToFloat(R1i.w))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = R124i.y & int(1); -PS0i = R126i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R126i.z)),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 8 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); -R125i.x = floatBitsToInt(intBitsToFloat(R125i.x) / 2.0); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R3i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3b820821)); -PV0i.w = R3i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PS0i = R122i.x; -// 9 -backupReg0i = R125i.y; -R127i.x = R126i.w; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * 0.25 + 0.25)); -PS1i = R7i.y; -// 10 -R3i.x = R126i.w; -R3i.x = clampFI32(R3i.x); -R126i.y = ((R126i.x == 0)?(0):(0x3f800000)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.y) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R2i.y))); -PV0i.w = R123i.w; -R125i.z = floatBitsToInt((-(intBitsToFloat(R3i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PS0i = R125i.z; -// 11 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R127i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg1i)); -// 12 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R3i.x))); -PV0i.y = R123i.y; -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.w))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.x))); -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R3i.w)) + intBitsToFloat(R125i.z))); -PS0i = R127i.x; -// 13 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R3i.w)) + intBitsToFloat(R125i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R3i.w)) + intBitsToFloat(R125i.z))); -PV1i.w = R127i.w; -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -PS1i = R125i.z; -// 14 -backupReg0i = R126i.z; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R124i.x))) + intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),-(intBitsToFloat(R126i.w))) + intBitsToFloat(PV1i.w))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),-(intBitsToFloat(R126i.w))) + intBitsToFloat(R127i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R126i.w))) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R7i.x = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS0i = R7i.x; -// 15 -backupReg0i = R127i.w; -backupReg0i = R127i.w; -backupReg1i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),-(intBitsToFloat(R124i.x))) + intBitsToFloat(R127i.x))); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R125i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV0i.w)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R124i.x))) + intBitsToFloat(backupReg0i))); -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(backupReg1i)); -PS1i = R126i.y; -// 16 -backupReg0i = R126i.x; -backupReg1i = R126i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R127i.y)); -R2i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(backupReg0i)); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R125i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R126i.z)); -R6i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV1i.x)); -PS0i = R6i.y; -// 17 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(R127i.w)); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R125i.y))); -R3i.z = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R3i.z = clampFI32(R3i.z); -PV1i.w = floatBitsToInt(0.25 * intBitsToFloat(backupReg0i)); -R0i.w = floatBitsToInt((intBitsToFloat(R8i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.w))); -R6i.w = floatBitsToInt((intBitsToFloat(R8i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R6i.w = clampFI32(R6i.w); -PS0i = R4i.z & int(1); -// 19 -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z), intBitsToFloat(PV0i.x))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y), intBitsToFloat(PV0i.y))); -R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x), intBitsToFloat(PV0i.z))); -R8i.z = floatBitsToInt(float(PS0i)); -PS1i = R8i.z; -// 20 -R4i.x = R11i.x; -R4i.y = R11i.y; -R4i.z = floatBitsToInt(roundEven(1.0)); -R8i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R9i.xy)).x); -R13i.xzw = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R11i.xy)).xzw); -R0i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z))).xyz); -R1i.xyzw = floatBitsToInt(textureLod(textureUnitPS2, intBitsToFloat(R11i.xy),0.0).xyzw); -R4i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xyz); -///R10i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R10i.xy),R10i.z),cubeMapArrayIndex9),intBitsToFloat(R10i.w)).xyz); -R10i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R10i.xy),R10i.z),cubeMapArrayIndex9),0.0).xyz); -R11i.xyz = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R11i.xy)).xyz); -// 0 -R123i.x = floatBitsToInt((intBitsToFloat(R13i.w) * 0.5 + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),-(intBitsToFloat(R7i.y))) + intBitsToFloat(R13i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R8i.w)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(R3i.x))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R7i.x)) + intBitsToFloat(R4i.z))); -PS0i = R127i.w; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(PV0i.x)); -PV1i.y = clampFI32(PV1i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R5i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R6i.x))); -PS1i = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV0i.y)); -// 2 -R126i.x = floatBitsToInt(-(intBitsToFloat(R12i.x)) + intBitsToFloat(PV1i.w)); -PV0i.x = R126i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(PV1i.z)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x)); -R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),-(intBitsToFloat(R1i.w))) + intBitsToFloat(PS1i))); -PS0i = R125i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R13i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R126i.w))); -// 4 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R126i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R7i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R13i.z))); -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R13i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R2i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(R4i.x))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R6i.y))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R7i.x))); -// 6 -backupReg0i = R127i.w; -backupReg1i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(R4i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(PS1i)) + intBitsToFloat(backupReg0i))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(backupReg1i))); -PS0i = R4i.w; -// 7 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R3i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R8i.y; -backupReg1i = R5i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R127i.z))); -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.w)) + intBitsToFloat(R127i.w))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); -PV0i.y = clampFI32(PV0i.y); -// 11 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R6i.z)) + 1.0)); -PV1i.y = R123i.y; -// 12 -R10i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(R8i.w)) + intBitsToFloat(R0i.x))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z),intBitsToFloat(R8i.w)) + intBitsToFloat(R0i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(R8i.w)) + intBitsToFloat(R0i.y))); -PV0i.w = R123i.w; -// 1 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R10i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R10i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R10i.x))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R0i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R6i.w))); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.z = R123i.z; -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.z)); -// 5 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R11i.x))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R11i.y))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R11i.z))); -// export -passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Enhancements/BreathOfTheWild_ReflExtra/rules.txt b/Enhancements/BreathOfTheWild_ReflExtra/rules.txt deleted file mode 100644 index f8795abd..00000000 --- a/Enhancements/BreathOfTheWild_ReflExtra/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Enhanced Reflections" -path = "The Legend of Zelda: Breath of the Wild/Enhancements/Enhanced Reflections" -description = Extends the reflections in shrines and some other surfaces. Made by Kiri. -version = 4 diff --git a/Enhancements/BreathOfTheWild_Shadows/22c410044398c7af_0000000000000000_vs.txt b/Enhancements/BreathOfTheWild_Shadows/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 76b4b098..00000000 --- a/Enhancements/BreathOfTheWild_Shadows/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,104 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = $shadowRes; -const float resYScale = $shadowRes; - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = -(1.0); -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[0].y) / resYScale * intBitsToFloat(0x3fae8a72); -// 1 -backupReg0f = R2f.y; -R0f.x = R2f.x; -R0f.y = R2f.y; -R2f.z = R2f.y + PS0f; -R2f.w = R2f.y; -R2f.y = backupReg0f + -(PS0f); -PS1f = R2f.y; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Enhancements/BreathOfTheWild_Shadows/2a2f55a2b2d64474_0000000000000000_vs.txt b/Enhancements/BreathOfTheWild_Shadows/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index f3fbfaaa..00000000 --- a/Enhancements/BreathOfTheWild_Shadows/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = $shadowRes; -const float resYScale = $shadowRes; - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = -(1.0); -R1f.w = 1.0; -R127f.x = intBitsToFloat(uf_remappedVS[0].x) / resXScale * intBitsToFloat(0x3fae8a72); -PS0f = R127f.x; -// 1 -R3f.x = R2f.x; -R3f.y = R2f.y; -R0f.z = R2f.x + PS0f; -R0f.w = R2f.x; -R0f.x = R2f.y; -PS1f = R0f.x; -// 2 -R0f.y = R2f.x + -(R127f.x); -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Enhancements/BreathOfTheWild_Shadows/88133ee405eaae28_000003c000009269_ps.txt b/Enhancements/BreathOfTheWild_Shadows/88133ee405eaae28_000003c000009269_ps.txt deleted file mode 100644 index bdd68e73..00000000 --- a/Enhancements/BreathOfTheWild_Shadows/88133ee405eaae28_000003c000009269_ps.txt +++ /dev/null @@ -1,740 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 88133ee405eaae28 -// Shadow 2x2 box blur fix -// shader dumped from BotW v1.4.0, using Cemu 1.11.1 -const float resXScale = $shadowRes; -const float resYScale = $shadowRes; - -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArrayShadow textureUnitPS8; -TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R7i.xzw = floatBitsToInt(textureGather(textureUnitPS6, vec2(0.0001) + intBitsToFloat(R0i.xy)).xzw); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R2i.xy),0.0).xw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R7i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R7i.z)) + uf_blockPS1[14].x)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R7i.x)) + uf_blockPS1[14].x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -PS0i = R127i.x; -// 1 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 2.0 + -(1.0))); -PS1i = R125i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R127i.y)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R127i.y)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.z)))); -PS0i = R126i.z; -// 3 -R125i.x = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R124i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.x)); -R125i.w = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.w)); -PS1i = R126i.y; -// 4 -backupReg0i = R126i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R8i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R8i.y),intBitsToFloat(R12i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(backupReg0i)); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(R127i.y)); -PS1i = R126i.w; -// 6 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), uf_blockPS6[43].x)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R126i.x))); -R125i.y = floatBitsToInt(sqrt(intBitsToFloat(backupReg0i))); -PS0i = R125i.y; -// 7 -backupReg0i = R127i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), uf_blockPS6[45].x)); -R124i.y = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R125i.z; -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS1[18].y, uf_blockPS1[18].z)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R2i.z; -// 9 -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R126i.z))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R125i.x)) + intBitsToFloat(R127i.y))); -R126i.z = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[45].y) + intBitsToFloat(R124i.x))); -PV1i.w = R123i.w; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R127i.z))); -PS1i = R126i.w; -// 10 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(R4i.w))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R125i.w)) + intBitsToFloat(R124i.w))); -PV0i.z = R1i.z; -R125i.w = R4i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = R4i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS0i = R124i.z; -// 11 -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R2i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R2i.x = clampFI32(R2i.x); -PS1i = R2i.x; -// 12 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), -(intBitsToFloat(R126i.z)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0xbb6fe5d7)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3ca30589)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3ca30589)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0xbb6fe5d7)); -PS0i = R126i.z; -// 13 -R7i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R126i.y)); -R1i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.w))); -R3i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R1i.w = 0x3f800000; -R6i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.z))); -PS1i = R6i.x; -// 14 -R5i.x = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R126i.z))); -R5i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R127i.y))); -R13i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R126i.x)); -R12i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R12i.w = clampFI32(R12i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 15 -backupReg0i = R124i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PS0i))); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(backupReg0i)); -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = PS1i & int(1); -// 17 -R12i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.x))); -R7i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.y))); -R13i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R13i.w = clampFI32(R13i.w); -R2i.y = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = R2i.y; -// 18 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R8i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R8i.x; -// 1 -R10i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R14i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R14i.w = clampFI32(R14i.w); -R4i.w = 0; -PS1i = R4i.w; -// 2 -predResult = (1.0 > intBitsToFloat(R12i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R13i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R6i.x)); -R13i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R1i.y)); -R14i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R6i.x))); -PS0i = R14i.x; -// 1 -R15i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R5i.x)); -R14i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R1i.y))); -R15i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R5i.y)); -PS1i = R15i.y; -// 2 -R16i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R5i.x))); -R16i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R5i.y))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) * 1.5); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.y) * 1.5); -PV0i.z = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -R127i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R2i.z) * 1.5); -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = PV0i.z & int(1); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -PV1i.w = R1i.w; -R122i.x = floatBitsToInt((intBitsToFloat(R3i.z) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -backupReg0i = R2i.y; -R2i.x = floatBitsToInt(uf_blockPS6[53].y/resYScale); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.x) / 2.0); -PV0i.x = R2i.x; -R2i.y = floatBitsToInt(uf_blockPS6[53].x/resXScale); -R2i.y = floatBitsToInt(intBitsToFloat(R2i.y) / 2.0); -PV0i.y = R2i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -R3i.w = PV1i.y - R127i.w; -PV0i.w = R3i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PS0i))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R7i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -PV1i.w = PV0i.w << 0x00000002; -R1i.y = floatBitsToInt(float(PV0i.w)); -PS1i = R1i.y; -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.x))); -PS0i = R122i.x; -// 5 -backupReg0i = R2i.z; -backupReg0i = R2i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg0i)),vec4(-(intBitsToFloat(R8i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R10i.z)),-(intBitsToFloat(R4i.w))))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PS0i)); -R2i.w = floatBitsToInt(tempResultf); -PS1i = R2i.w; -} -if( activeMaskStackC[2] == true ) { -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R2i.w))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R2i.w))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R2i.w))); -PV0i.z = R127i.z; -R127i.w = R2i.x; -R8i.z = floatBitsToInt(roundEven(intBitsToFloat(R1i.y))); -PS0i = R8i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = PS0i; -PS1i = R9i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -PV0i.w = R123i.w; -R10i.z = R8i.z; -PS0i = R10i.z; -// 3 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.z))); -R11i.z = R8i.z; -PS1i = R11i.z; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3da1ff2e)); -// 5 -backupReg0i = R12i.z; -R17i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R3i.x))); -PV1i.x = R17i.x; -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R8i.y))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R6i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R4i.x))); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R0i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(R127i.y))); -PV0i.z = R123i.z; -// 9 -R127i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.x)); -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R127i.z; -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV0i.x)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -// 12 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -PV0i.x = R127i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0xbb03126f)); -R8i.x = floatBitsToInt((uf_blockPS6[53].x / resXScale * 0.5 + intBitsToFloat(PV1i.y))); -PS0i = R8i.x; -// 13 -R126i.x = floatBitsToInt((-(intBitsToFloat(R1i.y)) * intBitsToFloat(0x3a03126f) + intBitsToFloat(PV0i.z))); -R126i.x = clampFI32(R126i.x); -PV1i.x = R126i.x; -R8i.y = floatBitsToInt((uf_blockPS6[53].y / resYScale * 0.5 + intBitsToFloat(PV0i.x))); -R9i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R2i.y)); -PS1i = R9i.x; -// 14 -R10i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R7i.z)); -R9i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(R3i.y)); -R8i.w = PV1i.x; -R9i.w = PV1i.x; -PS0i = R9i.w; -// 15 -R11i.x = floatBitsToInt((-(uf_blockPS6[53].x) / resXScale * 0.5 + intBitsToFloat(R127i.y))); -R10i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(R127i.w)); -R10i.w = R126i.x; -R11i.y = floatBitsToInt((-(uf_blockPS6[53].y) / resYScale * 0.5 + intBitsToFloat(R127i.x))); -PS1i = R11i.y; -// 16 -R11i.w = R126i.x; -} -if( activeMaskStackC[2] == true ) { -R8i.z = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R9i.y = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -R10i.x = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.w)))); -R11i.w = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z),intBitsToFloat(R11i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(R9i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R10i.x) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -// 2 -R4i.z = floatBitsToInt((intBitsToFloat(R11i.w) * 0.5 + intBitsToFloat(PV1i.y))/2.0); -PV0i.z = R4i.z; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.w = ((R3i.w > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.w != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = int(-1) + R3i.w; -// 1 -PV1i.y = PV0i.z << 0x00000002; -R4i.x = floatBitsToInt(float(PV0i.z)); -PS1i = R4i.x; -// 2 -R0i.x = PV1i.y + 0x0000002a; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002c; -R0i.w = PV1i.y + 0x0000002b; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R3i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R0i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0xbb03126f)); -// 7 -R5i.w = floatBitsToInt((-(intBitsToFloat(R4i.x)) * intBitsToFloat(0x3a03126f) + intBitsToFloat(PV0i.y))); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.z = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R4i.z; -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.z))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R15i.xy)).x); -R0i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R16i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R13i.xy)).x); -R1i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R14i.xy)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x3f7eb852)); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x41a00000)); -R124i.z = floatBitsToInt(-(intBitsToFloat(R4i.z)) + 1.0); -R127i.w = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x3f555555)); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(R0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f8ba8d6)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fbc4580)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.y)) + 1.0)); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + 0.5)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.y)) + 0.5)); -R125i.z = clampFI32(R125i.z); -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg0i)); -PV0i.w = R126i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.x)) + 1.0)); -R125i.w = clampFI32(R125i.w); -PS0i = R125i.w; -// 3 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.z)) + 0.5)); -R126i.x = clampFI32(R126i.x); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + 0.5)); -R124i.w = clampFI32(R124i.w); -PV1i.w = R124i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R126i.z)) + 1.0)); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 4 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.x))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + 0.5)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R125i.w)) + 0.5)); -PV0i.w = R127i.w; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.w)) + 1.0)); -R125i.y = clampFI32(R125i.y); -PS0i = R125i.y; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PS0i)) + 0.5)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.z) + -(intBitsToFloat(PV0i.w))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R0i.w)) + 0.5)); -PV1i.w = R126i.w; -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R12i.w)) + intBitsToFloat(R4i.z))); -PS1i = R3i.w; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e35e743)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e35e743)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0xbedd476b)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c00000)); -PV1i.x = clampFI32(PV1i.x); -// 12 -R1i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R1i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R13i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R7i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R12i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R1i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R13i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R14i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Enhancements/BreathOfTheWild_Shadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt b/Enhancements/BreathOfTheWild_Shadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt deleted file mode 100644 index 2e349b34..00000000 --- a/Enhancements/BreathOfTheWild_Shadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt +++ /dev/null @@ -1,730 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ffe0e8c84f6e8da9 -// Shadow 2x2 box blur fix -// shader dumped from BotW v1.3.1, using Cemu 1.10.0 -const float resXScale = $shadowRes; -const float resYScale = $shadowRes; - -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArrayShadow textureUnitPS8; -TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.xzw = floatBitsToInt(textureGather(textureUnitPS6, vec2(0.0001) + intBitsToFloat(R0i.xy)).xzw); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.z)) + uf_blockPS1[14].x)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.x)) + uf_blockPS1[14].x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -PS0i = R127i.x; -// 1 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 2.0 + -(1.0))); -PS1i = R125i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R127i.y)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R127i.y)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.z)))); -PS0i = R126i.z; -// 3 -R125i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R124i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.x)); -R125i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.w)); -PS1i = R126i.y; -// 4 -backupReg0i = R126i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(backupReg0i)); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(R127i.y)); -PS1i = R126i.w; -// 6 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[43].x)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R126i.x))); -R125i.y = floatBitsToInt(sqrt(intBitsToFloat(backupReg0i))); -PS0i = R125i.y; -// 7 -backupReg0i = R127i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[45].x)); -R124i.y = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R125i.z; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS1[18].y, uf_blockPS1[18].z)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R9i.z; -// 9 -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R126i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R125i.x)) + intBitsToFloat(R127i.y))); -R126i.z = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[45].y) + intBitsToFloat(R124i.x))); -PV1i.w = R123i.w; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R127i.z))); -PS1i = R126i.w; -// 10 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(R4i.w))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R125i.w)) + intBitsToFloat(R124i.w))); -PV0i.z = R1i.z; -R125i.w = R8i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = R7i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS0i = R124i.z; -// 11 -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R2i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R2i.x = clampFI32(R2i.x); -PS1i = R2i.x; -// 12 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), -(intBitsToFloat(R126i.z)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0xbb6fe5d7)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3ca30589)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3ca30589)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0xbb6fe5d7)); -PS0i = R126i.z; -// 13 -R10i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R126i.y)); -R3i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R1i.w = 0x3f800000; -R4i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.z))); -PS1i = R4i.x; -// 14 -R3i.x = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R126i.z))); -R2i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R127i.y))); -R11i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R126i.x)); -R10i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R10i.w = clampFI32(R10i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 15 -backupReg0i = R124i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(backupReg0i)); -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = PS1i & int(1); -// 17 -R11i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.x))); -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.y))); -R11i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R11i.w = clampFI32(R11i.w); -R8i.y = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = R8i.y; -// 18 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R9i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R9i.x; -// 1 -R10i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R12i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R12i.w = clampFI32(R12i.w); -R7i.w = 0; -PS1i = R7i.w; -// 2 -predResult = (1.0 > intBitsToFloat(R10i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R12i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R4i.x)); -R12i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R3i.y)); -R13i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R4i.x))); -PS0i = R13i.x; -// 1 -R14i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R3i.x)); -R13i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R3i.y))); -R14i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R2i.y)); -PS1i = R14i.y; -// 2 -R15i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R3i.x))); -R15i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R2i.y))); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R7i.y) * 1.5); -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.x) * 1.5); -PV0i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R9i.z) * 1.5); -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = PV0i.w & int(1); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(R2i.z) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R13i.w = PV1i.y - R127i.x; -PV0i.w = R13i.w; -PS0i = floatBitsToInt(uf_blockPS6[53].y/resYScale); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 3 -R6i.x = floatBitsToInt(uf_blockPS6[53].x/resXScale); -R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); -PV1i.y = PV0i.w << 0x00000002; -R6i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -R2i.w = PS0i; -PS1i = floatBitsToInt(float(PV0i.w)); -// 4 -R0i.x = PV1i.y + 0x0000002b; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002a; -R0i.w = PV1i.y + 0x0000002c; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -R8i.z = PS0i; -PS1i = R8i.z; -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.z)),vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R10i.z)),-(intBitsToFloat(R7i.w))))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R6i.x))); -R1i.z = R7i.z; -PS1i = R1i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = R7i.z; -PS0i = R9i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R2i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R2i.z))); -// 5 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.y))); -// 6 -backupReg0i = R6i.y; -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R7i.x))); -PV0i.x = R16i.x; -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R12i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R4i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R5i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -// 13 -R7i.x = floatBitsToInt((uf_blockPS6[53].x / resXScale * 0.5 + intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R127i.y = clampFI32(R127i.y); -PV1i.y = R127i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.z))); -PV1i.w = R127i.w; -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R6i.x)); -PS1i = R8i.x; -// 14 -R1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.w)); -R7i.y = floatBitsToInt((uf_blockPS6[53].y / resYScale * 0.5 + intBitsToFloat(PV1i.w))); -R7i.w = PV1i.y; -R8i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R6i.z)); -PS0i = R8i.y; -// 15 -R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) / resXScale * 0.5 + intBitsToFloat(R127i.z))); -R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R2i.w)); -R8i.w = R127i.y; -R1i.w = R127i.y; -PS1i = R1i.w; -// 16 -R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) / resYScale * 0.5 + intBitsToFloat(R127i.w))); -R9i.w = R127i.y; -} -if( activeMaskStackC[2] == true ) { -R7i.z = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -R8i.y = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R1i.x = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)))); -R9i.w = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(R8i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 1 -R123i.z = floatBitsToInt((intBitsToFloat(R1i.x) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 2 -R5i.w = floatBitsToInt((intBitsToFloat(R9i.w) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -PV0i.w = R5i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.y = ((R13i.w > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.y != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R13i.w; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R4i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R4i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R2i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R1i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R3i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R4i.y; -// 6 -R4i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R4i.w = clampFI32(R4i.w); -} -if( activeMaskStackC[3] == true ) { -R4i.z = floatBitsToInt(texture(textureUnitPS8, vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R5i.w; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R4i.z))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R14i.xy)).x); -R0i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R15i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R12i.xy)).x); -R1i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R13i.xy)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x3f7eb852)); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x41a00000)); -R124i.z = floatBitsToInt(-(intBitsToFloat(R5i.w)) + 1.0); -R127i.w = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x3f555555)); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(R0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f8ba8d6)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fbc4580)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.y)) + 1.0)); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + 0.5)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.y)) + 0.5)); -R125i.z = clampFI32(R125i.z); -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg0i)); -PV0i.w = R126i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.x)) + 1.0)); -R125i.w = clampFI32(R125i.w); -PS0i = R125i.w; -// 3 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.z)) + 0.5)); -R126i.x = clampFI32(R126i.x); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + 0.5)); -R124i.w = clampFI32(R124i.w); -PV1i.w = R124i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R126i.z)) + 1.0)); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 4 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.x))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + 0.5)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R125i.w)) + 0.5)); -PV0i.w = R127i.w; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.w)) + 1.0)); -R125i.y = clampFI32(R125i.y); -PS0i = R125i.y; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PS0i)) + 0.5)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.z) + -(intBitsToFloat(PV0i.w))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R0i.w)) + 0.5)); -PV1i.w = R126i.w; -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R10i.w)) + intBitsToFloat(R5i.w))); -PS1i = R3i.w; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e35e743)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e35e743)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0xbedd476b)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c00000)); -PV1i.x = clampFI32(PV1i.x); -// 12 -R1i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R1i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R11i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R10i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R11i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R1i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R11i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Enhancements/BreathOfTheWild_Shadows/rules.txt b/Enhancements/BreathOfTheWild_Shadows/rules.txt deleted file mode 100644 index 6e71b206..00000000 --- a/Enhancements/BreathOfTheWild_Shadows/rules.txt +++ /dev/null @@ -1,61 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Shadow Resolution -path = "The Legend of Zelda: Breath of the Wild/Graphics/Shadow Resolution" -description = Note: Increasing shadow resolution is known to increase VRAM usage directly. Lowering this might give you a good boost in performance if you're limited on VRAM but makes shadows blockier. Medium is the original resolution. -version = 4 - -[Preset] -name = Medium (100%, Default) -$shadowRes = 1 - -[Preset] -name = Low (50%) -$shadowRes = 0.5 - -[Preset] -name = High (200%) -$shadowRes = 2 - -[Preset] -name = Ultra (300%) -$shadowRes = 3 - -[Preset] -name = Extreme (400%, Unstable) -$shadowRes = 4 - -[TextureRedefine] -width = 768 -height = 720 -formats = 0x005 -overwriteWidth = $shadowRes * 768 -overwriteHeight = $shadowRes * 720 - -[TextureRedefine] -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = $shadowRes * 720 -overwriteHeight = $shadowRes * 720 - -[TextureRedefine] -width = 384 -height = 368 -formats = 0x005 -overwriteWidth = $shadowRes * 384 -overwriteHeight = $shadowRes * 368 - -[TextureRedefine] -width = 384 -height = 360 -formats = 0x005 -overwriteWidth = $shadowRes * 384 -overwriteHeight = $shadowRes * 360 - -[TextureRedefine] -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = $shadowRes * 360 -overwriteHeight = $shadowRes * 360 diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/8d24f32f18e6de47_0000000079249749_ps.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/8d24f32f18e6de47_0000000079249749_ps.txt deleted file mode 100644 index 07d4c15a..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/8d24f32f18e6de47_0000000079249749_ps.txt +++ /dev/null @@ -1,703 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - -// shader 8d24f32f18e6de47 -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform samplerCubeArray textureUnitPS8; -TEXTURE_LAYOUT(10, 1, 6) uniform sampler2DArray textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex8 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem3); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem6); -R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); -R2i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); -R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); -R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); -R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R127i.w; -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); -PS0i = R127i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PS1i = R9i.z; -// 2 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R127i.w)))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R127i.w)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(uf_remappedPS[2].y))); -R125i.w = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R126i.y = floatBitsToInt(tempResultf); -PS0i = R126i.y; -// 3 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R4i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); -R126i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -PS1i = R127i.w; -// 4 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -PS0i = R9i.x; -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R126i.x = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(R0i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 6 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 7 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(PS0i))); -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PS0i))); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.x)); -R125i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); -PS1i = R125i.x; -// 8 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R126i.w), -(intBitsToFloat(R126i.w)))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.w)); -R125i.z = floatBitsToInt(max(intBitsToFloat(R126i.x), -(intBitsToFloat(R126i.x)))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.z)); -PS0i = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 4.0); -// 9 -backupReg0i = R126i.z; -PV1i.x = floatBitsToInt(max(intBitsToFloat(R125i.x), -(intBitsToFloat(R125i.x)))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 4.0); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 4.0); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); -PS1i = R5i.z; -// 10 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(fract(intBitsToFloat(R3i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt(fract(intBitsToFloat(R3i.y))); -PS0i = R125i.x; -// 11 -R127i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV0i.w))); -PV1i.x = R127i.x; -R126i.y = R4i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.y)); -PV1i.z = R126i.z; -R127i.w = R4i.y; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -R125i.w = R5i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -PS1i = R125i.w; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R12i.y),intBitsToFloat(R11i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -// 13 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R126i.y)) + intBitsToFloat(R5i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(backupReg0i))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(R12i.y))); -PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(R127i.z)); -PV1i.w = clampFI32(PV1i.w); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R11i.z))); -PS1i = R125i.z; -// 14 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R125i.x)); -PV0i.y = clampFI32(PV0i.y); -R10i.z = floatBitsToInt(roundEven(0.0)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w)); -R2i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PS0i = R2i.w; -// 15 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R9i.y)) + intBitsToFloat(R1i.w))); -R1i.z = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(uf_remappedPS[3].x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(PV0i.y)); -R1i.y = floatBitsToInt(intBitsToFloat(R12i.y) + intBitsToFloat(uf_remappedPS[3].y)); -PS1i = R1i.y; -// 16 -// edit here -// desaturates shadow making it look metal (R127i.y))*.05 -R125i.x = floatBitsToInt(max(-(intBitsToFloat(R127i.y)), 0.0)); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R0i.y))); -// rlli.z and uf_remapedPS3 both alter shinyness -R3i.z = floatBitsToInt(intBitsToFloat(R11i.z) + intBitsToFloat(uf_remappedPS[3].z)); -// edit here -// kinda tone maping on character ? (R8i.w)*.05 -// low numbers = darker darks and brighter brights -R127i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); -// Edit here -// 7i.w carrying character shinyness reflectivity without map items -R6i.z = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); -PS0i = R6i.z; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = 0; -PS1i = R1i.w; -// 18 rotates reflection world cube map? -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV0i.x = R124i.x; -PV0i.y = R124i.x; -PV0i.z = R124i.x; -PV0i.w = R124i.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -PS0i = R124i.z; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = tempi.x; -R4i.z = int(intBitsToFloat(R127i.w)); -PS1i = R4i.z; -// 20 -redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(R124i.x),intBitsToFloat(PV1i.x)),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(R124i.x),intBitsToFloat(R124i.z),intBitsToFloat(R124i.z)),cubeMapSTM,cubeMapFaceId); -R0i.x = floatBitsToInt(cubeMapSTM.x); -R0i.y = floatBitsToInt(cubeMapSTM.y); -R0i.z = floatBitsToInt(cubeMapSTM.z); -R0i.w = cubeMapFaceId; -PV0i.x = R0i.x; -PV0i.y = R0i.y; -PV0i.z = R0i.z; -PV0i.w = R0i.w; -// r125i. brightens shadows -R6i.y = floatBitsToInt(min(intBitsToFloat(R125i.x), 1.0)); -PS0i = R6i.y; -// 21 -R1i.x = 0; -R3i.y = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); -R2i.z = PV0i.w; -// tweak reflectivity of surfaces -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(R6i.z)) + intBitsToFloat(R6i.z))); -R3i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); -PS1i = R3i.x; -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(uf_remappedPS[7].w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(uf_remappedPS[7].w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R3i.x)) + 1.5)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R3i.x)) + 1.5)); -PV0i.w = R123i.w; -R124i.y = R4i.z & 0x000000fc; -PS0i = R124i.y; -// 1 -R2i.x = PV0i.w; -R2i.y = PV0i.z; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(uf_remappedPS[7].w))); -// edit here for Plastic look -//(R3i.w)*.01 -// R3i.w how plastic a surface can look. Seems to change how much the bump mapping affects the surface .01 pure plastic - 65 nearly only the light grey cloud-ish texutre over top characters. -// Combine pure plastic with low specular further down in the file to make a more matte look -R127i.w = floatBitsToInt(intBitsToFloat(R3i.w)*$clarity + intBitsToFloat(0x3c23d70a)); -R127i.w = clampFI32(R127i.w); -R125i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + 1.0); -PS1i = R125i.w; -// 2 more sun -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.z),intBitsToFloat(R1i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(R1i.z),intBitsToFloat(R1i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = int(intBitsToFloat(R3i.y)); -PS0i = R127i.y; -// 3 dot product makes brightness of sun on characters and land can totally knock out sun -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z)),vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R124i.z)),-(intBitsToFloat(R1i.x))))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = tempi.x; -// pv0i.x messes saturation of clothing -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -// edit here -// R127i.w seems to control how shiny stuff is and amount of bloom it gives off -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -R127i.x = floatBitsToInt(float(R124i.y)); -PS0i = R127i.x; -// 5 -backupReg0i = R125i.w; -backupReg0i = R125i.w; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.x = R124i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.y = R124i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[7].w))); -PV1i.z = R126i.z; -R125i.w = floatBitsToInt((intBitsToFloat(R6i.z) * 0.5 + 0.5)); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); -PS1i = R125i.z; -// 6 dot product makes specular highlight on charactes but not inverse. Lower is lower -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z)),vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),-(intBitsToFloat(R1i.w))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = R127i.y & int(1); -PS0i = R126i.x; -// 7 -// dot product is finding the specular on characters -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R124i.z)),-0.0),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R126i.z)),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 8 r127i.x how bright metal is -R1i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3b820821)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R125i.w))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) / 2.0); -// edit here Specular? -// charactr specular highlight intBitsToFloat(R127i.z)*3 -// higher number = less highlight less than 1 = more highlight. -// good combo with plastic to remove shiny 45 -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(R125i.z)) + intBitsToFloat(R125i.z))); -PS0i = R122i.x; -// 9 -backupReg0i = R126i.x; -R126i.x = R126i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); -R124i.y = ((backupReg0i == 0)?(0):(0x3f800000)); -PS1i = R124i.y; -// 10 -backupReg0i = R127i.w; -R7i.x = R126i.w; -R7i.x = clampFI32(R7i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.z) + 1.0); -R124i.z = floatBitsToInt((-(intBitsToFloat(R1i.x)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R6i.y))); -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PS0i = R122i.x; -// 11 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -// how shiny is metal rli.x -R7i.z = floatBitsToInt((intBitsToFloat(R1i.x) * 0.25 + 0.25)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(backupReg0i))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -// 12 -backupReg0i = R124i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R127i.w)); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R7i.x))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.z))); -PS0i = R125i.x; -// 13 -backupReg0i = R127i.y; -backupReg1i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.z))); -PV1i.y = R127i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.z))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(backupReg1i)); -PS1i = R127i.w; -// 14 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),-(intBitsToFloat(R125i.y))) + intBitsToFloat(PV1i.z))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),-(intBitsToFloat(R124i.y))) + intBitsToFloat(PV1i.z))); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),-(intBitsToFloat(R125i.y))) + intBitsToFloat(R125i.x))); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R125i.y))) + intBitsToFloat(PV1i.y))); -R6i.y = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS0i = R6i.y; -// 15 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),-(intBitsToFloat(R124i.y))) + intBitsToFloat(R125i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(R124i.y))) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R127i.w))); -R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -PS1i = R127i.z; -// 16 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(R125i.w)); -R126i.y = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(backupReg0i)); -R5i.z = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(backupReg1i)); -R125i.w = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(R124i.z)); -R6i.z = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(PV1i.y)); -PS0i = R6i.z; -// 17 -PV1i.x = floatBitsToInt(0.25 * intBitsToFloat(R6i.y)); -R6i.y = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(R126i.x)); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R126i.z))); -R3i.w = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R3i.w = clampFI32(R3i.w); -R0i.w = floatBitsToInt((intBitsToFloat(R8i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 18 -R0i.x = floatBitsToInt((intBitsToFloat(R8i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R0i.x = clampFI32(R0i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.x))); -PS0i = R4i.z & int(1); -// 19 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x), intBitsToFloat(PV0i.w))); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z), intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y), intBitsToFloat(PV0i.z))); -R3i.z = floatBitsToInt(float(PS0i)); -PS1i = R3i.z; -// 20 -R4i.x = R10i.x; -R4i.y = R10i.y; -R4i.z = floatBitsToInt(roundEven(1.0)); -R8i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R9i.xy)).x); -R12i.xzw = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R10i.xy)).xzw); -R13i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z))).xyz); -R4i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xyz); -R2i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R2i.xy),R2i.z),cubeMapArrayIndex8),intBitsToFloat(R2i.w)).xyz); -R10i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R10i.xy)).xyz); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),-(intBitsToFloat(R7i.z))) + intBitsToFloat(R12i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R12i.w) * 0.5 + 0.5)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R8i.w)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(R7i.x))); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R12i.z))); -PS0i = R125i.x; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.y)); -PV1i.y = clampFI32(PV1i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R5i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R6i.x))); -// r7i.z shadow brightness PV0i.x shadow highlight brightness -R126i.x = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(PV0i.x)); -PS1i = R126i.x; -// 2 more edge lights in shadow -R127i.x = floatBitsToInt(-(intBitsToFloat(R11i.x)) + intBitsToFloat(PV1i.w)); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R11i.y)) + intBitsToFloat(PV1i.z)); -PV0i.y = R126i.y; -// R9i.z tonemapping? brightnss of sun on bright surfaces vs nearby dark. Ratio of Rlli.xy above vs r9i.z below. Values tested (R11i.x and y)*.5) (R9i.z)*.1 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV1i.x)); -// brightness of sun -R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV1i.y))); - -// uf_remappedps[9].x carries specular highlight of sun on shiny surfaces -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R125i.w))); - - -PS0i = R124i.y; -// 3 produces edge highlights on the shadowed edge -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R12i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R5i.z))); -PS1i = R125i.y; -// 4 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R6i.z))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -// 5 -backupReg0i = R125i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R7i.w))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(R4i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R6i.y))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R126i.y)) + intBitsToFloat(R4i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R4i.z))); -PV0i.w = R123i.w; -// 7 -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.w))); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.z))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 8 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R125i.x))); -PS0i = R4i.w; -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); -PV0i.y = clampFI32(PV0i.y); -// 11 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.z)) + 1.0)); -PV1i.y = R123i.y; -// 12 PVli.y seems to be a scalar for ambient light in the shadows -backupReg0i = R1i.x; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -// 0 r3i.xyz ambient light in the shadows -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(R8i.w)) + intBitsToFloat(R13i.x))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z),intBitsToFloat(R8i.w)) + intBitsToFloat(R13i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(R8i.w)) + intBitsToFloat(R13i.y))); -PV0i.w = R123i.w; -// 1 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R1i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R1i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R1i.x))); -// 2 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R0i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(backupReg0i))); -// 3PV0i sun color/brightness on land -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.z = R123i.z; -// 4 R2i.xy r8i.z brightness of reflectd sky light on shadowed surfaces kinda like rimlighting PVli.xyz brightness of run on land -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.y) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.z)); -// 5 PV0i.xyz color / brightness of sun Rl0i.xyz color / brightness of fog over land and sky -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R10i.y))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R10i.z))); -// export -passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/rules.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/rules.txt deleted file mode 100644 index 07c7e1c2..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_AmiiboMode/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Amiibo Mode" -path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Amiibo Mode" -description = Amiibo mode by Altros, add or remove that plastic look. Req Remove Links Cell Shading by SkalFate -version = 4 - - -[Preset] -name = Plastic %100 -$clarity = 0.05 - -[Preset] -name = Plastic %95 -$clarity = 0.15 - -[Preset] -name = Plastic %90 -$clarity = 0.30 - -[Preset] -name = Plastic %85 -$clarity = 0.37 - -[Preset] -name = Plastic %75 -$clarity = 0.43 - -[Preset] -name = Plastic %65 -$clarity = 0.50 - -[Preset] -name = Plastic %55 -$clarity = 0.57 - -[Preset] -name = Plastic %45 -$clarity = 0.65 - -[Preset] -name = Plastic %35 -$clarity = 0.75 - -[Preset] -name = Plastic %25 -$clarity = 0.95 - -[Preset] -name = Plastic %15 -$clarity = 1.15 - -[Preset] -name = Plastic %5 -$clarity = 1.35 diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/2f7ecb9f0022d8ca_0000000000000001_ps.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/2f7ecb9f0022d8ca_0000000000000001_ps.txt deleted file mode 100644 index 2f092638..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/2f7ecb9f0022d8ca_0000000000000001_ps.txt +++ /dev/null @@ -1,116 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 2f7ecb9f0022d8ca -- Pixel shader for Links Cel Shading World & Menu - Texture format 0x005d -#define mode $mode - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; - -R0i = floatBitsToInt(passParameterSem0); // comes from 3 vertex shaders, one of them handles the lighting that glitches the sky(314b77349f0636db), so lets exclude it - -if (passParameterSem0.w == 4.0) -{ - R0i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); - - // 0 - PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) * intBitsToFloat(0x437f0000)); - R127i.y = int(uint(intBitsToFloat(R0i.z))); - PS0i = R127i.y; - - // 1 - if ( mode > 1) // if mode is greater than 1 then run our own code - { - // very interesting - Replace PS1i(which is integer) with any of these numbers, there are like 4 diff modes that repeat through diff integers, [4,6,7,8,10,11] [-5 -9 -10 -12 -18 -19 -25 -26 -28 -34 -40 -41 -42] - PS1i = int(mode); - } - else - { - PS1i = int(uint(intBitsToFloat(PV0i.x))); // orignal code - } - - // 2 - PV0i.z = R127i.y & PS1i; - - // 3 - PS1i = floatBitsToInt(float(uint(PV0i.z))); - - // 4 - R0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3b808081)); -} -else -{ - R0i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); - - // 0 - PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) * intBitsToFloat(0x437f0000)); - R127i.y = int(uint(intBitsToFloat(R0i.z))); - PS0i = R127i.y; - - // 1 - PS1i = int(uint(intBitsToFloat(PV0i.x))); // orignal code - - // 2 - PV0i.z = R127i.y & PS1i; - - // 3 - PS1i = floatBitsToInt(float(uint(PV0i.z))); - - // 4 - R0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3b808081)); -} - -// export -gl_FragDepth = vec4(intBitsToFloat(R0i.x), 0, 0, 0).x; -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77345f06369b_0000000000000000_vs.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77345f06369b_0000000000000000_vs.txt deleted file mode 100644 index a89129db..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77345f06369b_0000000000000000_vs.txt +++ /dev/null @@ -1,114 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 314b77345f06369b -- Vertex shader for Links Cel Shading - Texture format 0x005d - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -// 0 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = backupReg0i; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); -R1i.y = backupReg1i; -R1i.y = floatBitsToInt(intBitsToFloat(R1i.y) * 2.0); -R1i.z = 0x3f800000; -R0i.w = 0; -R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x437f0000)); -PS0i = R3i.z; -R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy; -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -// 0 -R127i.z = floatBitsToInt(float(R0i.x)); -PS0i = R127i.z; -// 1 -R127i.y = floatBitsToInt(float(R0i.y)); -PS1i = R127i.y; -// 2 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 3 -R3i.x = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 4 -R3i.y = floatBitsToInt((-(intBitsToFloat(PS1i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.y))); - -// export -passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), 4.0); // we change R3i.w to 4 and send to to FS to catch it -// Multiplying xy by 200 minimizes the overlay and removes cel-shading, and multiplying z by 2 makes light shading -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77349f0636db_0000000000000000_vs.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77349f0636db_0000000000000000_vs.txt deleted file mode 100644 index f63c2704..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b77349f0636db_0000000000000000_vs.txt +++ /dev/null @@ -1,112 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 314b77349f0636db -- Vertex Shader -- Lights up Cel-Shade Link and NPCs but also messes up the sky in the new methods - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -// 0 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = backupReg0i; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); -R1i.y = backupReg1i; -R1i.y = floatBitsToInt(intBitsToFloat(R1i.y) * 2.0); -R1i.z = 0x3f800000; -R0i.w = 0; -R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x437f0000)); -PS0i = R3i.z; -R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy; -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -// 0 -R127i.z = floatBitsToInt(float(R0i.x)); -PS0i = R127i.z; -// 1 -R127i.y = floatBitsToInt(float(R0i.y)); -PS1i = R127i.y; -// 2 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 3 -R3i.x = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 4 -R3i.y = floatBitsToInt((-(intBitsToFloat(PS1i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.y))); -// export -passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.z)); // propety w is not set to 4.0 so it wont get processed the same way as the other 2 vertex shader -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b7734df06371b_0000000000000000_vs.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b7734df06371b_0000000000000000_vs.txt deleted file mode 100644 index 2c0c563b..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/314b7734df06371b_0000000000000000_vs.txt +++ /dev/null @@ -1,118 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 314b7734df06371b -- Vertex Shader for Water/Magma and etc, one of the 3 vertex shaders involved with cel-shade removal - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); - -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); - -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); - -// 0 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = backupReg0i; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); -R1i.y = backupReg1i; -R1i.y = floatBitsToInt(intBitsToFloat(R1i.y) * 2.0); -R1i.z = 0x3f800000; -R0i.w = 0; -R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x437f0000)); -PS0i = R3i.z; - -R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy; - -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); - -// 0 -R127i.z = floatBitsToInt(float(R0i.x)); -PS0i = R127i.z; -// 1 -R127i.y = floatBitsToInt(float(R0i.y)); -PS1i = R127i.y; -// 2 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 3 -R3i.x = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 4 -R3i.y = floatBitsToInt((-(intBitsToFloat(PS1i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.y))); -// export -passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), 4.0); -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/rules.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/rules.txt deleted file mode 100644 index e223172a..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_CelShadingRemoval/rules.txt +++ /dev/null @@ -1,28 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = All NPC No Cel-Shading Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Main" -description = Changes the type of shading on Link and the world. -version = 4 - -[Preset] -name = Cel-Shading Disabled -$mode = 4 - -[Preset] -name = Light Shading -$mode = 6 - -[Preset] -name = Painting Shading (World) -$mode = 8 - -[Preset] -name = Painting Shading (World & Link) -$mode = 10 - -[Preset] -name = Normal Mode -$mode = 0 - -# Credits - SkalFate & Altros \ No newline at end of file diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/57cecf2ed6c8e3f0_00000003c9249749_ps.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/57cecf2ed6c8e3f0_00000003c9249749_ps.txt deleted file mode 100644 index e85d4f6d..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/57cecf2ed6c8e3f0_00000003c9249749_ps.txt +++ /dev/null @@ -1,980 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 57cecf2ed6c8e3f0 -- -- Fragment Shader where links gets drawn in the menu - -#ifdef VULKAN -layout(set = 1, binding = 10) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[29]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[29]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(2, 1, 0) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 1) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 7) uniform sampler2DArrayShadow textureUnitPS10; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(17, 1, 9) uniform sampler2D textureUnitPS17; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R26i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex9 = 0.0; - -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem4); -R3i = floatBitsToInt(passParameterSem5); -R4i = floatBitsToInt(passParameterSem6); - -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R8i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R4i.zw)).xyzw); -R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); -R7i.xyzw = floatBitsToInt(textureGather(textureUnitPS8, intBitsToFloat(R0i.xy)).xyzw); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); - -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R8i.x) * 2.0 + -(1.0))); -R127i.y = floatBitsToInt((intBitsToFloat(R8i.y) * 2.0 + -(1.0))); -R127i.z = floatBitsToInt((intBitsToFloat(R8i.z) * 2.0 + -(1.0))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R124i.w; -R125i.x = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(R6i.x)); -PS0i = R125i.x; -// 1 -R20i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R20i.x; -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R9i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[2].y))); -R125i.w = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(R6i.y)); -PS1i = R125i.w; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[3].x))); -PS0i = R126i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R20i.x),intBitsToFloat(R10i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R20i.x),intBitsToFloat(R10i.y),intBitsToFloat(R9i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -R21i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.x), intBitsToFloat(uf_remappedPS[4].x))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(R6i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(R6i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 6 -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(PV1i.y))); -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.x), intBitsToFloat(PS1i))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(PS1i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS1i))); -PS0i = R10i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = tempi.x; -R6i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[3].w) + intBitsToFloat(PV0i.z)); -PS1i = R6i.x; -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.w; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R7i.x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.x), intBitsToFloat(uf_remappedPS[5].x))); -R6i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(backupReg0i)); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R7i.y)); -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(backupReg1i)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -PS0i = R127i.z; -// 9 -R7i.x = floatBitsToInt(roundEven(0.0)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(R7i.w)); -R125i.z = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(R7i.z)); -R6i.w = 0; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(uf_remappedPS[5].y)) + intBitsToFloat(PV0i.y))); -PS1i = R124i.x; -// 10 -backupReg0i = R125i.w; -backupReg0i = R125i.w; -backupReg1i = R127i.x; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R125i.x), -(intBitsToFloat(R125i.x)))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt(max(intBitsToFloat(R126i.z), -(intBitsToFloat(R126i.z)))); -R125i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -R125i.y = floatBitsToInt(max(intBitsToFloat(backupReg1i), -(intBitsToFloat(backupReg1i)))); -PS0i = R125i.y; -// 11 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg1i = R127i.y; -backupReg2i = R125i.z; -backupReg2i = R125i.z; -R126i.x = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 4.0); -R127i.y = floatBitsToInt(max(intBitsToFloat(backupReg1i), -(intBitsToFloat(backupReg1i)))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 4.0); -R125i.z = floatBitsToInt(max(intBitsToFloat(backupReg2i), -(intBitsToFloat(backupReg2i)))); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) * 4.0); -PV1i.w = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -R14i.z = R7i.x; -PS1i = R14i.z; -// 12 -backupReg0i = R125i.w; -R5i.x = floatBitsToInt((intBitsToFloat(R6i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R5i.y = floatBitsToInt((intBitsToFloat(R6i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R15i.z = R7i.x; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(R124i.x))); -PV0i.w = R123i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PS0i = R125i.w; -// 13 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(R126i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R125i.y)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R7i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) + intBitsToFloat(PV0i.w)); -R16i.z = R7i.x; -PS1i = R16i.z; -// 14 -R127i.x = floatBitsToInt(-(intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.y)); -PV0i.x = R127i.x; -R7i.y = 0x3f800000; -R17i.z = R7i.x; -R125i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.w = R125i.w; -R11i.w = uf_remappedPS[6].z; -PS0i = R11i.w; -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R21i.x),intBitsToFloat(R13i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R12i.y),intBitsToFloat(R12i.w),intBitsToFloat(R10i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.z = tempi.x; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -PS1i = R127i.z; -// 16 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(fract(intBitsToFloat(R2i.x))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.w))); -R5i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].w))); -R125i.w = floatBitsToInt(fract(intBitsToFloat(R2i.y))); -PV0i.w = R125i.w; -PS0i = R21i.x; -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 17 -PV1i.x = R12i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(PV0i.w)); -PV1i.y = clampFI32(PV1i.y); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.x)); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = R13i.y; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -R7i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R12i.y))); -PS1i = R7i.x; -// 18 -R10i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R10i.z))); -R6i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R12i.w))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); -R9i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) * intBitsToFloat(0x3ba3d70a)); -PS0i = R9i.w; -// 19 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.x))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(R0i.y))); -R2i.z = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -R18i.w = floatBitsToInt((-(intBitsToFloat(R8i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -R2i.w = floatBitsToInt(max(-(intBitsToFloat(R125i.z)), 0.0)); -PS1i = R2i.w; -// 20 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R10i.x),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.w = floatBitsToInt(-(intBitsToFloat(R8i.w)) + 1.0); -PS0i = R5i.w; -// 21 -R11i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R10i.x),0.0))); -PV1i.x = R11i.x; -PV1i.y = R11i.x; -PV1i.z = R11i.x; -PV1i.w = R11i.x; -R11i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R11i.z; -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.w),intBitsToFloat(R6i.z),intBitsToFloat(R7i.y)),vec4(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(uf_remappedPS[9].z),intBitsToFloat(uf_remappedPS[9].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.w = 0; -PS0i = R10i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.w),intBitsToFloat(R6i.z),intBitsToFloat(R7i.y)),vec4(intBitsToFloat(uf_remappedPS[10].x),intBitsToFloat(uf_remappedPS[10].y),intBitsToFloat(uf_remappedPS[10].z),intBitsToFloat(uf_remappedPS[10].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R127i.y; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.w),intBitsToFloat(R6i.z),intBitsToFloat(R7i.y)),vec4(intBitsToFloat(uf_remappedPS[11].x),intBitsToFloat(uf_remappedPS[11].y),intBitsToFloat(uf_remappedPS[11].z),intBitsToFloat(uf_remappedPS[11].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R9i.x; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(R12i.y) + intBitsToFloat(uf_remappedPS[12].x)); -PV1i.x = R127i.x; -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.y))); -R125i.z = floatBitsToInt(intBitsToFloat(R12i.w) + intBitsToFloat(uf_remappedPS[12].y)); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R10i.z) + intBitsToFloat(uf_remappedPS[12].z)); -PV1i.w = R125i.w; -R127i.w = int(intBitsToFloat(R2i.z)); -PS1i = R127i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(min(intBitsToFloat(R2i.w), 1.0)); -PS0i = R127i.z; -// 5 -R126i.x = floatBitsToInt((intBitsToFloat(R5i.w) * 0.5 + 0.5)); -R127i.y = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),intBitsToFloat(R5i.w)) + intBitsToFloat(R5i.w))); -PV1i.z = R123i.z; -R13i.w = 0; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 6 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -PV0i.y = R127i.w & 0x000000fc; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x3c23d70a)); -PS0i = clampFI32(PS0i); -// 7 -R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -R20i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R126i.x))); -R20i.y = floatBitsToInt(intBitsToFloat(R20i.y) / 2.0); -PV1i.y = R20i.y; -R123i.z = floatBitsToInt((-(intBitsToFloat(R8i.w)) * intBitsToFloat(0x40400000) + 4.0)); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -PV1i.w = R125i.w; -PS1i = floatBitsToInt(float(PV0i.y)); -// 8 -R24i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3b820821)); -PV0i.x = R24i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R2i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[13].x) + -(intBitsToFloat(uf_remappedPS[14].x))); -R124i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R124i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.z))); -R123i.y = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PV1i.y = R123i.y; -R8i.z = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.25 + 0.25)); -R7i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[13].y) + -(intBitsToFloat(uf_remappedPS[14].y))); -R125i.w = floatBitsToInt(intBitsToFloat(R20i.y) + intBitsToFloat(PV0i.y)); -PS1i = R125i.w; -// 10 -R13i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[13].z) + -(intBitsToFloat(uf_remappedPS[14].z))); -R21i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R24i.x)) + intBitsToFloat(PV1i.y))); -PV0i.y = R21i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R124i.w))); -PV0i.z = R127i.z; -R19i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R24i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R19i.w; -R22i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R24i.x)) + intBitsToFloat(PV1i.y))); -PS0i = R22i.x; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(PS0i))); -PV1i.x = R123i.x; -R22i.y = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R22i.y = clampFI32(R22i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -// 12 -R23i.x = floatBitsToInt(0.25 * intBitsToFloat(PS1i)); -R7i.y = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.w)); -R6i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -R8i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.z)); -R13i.z = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R13i.z = clampFI32(R13i.z); -PS0i = R13i.z; -// 13 -R25i.x = floatBitsToInt((intBitsToFloat(R4i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R25i.x = clampFI32(R25i.x); -R4i.y = R0i.y; -R7i.z = 0; -PV1i.w = R127i.w & int(1); -R4i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(uf_remappedPS[6].z)); -PS1i = R4i.x; -// 14 -R8i.x = R0i.x; -R8i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(uf_remappedPS[6].w)); -R26i.w = floatBitsToInt(float(PV1i.w)); -PS0i = R26i.w; -R4i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R4i.xy)).x); -R8i.y = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R8i.xy)).x); -R19i.xyz = floatBitsToInt(textureLod(textureUnitPS17, intBitsToFloat(R5i.xy),0.0).xyz); -R9i.w = floatBitsToInt(textureLod(textureUnitPS6, intBitsToFloat(R9i.xy),intBitsToFloat(R9i.w)).x); -R2i.x = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R2i.xy)).w); -// 0 -backupReg0i = R2i.x; -backupReg0i = R2i.x; -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * 0.5 + 0.5)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R8i.y)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.y = R127i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R4i.z)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R8i.z))) + intBitsToFloat(backupReg0i))); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), -(intBitsToFloat(PV0i.z)))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), -(intBitsToFloat(PV0i.z)))); -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), -(intBitsToFloat(PV0i.y)))); -PS1i = R126i.x; -// 2 -backupReg0i = R127i.y; -R127i.xyz = floatBitsToInt(vec3(-(intBitsToFloat(R9i.z)),-(intBitsToFloat(R10i.y)),-(intBitsToFloat(R20i.x))) + vec3(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x))); -PV0i.x = R127i.x; -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R127i.w = floatBitsToInt(-(intBitsToFloat(R20i.x)) + intBitsToFloat(PV1i.y)); -PS0i = R127i.w; -// 3 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(uf_remappedPS[15].w))); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.w)); -R125i.z = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(R126i.x)); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedPS[15].w))); -PS1i = R3i.y; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(uf_remappedPS[15].w))); -R125i.x = uf_remappedPS[16].y; -PS0i = R125i.x; -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x))); -PV1i.x = R127i.x; -R125i.y = uf_remappedPS[17].y; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.z))); -PV1i.z = R125i.z; -R124i.w = uf_remappedPS[18].y; -R127i.w = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(R125i.w)); -PS1i = R127i.w; -// 6 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(PV1i.z)),-0.0),vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(PV1i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.x = floatBitsToInt(intBitsToFloat(R9i.w) + intBitsToFloat(uf_remappedPS[19].z)); -R6i.x = clampFI32(R6i.x); -PS0i = R6i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[20].x),intBitsToFloat(uf_remappedPS[20].y),intBitsToFloat(uf_remappedPS[20].z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R10i.x),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.y = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].w), intBitsToFloat(uf_remappedPS[15].w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.z)), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.y)), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(PS1i))); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R7i.y))); -PS0i = R8i.z; -// 9 -R126i.x = floatBitsToInt((intBitsToFloat(R21i.x) * 1.5 + intBitsToFloat(PV0i.w))); -PV1i.x = R126i.x; -R126i.y = floatBitsToInt((intBitsToFloat(R13i.y) * 1.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt((intBitsToFloat(R12i.z) * 1.5 + intBitsToFloat(PV0i.y))); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R21i.x) + intBitsToFloat(PV0i.w)); -R127i.y = floatBitsToInt(intBitsToFloat(R13i.y) + intBitsToFloat(PV0i.z)); -PS1i = R127i.y; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.x))); -PS0i = R8i.y; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R127i.y),intBitsToFloat(R6i.w),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R127i.y),intBitsToFloat(R6i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 12 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R8i.w))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R6i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(0x3a83126f) * intBitsToFloat(PS1i)); -R6i.w = uf_remappedPS[21].x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 13 -backupReg0i = R125i.z; -backupReg1i = R127i.y; -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(R20i.x))); -R7i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(R10i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS0i))); -PV1i.z = R125i.z; -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(R9i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); -PS1i = R127i.y; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R12i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), -(intBitsToFloat(R10i.w)))); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3dcccccd)); -PS0i = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3f3504f3)); -// 15 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R125i.z; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(backupReg1i))); -R125i.z = floatBitsToInt((intBitsToFloat(backupReg2i) * intBitsToFloat(0xbf3504f3) + intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),-(intBitsToFloat(R5i.w))) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R13i.y)) + intBitsToFloat(PV0i.x))); -PS1i = R126i.x; -// 16 -redcCUBE(vec4(intBitsToFloat(R11i.z),intBitsToFloat(R11i.z),intBitsToFloat(R11i.x),intBitsToFloat(R11i.y)),vec4(intBitsToFloat(R11i.y),intBitsToFloat(R11i.x),intBitsToFloat(R11i.z),intBitsToFloat(R11i.z)),cubeMapSTM,cubeMapFaceId); -R124i.x = floatBitsToInt(cubeMapSTM.x); -R124i.y = floatBitsToInt(cubeMapSTM.y); -R124i.z = floatBitsToInt(cubeMapSTM.z); -R124i.w = cubeMapFaceId; -PV0i.x = R124i.x; -PV0i.y = R124i.y; -PV0i.z = R124i.z; -PV0i.w = R124i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.y),-(intBitsToFloat(R3i.y))) + intBitsToFloat(PV1i.w))); -PS0i = R122i.x; -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R21i.x),-(intBitsToFloat(R3i.x))) + intBitsToFloat(PS0i))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); -R18i.z = PV0i.w; -R123i.w = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0x3f3504f3) + intBitsToFloat(R125i.z))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); -// 18 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + 1.5)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS1i)) + 1.5)); -PV0i.w = R123i.w; -R1i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + -(0.5)); -R1i.z = clampFI32(R1i.z); -PS0i = R1i.z; -// 19 -R18i.x = PV0i.w; -R18i.y = PV0i.y; -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.x),intBitsToFloat(PV0i.z)) + -(intBitsToFloat(PV0i.z)))); -PV1i.w = R124i.w; -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(R21i.x)) + intBitsToFloat(R126i.x))/2.0); -PV0i.z = R123i.z; -// 21 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -// 22 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 23 -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(PS0i))); -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedPS[22].x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedPS[23].x))); -// 1 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(uf_remappedPS[23].y)) + intBitsToFloat(PV0i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedPS[24].x))); -// 2 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(uf_remappedPS[22].y)) + intBitsToFloat(backupReg0i))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedPS[25].x))); -// 3 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(uf_remappedPS[24].y)) + intBitsToFloat(R124i.z))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(uf_remappedPS[23].z)) + intBitsToFloat(backupReg0i))); -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(uf_remappedPS[25].y)) + intBitsToFloat(R125i.z))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(uf_remappedPS[22].z)) + intBitsToFloat(backupReg0i))); -// 5 -backupReg0i = R124i.y; -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(uf_remappedPS[24].z)) + intBitsToFloat(R125i.x))); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[23].w) + intBitsToFloat(backupReg0i)); -// 6 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(uf_remappedPS[25].z)) + intBitsToFloat(R126i.x))); -PV0i.y = R123i.y; -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[22].w) + intBitsToFloat(R127i.y)); -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R125i.z; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[25].w) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[24].w) + intBitsToFloat(R124i.y)); -// 8 -backupReg0i = R2i.w; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R125i.z))); -PV0i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R125i.z))); -PV0i.y = R124i.y; -R125i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xba83126f)); -R125i.z = clampFI32(R125i.z); -PV0i.z = R125i.z; -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y)) + intBitsToFloat(uf_remappedPS[14].x))); -R7i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(R1i.y)) + intBitsToFloat(uf_remappedPS[14].y))); -PS0i = R7i.y; -// 9 -R14i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0x39800000)); -R14i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0x39800000)); -R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.x),intBitsToFloat(R1i.y)) + intBitsToFloat(uf_remappedPS[14].z))); -R14i.w = PV0i.z; -R15i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0x39800000)); -PS1i = R15i.x; -// 10 -R16i.x = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(0xb9800000)); -R15i.y = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(0xb9800000)); -R15i.w = R125i.z; -R16i.y = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(0x39800000)); -PS0i = R16i.y; -// 11 -R17i.x = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(0xb9800000)); -R17i.y = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(0xb9800000)); -R16i.w = R125i.z; -R17i.w = R125i.z; -PS1i = R17i.w; -R14i.w = floatBitsToInt(texture(textureUnitPS10, vec4(intBitsToFloat(R14i.x),intBitsToFloat(R14i.y),intBitsToFloat(R14i.z),intBitsToFloat(R14i.w)))); -R15i.z = floatBitsToInt(texture(textureUnitPS10, vec4(intBitsToFloat(R15i.x),intBitsToFloat(R15i.y),intBitsToFloat(R15i.z),intBitsToFloat(R15i.w)))); -R16i.y = floatBitsToInt(texture(textureUnitPS10, vec4(intBitsToFloat(R16i.x),intBitsToFloat(R16i.y),intBitsToFloat(R16i.z),intBitsToFloat(R16i.w)))); -R17i.x = floatBitsToInt(texture(textureUnitPS10, vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R17i.z),intBitsToFloat(R17i.w)))); -R0i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R18i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R18i.xy),R18i.z),cubeMapArrayIndex9),intBitsToFloat(R18i.w)).xyz); -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R19i.x),intBitsToFloat(R19i.y),intBitsToFloat(R19i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[26].x),intBitsToFloat(uf_remappedPS[26].y),intBitsToFloat(uf_remappedPS[26].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(R14i.w) + intBitsToFloat(R15i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 1 -backupReg0i = R0i.x; -backupReg1i = R8i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[1].x))); -PV1i.y = R123i.y; -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.x), intBitsToFloat(backupReg1i))); -R123i.w = floatBitsToInt((intBitsToFloat(R16i.y) * 0.5 + intBitsToFloat(PS0i))); -PV1i.w = R123i.w; -R15i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.y), intBitsToFloat(R10i.x))); -PS1i = R15i.z; -// 2 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.y)), intBitsToFloat(R1i.x))); -R123i.z = floatBitsToInt((intBitsToFloat(R17i.x) * 0.5 + intBitsToFloat(PV1i.w))/2.0); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.y)), intBitsToFloat(R11i.y))); -// 3 -R125i.x = floatBitsToInt(-(intBitsToFloat(R20i.x)) + intBitsToFloat(PV0i.y)); -R124i.y = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.x))); -R124i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.w)); -PV1i.w = R124i.w; -R18i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(R6i.y))); -PS1i = R18i.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PV1i.w))); -R6i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV1i.z)); -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.y),intBitsToFloat(R12i.w),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R125i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.w))); -PV0i.z = R123i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 8 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 9 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS0i))); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x38d1b717)); -PV0i.x = clampFI32(PV0i.x); -// 11 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R1i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -// 12 -backupReg0i = R6i.w; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(backupReg0i))); -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(uf_remappedPS[15].w))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].y), intBitsToFloat(uf_remappedPS[15].w))); -// 1 -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].z), intBitsToFloat(uf_remappedPS[15].w))); -PV1i.z = R125i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(PV1i.z)),-0.0),vec4(-(intBitsToFloat(R3i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R5i.w)),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(uf_remappedPS[27].z)) + intBitsToFloat(uf_remappedPS[19].y))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 3 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), -(intBitsToFloat(R13i.w)))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),-(intBitsToFloat(R125i.z))) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R125i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R21i.x),intBitsToFloat(R13i.y),intBitsToFloat(PV0i.x),0.0),vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R124i.y)),1.0,0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PS1i = R122i.x; -// 6 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R2i.x)); -PV0i.y = clampFI32(PV0i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R20i.y))) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -PV0i.w = R125i.w; -// 7 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(R20i.y) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.w),-(intBitsToFloat(PV0i.x))) + intBitsToFloat(R19i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R21i.y),-(intBitsToFloat(PV0i.x))) + intBitsToFloat(R21i.y))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.x),-(intBitsToFloat(PV0i.x))) + intBitsToFloat(R22i.x))); -PS1i = R122i.x; -// 8 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.z)); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.w)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].x), intBitsToFloat(R125i.w))); -R125i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].x),intBitsToFloat(R125i.x)) + intBitsToFloat(R2i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].y),intBitsToFloat(R125i.x)) + intBitsToFloat(R7i.y))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R8i.y))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].z),intBitsToFloat(R125i.x)) + intBitsToFloat(R11i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R1i.w))); -PS1i = R124i.z; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R24i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R23i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R23i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R23i.x))); -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R24i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PS0i = R122i.x; -// 11 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R124i.z))); -PV1i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R24i.x)),intBitsToFloat(R124i.w)) + intBitsToFloat(R124i.w))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R22i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R13i.z))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].x), intBitsToFloat(PV0i.y))); -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R8i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].y), intBitsToFloat(R125i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R25i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[28].z), intBitsToFloat(R127i.z))); -R122i.x = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PS0i = R122i.x; -// 13 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R124i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(R18i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(R15i.z))); -PV1i.w = R123i.w; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PS0i)); -PS1i = R127i.z; -// 14 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.y)); -PV0i.x = R126i.x; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + intBitsToFloat(0x3f7851ec)); -R124i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -PV0i.w = R124i.w; -// 15 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + intBitsToFloat(0x3f11eb85)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3f547ae1)); -R26i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(R127i.z))); -PS1i = R26i.x; -// 16 -R26i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(R126i.x))); -R26i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.w))); -// export -passPixelColor0 = vec4(intBitsToFloat(R26i.x), intBitsToFloat(R26i.y), intBitsToFloat(R26i.z), intBitsToFloat(R26i.w)); -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/f4e1147ab34a1677_0000000000000000_vs.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/f4e1147ab34a1677_0000000000000000_vs.txt deleted file mode 100644 index 4dc65925..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/f4e1147ab34a1677_0000000000000000_vs.txt +++ /dev/null @@ -1,235 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader f4e1147ab34a1677 -- Vertex Shader where links gets drawn in the menu - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 2) out vec4 passParameterSem4; -layout(location = 3) out vec4 passParameterSem5; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 4) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; - -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); - -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); - -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); - -// 0 -backupReg0i = R0i.x; -PV0i.x = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.y = 0x3f800000; // subtracting brings the black box top side down -PV0i.z = 0x3f800000; // subtracting slants down diagonally -PV0i.w = 0x40400000; -R127i.z = 0xbf800000; // unnecssary left side, extends the black box -PS0i = R127i.z; - -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x3b808081)); -R123i.y = ((PV0i.x == 0)?(PV0i.w):(0xbf800000)); -PV1i.y = R123i.y; -R126i.z = uf_remappedVS[1].z; -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0); -R123i.w = ((PV0i.x == 0)?(PV0i.z):(0xc0400000)); -PV1i.w = R123i.w; -R1i.w = 0x3f800000; -PS1i = R1i.w; - -// 2 -R1i.x = ((R0i.x == 0)?(R127i.z):(PV1i.y)); -PV0i.x = R1i.x; -R1i.y = ((R0i.x == 0)?(R127i.y):(PV1i.w)); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); -R1i.z = floatBitsToInt(intBitsToFloat(R1i.z) * 2.0); -R125i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) / 2.0); -R4i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R4i.x = floatBitsToInt(intBitsToFloat(R4i.x) * 2.0); -PS0i = R4i.x; - -// 3 -- links lighting -R2i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PV1i.x = R2i.x; -R4i.y = uf_remappedVS[3].y; -R4i.y = floatBitsToInt(intBitsToFloat(R4i.y) * 2.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R127i.w = PV0i.x; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0); -R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -PS1i = R127i.x; -// 4 -- links lighting -R126i.x = floatBitsToInt(intBitsToFloat(R125i.w) + -(0.5)); -R2i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + 0.5)); -PV0i.y = R2i.y; -R6i.z = PV1i.x; -PV0i.z = R6i.z; -R124i.w = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5)); -R126i.w = floatBitsToInt(-(intBitsToFloat(R4i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0); -PS0i = R126i.w; -// 5 -- links lighting -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R125i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R126i.z)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R4i.y))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) / 2.0); -R6i.w = PV0i.y; -PV1i.w = R6i.w; -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(uf_remappedVS[4].z)); -PS1i = R127i.y; - -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.w))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.z))); -R126i.w = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(R124i.w)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.y))); -PS0i = R127i.w; -// 7 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(backupReg0i))); -R125i.y = uf_remappedVS[4].x; -R125i.y = floatBitsToInt(intBitsToFloat(R125i.y) / 2.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R126i.x)); -R125i.w = uf_remappedVS[4].y; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) / 2.0); -R0i.w = uf_remappedVS[4].z; -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -PS1i = R0i.w; -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R126i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R2i.y) + intBitsToFloat(backupReg0i)); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R124i.w)); -R127i.z = uf_remappedVS[4].w; -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(backupReg2i))); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PV1i.z))); -PS0i = R125i.x; -// 9 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R125i.y)) + 0.5)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R125i.w)) + 0.5)); -R4i.z = R126i.y; -R5i.w = floatBitsToInt(1.0); -R4i.w = R126i.z; -PS1i = R4i.w; -// 10 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R127i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R126i.x))); -R2i.z = R127i.w; -R2i.w = R127i.x; -R3i.z = R0i.w; -PS0i = R3i.z; -// 11 -R0i.z = R126i.w; -R3i.w = R127i.z; -R0i.w = R125i.x; -PS1i = R0i.w; - -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)) * 0); - -// export -passParameterSem0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -// export -passParameterSem5 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -// export -// skipped export to semanticId 255 -// export -passParameterSem6 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.x), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); // z= moves link left, w= moves link right, affects link cut out in menu -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/rules.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/rules.txt deleted file mode 100644 index be891e6f..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_MenuWorkaround/rules.txt +++ /dev/null @@ -1,9 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Cel-Shade Removal Start Menu Workaround Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Start Menu Workaround" -description = Start Menu Workaround -version = 4 - -[Preset] -name = Start Menu Workaround \ No newline at end of file diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/1c7db40ff5d693ab_001ffffe4924b249_ps.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/1c7db40ff5d693ab_001ffffe4924b249_ps.txt deleted file mode 100644 index fa1fdae0..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/1c7db40ff5d693ab_001ffffe4924b249_ps.txt +++ /dev/null @@ -1,1171 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - -// shader 1c7db40ff5d693ab -#ifdef VULKAN -layout(set = 1, binding = 11) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[33]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[33]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 4) out vec4 passPixelColor4; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 Temp0i = ivec4(0); -ivec4 Temp1i = ivec4(0); -ivec4 High0i = ivec4(0); -ivec4 Low0i = ivec4(0); -ivec4 Left0i = ivec4(0); -ivec4 Right0i = ivec4(0); -ivec4 YHigh0i = ivec4(0); -ivec4 YLow0i = ivec4(0); -ivec4 YLeft0i = ivec4(0); -ivec4 YRight0i = ivec4(0); -ivec4 BHigh0i = ivec4(0); -ivec4 BLow0i = ivec4(0); -ivec4 BLeft0i = ivec4(0); -ivec4 BRight0i = ivec4(0); -ivec4 LtBlueShadow = ivec4(0); -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex7 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); // no cel shading -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R15i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xw); -R4i.xy = floatBitsToInt(texture(textureUnitPS15, intBitsToFloat(R0i.xy)).xy); -R16i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R2i.zw)).xyz); -R14i.x = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R124i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.y = R125i.y; -R3i.z = 0; -R5i.w = 0x3f800000; -R126i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PS0i = R126i.y; -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[2].x)) + -(intBitsToFloat(uf_remappedPS[2].y)))); -R127i.w = clampFI32(R127i.w); -R126i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].w)) + 1.0); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[4].x))); -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[5].x))); -R10i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[5].y)) + intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[6].x))); -R125i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -R127i.w = floatBitsToInt(max(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[6].y)) + intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R0i.y; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(backupReg0i))); -PV1i.w = R123i.w; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PS1i = R3i.x; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.x = R123i.x; -R6i.y = floatBitsToInt(max(intBitsToFloat(R15i.x), intBitsToFloat(R127i.w))); -R9i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(PV1i.w)); -PV0i.z = R9i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(R125i.x))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R3i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.y = floatBitsToInt(tempResultf); -PS0i = R127i.y; -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) + intBitsToFloat(PV0i.w)); -PV1i.x = R5i.x; -R8i.y = PV0i.z; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(R127i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R4i.z = floatBitsToInt(tempResultf); -PS1i = R4i.z; -// 8 -R9i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3a83126f)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(R127i.y))); -R8i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[6].w) + intBitsToFloat(PV1i.z)); -PV0i.z = R8i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(R127i.y))); -R13i.x = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y))); -PS0i = R13i.x; -// 9 -R127i.x = uf_remappedPS[7].y; -R9i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3a83126f)); -R127i.z = uf_remappedPS[8].y; -R125i.w = floatBitsToInt(min(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 10 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[3].w))/2.0); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(0x2edbe6ff)); -R126i.z = uf_remappedPS[9].y; -R127i.w = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(0xbecccccd)); -R125i.x = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R125i.x; -// 11 -backupReg0i = R126i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[10].x)) + -(intBitsToFloat(uf_remappedPS[10].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R11i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(uf_remappedPS[11].y))); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40200001)); -R126i.w = clampFI32(R126i.w); -R14i.y = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R4i.y) + 1.0)); -PS1i = R14i.y; -// 12 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R127i.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 14 -R0i.x = floatBitsToInt(min(intBitsToFloat(R15i.x), intBitsToFloat(R125i.w))); -R12i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x41200000)); -R12i.y = clampFI32(R12i.y); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].z), intBitsToFloat(PS1i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(uf_remappedPS[3].z))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 15 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[13].x)) + intBitsToFloat(uf_remappedPS[14].w))); -R125i.x = clampFI32(R125i.x); -R127i.y = floatBitsToInt((intBitsToFloat(PS0i) * 4.0 + intBitsToFloat(0xc0400000))); -R127i.y = clampFI32(R127i.y); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R14i.y))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -R17i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -R17i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R127i.w = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -tempResultf = log2(intBitsToFloat(R127i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 17 -R6i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3f4ccccd)); -R13i.y = floatBitsToInt(intBitsToFloat(R127i.y) + -(0.5)); -R13i.y = floatBitsToInt(intBitsToFloat(R13i.y) * 4.0); -R13i.y = clampFI32(R13i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(PS0i))); -R6i.w = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3f4ccccd)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.z))); -// 18 -R8i.x = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3f4ccccd)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R2i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[12].w)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 19 -R12i.x = R1i.w; -R12i.x = clampFI32(R12i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R6i.z = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(intBitsToFloat(R13i.y) + intBitsToFloat(0x3f4ccccd)); -PV1i.w = clampFI32(PV1i.w); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 20 -R2i.x = floatBitsToInt((intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd) + 1.0)); -R5i.y = R6i.y; -R5i.y = clampFI32(R5i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[15].w))); -R3i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + -(1.0)); -tempResultf = log2(intBitsToFloat(R125i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R0i.w = floatBitsToInt(tempResultf); -PS0i = R0i.w; -} - -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].x), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].y), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.y = R125i.y; -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R14i.y))); -PV0i.z = R10i.z; -R4i.w = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x42960000)); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(R2i.y)); -PS0i = R126i.w; -// 1 -R125i.x = PV0i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(PS0i)) + 1.0)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].z), intBitsToFloat(uf_remappedPS[17].w))); -PV1i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.w = R123i.w; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R2i.z)) + intBitsToFloat(R2i.z))); -PS1i = R0i.z; -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R0i.w))); -PV0i.y = PV1i.z; -R2i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].x) + -(intBitsToFloat(R6i.x))); -R0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].y) + -(intBitsToFloat(R6i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.w)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R3i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R4i.z))); -// 4 -backupReg0i = R127i.y; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x2edbe6ff)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R124i.z = backupReg0i; -R124i.z = clampFI32(R124i.z); -R8i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].z) + -(intBitsToFloat(R8i.x))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg1i))); -// 5 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[19].w))); -// 6 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); -R126i.y = R4i.x; -R126i.y = clampFI32(R126i.y); -PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 7 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x437f0000)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R6i.z)) + 1.0); -PS1i = R127i.y; -// 8 -R127i.x = floatBitsToInt(intBitsToFloat(R15i.x) + -(intBitsToFloat(R6i.y))); -PV0i.y = floatBitsToInt(max(-(intBitsToFloat(PV1i.z)), intBitsToFloat(0xbf7d70a4))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x40a00000)); -PV0i.z = clampFI32(PV0i.z); -R125i.w = floatBitsToInt(intBitsToFloat(R15i.y) + -(intBitsToFloat(R6i.y))); -R124i.w = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R6i.y))); -PS0i = R124i.w; -// 9 -backupReg0i = R127i.y; -backupReg1i = R6i.z; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV0i.z)) + 1.0)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R5i.y))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.y)) + intBitsToFloat(backupReg1i))); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -PV1i.w = R126i.w; -R3i.w = 0; -PS1i = R3i.w; -// 10 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.w = R123i.w; -R127i.w = int(intBitsToFloat(backupReg1i)); -PS0i = R127i.w; -// 11 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R124i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R124i.x))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.z))); -// 12 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R124i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R127i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R127i.y = R127i.w & int(1); -PS0i = R127i.y; -// 13 -backupReg0i = R2i.w; -backupReg0i = R2i.w; -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.w))) + 1.0)); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(0xba0a8ec8))); -R5i.y = clampFI32(R5i.y); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(0xba0a8ec8))); -R5i.z = clampFI32(R5i.z); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R10i.z))) + intBitsToFloat(backupReg0i))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(0xba0a8ec8))); -R3i.z = clampFI32(R3i.z); -PS1i = R3i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[16].x),intBitsToFloat(uf_remappedPS[16].y),intBitsToFloat(uf_remappedPS[16].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(float(R127i.y)); -// 15 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -PS1i = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3eaaaaab)); -// 16 -R123i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), -(intBitsToFloat(R3i.w)))); -// 17 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),-(intBitsToFloat(R126i.z))) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.y),-(intBitsToFloat(R125i.y))) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R4i.w))); -R7i.z = clampFI32(R7i.z); -// 19 -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.x),-(intBitsToFloat(R126i.x))) + intBitsToFloat(PV0i.x))); -PV1i.z = R12i.z; -// 20 -PV0i.y = PV1i.z; -PV0i.y = clampFI32(PV0i.y); -// 21 -R14i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0xbecccccd)); -} -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[20].x),intBitsToFloat(uf_remappedPS[20].y),intBitsToFloat(uf_remappedPS[20].z),intBitsToFloat(uf_remappedPS[20].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[21].x),intBitsToFloat(uf_remappedPS[21].y),intBitsToFloat(uf_remappedPS[21].z),intBitsToFloat(uf_remappedPS[21].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[22].x),intBitsToFloat(uf_remappedPS[22].y),intBitsToFloat(uf_remappedPS[22].z),intBitsToFloat(uf_remappedPS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R10i.x; -// 3 -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.z))); - - -} -if( activeMaskStackC[1] == true ) { - R9i.y = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R9i.xy),0.0).x); - R10i.w = floatBitsToInt(textureLod(textureUnitPS5, intBitsToFloat(R10i.xy),intBitsToFloat(R10i.w)).x); - R11i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R11i.xy)).xyz); -} - - -if( activeMaskStackC[1] == true ) { - // 0 - backupReg0i = R9i.y; - PV0i.x = floatBitsToInt(intBitsToFloat(R10i.w) + intBitsToFloat(uf_remappedPS[23].z)); - PV0i.x = clampFI32(PV0i.x); - R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(R6i.z))); - R123i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); - PV0i.z = R123i.z; - R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(R6i.z))); - R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R6i.z))); - PS0i = R11i.y; - // 1 - R123i.x = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x41c80000) + intBitsToFloat(R9i.z))); - PV1i.x = R123i.x; - R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[24].z))); - PV1i.y = R3i.y; - // 2 - R4i.y = PV1i.y; - PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R12i.y))); - R10i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[25].x)); - // 3 - PV1i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.z)); - PV1i.z = clampFI32(PV1i.z); - PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); - // 4 - R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R8i.x))); - PV0i.x = R123i.x; - R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.w))); - PV0i.y = R123i.y; - R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.x))); - PV0i.z = R123i.z; - R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R12i.x)) + 1.0)); - PV0i.w = R123i.w; - // 5 - PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R7i.z))); - PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[26].z))); - PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[26].y))); - PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[26].x))); - // 6 - PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.y))); - PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.z))); - PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.w))); - PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.x))); - // 7 - R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.w))); - PV1i.x = R123i.x; - R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); - PV1i.z = R123i.z; - R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R6i.y))); - PV1i.w = R123i.w; - // 8 - PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R5i.z))); - PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.y))); - PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R3i.z))); - // 9 - // setting RGB for link to use in shadow calculations - R0i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); - R0i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); - - R2i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -} - -if( activeMaskStackC[1] == true ) { - activeMaskStack[1] = activeMaskStack[0]; - activeMaskStackC[2] = activeMaskStackC[1]; - // 0 - R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedPS[27].x)) + intBitsToFloat(uf_remappedPS[28].w))); - R123i.y = clampFI32(R123i.y); - PV0i.y = R123i.y; - // 1 - PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[29].w))); - // 2 - PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R14i.y))); - // 3 - R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R0i.z)) + intBitsToFloat(R0i.z))); - PV1i.x = R123i.x; - PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.z))); - // 4 - PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].y), intBitsToFloat(PV1i.y))); - PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].z), intBitsToFloat(PV1i.y))); - PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].x), intBitsToFloat(PV1i.y))); - PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV1i.x))); - R5i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); - PS0i = R5i.z; - // 5 - R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].z),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.y))); - PV1i.x = R123i.x; - R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].x),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.z))); - PV1i.y = R123i.y; - R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.x))); - PV1i.z = R123i.z; - R4i.w = 0; - // 6 - R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.y))); - PV0i.y = R123i.y; - R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z))); - PV0i.z = R123i.z; - R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.x))); - PV0i.w = R123i.w; - // 7 - R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].x),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.y))); - R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].y),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.z))); - R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.w))); - // 8 - predResult = (intBitsToFloat(R14i.x) != intBitsToFloat(0x3dc0c0c1)); - activeMaskStack[1] = predResult; - activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { - activeMaskStack[1] = false; - activeMaskStackC[2] = false; -} - - -// actually deals with all light. Current method just brightens all of link. -if( activeMaskStackC[2] == true ) { -// 0 -// r0i.x r0i.y, r2i.z carries RGB of ambient light on link -R3i.xyz = floatBitsToInt(vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R4i.z)) + vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R2i.z))); -R3i.w = 0x3f800000; -R0i.x = 0; -PS0i = R0i.x; -// 1 -//R0i.yzw = ivec3(0,0,0); -//R0i.xyz = R3i.xyz; - -// simple effective method previously in use -//R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R15i.x)*$Bright)+ intBitsToFloat(R1i.x)*$Bright); -//R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R15i.y)*$Bright)+ intBitsToFloat(R1i.y)*$Bright); -//R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R15i.z)*$Bright)+ intBitsToFloat(R1i.z)*$Bright); -// end simple method - -// *************************************************************** -// *************************************************************** -// *************************************************************** -// REFERENCE MATERIAL -// *************************************************************** -// *************************************************************** -// *************************************************************** - - -// R17i darkest shadows mask -// R7i meduim shadows mask -// R11i anything not very bright mask - - - -// *********************** -// when set as R0i.xyz output DAY REDO -// *********************** -// -//R0i.x = floatBitsToInt(intBitsToFloat(R15i.x)*$Bright); -//R0i.y = floatBitsToInt(intBitsToFloat(R15i.y)*$Bright); -//R0i.z = floatBitsToInt(intBitsToFloat(R15i.z)*$Bright); -// -// ********************************************************* -// skin colors -// R0i pale dark blue -// R1i base skin tone -// R2i some highlights on dark skin tone -// R3i some highlights on dark skin tone -// R4i green R5i blue R6i green highlights - -// glows -// R8i masive light blue glow -// R9i dark blue glow - -// skin tones -// R10i intense red skin -// R11i pink skin -// R12i dark brown skin -// R13i teal skin -// R14i green skin -// R15i neutral skin tone still a bit dark****** winner -// R16i dark tone -// R17i highlights green and red on dark skin tone -// R122i pretty much black -// R123i pretty much black -// R124i has pink -// R125i dark purple -// R126i dark has green night tones -// R127i dark purple - - -// *********************** -// when miultiplied by R15i unknown time -// *********************** -// skin colors -// R0i dark tone -// R1i dark tone -// R2i black shadow -// R3i reasonable but a touch dark skin tone -// R4i green overtone R5i dark shadows R6i darkens - -// glows -// R8i masive light blue skin less glow -// R8i dark blue skin less glow -// R7i nice warm skin tones - -// skin tones -// R10i intense red skin -// R11i black shadows -// R12i red to shadows and light red glow to skin -// R13i add teal to shadows -// R14i green skin all -// R15i adds some intensity to colors mostly in the reds of the shadows -// R16i dark tone -// R17i highlights green and red on dark skin tone -// R122i pretty much black -// R123i pretty much black -// R124i has pink -// R125i dark purple -// R126i dark has green night tones -// R127i dark purple - - - -// *********************** -// when miultiplied "mul_nonIEEE( R1i * R##i )" by R1i in DAYLIGHT -// *********************** -// skin colors -// R0i saturated shadows -- cel shaded -// R1i very neutral -- NO CEL SHADING WINNER -// R2i dark blue shadows -- cel shaded -// R3i dark warm skin tone -- cel shaded -// R4i green overtone R5i dark shadows R6i darkens -- no cel -// R7i blueish shadow -- cel shaded - -// glows -// R8i masive light blue skin less glow -// R9i dark blue skin less glow - - -// skin tones -// R10i intense red skin - no cel apparent -// R11i red sgadiws - no cel apparent -// R12i pinkish shadows possible combined with sky light color -- cel shaded -// R13i add teal shadows -- no cel -// R14i green skin all -- no cel -// R15i adds some intensity to colors mostly in the reds of the shadows -- NO CEL SHADING WINNER -// R16i desaturated highlights in shadows -- NO CEL SHADING WINNER for add highlights -// R17i highlights green and red on dark skin tone -- no cel -// R122i dark reds -- no cel -// R123i seems a reflective map -- no cel goldish tones since reflecting sun -// R124i has pink -- no cel -// R125i dark purple -- no cel -// R126i dark has green night tones -- no cel -// R127i dark red -- no cel - - - -// *********************** -// when set as R0i.xyz output at NIGHT -// *********************** -// -//R0i.x = floatBitsToInt(intBitsToFloat(R15i.x)*$Bright); -//R0i.y = floatBitsToInt(intBitsToFloat(R15i.y)*$Bright); -//R0i.z = floatBitsToInt(intBitsToFloat(R15i.z)*$Bright); -// -// ********************************************************* -// skin colors -// R0i skin tone with a bit too much pinks red -// R1i base skin tone flat neutral no highlights -// R2i some highlights on dark skin tone -// R3i dark tone may carry brightness of environmnt light -// R4i green R5i blue with base highlight R6i puke reen overtone - -// glows -// R8i masive light blue glow... when multiplied by x only provides a green ovetone -// R9i dark blue glow -// R7i pinkish on shadows on bright side greenish on dark side. Kinda like R17i with irs red green - -// skin tones -// R10i intense red all skin -// R11i very dark -// R12i dark red with clothes and lit side ignored -// R13i teal skin lit side ignored -// R14i green all skin -// R15i neutral skin tone still a bit dark****** winner -// R16i dark tone -// R17i highlights green and red on dark skin tone -// R122i dark red overtones -// R123i pretty much black -// R124i has pink overtone -// R125i dark blue purple overtone -// R126i dark has green overtone -// R127i dark red overtones - -// use with R15i for white -// use with R1i for sky tone mostly yellow -// + R17i.y shadows low -// - R17i.y shadows high -// + R17i.x shadows left -// - R17i.x shadows right - - -// *********************** -// when added to "floatBitsToInt( R1i + R##i )" by R1i in DAYLIGHT -// *********************** -// skin colors -// R0i saturated shadows -- cel shaded -// R1i very neutral -- NO CEL SHADING WINNER -// R2i dark blue shadows -- cel shaded -// R3i dark warm skin tone -- cel shaded -// R4i green overtone R5i blue overtones R6i yellow overtones -- no cel -// R7i add yellow to shadow and blue to light -- cel shaded? Shadow map - -// glows -// R8i masive light blue skin less glow -// R9i dark blue skin less glow - - -// skin tones -// R10i intense red skin - no cel apparent -// R11i red shadows - no cel apparent possible use shadow map -// R12i pinkish shadows possible combined with sky light color -- cel shaded -// R13i add teal shadows -- no cel -// R14i green skin all -- no cel -// R15i adds some intensity to colors mostly in the reds of the shadows -- NO CEL SHADING WINNER -// R16i desaturated highlights in shadows -- NO CEL SHADING WINNER for add highlights -// R17i highlights green and red on dark skin tone -- no cel Shadow mask -// R122i dark reds -- no cel -// R123i seems a reflective map -- no cel goldish tones since reflecting sun -// R124i has pink -- no cel -// R125i dark purple -- no cel -// R126i dark has green night tones -- no cel -// R127i dark red -- no cel - -// *************************************************************** -// *************************************************************** -// *************************************************************** -// END REFERENCE MATERIAL -// *************************************************************** -// *************************************************************** -// *************************************************************** - - -// The next sectiona make shadow masks using various base colors and directions of shadows - -// Section 1 r15 for white tone with shadow on side described -Left0i.x = floatBitsToInt(intBitsToFloat(R15i.x) + intBitsToFloat(R17i.x)); -Left0i.y = floatBitsToInt(intBitsToFloat(R15i.y) + intBitsToFloat(R17i.x)); -Left0i.z = floatBitsToInt(intBitsToFloat(R15i.z) + intBitsToFloat(R17i.x)); - -// Low0i.x = floatBitsToInt(intBitsToFloat(R15i.x) + intBitsToFloat(R17i.y)); -// Low0i.y = floatBitsToInt(intBitsToFloat(R15i.y) + intBitsToFloat(R17i.y)); -// Low0i.z = floatBitsToInt(intBitsToFloat(R15i.z) + intBitsToFloat(R17i.y)); - -Right0i.x = floatBitsToInt(intBitsToFloat(R15i.x) - intBitsToFloat(R17i.x)); -Right0i.y = floatBitsToInt(intBitsToFloat(R15i.y) - intBitsToFloat(R17i.x)); -Right0i.z = floatBitsToInt(intBitsToFloat(R15i.z) - intBitsToFloat(R17i.x)); - -High0i.x = floatBitsToInt(intBitsToFloat(R15i.x) - intBitsToFloat(R17i.y)); -High0i.y = floatBitsToInt(intBitsToFloat(R15i.y) - intBitsToFloat(R17i.y)); -High0i.z = floatBitsToInt(intBitsToFloat(R15i.z) - intBitsToFloat(R17i.y)); -//******************************************************** - - - -// Section 2 R1i for yellow tone with shoadow on side described -// YLeft0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R17i.x)); -// YLeft0i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R17i.x)); -// YLeft0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(R17i.x)); - -// YLow0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R17i.y)); -// YLow0i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R17i.y)); -// YLow0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(R17i.y)); - -YRight0i.x = floatBitsToInt(intBitsToFloat(R1i.x) - intBitsToFloat(R17i.x)); -YRight0i.y = floatBitsToInt(intBitsToFloat(R1i.y) - intBitsToFloat(R17i.x)); -YRight0i.z = floatBitsToInt(intBitsToFloat(R1i.z) - intBitsToFloat(R17i.x)); - -YHigh0i.x = floatBitsToInt(intBitsToFloat(R1i.x) - intBitsToFloat(R17i.y)); -YHigh0i.y = floatBitsToInt(intBitsToFloat(R1i.y) - intBitsToFloat(R17i.y)); -YHigh0i.z = floatBitsToInt(intBitsToFloat(R1i.z) - intBitsToFloat(R17i.y)); -//******************************************************** - - - -// Section 3 R123i Light on side described, blue light of sky or occluded (shines) becomes empty, night dark blue -// BLeft0i.x = floatBitsToInt(intBitsToFloat(R123i.x) - intBitsToFloat(R17i.x)); -// BLeft0i.y = floatBitsToInt(intBitsToFloat(R123i.y) - intBitsToFloat(R17i.x)); -// BLeft0i.z = floatBitsToInt(intBitsToFloat(R123i.z) - intBitsToFloat(R17i.x)); - -// BLow0i.x = floatBitsToInt(intBitsToFloat(R123i.x) - intBitsToFloat(R17i.y)); -// BLow0i.y = floatBitsToInt(intBitsToFloat(R123i.y) - intBitsToFloat(R17i.y)); -// BLow0i.z = floatBitsToInt(intBitsToFloat(R123i.z) - intBitsToFloat(R17i.y)); - -// BRight0i.x = floatBitsToInt(intBitsToFloat(R123i.x) + intBitsToFloat(R17i.x)); -// BRight0i.y = floatBitsToInt(intBitsToFloat(R123i.y) + intBitsToFloat(R17i.x)); -// BRight0i.z = floatBitsToInt(intBitsToFloat(R123i.z) + intBitsToFloat(R17i.x)); - -BHigh0i.x = floatBitsToInt(intBitsToFloat(R123i.x) + intBitsToFloat(R17i.y)); -BHigh0i.y = floatBitsToInt(intBitsToFloat(R123i.y) + intBitsToFloat(R17i.y)); -BHigh0i.z = floatBitsToInt(intBitsToFloat(R123i.z) + intBitsToFloat(R17i.y)); -//******************************************************** - - - -// Section 4 Blue over tone shadows with slight green rim light -LtBlueShadow.x = floatBitsToInt(intBitsToFloat(R13i.x)*.2 + intBitsToFloat(R7i.y)); -LtBlueShadow.y = floatBitsToInt(intBitsToFloat(R13i.y)*.2 + intBitsToFloat(R7i.y)); -LtBlueShadow.z = floatBitsToInt(intBitsToFloat(R13i.y)*.2 + intBitsToFloat(R7i.y)); -//******************************************************** - - -//Section 5 Darken shadows -// Temp0i.x = floatBitsToInt(intBitsToFloat(R16i.x) + intBitsToFloat(R11i.y)); -// Temp0i.y = floatBitsToInt(intBitsToFloat(R16i.y) + intBitsToFloat(R11i.y)); -// Temp0i.z = floatBitsToInt(intBitsToFloat(R16i.z) + intBitsToFloat(R11i.y)); -//******************************************************** - - -// subtract white left shadow from white base using min -R0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(Left0i.x)*$Bright)); -R0i.y = floatBitsToInt(min(intBitsToFloat(R1i.y), intBitsToFloat(Left0i.y)*$Bright)); -R0i.z = floatBitsToInt(min(intBitsToFloat(R1i.z), intBitsToFloat(Left0i.z)*$Bright)); - -// subtract white high shadow from above using min -R0i.x = floatBitsToInt(min(intBitsToFloat(R0i.x), intBitsToFloat(High0i.x)*$Bright)); -R0i.y = floatBitsToInt(min(intBitsToFloat(R0i.y), intBitsToFloat(High0i.y)*$Bright)); -R0i.z = floatBitsToInt(min(intBitsToFloat(R0i.z), intBitsToFloat(High0i.z)*$Bright)); - -// subtract yellow high shadow from above using min -R0i.x = floatBitsToInt(min(intBitsToFloat(R0i.x), intBitsToFloat(YHigh0i.x)*$Bright)); -R0i.y = floatBitsToInt(min(intBitsToFloat(R0i.y), intBitsToFloat(YHigh0i.y)*$Bright)); -R0i.z = floatBitsToInt(min(intBitsToFloat(R0i.z), intBitsToFloat(YHigh0i.z)*$Bright)); - -// subtract yellow right shadow from above using min -R0i.x = floatBitsToInt(min(intBitsToFloat(R0i.x), intBitsToFloat(Right0i.x)*$Bright*.7)); -R0i.y = floatBitsToInt(min(intBitsToFloat(R0i.y), intBitsToFloat(Right0i.y)*$Bright*.7)); -R0i.z = floatBitsToInt(min(intBitsToFloat(R0i.z), intBitsToFloat(Right0i.z)*$Bright*.7)); - -// make a base color by using mul_nonIEEE with the calculated shadow and the white base color. Add in the shadow, white, light blue masked over shadow, blue sky light masked over high locations, and what I think is a reflective map. -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R1i.x))*$Bright + intBitsToFloat(R0i.x)*$Bright + intBitsToFloat(R1i.x)*$Bright + intBitsToFloat(LtBlueShadow.x)*$Bright + intBitsToFloat(BHigh0i.x)*$Bright + intBitsToFloat(R123i.x)*$Bright) ; - -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R1i.y))*$Bright + intBitsToFloat(R0i.y)*$Bright + intBitsToFloat(R1i.y)*$Bright + intBitsToFloat(LtBlueShadow.y)*$Bright + intBitsToFloat(BHigh0i.y)*$Bright + intBitsToFloat(R123i.y)*$Bright) ; - -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R1i.z))*$Bright + intBitsToFloat(R0i.z)*$Bright + intBitsToFloat(R1i.z)*$Bright + intBitsToFloat(LtBlueShadow.z)*$Bright + intBitsToFloat(BHigh0i.z)*$Bright + intBitsToFloat(R123i.z)*$Bright) ; - - - -R0i.w = R3i.w; -// r0i our color output from the if statement passed on for furthur use -} - - -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; - -if( activeMaskStackC[2] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[30].x),intBitsToFloat(uf_remappedPS[30].y),intBitsToFloat(uf_remappedPS[30].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = 0x40400000; -PS0i = R0i.w; -// 1 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[31].x),intBitsToFloat(uf_remappedPS[31].y),intBitsToFloat(uf_remappedPS[31].z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[32].x),intBitsToFloat(uf_remappedPS[32].y),intBitsToFloat(uf_remappedPS[32].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R13i.x))); -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg1i = R127i.z; -redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -R2i.z = clampFI32(R2i.z); -PS1i = R2i.z; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R14i.z) * intBitsToFloat(0x42960000)); -PV0i.x = clampFI32(PV0i.x); -R0i.z = PV1i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -backupReg0i = R1i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.x = R123i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.z))); -PS1i = R1i.x; -// 6 -R0i.x = PV1i.w; -R0i.y = PV1i.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PV1i.z))); -PS0i = R3i.x; -} -if( activeMaskStackC[2] == true ) { -// can increases texture lod in attempt to get higher res tetures at a distance on enemies - R0i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex7),intBitsToFloat(R0i.w)).xyz); -} - -if( activeMaskStackC[2] == true ) { - // 0 - R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.y))); - PV0i.x = R123i.x; - R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.x))); - PV0i.y = R123i.y; - R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R1i.x))); - R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.z))); - PV0i.w = R123i.w; - R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(R1i.y))); - PS0i = R3i.y; - // 1 - R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.x))); - R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); - R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.z))); - R0i.w = 0; - R3i.w = 0x3f800000; - PS1i = R3i.w; -} - -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R1i.w = 0x3f800000; -// 1 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -backupReg2i = R3i.z; -backupReg3i = R3i.w; -R3i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R3i.w = backupReg3i; -// 2 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -// 3 -backupReg0i = R1i.w; -R1i.xyz = ivec3(R4i.x,R5i.y,R6i.z); -R1i.w = backupReg0i; -// 4 -R0i.xyz = ivec3(R13i.x,R4i.y,R5i.z); -R0i.w = R4i.w; -// 5 -R4i.xyz = ivec3(R7i.x,R7i.x,R7i.x); -R4i.w = R7i.x; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor2 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor4 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/rules.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/rules.txt deleted file mode 100644 index 161e1a86..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_Altros/rules.txt +++ /dev/null @@ -1,73 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = No Cel-Shading Links Shadow Brightness Fix v0.8 -path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix v08 - Altros" -description = Fixes the very dark shadows on Links back-side in No Cel-Shade mode. -version = 4 - - -[Preset] -name = Shadows 0.45% (Default) -$Bright = 0.45 - -[Preset] -name = Shadows 0.25% -$Bright = 0.25 - -[Preset] -name = Shadows 0.35% -$Bright = 0.35 - -[Preset] -name = Shadows 0.45% -$Bright = 0.45 - -[Preset] -name = Shadows 0.55% -$Bright = 0.55 - -[Preset] -name = Shadows 0.65% -$Bright = 0.65 - -[Preset] -name = Shadows 0.75% -$Bright = 0.75 - -[Preset] -name = Shadows 0.95% -$Bright = 0.95 - -[Preset] -name = Shadows 1.0% (Game Original) -$Bright = 1.0 - -[Preset] -name = Shadows 1.15% -$Bright = 1.15 - -[Preset] -name = Shadows 1.25% -$Bright = 1.25 - -[Preset] -name = Shadows 1.35% -$Bright = 1.35 - -[Preset] -name = Shadows 1.45% -$Bright = 1.45 - -[Preset] -name = Shadows 1.55% -$Bright = 1.55 - -[Preset] -name = Shadows 1.65% -$Bright = 1.65 - -[Preset] -name = Shadows 1.75% -$Bright = 1.75 - -# Credits - Altros Shadow Brightness Fix v0.8 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/1c7db40ff5d693ab_001ffffe4924b249_ps.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/1c7db40ff5d693ab_001ffffe4924b249_ps.txt deleted file mode 100644 index ec225d05..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/1c7db40ff5d693ab_001ffffe4924b249_ps.txt +++ /dev/null @@ -1,934 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 1c7db40ff5d693ab -- Link and all NPCs Shadows Renderer , NPC Distant Fog RGB Renderer , Body RGB renderer -#define smode $smode -#define shadowsbrightness $shadowsbrightness -#define sred $sred -#define sgreen $sgreen -#define sblue $sblue - -#ifndef smode - #define smode 0 -#endif -#ifndef shadowsbrightness - #define shadowsbrightness 1 -#endif -#ifndef sred - #define sred 1 -#endif -#ifndef sgreen - #define sgreen 1 -#endif -#ifndef sblue - #define sblue 1 -#endif - - -#ifdef VULKAN -layout(set = 1, binding = 11) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[33]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[33]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 4) out vec4 passPixelColor4; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex7 = 0.0; -R0i = floatBitsToInt(passParameterSem0); // Links cutout comes from passparamsem0 -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem6); - -ivec4 Temp0i = ivec4(0); // initializes a temp vector for shadow mathe-magics - -// ------------------------------------------------------------------------------------------------------------- dynamic shadows on link -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); // seems to affect links head area -R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); // seems to affect shadows on link body -R15i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xw); -R4i.xy = floatBitsToInt(texture(textureUnitPS15, intBitsToFloat(R0i.xy)).xy); -R16i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R2i.zw)).xyz); -R14i.x = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R2i.zw)).x); -} - -// ------------------------------------------------------------------------------------------------------------- false makes link grey -if( activeMaskStackC[1] == true ) { -// 0 -R124i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.y = R125i.y; -R3i.z = 0; -R5i.w = 0x3f800000; -R126i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PS0i = R126i.y; -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[2].x)) + -(intBitsToFloat(uf_remappedPS[2].y)))); -R127i.w = clampFI32(R127i.w); -R126i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].w)) + 1.0); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[4].x))); -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[5].x))); -R10i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[5].y)) + intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[6].x))); -R125i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -R127i.w = floatBitsToInt(max(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[6].y)) + intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R0i.y; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(backupReg0i))); -PV1i.w = R123i.w; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PS1i = R3i.x; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.x = R123i.x; -R6i.y = floatBitsToInt(max(intBitsToFloat(R15i.x), intBitsToFloat(R127i.w))); -R9i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(PV1i.w)); -PV0i.z = R9i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(R125i.x))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R3i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.y = floatBitsToInt(tempResultf); -PS0i = R127i.y; -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) + intBitsToFloat(PV0i.w)); -PV1i.x = R5i.x; -R8i.y = PV0i.z; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(R127i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R4i.z = floatBitsToInt(tempResultf); -PS1i = R4i.z; -// 8 -R9i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3a83126f)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(R127i.y))); -R8i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[6].w) + intBitsToFloat(PV1i.z)); -PV0i.z = R8i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(R127i.y))); -R13i.x = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y))); -PS0i = R13i.x; -// 9 -R127i.x = uf_remappedPS[7].y; -R9i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3a83126f)); -R127i.z = uf_remappedPS[8].y; -R125i.w = floatBitsToInt(min(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 10 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[3].w))/2.0); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(0x2edbe6ff)); -R126i.z = uf_remappedPS[9].y; -R127i.w = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(0xbecccccd)); -R125i.x = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R125i.x; -// 11 -backupReg0i = R126i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[10].x)) + -(intBitsToFloat(uf_remappedPS[10].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R11i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(uf_remappedPS[11].y))); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40200001)); -R126i.w = clampFI32(R126i.w); -R14i.y = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R4i.y) + 1.0)); -PS1i = R14i.y; -// 12 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R127i.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 14 -R0i.x = floatBitsToInt(min(intBitsToFloat(R15i.x), intBitsToFloat(R125i.w))); -R12i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x41200000)); -R12i.y = clampFI32(R12i.y); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].z), intBitsToFloat(PS1i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(uf_remappedPS[3].z))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 15 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[13].x)) + intBitsToFloat(uf_remappedPS[14].w))); -R125i.x = clampFI32(R125i.x); -R127i.y = floatBitsToInt((intBitsToFloat(PS0i) * 4.0 + intBitsToFloat(0xc0400000))); -R127i.y = clampFI32(R127i.y); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R14i.y))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -R17i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -R17i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R127i.w = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -tempResultf = log2(intBitsToFloat(R127i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 17 -R6i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3f4ccccd)); -R13i.y = floatBitsToInt(intBitsToFloat(R127i.y) + -(0.5)); -R13i.y = floatBitsToInt(intBitsToFloat(R13i.y) * 4.0); -R13i.y = clampFI32(R13i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(PS0i))); -R6i.w = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3f4ccccd)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.z))); -// 18 -R8i.x = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3f4ccccd)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R2i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[12].w)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 19 -R12i.x = R1i.w; -R12i.x = clampFI32(R12i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R6i.z = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(intBitsToFloat(R13i.y) + intBitsToFloat(0x3f4ccccd)); -PV1i.w = clampFI32(PV1i.w); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 20 -R2i.x = floatBitsToInt((intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd) + 1.0)); -R5i.y = R6i.y; -R5i.y = clampFI32(R5i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[15].w))); -R3i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + -(1.0)); -tempResultf = log2(intBitsToFloat(R125i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R0i.w = floatBitsToInt(tempResultf); -PS0i = R0i.w; -} -// ------------------------------------------------------------------------------------------------------------- false turns link almost dark, lighting on link -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].x), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].y), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.y = R125i.y; -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R14i.y))); -PV0i.z = R10i.z; -R4i.w = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x42960000)); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(R2i.y)); -PS0i = R126i.w; -// 1 -R125i.x = PV0i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(PS0i)) + 1.0)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].z), intBitsToFloat(uf_remappedPS[17].w))); -PV1i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.w = R123i.w; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R2i.z)) + intBitsToFloat(R2i.z))); -PS1i = R0i.z; -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R0i.w))); -PV0i.y = PV1i.z; -R2i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].x) + -(intBitsToFloat(R6i.x))); -R0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].y) + -(intBitsToFloat(R6i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.w)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R3i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R4i.z))); -// 4 -backupReg0i = R127i.y; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x2edbe6ff)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R124i.z = backupReg0i; -R124i.z = clampFI32(R124i.z); -R8i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].z) + -(intBitsToFloat(R8i.x))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg1i))); -// 5 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[19].w))); -// 6 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); -R126i.y = R4i.x; -R126i.y = clampFI32(R126i.y); -PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 7 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x437f0000)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R6i.z)) + 1.0); -PS1i = R127i.y; -// 8 -R127i.x = floatBitsToInt(intBitsToFloat(R15i.x) + -(intBitsToFloat(R6i.y))); -PV0i.y = floatBitsToInt(max(-(intBitsToFloat(PV1i.z)), intBitsToFloat(0xbf7d70a4))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x40a00000)); -PV0i.z = clampFI32(PV0i.z); -R125i.w = floatBitsToInt(intBitsToFloat(R15i.y) + -(intBitsToFloat(R6i.y))); -R124i.w = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R6i.y))); -PS0i = R124i.w; -// 9 -backupReg0i = R127i.y; -backupReg1i = R6i.z; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV0i.z)) + 1.0)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R5i.y))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.y)) + intBitsToFloat(backupReg1i))); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -PV1i.w = R126i.w; -R3i.w = 0; -PS1i = R3i.w; -// 10 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.w = R123i.w; -R127i.w = int(intBitsToFloat(backupReg1i)); -PS0i = R127i.w; -// 11 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R124i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R124i.x))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.z))); -// 12 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R124i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R127i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R127i.y = R127i.w & int(1); -PS0i = R127i.y; -// 13 -backupReg0i = R2i.w; -backupReg0i = R2i.w; -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.w))) + 1.0)); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(0xba0a8ec8))); -R5i.y = clampFI32(R5i.y); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(0xba0a8ec8))); -R5i.z = clampFI32(R5i.z); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R10i.z))) + intBitsToFloat(backupReg0i))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(0xba0a8ec8))); -R3i.z = clampFI32(R3i.z); -PS1i = R3i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[16].x),intBitsToFloat(uf_remappedPS[16].y),intBitsToFloat(uf_remappedPS[16].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(float(R127i.y)); -// 15 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -PS1i = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3eaaaaab)); -// 16 -R123i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), -(intBitsToFloat(R3i.w)))); -// 17 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),-(intBitsToFloat(R126i.z))) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.y),-(intBitsToFloat(R125i.y))) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R4i.w))); -R7i.z = clampFI32(R7i.z); -// 19 -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.x),-(intBitsToFloat(R126i.x))) + intBitsToFloat(PV0i.x))); -PV1i.z = R12i.z; -// 20 -PV0i.y = PV1i.z; -PV0i.y = clampFI32(PV0i.y); -// 21 -R14i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0xbecccccd)); -} - -// ------------------------------------------------------------------------------------------------------------- -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[20].x),intBitsToFloat(uf_remappedPS[20].y),intBitsToFloat(uf_remappedPS[20].z),intBitsToFloat(uf_remappedPS[20].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[21].x),intBitsToFloat(uf_remappedPS[21].y),intBitsToFloat(uf_remappedPS[21].z),intBitsToFloat(uf_remappedPS[21].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[22].x),intBitsToFloat(uf_remappedPS[22].y),intBitsToFloat(uf_remappedPS[22].z),intBitsToFloat(uf_remappedPS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R10i.x; -// 3 -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.z))); -} - -// ------------------------------------------------------------------------------------------------------------- makes link yellower -if( activeMaskStackC[1] == true ) { -R9i.y = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R9i.xy),0.0).x); -R10i.w = floatBitsToInt(textureLod(textureUnitPS5, intBitsToFloat(R10i.xy),intBitsToFloat(R10i.w)).x); -R11i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R11i.xy)).xyz); -} - -// ------------------------------------------------------------------------------------------------------------- makes link yellower -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R9i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.w) + intBitsToFloat(uf_remappedPS[23].z)); -PV0i.x = clampFI32(PV0i.x); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(R6i.z))); -R123i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PV0i.z = R123i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(R6i.z))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R6i.z))); -PS0i = R11i.y; -// 1 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x41c80000) + intBitsToFloat(R9i.z))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[24].z))); -PV1i.y = R3i.y; -// 2 -R4i.y = PV1i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R12i.y))); -R10i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[25].x)); -// 3 -PV1i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R8i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.x))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R12i.x)) + 1.0)); -PV0i.w = R123i.w; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R7i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[26].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[26].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[26].x))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.x))); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.w))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R6i.y))); -PV1i.w = R123i.w; -// 8 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R5i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R3i.z))); -// 9 -R0i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R0i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R2i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -} - -// ------------------------------------------------------------------------------------------------------------- makes whole link blue/pink -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedPS[27].x)) + intBitsToFloat(uf_remappedPS[28].w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -// 1 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[29].w))); -// 2 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R14i.y))); -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R0i.z)) + intBitsToFloat(R0i.z))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.z))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].y), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].z), intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV1i.x))); -R5i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PS0i = R5i.z; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].z),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].x),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R4i.w = 0; -// 6 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; // links whole body red -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; // links whole body green -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; // links whole body blue -// 7 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].x),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.y))); // affects color of links back side -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].y),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.z))); // affects color of links back side -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.w))); // affects color of links back side -// 8 -predResult = (intBitsToFloat(R14i.x) != intBitsToFloat(0x3dc0c0c1)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} - -// ------------------------------------------------------------------------------------------------------------- false makes link back-side shadow blue, light entity behind link -if( activeMaskStackC[2] == true ) { -// 0 -R3i.xyz = floatBitsToInt(vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R4i.z)) + vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R2i.z))); -R3i.w = 0x3f800000; -R0i.x = 0; - -// 1 -if(smode == 1) // run custom code -{ - // -- 1. one way to do it - //R0i.yzw = ivec3(R3i.y,R3i.z,R3i.w); - - // -- 2. another way to do it , green and blue channels - // R1i=bright normal, R3i=normal, R15i=dark normal, R4i=red, R5i=blue look, R6i=green look, R7i=nocelshade R17i=nocelshade, R8i=glow, R9i= Solid blue, R11i=lightblue look, R13i=normal look with yellow outline shadows, R14i=lightgreen look - //R0i.yzw = R3i.yzw; // best choice R3i,R7i,R15i - - // -- 3. another way to do it - but mixing color channels - // R1i=bright normal, R3i=normal, R15i=normal with minor flickers, R11i=dark normal, R4i=blue, R6i=lightblue, R7i=no-celshade(looks good), R8i=blueglow, R10=BrightGreen, R12i=Green, R14i=blue, R17i=blue shadow highlights - //R0i.yzw = R15i.xyz; // best choice R7i.xyz and R15i.xyz - - // -- 4. another way to do it, seems best because uses all three color channels, has clay effect indoors - // R1i=bright normal, R3i=normal, R15i=normal, R11i=blue normal - // R4i=Green, R5i=Blue, R6i=Green, R7i=no-celshade(Orangish), R8i=blueglow, R9i=Solidblue, R10=Red, - // R13i=normal look with yellow outline shadows, R14i=Green, R16=weapon bloom, R17i=no-cel green shadow highlights - // R122i=red, - //R0i.xyz = R3i.xyz; // Best Choice R7i, R15i, R1i, R3i - - // -- 1. another way to do it - //R0i.yzw = ivec3(floatBitsToInt(1.4 * shadowsbrightness), floatBitsToInt(1.0 * shadowsbrightness), floatBitsToInt(1.0)); // controls the color and brightness of the backside shadows on all npcs - // -- 2. another way to do it - //R0i.xyzw = ivec4(floatBitsToInt(1.0 * shadowsbrightness), floatBitsToInt(1.0 * shadowsbrightness), floatBitsToInt(1.0 * shadowsbrightness), floatBitsToInt(1.0)); - - - // -- 1. Best Mode R3i.xyz + R7i.y - R0i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R7i.y) * shadowsbrightness); - R0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R7i.y) * shadowsbrightness); - R0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(R7i.y) * shadowsbrightness); - - PS0i = R0i.x; -} -else if (smode == 2) -{ - // Mode R3i.xyz + R7i.x - Best mode 2 less shadow highlights - R0i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R7i.x) * shadowsbrightness); - R0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R7i.x) * shadowsbrightness); - R0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(R7i.x) * shadowsbrightness); -} -else if (smode == 3) -{ - // R3i.xyz + R17i.y - No enhancement ot the skin ,and very strong shadow higlights - R0i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R17i.y) * shadowsbrightness); - R0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R17i.y) * shadowsbrightness); - R0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(R17i.y) * shadowsbrightness); -} -else if (smode == 4) -{ - // R3i.xyz + R4i.y - Light Shaded Mode - R0i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.y) * shadowsbrightness); - R0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R4i.y) * shadowsbrightness); - R0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(R4i.y) * shadowsbrightness); -} -else if (smode == 5) -{ - // R3i.xyz + R15i.x - Cool mode with minor flickers in the wind - R0i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R15i.x) * shadowsbrightness); - R0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R15i.x) * shadowsbrightness); - R0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(R15i.x) * shadowsbrightness); -} -else // run the original shader code -{ - // original shader code - PS0i = R0i.x; - R0i.yzw = ivec3(0,0,0); // orginal code -} - -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; - -// ------------------------------------------------------------------------------------------------------------- false changes links color to be more yellowish -if( activeMaskStackC[2] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[30].x),intBitsToFloat(uf_remappedPS[30].y),intBitsToFloat(uf_remappedPS[30].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = 0x40400000; -PS0i = R0i.w; -// 1 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[31].x),intBitsToFloat(uf_remappedPS[31].y),intBitsToFloat(uf_remappedPS[31].z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[32].x),intBitsToFloat(uf_remappedPS[32].y),intBitsToFloat(uf_remappedPS[32].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R13i.x))); -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg1i = R127i.z; -redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -R2i.z = clampFI32(R2i.z); -PS1i = R2i.z; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R14i.z) * intBitsToFloat(0x42960000)); -PV0i.x = clampFI32(PV0i.x); -R0i.z = PV1i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -backupReg0i = R1i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.x = R123i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.z))); -PS1i = R1i.x; -// 6 -R0i.x = PV1i.w; -R0i.y = PV1i.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PV1i.z))); -PS0i = R3i.x; -} - -// ------------------------------------------------------------------------------------------------------------- false makes link back side brightened up and affected by light changes, front shadows and back affected. -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex7),intBitsToFloat(R0i.w)).xyz); -} - -// ------------------------------------------------------------------------------------------------------------- false makes link a bit brighter front and back -if( activeMaskStackC[2] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.x))); -PV0i.y = R123i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.z))); -PV0i.w = R123i.w; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(R1i.y))); -PS0i = R3i.y; -// 1 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.x))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.z))); -R0i.w = 0; -R3i.w = 0x3f800000; -PS1i = R3i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; - -// ------------------------------------------------------------------------------------------------------------- false darkens links models curves shadows -if( activeMaskStackC[1] == true ) { -// 0 -R1i.w = 0x3f800000; -// 1 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -backupReg2i = R3i.z; -backupReg3i = R3i.w; -R3i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R3i.w = backupReg3i; -// 2 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -// 3 -backupReg0i = R1i.w; -R1i.xyz = ivec3(R4i.x,R5i.y,R6i.z); -R1i.w = backupReg0i; -// 4 -R0i.xyz = ivec3(R13i.x,R4i.y,R5i.z); -R0i.w = R4i.w; -// 5 -R4i.xyz = ivec3(R7i.x,R7i.x,R7i.x); -R4i.w = R7i.x; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); // light/shadows on link front side -passPixelColor1 = vec4(intBitsToFloat(R1i.x)*0, intBitsToFloat(R1i.y)*0, intBitsToFloat(R1i.z)*0, intBitsToFloat(R1i.w)); // links and all npcs fog rgb -passPixelColor2 = vec4(intBitsToFloat(R2i.x) * sred, intBitsToFloat(R2i.y) * sgreen, intBitsToFloat(R2i.z) * sblue, intBitsToFloat(R2i.w)) ; // Controls link RGB only in celshade mode and when original code is run (line 713). In no-celshade mode it changes the lighting on links back-side away from the sun -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor4 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/rules.txt b/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/rules.txt deleted file mode 100644 index 666ea7d8..00000000 --- a/Mods/BreathOfTheWild_CelShadingRemoval/Botw_ShadowFix_SkalFate/rules.txt +++ /dev/null @@ -1,289 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Links Shadow Brightness for No Cel-Shading Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix - SkalFate" -description = Changes the strength of shadows on Links body. Fixes the very dark link issue in no cel-shade mode. -version = 4 - - -[Preset] -name = Mode 1 - Shadows X1 (Best Mode) -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 2 - Shadows X1 (No Highlights) -$smode = 2 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 3 - Shadows X1 (Strong Highlights) -$smode = 3 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 4 - Shadows X1 (LightShade) -$smode = 4 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 5 - Shadows X1 (DarkShade) -$smode = 5 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 1 - Shadows X2 (Best Mode) -$smode = 1 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 2 - Shadows X2 (No Highlights) -$smode = 2 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 3 - Shadows X2 (Strong Highlights) -$smode = 3 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 4 - Shadows X2 (LightShade) -$smode = 4 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 5 - Shadows X2 (DarkShade) -$smode = 5 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 1 - Shadows X4 (Best Mode) -$smode = 1 -$shadowsbrightness = 4 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 2 - Shadows X4 (No Highlights) -$smode = 2 -$shadowsbrightness = 4 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 3 - Shadows X4 (Strong Highlights) -$smode = 3 -$shadowsbrightness = 4 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 4 - Shadows X4 (LightShade) -$smode = 4 -$shadowsbrightness = 4 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 5 - Shadows X4 (DarkShade) -$smode = 5 -$shadowsbrightness = 4 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 1 - Shadows X8 (Best Mode) -$smode = 1 -$shadowsbrightness = 8 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 2 - Shadows X8 (No Highlights) -$smode = 2 -$shadowsbrightness = 8 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 3 - Shadows X8 (Strong Highlights) -$smode = 3 -$shadowsbrightness = 8 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 4 - Shadows X8 (LightShade) -$smode = 4 -$shadowsbrightness = 8 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Mode 5 - Shadows X8 (DarkShade) -$smode = 5 -$shadowsbrightness = 8 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Red Link -$smode = 1 -$shadowsbrightness = 2 -$sred = 10 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Red Link X2 -$smode = 1 -$shadowsbrightness = 2 -$sred = 20 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Green Link -$smode = 1 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 10 -$sblue = 1 - -[Preset] -name = Green Link X2 -$smode = 1 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 20 -$sblue = 1 - -[Preset] -name = Blue Link -$smode = 1 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 10 - -[Preset] -name = Blue Link X2 -$smode = 1 -$shadowsbrightness = 2 -$sred = 1 -$sgreen = 1 -$sblue = 20 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Orignal Game Mode -$smode = 0 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = ---------------------------------------- -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - -[Preset] -name = Custom Settings -$smode = 1 -$shadowsbrightness = 1 -$sred = 1 -$sgreen = 1 -$sblue = 1 - - -# Credits - SkalFate -# -# Shadow Mode (smode) -- Various visual styles can be achieved with mode 1-5 -# -# Shadow Brihtness (shadowbrightness) - Controls how brightened up link and his back side will be -# -# RGB - sred, sgreen, sblue - adjusting this will add more intensity of the specific color. -# ------ Values are multiplied, so if you want to lower values use [0.01 - 1.0], or if you want to raise then use [1.00 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/56bdb3903699990d_0000079a492a9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/56bdb3903699990d_0000079a492a9249_ps.txt deleted file mode 100644 index 7f8ea109..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/56bdb3903699990d_0000079a492a9249_ps.txt +++ /dev/null @@ -1,1070 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Armor When Link is transparent -// textureUnitPS12 uf_blockPS8[23].xyz uf_blockPS8[31].x - -// shader 56bdb3903699990d -#ifdef VULKAN -layout(set = 1, binding = 13) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -UNIFORM_BUFFER_LAYOUT(33, 1, 14) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(38, 1, 15) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(40, 1, 16) uniform uniformBlockPS8 -{ -vec4 uf_blockPS8[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(42, 1, 17) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem2); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem5); -R5i = floatBitsToInt(passParameterSem7); -R6i = floatBitsToInt(passParameterSem8); -R7i = floatBitsToInt(passParameterSem9); -if( activeMaskStackC[1] == true ) { -R8i.xy = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R0i.xy)).xy); -R1i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R1i.xy)).xyz); -R9i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R0i.zw)).xyz); -R3i.w = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R0i.xy)).x); -R11i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -R127i.z = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R7i.w)); -// 1 -backupReg0i = R7i.x; -backupReg1i = R7i.y; -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); -R123i.z = floatBitsToInt((intBitsToFloat(R8i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.y))); -PS1i = R126i.w; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(R127i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV1i.z))); -R8i.y = floatBitsToInt(fract(intBitsToFloat(R6i.y))); -PS0i = R8i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PS1i = R126i.z; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R127i.w))); -R7i.w = floatBitsToInt(fract(intBitsToFloat(R6i.x))); -R1i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R1i.w; -// 5 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.y))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[44].x)); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -R4i.y = floatBitsToInt(sqrt(intBitsToFloat(R126i.z))); -PS1i = R4i.y; -} -if( activeMaskStackC[1] == true ) { -R13i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R7i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y)) + intBitsToFloat(R4i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(R4i.x))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R4i.y)) + intBitsToFloat(R6i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.w) + -(0.5)); -R6i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R6i.x; -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(R8i.y) + -(0.5)); -R8i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R3i.z = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3d4ccccd)); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(PV0i.w)) + 1.0)); -R127i.w = clampFI32(R127i.w); -R3i.x = PS0i; -PS1i = R3i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -R6i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PS0i = R6i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.x)) + 1.0)); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.y)),intBitsToFloat(R8i.y)) + 1.0)); -R7i.z = 0; -R7i.w = 0x3f800000; -R3i.y = PS0i; -PS1i = R3i.y; -// 4 -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -R10i.w = R13i.x; -R10i.w = clampFI32(R10i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R1i.w)); -// 5 -R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS0i))); -PV1i.y = R14i.y; -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.z)); -PS1i = floatBitsToInt(tempResultf); -// 6 -backupReg0i = R126i.z; -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R11i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R13i.z; -// 7 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R12i.z),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R7i.z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.y)); -R126i.x = floatBitsToInt(tempResultf); -PS1i = R126i.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R14i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R12i.y),intBitsToFloat(R13i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.z)); -PS0i = floatBitsToInt(tempResultf); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R6i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R8i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R8i.z = clampFI32(R8i.z); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R14i.y),intBitsToFloat(PV1i.x),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.w = tempi.x; -R15i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R127i.x))); -PS0i = R15i.z; -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[44].y) + intBitsToFloat(R4i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[43].x)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[45].x)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.y))); -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.x))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[44].z) + intBitsToFloat(backupReg0i))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(Color.x, intBitsToFloat(R1i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(Color.z, intBitsToFloat(R1i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(Color.y, intBitsToFloat(R1i.y))); -// 4 -backupReg0i = R126i.y; -backupReg1i = R127i.w; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[43].z) + intBitsToFloat(backupReg0i))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV1i.z))); -R14i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(backupReg1i)); -PS0i = R14i.z; -// 5 -R8i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.z)); -R15i.y = PS0i; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[45].z) + intBitsToFloat(R127i.x))); -PV1i.z = R123i.z; -// 6 -R1i.y = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R3i.z))); -R1i.y = clampFI32(R1i.y); -R16i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(PV1i.z)); -R6i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R3i.z))); -R6i.w = clampFI32(R6i.w); -// 7 -R10i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x * Factor, intBitsToFloat(R126i.y))); -R10i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x * Factor, intBitsToFloat(R126i.x))); -R10i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x * Factor, intBitsToFloat(R127i.w))); -R3i.y = floatBitsToInt(fract(uf_blockPS8[36].w)); -PS1i = R3i.y; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R9i.x = floatBitsToInt(uf_blockPS1[0].y); -PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.z)), uf_blockPS1[17].y)); -// 1 -R9i.y = floatBitsToInt(uf_blockPS1[1].y); -R9i.z = floatBitsToInt(uf_blockPS1[2].y); -R5i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R5i.w; -// 2 -predResult = (intBitsToFloat(R3i.y) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(uf_blockPS8[36].w)); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R11i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R11i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R11i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R11i.x; -backupReg1i = R11i.y; -backupReg2i = R11i.z; -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(backupReg0i))); -R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R3i.y)) + intBitsToFloat(backupReg1i))); -R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (uf_blockPS8[33].w > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.y = 0; -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS7, vec3(intBitsToFloat(R0i.y),intBitsToFloat(R0i.y),intBitsToFloat(R0i.y))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R11i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R0i.z)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R8i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS0i = R126i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -R125i.z = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -// 3 -backupReg0i = R127i.z; -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x40200000)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -R127i.w = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(backupReg0i) + intBitsToFloat(0x3eb33333))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 0.25); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(0x3e851eb8)); -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R9i.w = 0x3e99999a; -PS1i = R9i.w; -// 6 -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R11i.x)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R11i.z)) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R11i.y)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.z)); -PS1i = R127i.x; -// 8 -backupReg0i = R11i.x; -backupReg1i = R11i.y; -backupReg2i = R11i.z; -backupReg3i = R10i.x; -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),uf_blockPS8[33].w) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(R127i.y)); -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS8[33].w) + intBitsToFloat(backupReg3i))); -PS0i = R10i.x; -// 9 -backupReg0i = R10i.y; -backupReg1i = R10i.z; -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -// 10 -R11i.w = R7i.w; -// 11 -R0i.w = R7i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R9i.w = 0; -PV0i.w = R9i.w; -// 1 -R0i.w = PV0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.y = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R14i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y)); -R14i.x = clampFI32(R14i.x); -// 2 -predResult = (1.0 > intBitsToFloat(R6i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -R6i.y = floatBitsToInt((intBitsToFloat(R0i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -PV0i.w = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -// 1 -PV1i.y = PV0i.w & int(1); -// 2 -PV0i.z = PV1i.y - R127i.x; -// 3 -PV1i.w = PV0i.z << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.z)); -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002a; -R0i.z = PV1i.w + 0x0000002b; -R0i.w = PV1i.w + 0x0000002d; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -} -if( activeMaskStackC[2] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R7i.y; -// 6 -R127i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.y)); -PV0i.w = R127i.w; -// 7 -PV1i.x = ((intBitsToFloat(0x3727c5ac) > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 8 -R123i.y = ((PV1i.x == 0)?(R127i.w):(0x3727c5ac)); -PV0i.y = R123i.y; -// 9 -R7i.w = PV0i.y; -R7i.w = clampFI32(R7i.w); -} -if( activeMaskStackC[2] == true ) { -R7i.y = floatBitsToInt(texture(textureUnitPS1, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); -// 1 -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(R7i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R16i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R4i.z = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3ba3d70a)); -PV0i.z = R4i.z; -R0i.w = 0x3f800000; -PV0i.w = R0i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R127i.x = clampFI32(R127i.x); -PS0i = R127i.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R15i.y),intBitsToFloat(R16i.z),intBitsToFloat(PV0i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = PV0i.z; -PS1i = R1i.w; -// 2 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R15i.y),intBitsToFloat(R16i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 3 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R15i.y),intBitsToFloat(R16i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R1i.x; -// 4 -R3i.x = floatBitsToInt(intBitsToFloat(R8i.x) * intBitsToFloat(0x3a83126f)); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -R3i.z = floatBitsToInt(intBitsToFloat(R16i.z) * intBitsToFloat(0x3a83126f)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -PS0i = floatBitsToInt(intBitsToFloat(R8i.w) + -(intBitsToFloat(R15i.z))); -// 5 -R127i.x = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R3i.y = floatBitsToInt((intBitsToFloat(R12i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R6i.x)))); -R1i.z = floatBitsToInt((intBitsToFloat(R14i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R8i.y)))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(PV0i.w)) + intBitsToFloat(R15i.z))); -PV1i.w = R123i.w; -tempResultf = max(0.0, intBitsToFloat(PV0i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.z = floatBitsToInt(tempResultf); -PS1i = R127i.z; -// 6 -R6i.x = floatBitsToInt((intBitsToFloat(R12i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R6i.z)))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.w)), intBitsToFloat(0xbf7d70a4))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R127i.w = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(0x3f99999a)); -R127i.w = clampFI32(R127i.w); -tempResultf = max(0.0, intBitsToFloat(R8i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 7 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3ecccccd)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(max(intBitsToFloat(R11i.y), intBitsToFloat(R11i.z))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS1i)) + uf_blockPS6[27].w)/2.0); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.w), intBitsToFloat(R11i.w))); -// 9 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R6i.z = floatBitsToInt(max(intBitsToFloat(R11i.x), intBitsToFloat(R126i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(0xbe593484))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.w))); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R6i.y = floatBitsToInt(min(intBitsToFloat(R11i.y), intBitsToFloat(R11i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(0x3fc90da4))); -PV0i.z = R123i.z; -R3i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(R127i.z))); -R0i.w = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); -PS0i = R0i.w; -// 11 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.z))) + 1.0)); -R5i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R5i.y = clampFI32(R5i.y); -R5i.z = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(0xbe99999a)); -R4i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(0x2edbe6ff)); -tempResultf = max(0.0, intBitsToFloat(R126i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R5i.x = floatBitsToInt(tempResultf); -PS1i = R5i.x; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS6, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.x = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R1i.xy),intBitsToFloat(R1i.w)).x); -R1i.w = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R3i.xz),0.0).x); -R8i.xyz = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = floatBitsToInt((intBitsToFloat(R1i.w) * 2.0 + -(1.0))); -PS0i = R127i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.y),intBitsToFloat(R1i.z),intBitsToFloat(R6i.x),-0.0),vec4(intBitsToFloat(R3i.y),intBitsToFloat(R1i.z),intBitsToFloat(R6i.x),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + uf_blockPS10[1].z); -PV0i.x = clampFI32(PV0i.x); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R0i.z = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x41c80000) + intBitsToFloat(R14i.z))); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(R5i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.w) + -(intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS10[3].z, intBitsToFloat(PV0i.x))); -PS1i = R126i.y; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.x),intBitsToFloat(R12i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R14i.x)) + intBitsToFloat(R127i.y))); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R12i.x),intBitsToFloat(R14i.y),intBitsToFloat(R12i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x41400000)); -R127i.y = floatBitsToInt(min(intBitsToFloat(R11i.x), intBitsToFloat(R6i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.x) + uf_blockPS10[1].y); -PV0i.z = clampFI32(PV0i.z); -R126i.w = R2i.w; -R126i.w = clampFI32(R126i.w); -tempResultf = max(0.0, intBitsToFloat(PV1i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS0i))); -R125i.y = floatBitsToInt(intBitsToFloat(R5i.z) * intBitsToFloat(0x40200001)); -R125i.y = clampFI32(R125i.y); -PV1i.y = R125i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -R1i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = clampFI32(PS1i); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x41200000)); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PS1i))); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3dcccccd)); -R125i.w = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(0xbfe66666)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 9 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.x))); -PV1i.x = R125i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS0i)) + 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R7i.x)) + intBitsToFloat(0xbd4ccccd))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R7i.x)) + intBitsToFloat(0xbc23d70a))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R3i.w))); -// 10 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x41a00000)); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(PS1i))) + uf_blockPS6[27].z)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x42480000)); -R127i.w = clampFI32(R127i.w); -PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.y))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.w)) + 1.0)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3df5c28f)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R1i.w))); -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R4i.w)); -PS1i = R125i.z; -// 12 -R126i.x = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.z))); -R126i.x = clampFI32(R126i.x); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R5i.w) * intBitsToFloat(0x3dcccccd) + 1.0)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[30].w)); -tempResultf = max(0.0, intBitsToFloat(R6i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R125i.w)) + intBitsToFloat(R125i.w))); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt((-(intBitsToFloat(PV0i.y)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a)); -PV1i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(0x3da3d70a)); -PV1i.w = clampFI32(PV1i.w); -tempResultf = max(0.0, intBitsToFloat(R5i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS1i))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R126i.x))); -R124i.y = clampFI32(R124i.y); -R126i.z = floatBitsToInt(-(intBitsToFloat(R126i.w)) + 1.0); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R1i.w))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 15 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); -R5i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); -R4i.w = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(0x42960000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 16 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(backupReg0i))); -PV0i.x = R127i.x; -R6i.y = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(0x2edbe6ff)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), uf_blockPS6[16].w)); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.w)),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.z))); -PS0i = R3i.w; -// 17 -R1i.x = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R125i.x)); -R1i.x = clampFI32(R1i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R124i.y)) + intBitsToFloat(R126i.y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(R6i.z))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 18 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(R127i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R11i.x) + -(intBitsToFloat(R6i.z))); -PS0i = floatBitsToInt(intBitsToFloat(R11i.y) + -(intBitsToFloat(R6i.z))); -// 19 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(R11i.z) + -(intBitsToFloat(R6i.z))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R10i.w)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R6i.x = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(PV0i.z)); -PS1i = R6i.x; -// 20 -backupReg0i = R8i.x; -backupReg1i = R8i.y; -backupReg2i = R6i.z; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.w))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(backupReg2i))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PV1i.w))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),-(intBitsToFloat(R5i.w))) + intBitsToFloat(R126i.w))); -PS0i = R4i.y; -} -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(uf_blockPS6[4].x,uf_blockPS6[4].y,uf_blockPS6[4].z,-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R12i.y),intBitsToFloat(R13i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(0xba0a8ec8))); -R7i.w = clampFI32(R7i.w); -PS0i = R7i.w; -// 1 -PV1i.x = floatBitsToInt(uf_blockPS6[5].x + -(intBitsToFloat(R5i.y))); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R0i.z)) + uf_blockPS6[52].x); -PV1i.z = floatBitsToInt(uf_blockPS6[5].y + -(intBitsToFloat(R5i.z))); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.z)) + intBitsToFloat(0xba0a8ec8))); -R0i.z = clampFI32(R0i.z); -PS1i = R0i.z; -// 2 -backupReg0i = R5i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R1i.x)) + intBitsToFloat(R5i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R6i.z)) + intBitsToFloat(0xba0a8ec8))); -R1i.y = clampFI32(R1i.y); -PS0i = R1i.y; -// 3 -PV1i.x = floatBitsToInt(uf_blockPS6[5].z + -(intBitsToFloat(R6i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockPS6[13].w)); -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.w))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(R6i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R4i.w))); -PV0i.w = clampFI32(PV0i.w); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R3i.w)) + intBitsToFloat(R3i.w))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R3i.w))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.w))); -R5i.z = clampFI32(R5i.z); -// 6 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV1i.y))); -R7i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PS0i = R7i.x; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 8 -backupReg0i = R4i.y; -backupReg0i = R4i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV1i.y))); -PV0i.y = R4i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(PV1i.y))); -PS0i = R1i.x; -// 9 -R6i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.w))); -R8i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.x))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(R126i.y))); -PV1i.z = R4i.z; -R0i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.y)) * intBitsToFloat(0x3fb8aa3b)); -// 10 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) * intBitsToFloat(0x3fb8aa3b)); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * intBitsToFloat(0x3fb8aa3b)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PS1i))); -// 11 -R8i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 12 -R5i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -// 13 -R8i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS10[2].w, intBitsToFloat(R5i.z))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockPS10[0].x)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), uf_blockPS10[0].y)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.x))); -PV1i.x = R123i.x; -R126i.y = ((1.0 > uf_blockPS8[37].x)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = R126i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), uf_blockPS10[0].z)); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R7i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(R2i.z))); -PV0i.y = R123i.y; -R125i.z = ((PV1i.y == 0)?(R4i.y):(R8i.x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R0i.z))); -R125i.x = ((PV1i.y == 0)?(R1i.x):(R5i.w)); -PS0i = R125i.x; -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R1i.y))); -R127i.w = ((R126i.y == 0)?(R4i.z):(R8i.z)); -R1i.w = floatBitsToInt(uf_blockPS8[37].x); -PS1i = R1i.w; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R8i.y))); -PV0i.x = R127i.x; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R6i.x))); -PV0i.w = R126i.w; -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) * 0.25); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) * 0.25); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(PV0i.z)) + intBitsToFloat(R0i.w))); -PV1i.z = R127i.z; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3fb8aa3b)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3fb8aa3b)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * 0.25); -// 7 -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3fb8aa3b)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -// 9 -R123i.x = ((R126i.y == 0)?(R127i.x):(PV0i.x)); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -// 10 -R1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R125i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R123i.w = ((R126i.y == 0)?(R126i.w):(PV1i.w)); -PV0i.w = R123i.w; -// 11 -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R125i.x)); -R123i.z = ((R126i.y == 0)?(R127i.z):(PV0i.z)); -PV1i.z = R123i.z; -// 12 -R1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.w)); -} -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/7cd50058a8f1d6dd_00001e1e1fea9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/7cd50058a8f1d6dd_00001e1e1fea9249_ps.txt deleted file mode 100644 index f9ae8ec1..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/7cd50058a8f1d6dd_00001e1e1fea9249_ps.txt +++ /dev/null @@ -1,969 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Armor When teleporting - -// shader 7cd50058a8f1d6dd -#ifdef VULKAN -layout(set = 1, binding = 7) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem2); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem5); -R5i = floatBitsToInt(passParameterSem7); -R6i = floatBitsToInt(passParameterSem8); -if( activeMaskStackC[1] == true ) { -R7i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).xy); -R1i.xyz = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R1i.xy)).xyz); -R8i.xyz = floatBitsToInt(texture(textureUnitPS7, intBitsToFloat(R0i.zw)).xyz); -R1i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); -R9i.xyz = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -R127i.w = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.w = R127i.w; -R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PS0i = R127i.y; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.x))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -R126i.w = floatBitsToInt(fract(intBitsToFloat(R6i.x))); -PS0i = R126i.w; -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R126i.y = floatBitsToInt(fract(intBitsToFloat(R6i.y))); -PS1i = R126i.y; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R127i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.x))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.z))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg0i))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R126i.w) + -(0.5)); -R126i.w = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R126i.w; -// 6 -backupReg0i = R126i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(backupReg0i) + -(0.5)); -// 7 -R127i.x = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R1i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(PS0i)) + 1.0)); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R1i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R127i.w)) + 1.0)); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 8 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R1i.z))); -// 9 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(R127i.x))); -PV1i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[1].w)) + intBitsToFloat(0x3f59999a)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(backupReg0i))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -// 10 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x) * Factor, intBitsToFloat(PV1i.x))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS1i))); -R3i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3f969696)); -R3i.z = clampFI32(R3i.z); -R1i.w = floatBitsToInt(fract(intBitsToFloat(uf_remappedPS[3].w))); -R6i.y = 0x3f800000; -PS0i = R6i.y; -// 11 -R7i.y = 0; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x) * Factor, intBitsToFloat(R127i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x) * Factor, intBitsToFloat(R127i.w))); -PS1i = R5i.y; -// 12 -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.y)); -PS0i = floatBitsToInt(tempResultf); -// 13 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PV1i.x = R3i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R3i.y; -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); -PV1i.z = R4i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.w),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = R1i.x; -// 15 -R2i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R2i.w = clampFI32(R2i.w); -// 16 -predResult = (intBitsToFloat(R1i.w) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(intBitsToFloat(uf_remappedPS[3].w))); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS2, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R9i.x; -backupReg1i = R9i.y; -backupReg2i = R9i.z; -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R1i.w)) + intBitsToFloat(backupReg0i))); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.w)) + intBitsToFloat(backupReg1i))); -R9i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R1i.w)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R6i.z = ((intBitsToFloat(uf_remappedPS[4].w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 1 -predResult = (R6i.z != 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3e99999a)); -R0i.y = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3e99999a)); -R0i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3e99999a)); -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R0i.z)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R2i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.w = floatBitsToInt(tempResultf); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -// 3 -R126i.y = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(R127i.w) + intBitsToFloat(0x3eb33333))); -PV1i.y = R126i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x40200000)); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 0.25); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(0x3e851eb8)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -R7i.y = 0x3e99999a; -PS1i = R7i.y; -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -PV0i.y = clampFI32(PV0i.y); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -R127i.z = clampFI32(R127i.z); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(PV0i.y)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.z)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.w)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.w)); -PS1i = R127i.x; -// 8 -backupReg0i = R9i.x; -backupReg1i = R9i.y; -backupReg2i = R9i.z; -backupReg3i = R5i.x; -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg0i))); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg1i))); -R9i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R5i.z)) + intBitsToFloat(R127i.z)); -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg3i))); -PS0i = R5i.x; -// 9 -backupReg0i = R5i.y; -backupReg1i = R5i.z; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg0i))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg1i))); -// 10 -R4i.y = R6i.y; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R6i.y = R7i.y; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[4].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[4].y)); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x40666666)); -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x40666666)); -R0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x40666666)); -R1i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f3851ec)); -R1i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f3851ec)); -PS0i = R1i.y; -// 3 -R1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3f3851ec)); -} -if( activeMaskStackC[2] == true ) { -R0i.y = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -R0i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.w),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(R0i.x)); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f333333) + intBitsToFloat(R0i.y))); -PV1i.y = R123i.y; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[4].x)) + intBitsToFloat(PV1i.y)); -// 3 -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x41a00000)); -R127i.w = clampFI32(R127i.w); -PV1i.w = R127i.w; -// 4 -backupReg0i = R9i.x; -backupReg1i = R9i.y; -backupReg2i = R9i.z; -backupReg3i = R5i.x; -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.w))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.w))); -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(PV1i.w))); -PS0i = R5i.x; -// 5 -backupReg0i = R5i.y; -backupReg1i = R5i.z; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R127i.w))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R1i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].x) * intBitsToFloat(0xbd088889)); -// 1 -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), intBitsToFloat(uf_remappedPS[6].x))); -// 2 -predResult = (intBitsToFloat(uf_remappedPS[7].w) != 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3e22f983)); -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x40e66666)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3e22f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3e22f983)); -PS0i = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.z)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(intBitsToFloat(uf_remappedPS[7].w), -(intBitsToFloat(uf_remappedPS[7].w)))); -// 2 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e99999a)); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(PS1i))); -PS0i = R125i.w; -// 3 -R127i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R127i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R126i.z = R1i.x; -R126i.z = clampFI32(R126i.z); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -R124i.w = floatBitsToInt((intBitsToFloat(0xc3020000) * intBitsToFloat(PS0i) + intBitsToFloat(0x43200000))); -PS1i = R124i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R4i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3e22f983)); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3e22f983)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt((intBitsToFloat(0xc31a0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43200000))); -R126i.y = floatBitsToInt(sin((intBitsToFloat(PS0i))/0.1591549367)); -PS1i = R126i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.w = tempi.x; -PS0i = floatBitsToInt(sin((intBitsToFloat(PV1i.x))/0.1591549367)); -// 7 -backupReg0i = R127i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.z))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0xc2080000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x42200000))); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt((intBitsToFloat(0xbfe66666) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -PS1i = floatBitsToInt(sin((intBitsToFloat(backupReg0i))/0.1591549367)); -// 8 -R125i.x = floatBitsToInt((intBitsToFloat(0xbd8f5c29) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3d8f5c29))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.w)); -R126i.w = floatBitsToInt((intBitsToFloat(0xc0333333) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -tempResultf = max(0.0, intBitsToFloat(R126i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.x = floatBitsToInt(tempResultf); -PS0i = R127i.x; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.25 + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3e4ccccd) + intBitsToFloat(0x3e4ccccd))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(0x3d4cccce) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3dcccccd))); -PV1i.z = R123i.z; -PV1i.w = ((0.0 > intBitsToFloat(uf_remappedPS[7].w))?int(0xFFFFFFFF):int(0x0)); -R126i.x = ((intBitsToFloat(uf_remappedPS[7].w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R126i.x; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x41000000)); -R123i.y = ((PV1i.w == 0)?(PV1i.y):(PV1i.z)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f400000) + intBitsToFloat(R1i.z))); -PV0i.z = R123i.z; -PV0i.w = PV1i.x; -PV0i.w = clampFI32(PV0i.w); -R127i.z = floatBitsToInt((intBitsToFloat(0xc3480000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43960000))); -PS0i = R127i.z; -// 11 -R127i.x = floatBitsToInt((intBitsToFloat(0xc36b0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x437f0000))); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0xbeb33333) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R1i.w = ((R126i.x == 0)?(PV0i.y):(0)); -R125i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = R125i.z; -// 12 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R125i.y = floatBitsToInt((intBitsToFloat(0x41600000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40c00000))); -// 13 -PV1i.z = PV0i.x; -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); -PV1i.w = clampFI32(PV1i.w); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z)); -// 15 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.x = R126i.x; -R125i.w = PV0i.y; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -// 16 -PV0i.z = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.x)); -// 17 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -// 18 -tempResultf = max(0.0, intBitsToFloat(PV1i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 19 -PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x43480000)); -// 20 -R126i.z = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -PS0i = R126i.z; -// 21 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.x))); -PV1i.w = R123i.w; -// 22 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 23 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 24 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 25 -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R1i.w))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R1i.w))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R0i.xyz = ivec3(0,0,0); -R1i.w = 0; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[3].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R1i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x40490fdb)); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R127i.y = R1i.x; -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.z) + -(intBitsToFloat(R9i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x40600000)); -R1i.w = floatBitsToInt((intBitsToFloat(uf_remappedPS[3].x) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(backupReg0i))); -PS0i = R1i.w; -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.w = R126i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.w))); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R126i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -// 5 -PV1i.x = PV0i.z; -PV1i.x = clampFI32(PV1i.x); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); -PV1i.y = clampFI32(PV1i.y); -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.w))/0.1591549367)); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + 1.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x)); -// 7 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R127i.x; -R127i.y = PV0i.w; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.z)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3df5c290)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e8a3d71)); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3b449ba6)); -R126i.x = PV1i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) / 2.0); -PS0i = R126i.x; -// 9 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x41100000)); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40a00000)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -tempResultf = max(0.0, intBitsToFloat(PV1i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40c00000)); -// 12 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 13 -R123i.y = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R126i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3fe66666) + intBitsToFloat(R126i.z))); -PV1i.w = R123i.w; -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.x)); -// 15 -backupReg0i = R0i.y; -backupReg1i = R0i.x; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.y)); -// 16 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg1i))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[3].y) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R2i.w))); -R127i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -// 1 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(PV0i.x))); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -backupReg3i = R1i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg1i))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg2i))); -R1i.w = floatBitsToInt(intBitsToFloat(backupReg3i) + intBitsToFloat(PV1i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R126i.w = R1i.w; -R126i.w = clampFI32(R126i.w); -PV0i.w = R126i.w; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R5i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R5i.x))); -PV1i.y = R123i.y; -R127i.z = ((intBitsToFloat(PV0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R5i.z))); -PV1i.w = R123i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R9i.x))); -PS1i = R127i.y; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),-(intBitsToFloat(R126i.w))) + intBitsToFloat(R9i.y))); -PV0i.w = R123i.w; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),-(intBitsToFloat(R126i.w))) + intBitsToFloat(R9i.z))); -PS0i = R127i.w; -// 3 -backupReg0i = R127i.y; -R127i.x = ((R127i.z == 0)?(R5i.x):(PV0i.z)); -PV1i.x = R127i.x; -R127i.y = ((R127i.z == 0)?(R9i.x):(backupReg0i)); -R126i.z = ((R127i.z == 0)?(R5i.z):(PV0i.x)); -PV1i.z = R126i.z; -R125i.w = ((R127i.z == 0)?(R5i.y):(PV0i.y)); -PV1i.w = R125i.w; -R125i.z = ((R127i.z == 0)?(R9i.y):(PV0i.w)); -PS1i = R125i.z; -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[8].x)); -R126i.y = ((R127i.z == 0)?(R9i.z):(R127i.w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),-(intBitsToFloat(R126i.w))) + intBitsToFloat(R4i.y))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedPS[8].y)); -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[8].z)); -// 5 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R127i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R125i.w))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R126i.z))); -R2i.w = ((R127i.z == 0)?(R4i.y):(PV0i.z)); -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R127i.y))); -PS1i = R6i.x; -// 6 -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R125i.z))); -R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R126i.y))); -// 7 -predResult = (1.0 > intBitsToFloat(uf_remappedPS[1].w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(uf_remappedPS[6].x))); -R0i.y = floatBitsToInt((-(intBitsToFloat(uf_remappedPS[1].w)) * intBitsToFloat(0x40200000) + intBitsToFloat(0x40200000))); -R0i.y = clampFI32(R0i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(uf_remappedPS[6].x))); -PV0i.z = R0i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedPS[6].x))); -// 1 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[9].z))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[9].z))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[9].z))); -R1i.w = PV0i.w; -R1i.w = floatBitsToInt(intBitsToFloat(R1i.w) / 2.0); -R1i.x = PV0i.x; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) / 2.0); -PS1i = R1i.x; -} -if( activeMaskStackC[2] == true ) { -R0i.w = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(uf_remappedPS[9].y))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].w),intBitsToFloat(R0i.w)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.z = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -if( (intBitsToFloat(R3i.z) > intBitsToFloat(R1i.z))) discard; -tempResultf = max(0.0, intBitsToFloat(R1i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R1i.x = floatBitsToInt(tempResultf); -PS0i = R1i.x; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3fe66666)); -// 1 -R127i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -PS1i = R127i.z; -// 2 -R123i.x = floatBitsToInt((intBitsToFloat(0x40b1999a) * intBitsToFloat(PS1i) + intBitsToFloat(0x3ee66666))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(0x3dccccce) * intBitsToFloat(PS1i) + intBitsToFloat(0x3e4ccccd))); -PV0i.y = R123i.y; -// 3 -backupReg0i = R5i.x; -backupReg1i = R5i.y; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg1i))); -R123i.w = floatBitsToInt((intBitsToFloat(0x41200000) * intBitsToFloat(R127i.z) + 4.0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R5i.z; -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R2i.w))); -PV0i.x = R123i.x; -PV0i.y = uf_remappedPS[7].z; -PV0i.z = ((intBitsToFloat(R7i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R123i.w = ((R6i.z == 0)?(0x3d008081):(0x3d30b0b1)); -PV0i.w = R123i.w; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R1i.x = PV0i.w; -R127i.y = ((PV0i.z == 0)?(0):(0x3f800000)); -PV1i.y = R127i.y; -R0i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 0.5 + 0.5)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x427f0000)); -R1i.y = PV0i.y; -PS1i = R1i.y; -// 2 -PV0i.x = ((intBitsToFloat(PV1i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 0.5 + 0.5)); -PV0i.z = floatBitsToInt(floor(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R2i.w = 0x3f800000; -R0i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 0.5 + 0.5)); -PS0i = R0i.x; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 2.0); -R123i.w = ((PV0i.x == 0)?(R6i.y):(R7i.y)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PV1i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x437f0000)); -// 5 -R0i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081)); -PS1i = int(intBitsToFloat(PV0i.z)); -// 6 -PV0i.x = PS1i & 0x000000e0; -// 7 -PV1i.w = PV0i.x >> 0x00000003; -// 8 -PS0i = floatBitsToInt(float(PV1i.w)); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0x42800000)); -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.y) * 2.0 + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -// 11 -R5i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081))); -// 12 -R4i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R4i.w = R2i.w; -// 13 -R3i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R3i.w = R0i.w; -// 14 -R2i.xyz = ivec3(R6i.x,R8i.y,R7i.z); -R2i.w = R5i.w; -// 15 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -backupReg2i = R1i.z; -backupReg3i = R1i.w; -R1i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R1i.w = backupReg3i; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor5 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/cc51c2b5a4fce06c_00000078787f9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/cc51c2b5a4fce06c_00000078787f9249_ps.txt deleted file mode 100644 index dec33b5e..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/cc51c2b5a4fce06c_00000078787f9249_ps.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Ancient Armor - -// shader cc51c2b5a4fce06c -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem7; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f.xy = (texture(textureUnitPS3, R0f.xy).xy); -R1f.w = (texture(textureUnitPS2, R0f.xy).x); -R1f.xyz = (texture(textureUnitPS4, R1f.xy).xyz); -R6f.xyz = (texture(textureUnitPS5, R0f.zw).xyz); -R0f.xyz = (texture(textureUnitPS1, R0f.xy).xyz); -// 0 -PV0f.x = fract(R2f.x); -R125f.y = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R125f.y; -R127f.z = mul_nonIEEE(R3f.y, R4f.z); -PV0f.w = fract(R2f.y); -R127f.x = mul_nonIEEE(R3f.z, R4f.x); -PS0f = R127f.x; -// 1 -R126f.x = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV1f.y = PV0f.w + -(0.5); -PV1f.z = PV0f.x + -(0.5); -PV1f.w = mul_nonIEEE(R3f.x, R4f.y); -R127f.y = mul_nonIEEE(PV0f.y, PV0f.y); -PS1f = R127f.y; -// 2 -backupReg0f = R127f.z; -R123f.x = (mul_nonIEEE(-(PV1f.z),PV1f.z) + 1.0); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -R126f.y = (mul_nonIEEE(-(R4f.z),R3f.x) + R127f.x); -R127f.z = (mul_nonIEEE(-(R4f.y),R3f.z) + backupReg0f); -R123f.w = (mul_nonIEEE(-(PV1f.y),PV1f.y) + 1.0); -R123f.w = clamp(R123f.w, 0.0, 1.0); -PV0f.w = R123f.w; -R127f.w = (mul_nonIEEE(-(R4f.x),R3f.y) + PV1f.w); -PS0f = R127f.w; -// 3 -R123f.x = (mul_nonIEEE(R126f.x,R126f.x) + R127f.y); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV1f.x = R123f.x; -PV1f.y = mul_nonIEEE(R4f.w, R126f.x); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.w); -R126f.w = mul_nonIEEE(Color.r, R1f.x); -R126f.x = mul_nonIEEE(Color.g, R1f.y); -PS1f = R126f.x; -// 4 -PV0f.x = mul_nonIEEE(R127f.z, PV1f.y); -PV0f.y = mul_nonIEEE(R126f.y, PV1f.y); -PV0f.z = mul_nonIEEE(R127f.w, PV1f.y); -PV0f.w = -(PV1f.x) + 1.0; -PS0f = mul_nonIEEE(PV1f.z, PV1f.z); -// 5 -R123f.x = (mul_nonIEEE(R4f.y,R125f.y) + PV0f.y); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R4f.x,R125f.y) + PV0f.x); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(R1f.w, PS0f); -R123f.w = (mul_nonIEEE(R4f.z,R125f.y) + PV0f.z); -PV1f.w = R123f.w; -PS1f = sqrt(PV0f.w); -// 6 -R127f.x = (mul_nonIEEE(R3f.x,PS1f) + PV1f.y); -PV0f.x = R127f.x; -R126f.y = (mul_nonIEEE(R3f.y,PS1f) + PV1f.x); -PV0f.y = R126f.y; -R126f.z = (mul_nonIEEE(R3f.z,PS1f) + PV1f.w); -PV0f.z = R126f.z; -PV0f.w = PV1f.z * intBitsToFloat(0x427f0000); -R127f.z = mul_nonIEEE(Color.b, R1f.z); -PS0f = R127f.z; -// 7 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R125f.y = floor(PV0f.w); -R125f.y *= 4.0; -PS1f = R125f.y; -// 8 -PV0f.x = mul_nonIEEE(R6f.z, R127f.z); -PV0f.y = mul_nonIEEE(R6f.y, R126f.x); -R127f.z = intBitsToFloat(0x3d008081); -PV0f.w = mul_nonIEEE(R6f.x, R126f.w); -tempResultf = 1.0 / sqrt(PV1f.x); -R127f.y = tempResultf; -R127f.y /= 2.0; -PS0f = R127f.y; -// 9 -R126f.x = R125f.y + 2.0; -R6f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x) * Factor, PV0f.y); -R6f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x) * Factor, PV0f.x); -PV1f.w = intBitsToFloat(uf_remappedPS[2].z); -R6f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x) * Factor, PV0f.w); -PS1f = R6f.x; -// 10 -R3f.x = R127f.z; -R3f.y = PV1f.w; -R1f.z = (mul_nonIEEE(R126f.z,R127f.y) + 0.5); -R3f.w = 1.0; -R1f.x = (mul_nonIEEE(R127f.x,R127f.y) + 0.5); -PS0f = R1f.x; -// 11 -R1f.y = (mul_nonIEEE(R126f.y,R127f.y) + 0.5); -R6f.w = 1.0; -R1f.w = R126f.x * intBitsToFloat(0x3b808081); -PS1f = R1f.w; -// 12 -R0f.w = intBitsToFloat(0x3e828283); -// 13 -R7f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R7f.w = R6f.w; -// 14 -R6f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R6f.w = R1f.w; -// 15 -R5f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R5f.w = R0f.w; -// 16 -R4f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R4f.w = R3f.w; -// export -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor1 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor3 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor5 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/rules.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/rules.txt deleted file mode 100644 index 3442ce19..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Armor/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Ancient Armor -path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient Armor" -description = Change Ancient Amor's color and brightness. Originally it's Ancient Orange. -version = 4 - -[Preset] -name = Malice Red -$R = 0.85 -$G = 0.029 -$B = 0.15 -$L_f = 1.0 - -[Preset] -name = Guardian Yellow -$R = 1.0 -$G = 0.2 -$B = 0.059 -$L_f = 2.0 - -[Preset] -name = Guardian weapon Yellow -$R = 1.0 -$G = 0.2 -$B = 0.0 -$L_f = 1.5 - -[Preset] -name = Ancient Orange -$R = 1.0 -$G = 0.2 -$B = 0.0006 -$L_f = 1.0 - -[Preset] -name = Ancient weapon Orange -$R = 1.0 -$G = 0.15 -$B = 0.05 -$L_f = 1.0 - -[Preset] -name = Energy Blue -$R = 0.03 -$G = 0.25 -$B = 1.0 -$L_f = 2.0 - -[Preset] -name = Custom (Edit in rules.txt) -$R = 0.000 -$G = 0.000 -$B = 0.000 -$L_f = 2.0 # Brightness scaling factor diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/5c4fc00fefe604eb_00000078787f9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/5c4fc00fefe604eb_00000078787f9249_ps.txt deleted file mode 100644 index cfa86084..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/5c4fc00fefe604eb_00000078787f9249_ps.txt +++ /dev/null @@ -1,227 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Light = $L; - -// Ancient weapons - -// shader 5c4fc00fefe604eb -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem3); -R2i = floatBitsToInt(passParameterSem4); -R3i = floatBitsToInt(passParameterSem7); -R4i.xy = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R0i.xy)).xy); -R6i.xy = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R0i.xy)).xy); -R5i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).xyz); -R7i.xyz = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).xyz); -R0i.xyz = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyz); -// 0 -R126i.x = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(R3i.y))); -PV0i.w = floatBitsToInt(fract(intBitsToFloat(R3i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R2i.x))); -PS0i = R126i.y; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(0.5)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R2i.y))); -R127i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R1i.z)) + intBitsToFloat(R127i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.z)),intBitsToFloat(R1i.x)) + intBitsToFloat(R126i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(PS1i))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(intBitsToFloat(R6i.y) * intBitsToFloat(0x437f0000)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.x)),intBitsToFloat(R1i.y)) + intBitsToFloat(R127i.z))); -PV1i.w = R123i.w; -R127i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PS1i = R127i.w; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R6i.y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.x))); -R127i.x = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.x; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(R127i.w))); -// 6 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.z))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.w))); -PV0i.w = R127i.x & 0x000000e0; -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x427f0000)); -PS0i = R127i.y; -// 7 -R127i.x = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R5i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R5i.z))); -R127i.z = PV0i.w >> 0x00000003; -R127i.w = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R5i.x))); -R126i.w = ((intBitsToFloat(R6i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS1i = R126i.w; -// 8 -backupReg0i = R127i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R126i.x = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 4.0); -PS0i = R126i.x; -// 9 -backupReg0i = R126i.y; -backupReg1i = R127i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R127i.w))); -R126i.y = ((R126i.w == 0)?(0x3d008081):(0x3d20a0a1)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(backupReg0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R127i.x))); -PS1i = floatBitsToInt(float(backupReg1i)); -// 10 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0x42820000)); -R7i.y = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(PV1i.w))); -R126i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + 2.0); -PV0i.w = uf_remappedPS[2].z; -R7i.x = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(PV1i.x))); -PS0i = R7i.x; -// 11 -R6i.x = R126i.y; -R6i.y = PV0i.w; -R7i.z = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(R127i.z))); -R6i.w = floatBitsToInt(1.0); -R7i.w = 0x3f800000; -PS1i = R7i.w; -// 12 -R5i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3b808081)); -R0i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3b808081)); -PS0i = R0i.w; -// 13 -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.y)); -PS1i = floatBitsToInt(tempResultf); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 14 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PS1i)) + 0.5)); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PS1i)) + 0.5)); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PS1i)) + 0.5)); -// 15 -R4i.xyz = ivec3(R7i.x,R7i.y,R7i.z); -R4i.w = R7i.w; -// 16 -R3i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R3i.w = R5i.w; -// 17 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -// 18 -R1i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R1i.w = R6i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor5 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/b1b149918fac0b8d_00001e1e1fea9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/b1b149918fac0b8d_00001e1e1fea9249_ps.txt deleted file mode 100644 index 97b1ad64..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/b1b149918fac0b8d_00001e1e1fea9249_ps.txt +++ /dev/null @@ -1,987 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Light = $L; - -// Ancient weapons when teleporting - -// shader b1b149918fac0b8d -#ifdef VULKAN -layout(set = 1, binding = 7) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem8; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem8); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem5); -R5i = floatBitsToInt(passParameterSem7); -if( activeMaskStackC[1] == true ) { -R6i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).xy); -R7i.xyz = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).xyz); -R9i.xy = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).xy); -R8i.xyz = floatBitsToInt(texture(textureUnitPS7, intBitsToFloat(R0i.zw)).xyz); -R10i.xyz = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -R127i.w = floatBitsToInt((intBitsToFloat(R6i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.w = R127i.w; -R127i.y = floatBitsToInt((intBitsToFloat(R6i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PS0i = R127i.y; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -R126i.w = floatBitsToInt(fract(intBitsToFloat(R2i.x))); -PS0i = R126i.w; -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.x = floatBitsToInt(fract(intBitsToFloat(R2i.y))); -PS1i = R126i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.z))); -PV1i.x = R127i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg0i))); -PV1i.y = R125i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.y))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R126i.w) + -(0.5)); -R126i.w = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R126i.w; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(R126i.x) + -(0.5)); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(PS0i)) + 1.0)); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R7i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R7i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R127i.w)) + 1.0)); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 8 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R7i.z))); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R9i.y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(R127i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(R127i.z))); -R1i.w = 0x3f800000; -PS1i = R1i.w; -// 10 -R4i.x = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(PV1i.w))); -R4i.y = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(PV1i.z))); -R4i.z = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(PV1i.x))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.y))); -R4i.w = 0; -PS0i = R4i.w; -// 11 -R2i.x = floatBitsToInt(fract(intBitsToFloat(uf_remappedPS[2].w))); -R5i.w = R9i.y; -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.y)); -PS1i = floatBitsToInt(tempResultf); -// 12 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R5i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -PV0i.y = R5i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); -PV0i.z = R3i.z; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R127i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PS1i = R3i.y; -// 14 -R3i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 1.0); -R3i.x = clampFI32(R3i.x); -// 15 -predResult = (intBitsToFloat(R2i.x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(intBitsToFloat(uf_remappedPS[2].w))); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS2, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg0i))); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg1i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg2i))); -// 2 -R5i.w = R4i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R5i.z = ((intBitsToFloat(uf_remappedPS[3].w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 1 -predResult = (R5i.z != 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3e99999a)); -R0i.y = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3e99999a)); -R0i.z = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3e99999a)); -} -if( activeMaskStackC[2] == true ) { -R0i.w = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R3i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS0i = R126i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -R125i.z = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -// 3 -backupReg0i = R127i.z; -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x40200000)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -R127i.w = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(backupReg0i) + intBitsToFloat(0x3eb33333))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 0.25); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(0x3e851eb8)); -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R6i.w = 0x3e99999a; -PS1i = R6i.w; -// 6 -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.z)); -PS1i = R127i.x; -// 8 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -backupReg3i = R4i.x; -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg0i))); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg1i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.z)) + intBitsToFloat(R127i.y)); -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg3i))); -PS0i = R4i.x; -// 9 -backupReg0i = R4i.y; -backupReg1i = R4i.z; -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg0i))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(backupReg1i))); -// 10 -R3i.w = R1i.w; -// 11 -R5i.w = R1i.w; -// 12 -R4i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R6i.w = R4i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[3].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[3].y)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x40666666)); -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x40666666)); -R0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x40666666)); -R2i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f3851ec)); -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f3851ec)); -PS0i = R2i.y; -// 3 -R2i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3f3851ec)); -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -R2i.y = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.w),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.z; -PV0i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R2i.y)); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f333333) + intBitsToFloat(R0i.z))); -PV1i.y = R123i.y; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(PV1i.y)); -// 3 -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x41a00000)); -R127i.w = clampFI32(R127i.w); -PV1i.w = R127i.w; -// 4 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -backupReg3i = R4i.x; -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.w))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.w))); -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(PV1i.w))); -PS0i = R4i.x; -// 5 -backupReg0i = R4i.y; -backupReg1i = R4i.z; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R127i.w))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R0i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].x) * intBitsToFloat(0xbd088889)); -// 1 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].x))); -// 2 -predResult = (intBitsToFloat(uf_remappedPS[7].w) != 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3e22f983)); -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40e66666)); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3e22f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3e22f983)); -PS0i = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.z)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(intBitsToFloat(uf_remappedPS[7].w), -(intBitsToFloat(uf_remappedPS[7].w)))); -// 2 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e99999a)); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(PS1i))); -PS0i = R125i.w; -// 3 -R127i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R127i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R126i.z = R3i.y; -R126i.z = clampFI32(R126i.z); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -R124i.w = floatBitsToInt((intBitsToFloat(0xc3020000) * intBitsToFloat(PS0i) + intBitsToFloat(0x43200000))); -PS1i = R124i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -// 5 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3e22f983)); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3e22f983)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt((intBitsToFloat(0xc31a0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43200000))); -R126i.y = floatBitsToInt(sin((intBitsToFloat(PS0i))/0.1591549367)); -PS1i = R126i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.w = tempi.x; -PS0i = floatBitsToInt(sin((intBitsToFloat(PV1i.x))/0.1591549367)); -// 7 -backupReg0i = R127i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.z))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0xc2080000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x42200000))); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt((intBitsToFloat(0xbfe66666) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -PS1i = floatBitsToInt(sin((intBitsToFloat(backupReg0i))/0.1591549367)); -// 8 -R125i.x = floatBitsToInt((intBitsToFloat(0xbd8f5c29) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3d8f5c29))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.w)); -R126i.w = floatBitsToInt((intBitsToFloat(0xc0333333) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -tempResultf = max(0.0, intBitsToFloat(R126i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.x = floatBitsToInt(tempResultf); -PS0i = R127i.x; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.25 + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3e4ccccd) + intBitsToFloat(0x3e4ccccd))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(0x3d4cccce) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3dcccccd))); -PV1i.z = R123i.z; -PV1i.w = ((0.0 > intBitsToFloat(uf_remappedPS[7].w))?int(0xFFFFFFFF):int(0x0)); -R126i.x = ((intBitsToFloat(uf_remappedPS[7].w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R126i.x; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x41000000)); -R123i.y = ((PV1i.w == 0)?(PV1i.y):(PV1i.z)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f400000) + intBitsToFloat(R0i.y))); -PV0i.z = R123i.z; -PV0i.w = PV1i.x; -PV0i.w = clampFI32(PV0i.w); -R127i.z = floatBitsToInt((intBitsToFloat(0xc3480000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43960000))); -PS0i = R127i.z; -// 11 -R127i.x = floatBitsToInt((intBitsToFloat(0xc36b0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x437f0000))); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0xbeb33333) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R1i.w = ((R126i.x == 0)?(PV0i.y):(0)); -R125i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = R125i.z; -// 12 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R125i.y = floatBitsToInt((intBitsToFloat(0x41600000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40c00000))); -// 13 -PV1i.z = PV0i.x; -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); -PV1i.w = clampFI32(PV1i.w); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z)); -// 15 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.x = R126i.x; -R125i.w = PV0i.y; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -// 16 -PV0i.z = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.x)); -// 17 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -// 18 -tempResultf = max(0.0, intBitsToFloat(PV1i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 19 -PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x43480000)); -// 20 -R126i.z = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -PS0i = R126i.z; -// 21 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.x))); -PV1i.w = R123i.w; -// 22 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 23 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 24 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 25 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R1i.w))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R1i.w))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R2i.xyz = ivec3(0,0,0); -R1i.w = 0; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[2].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R1i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(0x40490fdb)); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(R10i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x40600000)); -R1i.w = floatBitsToInt((intBitsToFloat(uf_remappedPS[2].x) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(backupReg0i))); -PS0i = R1i.w; -// 1 -R127i.x = R3i.y; -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R5i.y) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -PV0i.w = R127i.w; -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.x)); -// 4 -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R127i.w))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -// 5 -PV1i.x = PV0i.z; -PV1i.x = clampFI32(PV1i.x); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); -PV1i.y = clampFI32(PV1i.y); -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.w))/0.1591549367)); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + 1.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x)); -// 7 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R127i.x; -R127i.y = PV0i.w; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.z)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3df5c290)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e8a3d71)); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3b449ba6)); -R126i.x = PV1i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) / 2.0); -PS0i = R126i.x; -// 9 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x41100000)); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40a00000)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -tempResultf = max(0.0, intBitsToFloat(PV1i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40c00000)); -// 12 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 13 -R123i.y = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3fe66666) + intBitsToFloat(R126i.z))); -PV1i.w = R123i.w; -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.x)); -// 15 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.y)); -// 16 -backupReg0i = R2i.x; -backupReg1i = R2i.y; -backupReg2i = R2i.z; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(backupReg0i))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[2].y) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R3i.x))); -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.x))); -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y), intBitsToFloat(PV0i.x))); -// 2 -backupReg0i = R2i.x; -backupReg1i = R2i.y; -backupReg2i = R2i.z; -backupReg3i = R1i.w; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg2i))); -R1i.w = floatBitsToInt(intBitsToFloat(backupReg3i) + intBitsToFloat(PV1i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.z = R1i.w; -R127i.z = clampFI32(R127i.z); -PV0i.z = R127i.z; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(R4i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(R4i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(R4i.z))); -PV1i.z = R123i.z; -R127i.w = ((intBitsToFloat(PV0i.z) > 0.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = R127i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),-(intBitsToFloat(PV0i.z))) + intBitsToFloat(R10i.x))); -PS1i = R122i.x; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R10i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R125i.z = ((PV1i.w == 0)?(R10i.x):(PS1i)); -PS0i = R125i.z; -// 3 -R127i.x = ((R127i.w == 0)?(R4i.x):(PV0i.w)); -PV1i.x = R127i.x; -R127i.y = ((R127i.w == 0)?(R10i.y):(PV0i.z)); -R126i.z = ((R127i.w == 0)?(R4i.z):(PV0i.x)); -PV1i.z = R126i.z; -R126i.w = ((R127i.w == 0)?(R4i.y):(PV0i.y)); -PV1i.w = R126i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R10i.z))); -PS1i = R122i.x; -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[8].x)); -R126i.y = ((R127i.w == 0)?(R10i.z):(PS1i)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedPS[8].y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R3i.w))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[8].z)); -// 5 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R127i.x))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R126i.w))); -R0i.z = ((R127i.w == 0)?(R3i.w):(PV0i.w)); -PV1i.z = R0i.z; -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R126i.z))); -PS1i = R4i.z; -// 6 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R125i.z))); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R127i.y))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R126i.y))); -PS0i = R6i.z; -// 7 -predResult = (1.0 > intBitsToFloat(uf_remappedPS[5].w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[5].w)) + 1.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_remappedPS[6].x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(uf_remappedPS[6].x))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(uf_remappedPS[6].x))); -PV0i.w = R1i.w; -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[9].z))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[9].z))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[9].z))); -R0i.w = PV0i.z; -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) / 2.0); -R2i.x = PV0i.y; -R2i.x = floatBitsToInt(intBitsToFloat(R2i.x) / 2.0); -PS1i = R2i.x; -} -if( activeMaskStackC[2] == true ) { -R1i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(0xbe19999a)); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedPS[9].y))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].w),intBitsToFloat(R1i.x)) + intBitsToFloat(R0i.w))); -} -if( activeMaskStackC[2] == true ) { -R0i.w = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.w; -R2i.z = floatBitsToInt((-(intBitsToFloat(uf_remappedPS[5].w)) * intBitsToFloat(0x40200000) + intBitsToFloat(0x40200000))); -R2i.z = clampFI32(R2i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(0x3f969696)); -PV0i.w = clampFI32(PV0i.w); -tempResultf = max(0.0, intBitsToFloat(backupReg0i)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 1 -if( (intBitsToFloat(PV0i.w) > intBitsToFloat(R0i.w))) discard; -R0i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3fe66666)); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.z = floatBitsToInt(exp2(intBitsToFloat(R0i.w))); -PS0i = R127i.z; -// 1 -R123i.x = floatBitsToInt((intBitsToFloat(0x40b1999a) * intBitsToFloat(PS0i) + intBitsToFloat(0x3ee66666))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(0x3dccccce) * intBitsToFloat(PS0i) + intBitsToFloat(0x3e4ccccd))); -PV1i.y = R123i.y; -// 2 -backupReg0i = R4i.x; -backupReg1i = R4i.y; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg1i))); -R123i.w = floatBitsToInt((intBitsToFloat(0x41200000) * intBitsToFloat(R127i.z) + 4.0)); -PV0i.w = R123i.w; -// 3 -backupReg0i = R4i.z; -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(backupReg0i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R0i.z))); -PV0i.x = R123i.x; -PV0i.y = ((intBitsToFloat(R5i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = ((intBitsToFloat(R6i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R127i.w = uf_remappedPS[7].z; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R123i.x = ((PV0i.y == 0)?(0x3d008081):(0x3d20a0a1)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.z == 0)?(0):(0x3f800000)); -PV1i.y = R127i.y; -R0i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 0.5 + 0.5)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x427f0000)); -R0i.x = floatBitsToInt((intBitsToFloat(R5i.x) * 0.5 + 0.5)); -PS1i = R0i.x; -// 2 -PV0i.x = ((intBitsToFloat(PV1i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.y = floatBitsToInt((intBitsToFloat(R5i.y) * 0.5 + 0.5)); -PV0i.z = floatBitsToInt(floor(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R123i.w = ((R5i.z == 0)?(PV1i.x):(0x3d30b0b1)); -PV0i.w = R123i.w; -R2i.w = 0x3f800000; -PS0i = R2i.w; -// 3 -R1i.x = PV0i.w; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 2.0); -R123i.w = ((PV0i.x == 0)?(R5i.w):(R6i.w)); -PV1i.w = R123i.w; -R1i.y = R127i.w; -PS1i = R1i.y; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x437f0000)); -// 5 -R0i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081)); -PS1i = int(intBitsToFloat(PV0i.z)); -// 6 -PV0i.x = PS1i & 0x000000e0; -// 7 -PV1i.w = PV0i.x >> 0x00000003; -// 8 -PS0i = floatBitsToInt(float(PV1i.w)); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0x42800000)); -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.y) * 2.0 + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -// 11 -R5i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081))); -// 12 -backupReg0i = R4i.x; -backupReg1i = R4i.y; -backupReg2i = R4i.z; -R4i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R4i.w = R2i.w; -// 13 -R3i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R3i.w = R0i.w; -// 14 -R2i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R2i.w = R5i.w; -// 15 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -backupReg2i = R1i.z; -backupReg3i = R1i.w; -R1i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R1i.w = backupReg3i; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor5 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/f611e1b3827b5e13_0000079a492a9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/f611e1b3827b5e13_0000079a492a9249_ps.txt deleted file mode 100644 index 3de3686c..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/f611e1b3827b5e13_0000079a492a9249_ps.txt +++ /dev/null @@ -1,1102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Light = $L; - -// Ancient weapons when Link is transparent - -// shader f611e1b3827b5e13 -#ifdef VULKAN -layout(set = 1, binding = 13) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -UNIFORM_BUFFER_LAYOUT(33, 1, 14) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(38, 1, 15) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(40, 1, 16) uniform uniformBlockPS8 -{ -vec4 uf_blockPS8[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(42, 1, 17) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem4); -R3i = floatBitsToInt(passParameterSem5); -R4i = floatBitsToInt(passParameterSem7); -R5i = floatBitsToInt(passParameterSem8); -R6i = floatBitsToInt(passParameterSem9); -if( activeMaskStackC[1] == true ) { -R7i.xy = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R0i.xy)).xy); -R9i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).xyz); -R8i.xy = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R0i.xy)).xy); -R10i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R0i.zw)).xyz); -R12i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R3i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R3i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R3i.x))); -R126i.w = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R6i.w)); -// 1 -backupReg0i = R6i.x; -backupReg1i = R6i.y; -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); -R123i.z = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.x))); -PS1i = R127i.x; -// 2 -backupReg0i = R127i.y; -backupReg1i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(R2i.y)) + intBitsToFloat(backupReg0i))); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg1i))); -R6i.w = floatBitsToInt(fract(intBitsToFloat(R5i.x))); -PS0i = R6i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R125i.w; -// 4 -backupReg0i = R5i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.y))); -R5i.y = floatBitsToInt(fract(intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R127i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.y))); -R5i.x = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R5i.x; -// 5 -backupReg0i = R3i.x; -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.w))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.x))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), uf_blockPS6[44].x)); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.z))); -R3i.z = floatBitsToInt(sqrt(intBitsToFloat(R125i.w))); -PS1i = R3i.z; -} -if( activeMaskStackC[1] == true ) { -R13i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R6i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.x))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R6i.w) + -(0.5)); -R6i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R6i.x; -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(R5i.y) + -(0.5)); -R14i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R2i.z = floatBitsToInt(-(intBitsToFloat(R4i.z)) * intBitsToFloat(0x3d4ccccd)); -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(PV0i.w)) + 1.0)); -R126i.w = clampFI32(R126i.w); -R2i.x = PS0i; -PS1i = R2i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = tempi.x; -R11i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PS0i = R11i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.x)) + 1.0)); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R2i.y = PS0i; -R3i.z = 0; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.y)),intBitsToFloat(R14i.y)) + 1.0)); -R7i.w = 0x3f800000; -PS1i = R7i.w; -// 4 -R15i.y = R13i.x; -R15i.y = clampFI32(R15i.y); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.x))); -R8i.w = 0; -R6i.w = R8i.y; -PS0i = R6i.w; -// 5 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R8i.y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R5i.x)); -// 6 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS1i))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); -PV0i.y = R11i.y; -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS1i))); -PV0i.z = R13i.z; -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PV1i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R125i.w)); -PS0i = floatBitsToInt(tempResultf); -// 7 -backupReg0i = R127i.y; -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R3i.z))); -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PS1i = R16i.y; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R13i.z),intBitsToFloat(PV1i.w),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.w)); -R127i.z = floatBitsToInt(tempResultf); -PS0i = R127i.z; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R16i.y),intBitsToFloat(R14i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.y)); -PS1i = floatBitsToInt(tempResultf); -// 10 -R8i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 1.0); -R8i.x = clampFI32(R8i.x); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R11i.z))); -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(PS0i),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R14i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R15i.z = tempi.x; -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R126i.z))); -PS1i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), uf_blockPS6[43].x)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),uf_blockPS6[44].y) + intBitsToFloat(R5i.z))); -// 1 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), uf_blockPS6[45].x)); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.x))); -// 2 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),uf_blockPS6[44].z) + intBitsToFloat(R127i.y))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(Color.y, intBitsToFloat(R9i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(Color.x, intBitsToFloat(R9i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(Color.z, intBitsToFloat(R9i.z))); -// 4 -backupReg0i = R126i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PV1i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV1i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),uf_blockPS6[43].z) + intBitsToFloat(backupReg0i))); -PV0i.w = R123i.w; -R8i.y = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(R127i.w)); -PS0i = R8i.y; -// 5 -R14i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.w)); -R9i.y = PS0i; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),uf_blockPS6[45].z) + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -// 6 -R16i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(PV1i.w)); -R2i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R2i.z))); -R2i.w = clampFI32(R2i.w); -R6i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R2i.z))); -R6i.z = clampFI32(R6i.z); -PS0i = R6i.z; -// 7 -R10i.x = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(R126i.z))); -R10i.y = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(R127i.y))); -R10i.z = floatBitsToInt(mul_nonIEEE(Light, intBitsToFloat(R127i.x))); -R2i.x = floatBitsToInt(fract(uf_blockPS8[36].w)); -PS1i = R2i.x; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R9i.x = floatBitsToInt(uf_blockPS1[0].y); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R4i.z)), uf_blockPS1[17].y)); -// 1 -R17i.y = floatBitsToInt(uf_blockPS1[1].y); -R8i.z = floatBitsToInt(uf_blockPS1[2].y); -R9i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R9i.z; -// 2 -predResult = (intBitsToFloat(R2i.x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(uf_blockPS8[36].w)); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R12i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R12i.x; -backupReg1i = R12i.y; -backupReg2i = R12i.z; -R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg0i))); -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg1i))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg2i))); -// 2 -R6i.w = R8i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (uf_blockPS8[33].w > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = 0; -} -if( activeMaskStackC[2] == true ) { -R0i.w = floatBitsToInt(texture(textureUnitPS7, vec3(intBitsToFloat(R0i.z),intBitsToFloat(R0i.z),intBitsToFloat(R0i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R12i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R8i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS0i = R126i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R12i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -R125i.z = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -// 3 -backupReg0i = R127i.z; -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x40200000)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -R127i.w = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(backupReg0i) + intBitsToFloat(0x3eb33333))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 0.25); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(0x3e851eb8)); -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R8i.w = 0x3e99999a; -PS1i = R8i.w; -// 6 -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R12i.x)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.z)); -PS1i = R127i.x; -// 8 -backupReg0i = R12i.x; -backupReg1i = R12i.y; -backupReg2i = R12i.z; -backupReg3i = R10i.x; -R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),uf_blockPS8[33].w) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(R127i.y)); -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS8[33].w) + intBitsToFloat(backupReg3i))); -PS0i = R10i.x; -// 9 -backupReg0i = R10i.y; -backupReg1i = R10i.z; -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -// 10 -R9i.w = R7i.w; -// 11 -R6i.w = R7i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R17i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x)); -R17i.z = clampFI32(R17i.z); -// 2 -predResult = (1.0 > intBitsToFloat(R6i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R4i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -R6i.y = floatBitsToInt((intBitsToFloat(R6i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -PV0i.w = ((-(intBitsToFloat(R4i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -// 1 -PV1i.z = PV0i.w & int(1); -// 2 -PV0i.y = PV1i.z - R127i.x; -// 3 -PV1i.w = PV0i.y << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.y)); -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -} -if( activeMaskStackC[2] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R3i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R5i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -// 6 -R127i.z = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.w)); -PV0i.z = R127i.z; -// 7 -PV1i.y = ((intBitsToFloat(0x3727c5ac) > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -// 8 -R123i.y = ((PV1i.y == 0)?(R127i.z):(0x3727c5ac)); -PV0i.y = R123i.y; -// 9 -R7i.w = PV0i.y; -R7i.w = clampFI32(R7i.w); -} -if( activeMaskStackC[2] == true ) { -R7i.z = floatBitsToInt(texture(textureUnitPS1, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R7i.z)) + 1.0); -// 1 -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R6i.z)) + intBitsToFloat(R7i.z))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R14i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R16i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R6i.z = floatBitsToInt(-(intBitsToFloat(R4i.z)) * intBitsToFloat(0x3ba3d70a)); -PV0i.z = R6i.z; -R0i.w = 0x3f800000; -PV0i.w = R0i.w; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R127i.w = clampFI32(R127i.w); -PS0i = R127i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R9i.y),intBitsToFloat(R16i.z),intBitsToFloat(PV0i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = PV0i.z; -PS1i = R2i.w; -// 2 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R9i.y),intBitsToFloat(R16i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 3 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R9i.y),intBitsToFloat(R16i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R2i.x; -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -R0i.z = floatBitsToInt(intBitsToFloat(R14i.x) * intBitsToFloat(0x3a83126f)); -R0i.w = floatBitsToInt(intBitsToFloat(R16i.z) * intBitsToFloat(0x3a83126f)); -PS0i = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R4i.w))); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R4i.w))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R3i.z = floatBitsToInt((intBitsToFloat(R11i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R6i.x)))); -R3i.w = floatBitsToInt((intBitsToFloat(R11i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R14i.y)))); -tempResultf = max(0.0, intBitsToFloat(PV0i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.z = floatBitsToInt(tempResultf); -PS1i = R127i.z; -// 6 -backupReg0i = R6i.x; -R6i.x = floatBitsToInt((intBitsToFloat(R13i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R11i.z)))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), intBitsToFloat(0xbf7d70a4))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R4i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) * 1.5); -R6i.y = 0x3f19999a; -PS0i = R6i.y; -// 7 -R7i.x = ((intBitsToFloat(R6i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R2i.z = floatBitsToInt(1.0); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + uf_blockPS6[27].w)/2.0); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R8i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3ecccccd)); -R3i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.y)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(max(intBitsToFloat(R12i.y), intBitsToFloat(R12i.z))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R9i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(0x3f99999a)); -PV0i.z = clampFI32(PV0i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R5i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -PS0i = R5i.w; -// 11 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.w))) + 1.0)); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.y))); -R7i.z = floatBitsToInt(max(intBitsToFloat(R12i.x), intBitsToFloat(R125i.w))); -R6i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(R127i.z))); -tempResultf = max(0.0, intBitsToFloat(R126i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R8i.x = floatBitsToInt(tempResultf); -PS1i = R8i.x; -} -if( activeMaskStackC[1] == true ) { -R5i.xyz = floatBitsToInt(textureLod(textureUnitPS6, intBitsToFloat(R0i.xy),0.0).xyz); -R2i.y = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R2i.xy),intBitsToFloat(R2i.w)).x); -R2i.x = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R0i.zw),0.0).x); -R0i.xyz = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.z),intBitsToFloat(R3i.w),intBitsToFloat(R6i.x),-0.0),vec4(intBitsToFloat(R3i.z),intBitsToFloat(R3i.w),intBitsToFloat(R6i.x),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = floatBitsToInt(intBitsToFloat(R2i.y) + uf_blockPS10[1].z); -R127i.y = clampFI32(R127i.y); -PS0i = R127i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R6i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R4i.w),intBitsToFloat(R6i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R126i.w = floatBitsToInt(tempResultf); -PS1i = R126i.w; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 3 -backupReg0i = R126i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R126i.w))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i))); -R126i.z = PS0i; -PS1i = R126i.z; -// 4 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R125i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R125i.w))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS10[3].z, intBitsToFloat(backupReg0i))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -PV0i.w = R125i.w; -R127i.w = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -PS0i = R127i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.x),intBitsToFloat(R16i.y),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R127i.z),intBitsToFloat(R126i.w),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R7i.w) + -(intBitsToFloat(PV0i.w))); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.x),intBitsToFloat(R16i.y),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(R17i.z)) + intBitsToFloat(R125i.w))); -PS0i = R122i.x; -// 7 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(R8i.x))); -R127i.y = floatBitsToInt(min(intBitsToFloat(R12i.y), intBitsToFloat(R12i.z))); -R126i.z = floatBitsToInt(intBitsToFloat(PS0i) + uf_blockPS10[1].y); -R126i.z = clampFI32(R126i.z); -R123i.w = ((R7i.x == 0)?(R126i.w):(PV0i.x)); -PV1i.w = R123i.w; -R126i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(0x2edbe6ff)); -PS1i = R126i.w; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R17i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R13i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV1i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(0xbecccccd)); -R6i.y = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x41c80000) + intBitsToFloat(R8i.y))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x41400000)); -R127i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -tempResultf = max(0.0, intBitsToFloat(PV0i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 10 -R126i.x = R1i.w; -R126i.x = clampFI32(R126i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41200000)); -PV0i.y = clampFI32(PV0i.y); -R126i.z = floatBitsToInt(min(intBitsToFloat(R12i.x), intBitsToFloat(R127i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -PS0i = clampFI32(PS0i); -// 11 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.y))); -PV1i.x = R4i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R125i.z = clampFI32(R125i.z); -R125i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x40200001)); -R125i.w = clampFI32(R125i.w); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(1.0)); -R127i.y = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(0xbd4ccccd))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(0xbc23d70a))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R6i.w))); -// 13 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.x)) + 1.0)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x41a00000)); -PV1i.y = clampFI32(PV1i.y); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(PS0i))) + uf_blockPS6[27].z)); -R4i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.x))); -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(0x3dcccccd)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3df5c28f)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x42480000)); -PV0i.w = clampFI32(PV0i.w); -R3i.z = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -PS0i = R3i.z; -// 15 -R127i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV0i.z))); -R127i.x = clampFI32(R127i.x); -R4i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(PS0i)) + 1.0)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockPS6[30].w)); -R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(0xbfe66666)); -tempResultf = max(0.0, intBitsToFloat(R7i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 16 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R4i.w))); -R126i.y = floatBitsToInt((intBitsToFloat(R9i.z) * intBitsToFloat(0x3dcccccd) + 1.0)); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f19999a)); -PV0i.w = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(0x3da3d70a)); -PV0i.w = clampFI32(PV0i.w); -tempResultf = max(0.0, intBitsToFloat(R125i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS0i))); -R123i.y = floatBitsToInt((-(intBitsToFloat(R4i.y)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R127i.z = clampFI32(R127i.z); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.x))); -R5i.w = clampFI32(R5i.w); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 18 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PS1i)) + intBitsToFloat(PS1i))); -R7i.y = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); -R6i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x42960000)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R4i.w))); -R6i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -PS0i = R6i.w; -// 19 -R8i.x = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(0x2edbe6ff)); -R5i.y = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3f4ccccd)); -R4i.z = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3f4ccccd)); -R3i.w = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3f4ccccd)); -R2i.y = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R127i.z))); -PS1i = R2i.y; -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(uf_blockPS6[4].x,uf_blockPS6[4].y,uf_blockPS6[4].z,-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R16i.y),intBitsToFloat(R14i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R7i.y)) + intBitsToFloat(R7i.y))); -PS0i = R127i.w; -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(R4i.x)); -R126i.x = clampFI32(R126i.x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R6i.y)) + uf_blockPS6[52].x); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), uf_blockPS6[16].w)); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R5i.w)) + intBitsToFloat(R4i.y))); -R127i.x = clampFI32(R127i.x); -PS1i = R127i.x; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R7i.x)) + intBitsToFloat(R7i.z))); -R125i.w = clampFI32(R125i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R8i.x)); -// 3 -backupReg0i = R127i.x; -PV1i.x = floatBitsToInt(uf_blockPS6[5].x + -(intBitsToFloat(R3i.w))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -PV1i.z = floatBitsToInt(uf_blockPS6[5].y + -(intBitsToFloat(R4i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockPS6[13].w)); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PS1i = R127i.x; -// 4 -backupReg0i = R4i.z; -PV0i.x = floatBitsToInt(uf_blockPS6[5].z + -(intBitsToFloat(R5i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R4i.w))); -PV0i.y = R126i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R6i.z))); -PV0i.w = clampFI32(PV0i.w); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(backupReg0i))); -PS0i = R3i.w; -// 5 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(R5i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R125i.w))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + intBitsToFloat(R8i.w))); -R3i.z = clampFI32(R3i.z); -R125i.w = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -PS1i = R125i.z; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.w))); -R126i.y = floatBitsToInt(intBitsToFloat(R12i.z) + -(intBitsToFloat(R7i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.y) + -(intBitsToFloat(R7i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(R12i.x) + -(intBitsToFloat(R7i.z))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); -PS0i = R125i.y; -// 7 -backupReg0i = R125i.w; -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV0i.x))); -R124i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV0i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV0i.x))); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R15i.y)) + intBitsToFloat(R2i.y))); -PV1i.w = R125i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(R7i.z))); -PS1i = R125i.x; -// 8 -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R127i.y)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.w))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(R7i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(backupReg0i)) + intBitsToFloat(R7i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV1i.w))); -PS0i = R126i.y; -// 9 -backupReg0i = R126i.x; -backupReg1i = R126i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R125i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(R125i.y)) + intBitsToFloat(backupReg0i))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(R125i.y)) + intBitsToFloat(R124i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(R125i.y)) + intBitsToFloat(backupReg1i))); -PV1i.w = R123i.w; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),-(intBitsToFloat(R0i.w))) + intBitsToFloat(R6i.x))); -PS1i = R125i.y; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(0xba0a8ec8))); -R0i.y = clampFI32(R0i.y); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(0xba0a8ec8))); -R0i.z = clampFI32(R0i.z); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R125i.x)) + intBitsToFloat(0xba0a8ec8))); -R4i.w = clampFI32(R4i.w); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.w))); -PS0i = R122i.x; -// 11 -R7i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R0i.w)) + intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R0i.w)) + intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.z))); -PV1i.z = R123i.z; -R6i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R125i.z)) + intBitsToFloat(R125i.z))); -PV1i.w = R6i.w; -// 12 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -R2i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.z))); -// 13 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(PV0i.y))); -PV1i.x = R6i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.y))); -PV1i.y = R4i.y; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PV0i.y))); -PV1i.w = R5i.w; -// 14 -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) * intBitsToFloat(0x3fb8aa3b)); -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) * intBitsToFloat(0x3fb8aa3b)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) * intBitsToFloat(0x3fb8aa3b)); -// 15 -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 16 -R0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -// 17 -R0i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R125i.y))); -// 18 -R7i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS10[2].w, intBitsToFloat(R3i.z))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), uf_blockPS10[0].x)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockPS10[0].y)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.x = R123i.x; -R125i.y = ((1.0 > uf_blockPS8[37].x)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = R125i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockPS10[0].z)); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.w; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R4i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(R1i.z))); -PV0i.y = R123i.y; -R125i.z = ((PV1i.y == 0)?(R4i.y):(backupReg0i)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R0i.z))); -R125i.x = ((PV1i.y == 0)?(R6i.x):(backupReg1i)); -PS0i = R125i.x; -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R0i.y))); -R125i.w = ((R125i.y == 0)?(R5i.w):(R7i.z)); -R0i.w = floatBitsToInt(uf_blockPS8[37].x); -PS1i = R0i.w; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R2i.y))); -PV0i.x = R127i.x; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R7i.x))); -PV0i.w = R127i.w; -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) * 0.25); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) * 0.25); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(R2i.w))); -PV1i.z = R127i.z; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3fb8aa3b)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3fb8aa3b)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * 0.25); -// 7 -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3fb8aa3b)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -// 9 -R123i.x = ((R125i.y == 0)?(R127i.x):(PV0i.x)); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -// 10 -R0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R125i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R123i.w = ((R125i.y == 0)?(R127i.w):(PV1i.w)); -PV0i.w = R123i.w; -// 11 -R0i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R125i.x)); -R123i.z = ((R125i.y == 0)?(R127i.z):(PV0i.z)); -PV1i.z = R123i.z; -// 12 -R0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.w)); -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/rules.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/rules.txt deleted file mode 100644 index a71299a2..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Ancient_Weapons/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Ancient weapons -path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient weapons" -description = Change Ancient weapons 's color and brightness. Originally it varies. Ancient Orange's Brightness is changed to Bow's. -version = 4 - -[Preset] -name = Malice Red -$R = 0.85 -$G = 0.029 -$B = 0.15 -$L = 20.0 - -[Preset] -name = Guardian Yellow -$R = 1.0 -$G = 0.2 -$B = 0.059 -$L = 40.0 - -[Preset] -name = Guardian weapon Yellow -$R = 1.0 -$G = 0.2 -$B = 0.0 -$L = 29.576 - -[Preset] -name = Ancient Orange -$R = 1.0 -$G = 0.2 -$B = 0.0006 -$L = 11.525 - -[Preset] -name = Ancient weapon Orange -$R = 1.0 -$G = 0.15 -$B = 0.05 -$L = 20.0 - -[Preset] -name = Energy Blue -$R = 0.03 -$G = 0.25 -$B = 1.0 -$L = 40.0 - -[Preset] -name = Custom (Edit in rules.txt) -$R = 0.000 -$G = 0.000 -$B = 0.000 -$L = 40.0 # Brightness, can't scale because original unnormalized color use L=1 diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/85d00659937443d5_000003c3c3fc9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/85d00659937443d5_000003c3c3fc9249_ps.txt deleted file mode 100644 index a0d31ef7..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/85d00659937443d5_000003c3c3fc9249_ps.txt +++ /dev/null @@ -1,232 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Decayed Guardian - -// shader 85d00659937443d5 -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R12f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R124f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem6; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R8f.xyz = (texture(textureUnitPS5, R0f.xy).xyz); -R7f.xyz = (texture(textureUnitPS6, R0f.xy).xyz); -R6f.xyz = (texture(textureUnitPS7, R0f.zw).xyz); -R1f.xyz = (texture(textureUnitPS8, R1f.xy).xyz); -R1f.w = (texture(textureUnitPS4, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, R4f.z); -R126f.y = (R8f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R126f.y; -PV0f.z = mul_nonIEEE(R3f.z, R4f.x); -PV0f.w = mul_nonIEEE(R3f.x, R4f.y); -R127f.x = (R8f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.x; -// 1 -R126f.x = (mul_nonIEEE(-(R4f.z),R3f.x) + PV0f.z); -R127f.y = (mul_nonIEEE(-(R4f.y),R3f.z) + PV0f.x); -PV1f.z = mul_nonIEEE(PV0f.y, PV0f.y); -R127f.w = (mul_nonIEEE(-(R4f.x),R3f.y) + PV0f.w); -R127f.z = mul_nonIEEE(R4f.w, PS0f); -PS1f = R127f.z; -// 2 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = mul_nonIEEE(R6f.x, R1f.x); -R125f.y = mul_nonIEEE(R6f.y, R1f.y); -R126f.z = mul_nonIEEE(R6f.z, R1f.z); -R123f.w = (mul_nonIEEE(backupReg0f,backupReg0f) + PV1f.z); -R123f.w = clamp(R123f.w, 0.0, 1.0); -PV0f.w = R123f.w; -R124f.z = mul_nonIEEE(Color.g, R7f.y); -PS0f = R124f.z; -// 3 -backupReg0f = R127f.y; -R125f.x = mul_nonIEEE(Color.b, R7f.z); -R127f.y = -(PV0f.w) + 1.0; -PV1f.z = mul_nonIEEE(backupReg0f, R127f.z); -R125f.w = mul_nonIEEE(Color.r, R7f.x); -PS1f = mul_nonIEEE(R126f.x, R127f.z); -// 4 -PV0f.x = mul_nonIEEE(R127f.w, R127f.z); -R123f.y = (mul_nonIEEE(-(R2f.z),intBitsToFloat(uf_remappedPS[1].z)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -R127f.z = (mul_nonIEEE(R4f.x,R126f.y) + PV1f.z)/2.0; -R127f.w = (mul_nonIEEE(R4f.y,R126f.y) + PS1f)/2.0; -R124f.y = mul_nonIEEE(R127f.x, intBitsToFloat(uf_remappedPS[1].x) * Factor); -PS0f = R124f.y; -// 5 -backupReg0f = R127f.y; -R126f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w), PV0f.y); -R127f.y = (mul_nonIEEE(R4f.z,R126f.y) + PV0f.x)/2.0; -R125f.z = mul_nonIEEE(Color.g, R124f.z); -R126f.w = mul_nonIEEE(Color.r, R125f.w); -R127f.x = sqrt(backupReg0f); -R127f.x /= 2.0; -PS1f = R127f.x; -// 6 -backupReg0f = R126f.z; -R124f.x = mul_nonIEEE(R125f.y, intBitsToFloat(uf_remappedPS[1].x) * Factor); -R125f.y = mul_nonIEEE(Color.b, R125f.x); -R126f.z = intBitsToFloat(0x427f0000) * R1f.w; -R124f.w = mul_nonIEEE(backupReg0f, intBitsToFloat(uf_remappedPS[1].x) * Factor); -R126f.y = intBitsToFloat(0x427f0000) * R8f.z; -PS0f = R126f.y; -// 7 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg1f = R3f.y; -backupReg0f = R127f.x; -R127f.x = (mul_nonIEEE(R3f.x,backupReg0f) + R127f.z); -R3f.y = (mul_nonIEEE(R3f.z,backupReg0f) + R127f.y); -R127f.z = (mul_nonIEEE(backupReg1f,backupReg0f) + R127f.w); -R127f.w = mul_nonIEEE(R126f.x, R126f.w); -R127f.y = mul_nonIEEE(R126f.x, R125f.z); -PS1f = R127f.y; -// 8 -backupReg0f = R126f.x; -backupReg1f = R124f.z; -R126f.x = mul_nonIEEE(backupReg0f, R125f.y); -R125f.y = mul_nonIEEE(R125f.x, R124f.w); -R124f.z = mul_nonIEEE(backupReg1f, R124f.x); -PV0f.w = mul_nonIEEE(R125f.w, R124f.y); -R125f.w = intBitsToFloat(0x3c808081); -PS0f = R125f.w; -// 9 -backupReg0f = R126f.y; -R125f.x = floor(R126f.z); -R125f.x *= 4.0; -R126f.y = floor(backupReg0f); -R126f.y *= 4.0; -R126f.z = intBitsToFloat(uf_remappedPS[2].z); -R4f.w = 1.0; -R1f.x = (mul_nonIEEE(R127f.w,R124f.y) + PV0f.w); -PS1f = R1f.x; -// 10 -R4f.x = R125f.w; -R1f.y = (mul_nonIEEE(R127f.y,R124f.x) + R124f.z); -R1f.z = (mul_nonIEEE(R126f.x,R124f.w) + R125f.y); -R1f.w = 1.0; -R8f.y = mul_nonIEEE(R5f.x, R0f.y); -PS0f = R8f.y; -// 11 -R8f.x = mul_nonIEEE(R5f.x, R0f.x); -R4f.y = R126f.z; -R8f.z = mul_nonIEEE(R5f.x, R0f.z); -R0f.w = (R126f.y * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -R0f.x = R127f.x + 0.5; -PS1f = R0f.x; -// 12 -R0f.y = R127f.z + 0.5; -R0f.z = R3f.y + 0.5; -R8f.w = (R125f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 13 -R12f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R12f.w = R1f.w; -// 14 -R11f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R11f.w = R0f.w; -// 15 -R10f.xyz = vec3(R8f.x,R8f.y,R8f.z); -R10f.w = R8f.w; -// 16 -R9f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R9f.w = R4f.w; -// export -passPixelColor0 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor1 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -passPixelColor3 = vec4(R11f.x, R11f.y, R11f.z, R11f.w); -passPixelColor5 = vec4(R12f.x, R12f.y, R12f.z, R12f.w); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/rules.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/rules.txt deleted file mode 100644 index 37fcd29c..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Decayed_Guardian/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Decayed Guardian -path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Decayed Guardian" -description = Change Decayed Guardian (including Stalkers with weathered appearance)'s color. Originally it's Malice Red. -version = 4 - -[Preset] -name = Malice Red -$R = 0.85 -$G = 0.029 -$B = 0.15 -$L_f = 1.0 - -[Preset] -name = Guardian Yellow -$R = 1.0 -$G = 0.2 -$B = 0.059 -$L_f = 1.0 - -[Preset] -name = Guardian weapon Yellow -$R = 1.0 -$G = 0.2 -$B = 0.0 -$L_f = 1.0 - -[Preset] -name = Ancient Orange -$R = 1.0 -$G = 0.2 -$B = 0.0006 -$L_f = 1.0 - -[Preset] -name = Ancient weapon Orange -$R = 1.0 -$G = 0.15 -$B = 0.05 -$L_f = 1.0 - -[Preset] -name = Energy Blue -$R = 0.03 -$G = 0.25 -$B = 1.0 -$L_f = 1.0 - -[Preset] -name = Custom (Edit in rules.txt) -$R = 0.000 -$G = 0.000 -$B = 0.000 -$L_f = 1.0 diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/4e0bab929e11836f_00003cd249549249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/4e0bab929e11836f_00003cd249549249_ps.txt deleted file mode 100644 index b4b3f2b7..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/4e0bab929e11836f_00003cd249549249_ps.txt +++ /dev/null @@ -1,1111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Guardian weapons when Link is transparent -// uf_blockPS8[23].xyz uf_blockPS8[31].x - -// shader 4e0bab929e11836f -#ifdef VULKAN -layout(set = 1, binding = 14) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -UNIFORM_BUFFER_LAYOUT(33, 1, 15) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(36, 1, 16) uniform uniformBlockPS4 -{ -vec4 uf_blockPS4[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(38, 1, 17) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(40, 1, 18) uniform uniformBlockPS8 -{ -vec4 uf_blockPS8[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(42, 1, 19) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13; -TEXTURE_LAYOUT(14, 1, 13) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem2); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem5); -R5i = floatBitsToInt(passParameterSem7); -R6i = floatBitsToInt(passParameterSem8); -R7i = floatBitsToInt(passParameterSem9); -if( activeMaskStackC[1] == true ) { -R8i.xy = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R0i.xy)).xy); -R10i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).xyz); -R9i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R0i.zw)).xyz); -R1i.xyz = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R1i.xy)).xyz); -R6i.w = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R0i.xy)).x); -R15i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -R127i.y = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R7i.w)); -// 1 -backupReg0i = R7i.x; -backupReg1i = R7i.y; -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); -R123i.z = floatBitsToInt((intBitsToFloat(R8i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.x))); -PS1i = R126i.w; -// 2 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV1i.z))); -R1i.w = floatBitsToInt(fract(intBitsToFloat(R6i.x))); -PS0i = R1i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = R126i.y; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R127i.w))); -R3i.w = floatBitsToInt(fract(intBitsToFloat(R6i.y))); -R7i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R7i.w; -// 5 -backupReg0i = R4i.y; -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.x))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[44].x)); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.y))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.z))); -R4i.x = floatBitsToInt(sqrt(intBitsToFloat(R126i.y))); -PS1i = R4i.x; -} -if( activeMaskStackC[1] == true ) { -R14i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R7i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R4i.x)) + intBitsToFloat(R4i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R4i.x)) + intBitsToFloat(R4i.z))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R4i.x)) + intBitsToFloat(R6i.x))); -R127i.w = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(R7i.w)); -PS0i = R126i.w; -// 1 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS0i))); -PV1i.y = R16i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + -(0.5)); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(R1i.x))); -R6i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS1i = R6i.x; -// 2 -backupReg0i = R1i.z; -backupReg1i = R127i.w; -backupReg1i = R127i.w; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(R1i.y))); -R12i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(backupReg0i))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(backupReg1i)) + 1.0)); -R127i.w = clampFI32(R127i.w); -PS0i = R127i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PS1i = R11i.z; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.y)),intBitsToFloat(R12i.y)) + 1.0)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R127i.z)) + 1.0)); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R126i.w))); -R1i.w = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3d4ccccd)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R126i.x = floatBitsToInt(tempResultf); -PS0i = R126i.x; -// 5 -R3i.x = R6i.x; -R1i.y = R11i.z; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.y))); -R7i.w = 0x3f800000; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R127i.z = floatBitsToInt(tempResultf); -PS1i = R127i.z; -// 6 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R126i.x))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.x))); -R3i.z = 0; -PV0i.z = R3i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R125i.w)); -PS0i = floatBitsToInt(tempResultf); -// 7 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PV0i.z))); -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(backupReg0i))); -PV1i.z = R14i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(PV0i.w))); -R16i.z = R14i.x; -R16i.z = clampFI32(R16i.z); -PS1i = R16i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R13i.z),intBitsToFloat(PV1i.y),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R1i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PV1i.z))); -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R16i.y),intBitsToFloat(PS0i),-0.0),vec4(intBitsToFloat(R9i.x),intBitsToFloat(R13i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.x))); -PS1i = R6i.w; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R16i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R12i.y),intBitsToFloat(R11i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R12i.z = tempi.x; -R17i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + 1.0); -R17i.y = clampFI32(R17i.y); -PS0i = R17i.y; -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[44].y) + intBitsToFloat(R4i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[43].x)); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(Color.x, intBitsToFloat(R10i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(Color.y, intBitsToFloat(R10i.y))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[45].x)); -// 2 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[43].y) + intBitsToFloat(R127i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(Color.z, intBitsToFloat(R10i.z))); -// 3 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockPS8[31].x * Factor)); -PV1i.x = R124i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS8[31].x * Factor)); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), uf_blockPS8[31].x * Factor)); -PV1i.z = R125i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS8[31].z) + -(uf_blockPS8[31].y))); -R127i.w = clampFI32(R127i.w); -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[44].z) + intBitsToFloat(backupReg0i))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[45].y) + intBitsToFloat(R125i.w))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.z))); -PS0i = R124i.w; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(Color.x, intBitsToFloat(R127i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].w, intBitsToFloat(R127i.w))); -PV1i.y = R126i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(Color.y, intBitsToFloat(R126i.z))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.z))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[43].z) + intBitsToFloat(R125i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(Color.z, intBitsToFloat(R126i.w))); -// 7 -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R124i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -R10i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(R126i.x)); -PV1i.z = R10i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[45].z) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.w))); -PS1i = R8i.y; -// 8 -R12i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R124i.y)); -R9i.y = PV1i.z; -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(R124i.w))); -R6i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(PV1i.w)); -PS0i = R6i.z; -// 9 -backupReg0i = R1i.w; -R1i.x = floatBitsToInt(fract(uf_blockPS8[36].w)); -R17i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R1i.w))); -R17i.z = clampFI32(R17i.z); -R1i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(backupReg0i))); -R1i.w = clampFI32(R1i.w); -} -if( activeMaskStackC[1] == true ) { -// 0 -R10i.x = floatBitsToInt(uf_blockPS1[0].y); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.z)), uf_blockPS1[17].y)); -// 1 -R10i.y = floatBitsToInt(uf_blockPS1[1].y); -R9i.z = floatBitsToInt(uf_blockPS1[2].y); -R11i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -PS1i = R11i.y; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R8i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS4[6].x, uf_blockPS8[37].x)); -// 1 -predResult = (intBitsToFloat(R1i.x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(uf_blockPS8[36].w)); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R15i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R15i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R15i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R15i.x; -backupReg1i = R15i.y; -backupReg2i = R15i.z; -R15i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg0i))); -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg1i))); -R15i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (uf_blockPS8[33].w > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = 0; -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS7, vec3(intBitsToFloat(R0i.z),intBitsToFloat(R0i.z),intBitsToFloat(R0i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R15i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R0i.z)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R17i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS0i = R126i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R15i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -R125i.z = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -// 3 -backupReg0i = R127i.z; -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x40200000)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -R127i.w = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(backupReg0i) + intBitsToFloat(0x3eb33333))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 0.25); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(0x3e851eb8)); -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R9i.w = 0x3e99999a; -PS1i = R9i.w; -// 6 -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R15i.x)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R8i.x)) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R15i.z)) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R15i.y)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(PV0i.z)); -PS1i = R127i.x; -// 8 -backupReg0i = R15i.x; -backupReg1i = R15i.y; -backupReg2i = R15i.z; -backupReg3i = R8i.x; -R15i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -R15i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),uf_blockPS8[33].w) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(R127i.y)); -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS8[33].w) + intBitsToFloat(backupReg3i))); -PS0i = R8i.x; -// 9 -backupReg0i = R8i.y; -backupReg1i = R8i.z; -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -// 10 -R5i.w = R7i.w; -// 11 -R0i.w = R7i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R9i.w = 0; -PV0i.w = R9i.w; -// 1 -R0i.w = PV0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R18i.y = floatBitsToInt(-(intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.x)); -R18i.y = clampFI32(R18i.y); -// 2 -predResult = (1.0 > intBitsToFloat(R17i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -R6i.y = floatBitsToInt((intBitsToFloat(R0i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -PV0i.w = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -// 1 -PV1i.y = PV0i.w & int(1); -// 2 -PV0i.z = PV1i.y - R127i.x; -// 3 -PV1i.w = PV0i.z << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.z)); -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002a; -R0i.z = PV1i.w + 0x0000002b; -R0i.w = PV1i.w + 0x0000002d; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -} -if( activeMaskStackC[2] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R7i.y; -// 6 -R127i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.y)); -PV0i.w = R127i.w; -// 7 -PV1i.x = ((intBitsToFloat(0x3727c5ac) > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 8 -R123i.y = ((PV1i.x == 0)?(R127i.w):(0x3727c5ac)); -PV0i.y = R123i.y; -// 9 -R7i.w = PV0i.y; -R7i.w = clampFI32(R7i.w); -} -if( activeMaskStackC[2] == true ) { -R7i.y = floatBitsToInt(texture(textureUnitPS1, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); -// 1 -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R17i.z)) + intBitsToFloat(R7i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R12i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R6i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R7i.z = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3ba3d70a)); -PV0i.z = R7i.z; -R0i.w = 0x3f800000; -PV0i.w = R0i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R127i.y = clampFI32(R127i.y); -PS0i = R127i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(PV0i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = PV0i.z; -PS1i = R1i.w; -// 2 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.w; -// 3 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R1i.x; -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -R0i.z = floatBitsToInt(intBitsToFloat(R12i.x) * intBitsToFloat(0x3a83126f)); -R0i.w = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(0x3a83126f)); -PS0i = floatBitsToInt(intBitsToFloat(R12i.z) + -(intBitsToFloat(R6i.w))); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.w))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R1i.z = floatBitsToInt((intBitsToFloat(R11i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R6i.x)))); -R3i.w = floatBitsToInt((intBitsToFloat(R16i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R12i.y)))); -tempResultf = max(0.0, intBitsToFloat(PV0i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.w = floatBitsToInt(tempResultf); -PS1i = R127i.w; -// 6 -R6i.x = floatBitsToInt((intBitsToFloat(R13i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R11i.z)))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), intBitsToFloat(0xbf7d70a4))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -tempResultf = max(0.0, intBitsToFloat(R17i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 7 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3ecccccd)); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = R11i.y; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + uf_blockPS6[27].w)/2.0); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(max(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f99999a)); -R127i.z = clampFI32(R127i.z); -PS0i = R127i.z; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(R5i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0xbe593484))); -PV1i.y = R123i.y; -R3i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R6i.w = floatBitsToInt(max(intBitsToFloat(R15i.x), intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.y))); -// 10 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x))); -R7i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(R127i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R5i.w = floatBitsToInt(exp2(intBitsToFloat(R126i.y))); -PS0i = R5i.w; -// 11 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),-(intBitsToFloat(PV0i.w))) + 1.0)); -R6i.y = floatBitsToInt(min(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -R6i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(0x2edbe6ff)); -R4i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(0xbe99999a)); -tempResultf = max(0.0, intBitsToFloat(R126i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R3i.y = floatBitsToInt(tempResultf); -PS1i = R3i.y; -} -if( activeMaskStackC[1] == true ) { -R4i.xyz = floatBitsToInt(textureLod(textureUnitPS6, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.x = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R1i.xy),intBitsToFloat(R1i.w)).x); -R0i.w = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R0i.zw),0.0).x); -R0i.xyz = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.xz)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PS0i = R127i.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.z),intBitsToFloat(R3i.w),intBitsToFloat(R6i.x),-0.0),vec4(intBitsToFloat(R1i.z),intBitsToFloat(R3i.w),intBitsToFloat(R6i.x),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(R3i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.x) + uf_blockPS10[1].z); -PV0i.z = clampFI32(PV0i.z); -R0i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x41c80000) + intBitsToFloat(R10i.z))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.w) + -(intBitsToFloat(PV0i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS10[3].z, intBitsToFloat(PV0i.z))); -PS1i = R127i.z; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R13i.y),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R18i.y)) + intBitsToFloat(R127i.x))); -PS0i = R126i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R16i.y),intBitsToFloat(R13i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -R127i.x = floatBitsToInt(min(intBitsToFloat(R15i.x), intBitsToFloat(R6i.y))); -R125i.y = R2i.w; -R125i.y = clampFI32(R125i.y); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x41400000)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) + uf_blockPS10[1].y); -PV0i.w = clampFI32(PV0i.w); -tempResultf = max(0.0, intBitsToFloat(PV1i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 7 -R125i.x = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x40200001)); -R125i.x = clampFI32(R125i.x); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0xbecccccd)); -R4i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R14i.y) + 1.0)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -PS1i = clampFI32(PS1i); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x41200000)); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS1i))); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3dcccccd)); -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R126i.w = clampFI32(R126i.w); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 9 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x))); -PV1i.x = R124i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS0i)) + 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R7i.x)) + intBitsToFloat(0xbd4ccccd))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R7i.x)) + intBitsToFloat(0xbc23d70a))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R7i.y))); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x41a00000)); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(1.0)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(PS1i))) + uf_blockPS6[27].z)); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x42480000)); -R127i.w = clampFI32(R127i.w); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.y))); -// 11 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R125i.y)) + 1.0)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3df5c28f)); -R125i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(0xbfe66666)); -R124i.w = floatBitsToInt(1.0 / intBitsToFloat(R6i.z)); -PS1i = R124i.w; -// 12 -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockPS6[30].w)); -R127i.y = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.z))); -R127i.y = clampFI32(R127i.y); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.z = R127i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R4i.w))); -tempResultf = max(0.0, intBitsToFloat(R6i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -R126i.x = floatBitsToInt((intBitsToFloat(R11i.y) * intBitsToFloat(0x3dcccccd) + 1.0)); -R125i.y = floatBitsToInt((-(intBitsToFloat(PV0i.z)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a)); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(0x3da3d70a)); -PV1i.w = clampFI32(PV1i.w); -tempResultf = max(0.0, intBitsToFloat(R126i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 14 -backupReg0i = R127i.x; -backupReg1i = R125i.w; -backupReg1i = R125i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R127i.y))); -R127i.x = clampFI32(R127i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS1i))); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R4i.w))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(backupReg1i)) + intBitsToFloat(backupReg1i))); -R125i.w = clampFI32(R125i.w); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 15 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PS0i)) + intBitsToFloat(PS0i))); -R125i.y = floatBitsToInt(-(intBitsToFloat(R5i.w)) + 1.0); -R6i.z = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); -R3i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x42960000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(0x2edbe6ff)); -R5i.y = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); -R7i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); -R126i.w = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R125i.w))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), uf_blockPS6[16].w)); -PS0i = R125i.w; -// 17 -R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -R7i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R124i.x)); -R7i.y = clampFI32(R7i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.z))); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(R6i.w))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 18 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.w))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.y), intBitsToFloat(R125i.w))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.w)) + 1.0); -// 19 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R16i.z)) + intBitsToFloat(R126i.w))); -PV1i.x = R7i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R6i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(R15i.y) + -(intBitsToFloat(R6i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R15i.x) + -(intBitsToFloat(R6i.w))); -R6i.x = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(PV0i.y)); -PS1i = R6i.x; -// 20 -backupReg0i = R6i.w; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(R6i.w))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.x))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(R6i.w))); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(backupReg0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV1i.x))); -PS0i = R4i.z; -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(uf_blockPS6[4].x,uf_blockPS6[4].y,uf_blockPS6[4].z,-0.0),vec4(intBitsToFloat(R9i.x),intBitsToFloat(R13i.y),intBitsToFloat(R14i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R7i.x))); -PS0i = R125i.y; -// 1 -PV1i.x = floatBitsToInt(uf_blockPS6[5].x + -(intBitsToFloat(R6i.z))); -PV1i.y = floatBitsToInt(uf_blockPS6[5].y + -(intBitsToFloat(R7i.z))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R0i.w)) + uf_blockPS6[52].x); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),-(intBitsToFloat(R3i.z))) + intBitsToFloat(R5i.w))); -PS1i = R127i.z; -// 2 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R7i.y)) + intBitsToFloat(R6i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(R7i.z))); -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(0xba0a8ec8))); -R5i.w = clampFI32(R5i.w); -PS0i = R5i.w; -// 3 -backupReg0i = R6i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), uf_blockPS6[13].w)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -PV1i.z = floatBitsToInt(uf_blockPS6[5].z + -(intBitsToFloat(R5i.y))); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(0xba0a8ec8))); -R6i.w = clampFI32(R6i.w); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R5i.z)) + intBitsToFloat(0xba0a8ec8))); -R0i.y = clampFI32(R0i.y); -PS1i = R0i.y; -// 4 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R7i.y)) + intBitsToFloat(R5i.y))); -R3i.y = ((1.0 > intBitsToFloat(R8i.w))?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R4i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.w))); -PV0i.w = clampFI32(PV0i.w); -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R4i.x))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.w))); -R5i.z = clampFI32(R5i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R4i.x)) + intBitsToFloat(R4i.x))); -PV1i.w = R123i.w; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV1i.y))); -R5i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); -PS0i = R5i.y; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -// 8 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PV1i.z))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV1i.z))); -PS0i = R127i.x; -// 9 -backupReg0i = R3i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.w))); -R6i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.x))); -R3i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R126i.z))); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.z)) * intBitsToFloat(0x3fb8aa3b)); -// 10 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) * intBitsToFloat(0x3fb8aa3b)); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) * intBitsToFloat(0x3fb8aa3b)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PS1i))); -// 11 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 12 -R7i.y = ((R3i.y == 0)?(R127i.z):(PV1i.x)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -// 13 -R4i.x = ((R3i.y == 0)?(R127i.x):(PV0i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -// 14 -R3i.w = ((R3i.y == 0)?(R126i.w):(PV1i.z)); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS10[2].w, intBitsToFloat(R5i.z))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS10[0].x)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockPS10[0].y)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.x))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockPS10[0].z)); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(R2i.z))); -PV0i.y = R123i.y; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R6i.w))); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R0i.y))); -// 4 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R3i.z))); -PV0i.x = R126i.x; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R6i.y))); -PV0i.w = R126i.w; -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) * 0.25); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) * 0.25); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(R1i.x))); -PV1i.z = R126i.z; -// 6 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3fb8aa3b)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3fb8aa3b)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * 0.25); -// 7 -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3fb8aa3b)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R127i.x))); -// 9 -R123i.x = ((R3i.y == 0)?(R126i.x):(PV0i.x)); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.z))); -// 10 -R8i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R7i.y)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R123i.w = ((R3i.y == 0)?(R126i.w):(PV1i.w)); -PV0i.w = R123i.w; -// 11 -R8i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R4i.x)); -R123i.z = ((R3i.y == 0)?(R126i.z):(PV0i.z)); -PV1i.z = R123i.z; -// 12 -R8i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R3i.w)); -} -// export -passPixelColor0 = vec4(intBitsToFloat(R8i.x), intBitsToFloat(R8i.y), intBitsToFloat(R8i.z), intBitsToFloat(R8i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/83573681c1fcb0ac_0000f0f0ff549249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/83573681c1fcb0ac_0000f0f0ff549249_ps.txt deleted file mode 100644 index 599001d5..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/83573681c1fcb0ac_0000f0f0ff549249_ps.txt +++ /dev/null @@ -1,1006 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Guardian weapons when teleporting - -// shader 83573681c1fcb0ac -#ifdef VULKAN -layout(set = 1, binding = 8) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 7) uniform sampler2D textureUnitPS8; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem2); -R3i = floatBitsToInt(passParameterSem4); -R4i = floatBitsToInt(passParameterSem5); -R5i = floatBitsToInt(passParameterSem7); -R6i = floatBitsToInt(passParameterSem8); -if( activeMaskStackC[1] == true ) { -R7i.xy = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).xy); -R9i.xyz = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).xyz); -R8i.xyz = floatBitsToInt(texture(textureUnitPS7, intBitsToFloat(R0i.zw)).xyz); -R1i.xyz = floatBitsToInt(texture(textureUnitPS8, intBitsToFloat(R1i.xy)).xyz); -R1i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); -R10i.xyz = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -R127i.w = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.w = R127i.w; -R127i.z = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PS0i = R127i.z; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -R126i.x = floatBitsToInt(fract(intBitsToFloat(R6i.x))); -PS0i = R126i.x; -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R127i.w = floatBitsToInt(fract(intBitsToFloat(R6i.y))); -PS1i = R127i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.y))); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg0i))); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.z))); -PV1i.z = R125i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R126i.x) + -(0.5)); -R127i.z = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.w) + -(0.5)); -PS0i = R127i.y; -// 7 -backupReg0i = R127i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R9i.x))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(R1i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(R1i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R1i.z))); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS1i = R127i.w; -// 8 -R125i.x = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R9i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R126i.w)) + 1.0)); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R127i.y)) + 1.0)); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R4i.w = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R9i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.z)); -R126i.w = floatBitsToInt(tempResultf); -PS0i = R126i.w; -// 9 -backupReg0i = R127i.w; -backupReg1i = R5i.z; -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(uf_remappedPS[1].z)) + -(intBitsToFloat(uf_remappedPS[1].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R127i.w))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.z))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(backupReg0i))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(backupReg0i))); -PS1i = R126i.z; -// 10 -backupReg0i = R126i.y; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R126i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R126i.x))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w), intBitsToFloat(PV1i.x))); -R124i.w = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R4i.w))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.w))); -PS0i = R4i.y; -// 11 -backupReg0i = R125i.y; -R127i.x = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R125i.x))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R126i.w))); -PV1i.z = R4i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -PS1i = R124i.y; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.w),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R127i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[2].w)) + intBitsToFloat(0x3f59999a)); -PS0i = R127i.w; -// 13 -backupReg0i = R124i.z; -backupReg1i = R127i.x; -backupReg0i = R124i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R124i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R125i.y))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R126i.w))); -PS1i = R124i.w; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R124i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R5i.z))); -R3i.z = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x3f969696)); -R3i.z = clampFI32(R3i.z); -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -PS0i = R5i.x; -// 15 -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.w)) + intBitsToFloat(R124i.w))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.x))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.y))); -PS1i = R6i.y; -// 16 -R7i.y = 0x3f800000; -R6i.z = floatBitsToInt(-(intBitsToFloat(R4i.z)) + 1.0); -R8i.y = 0; -PS0i = R8i.y; -// 17 -R3i.y = floatBitsToInt(intBitsToFloat(R127i.y) + 1.0); -R3i.y = clampFI32(R3i.y); -R1i.y = floatBitsToInt(fract(intBitsToFloat(uf_remappedPS[3].w))); -PS1i = R1i.y; -// 18 -predResult = (intBitsToFloat(R1i.y) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(intBitsToFloat(uf_remappedPS[3].w))); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS2, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg0i))); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg1i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R4i.x = ((intBitsToFloat(uf_remappedPS[4].w) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 1 -predResult = (R4i.x != 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3e99999a)); -R0i.y = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3e99999a)); -R0i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3e99999a)); -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.z) * intBitsToFloat(0x3dea4a8c)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R0i.z)) + 1.0); -tempResultf = max(0.0, intBitsToFloat(R3i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.w = floatBitsToInt(tempResultf); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -tempResultf = max(0.0, intBitsToFloat(PV0i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -// 3 -R126i.y = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(R127i.w) + intBitsToFloat(0x3eb33333))); -PV1i.y = R126i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x40200000)); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 0.25); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(0x3e851eb8)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -R8i.y = 0x3e99999a; -PS1i = R8i.y; -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -PV0i.y = clampFI32(PV0i.y); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.x)); -R127i.z = clampFI32(R127i.z); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(PV0i.y)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.z)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.w)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.w)); -PS1i = R127i.x; -// 8 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -backupReg3i = R5i.x; -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg0i))); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg1i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R5i.z)) + intBitsToFloat(R127i.z)); -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg3i))); -PS0i = R5i.x; -// 9 -backupReg0i = R5i.y; -backupReg1i = R5i.z; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg0i))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(uf_remappedPS[4].w)) + intBitsToFloat(backupReg1i))); -// 10 -R6i.y = R7i.y; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R7i.y = R8i.y; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[4].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[4].y)); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x40666666)); -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x40666666)); -R0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x40666666)); -R1i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f3851ec)); -R1i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f3851ec)); -PS0i = R1i.y; -// 3 -R1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3f3851ec)); -} -if( activeMaskStackC[2] == true ) { -R0i.y = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).x); -R0i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.w),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(R0i.x)); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f333333) + intBitsToFloat(R0i.y))); -PV1i.y = R123i.y; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[4].x)) + intBitsToFloat(PV1i.y)); -// 3 -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x41a00000)); -R127i.w = clampFI32(R127i.w); -PV1i.w = R127i.w; -// 4 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -backupReg3i = R5i.x; -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.w))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.w))); -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(PV1i.w))); -PS0i = R5i.x; -// 5 -backupReg0i = R5i.y; -backupReg1i = R5i.z; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R127i.w))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R1i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].x) * intBitsToFloat(0xbd088889)); -// 1 -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y), intBitsToFloat(uf_remappedPS[6].x))); -// 2 -predResult = (intBitsToFloat(uf_remappedPS[7].w) != 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3e22f983)); -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.w) * intBitsToFloat(0x40e66666)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3e22f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3e22f983)); -PS0i = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.z)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y)) + 0.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(intBitsToFloat(uf_remappedPS[7].w), -(intBitsToFloat(uf_remappedPS[7].w)))); -// 2 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e99999a)); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(PS1i))); -PS0i = R125i.w; -// 3 -R127i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R127i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R126i.z = R6i.z; -R126i.z = clampFI32(R126i.z); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -R124i.w = floatBitsToInt((intBitsToFloat(0xc3020000) * intBitsToFloat(PS0i) + intBitsToFloat(0x43200000))); -PS1i = R124i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3e22f983)); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3e22f983)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt((intBitsToFloat(0xc31a0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43200000))); -R126i.y = floatBitsToInt(sin((intBitsToFloat(PS0i))/0.1591549367)); -PS1i = R126i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.w = tempi.x; -PS0i = floatBitsToInt(sin((intBitsToFloat(PV1i.x))/0.1591549367)); -// 7 -backupReg0i = R127i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.z))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0xc2080000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x42200000))); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt((intBitsToFloat(0xbfe66666) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -PS1i = floatBitsToInt(sin((intBitsToFloat(backupReg0i))/0.1591549367)); -// 8 -R125i.x = floatBitsToInt((intBitsToFloat(0xbd8f5c29) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3d8f5c29))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.w)); -R126i.w = floatBitsToInt((intBitsToFloat(0xc0333333) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40333333))); -tempResultf = max(0.0, intBitsToFloat(R126i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.x = floatBitsToInt(tempResultf); -PS0i = R127i.x; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.25 + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3e4ccccd) + intBitsToFloat(0x3e4ccccd))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(0x3d4cccce) * intBitsToFloat(R125i.w) + intBitsToFloat(0x3dcccccd))); -PV1i.z = R123i.z; -PV1i.w = ((0.0 > intBitsToFloat(uf_remappedPS[7].w))?int(0xFFFFFFFF):int(0x0)); -R126i.x = ((intBitsToFloat(uf_remappedPS[7].w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R126i.x; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x41000000)); -R123i.y = ((PV1i.w == 0)?(PV1i.y):(PV1i.z)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f400000) + intBitsToFloat(R1i.x))); -PV0i.z = R123i.z; -PV0i.w = PV1i.x; -PV0i.w = clampFI32(PV0i.w); -R127i.z = floatBitsToInt((intBitsToFloat(0xc3480000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x43960000))); -PS0i = R127i.z; -// 11 -R127i.x = floatBitsToInt((intBitsToFloat(0xc36b0000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x437f0000))); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0xbeb33333) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R2i.w = ((R126i.x == 0)?(PV0i.y):(0)); -R125i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = R125i.z; -// 12 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R125i.y = floatBitsToInt((intBitsToFloat(0x41600000) * intBitsToFloat(R125i.w) + intBitsToFloat(0x40c00000))); -// 13 -PV1i.z = PV0i.x; -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); -PV1i.w = clampFI32(PV1i.w); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z)); -// 15 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.x = R126i.x; -R125i.w = PV0i.y; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -// 16 -PV0i.z = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.x)); -// 17 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -// 18 -tempResultf = max(0.0, intBitsToFloat(PV1i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 19 -PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x43480000)); -// 20 -R126i.z = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -PS0i = R126i.z; -// 21 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.x))); -PV1i.w = R123i.w; -// 22 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 23 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3ecccccd) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 24 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R2i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 25 -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.w))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R2i.w))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R0i.xyz = ivec3(0,0,0); -R2i.w = 0; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[3].x) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R2i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x40490fdb)); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R127i.y = R6i.z; -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.z) + -(intBitsToFloat(R10i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x40600000)); -R2i.w = floatBitsToInt((intBitsToFloat(uf_remappedPS[3].x) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(backupReg0i))); -PS0i = R2i.w; -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R4i.y) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.w = R126i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.w))); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R126i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -// 5 -PV1i.x = PV0i.z; -PV1i.x = clampFI32(PV1i.x); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); -PV1i.y = clampFI32(PV1i.y); -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.w))/0.1591549367)); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + 1.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x)); -// 7 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R127i.x; -R127i.y = PV0i.w; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(0x40400000) * intBitsToFloat(PV1i.z)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3df5c290)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e8a3d71)); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3b449ba6)); -R126i.x = PV1i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) / 2.0); -PS0i = R126i.x; -// 9 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x41100000)); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40a00000)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -tempResultf = max(0.0, intBitsToFloat(PV1i.w)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40c00000)); -// 12 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 13 -R123i.y = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R126i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x3fe66666) + intBitsToFloat(R126i.z))); -PV1i.w = R123i.w; -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.x)); -// 15 -backupReg0i = R0i.y; -backupReg1i = R0i.x; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.y)); -// 16 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg1i))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (intBitsToFloat(uf_remappedPS[3].y) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R3i.y))); -R127i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -// 1 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(PV0i.x))); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -backupReg3i = R2i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg1i))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg2i))); -R2i.w = floatBitsToInt(intBitsToFloat(backupReg3i) + intBitsToFloat(PV1i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.y = R2i.w; -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),-(intBitsToFloat(PV0i.y))) + intBitsToFloat(R5i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),-(intBitsToFloat(PV0i.y))) + intBitsToFloat(R5i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),-(intBitsToFloat(PV0i.y))) + intBitsToFloat(R5i.x))); -PV1i.z = R123i.z; -R127i.w = ((intBitsToFloat(PV0i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = R127i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),-(intBitsToFloat(PV0i.y))) + intBitsToFloat(R10i.x))); -PS1i = R122i.x; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R126i.y = ((PV1i.w == 0)?(R10i.x):(PS1i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R10i.y))); -PS0i = R122i.x; -// 3 -R127i.x = ((R127i.w == 0)?(R5i.x):(PV0i.w)); -PV1i.x = R127i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R10i.z))); -PV1i.y = R123i.y; -R127i.z = ((R127i.w == 0)?(R5i.z):(PV0i.x)); -PV1i.z = R127i.z; -R126i.w = ((R127i.w == 0)?(R5i.y):(PV0i.z)); -PV1i.w = R126i.w; -R125i.w = ((R127i.w == 0)?(R10i.y):(PS0i)); -PS1i = R125i.w; -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedPS[8].y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[8].x)); -R126i.z = ((R127i.w == 0)?(R10i.z):(PV1i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R6i.y))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[8].z)); -// 5 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R127i.x))); -R3i.y = ((R127i.w == 0)?(R6i.y):(PV0i.w)); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R127i.z))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[8].w)) + intBitsToFloat(R126i.w))); -PS1i = R5i.y; -// 6 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R126i.y))); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R125i.w))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R126i.z))); -// 7 -predResult = (1.0 > intBitsToFloat(uf_remappedPS[2].w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(uf_remappedPS[6].x))); -R0i.y = floatBitsToInt((-(intBitsToFloat(uf_remappedPS[2].w)) * intBitsToFloat(0x40200000) + intBitsToFloat(0x40200000))); -R0i.y = clampFI32(R0i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(uf_remappedPS[6].x))); -PV0i.z = R0i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedPS[6].x))); -// 1 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[9].z))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[9].z))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[9].z))); -R1i.w = PV0i.w; -R1i.w = floatBitsToInt(intBitsToFloat(R1i.w) / 2.0); -R1i.x = PV0i.x; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) / 2.0); -PS1i = R1i.x; -} -if( activeMaskStackC[2] == true ) { -R0i.w = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(uf_remappedPS[9].y))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].w),intBitsToFloat(R0i.w)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.z = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -if( (intBitsToFloat(R3i.z) > intBitsToFloat(R1i.z))) discard; -tempResultf = max(0.0, intBitsToFloat(R1i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R1i.x = floatBitsToInt(tempResultf); -PS0i = R1i.x; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3fe66666)); -// 1 -R127i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -PS1i = R127i.z; -// 2 -R123i.x = floatBitsToInt((intBitsToFloat(0x40b1999a) * intBitsToFloat(PS1i) + intBitsToFloat(0x3ee66666))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(0x3dccccce) * intBitsToFloat(PS1i) + intBitsToFloat(0x3e4ccccd))); -PV0i.y = R123i.y; -// 3 -backupReg0i = R5i.x; -backupReg1i = R5i.y; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg1i))); -R123i.w = floatBitsToInt((intBitsToFloat(0x41200000) * intBitsToFloat(R127i.z) + 4.0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R5i.z; -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),-(intBitsToFloat(uf_remappedPS[8].w))) + intBitsToFloat(R3i.y))); -PV0i.x = R123i.x; -PV0i.y = uf_remappedPS[7].z; -PV0i.z = ((intBitsToFloat(R8i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R123i.w = ((R4i.x == 0)?(0x3d008081):(0x3d30b0b1)); -PV0i.w = R123i.w; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R1i.x = PV0i.w; -R127i.y = ((PV0i.z == 0)?(0):(0x3f800000)); -PV1i.y = R127i.y; -R0i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 0.5 + 0.5)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x427f0000)); -R1i.y = PV0i.y; -PS1i = R1i.y; -// 2 -PV0i.x = ((intBitsToFloat(PV1i.y) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.y = floatBitsToInt((intBitsToFloat(R4i.y) * 0.5 + 0.5)); -PV0i.z = floatBitsToInt(floor(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R2i.w = 0x3f800000; -R0i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 0.5 + 0.5)); -PS0i = R0i.x; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 2.0); -R123i.w = ((PV0i.x == 0)?(R7i.y):(R8i.y)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV1i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x437f0000)); -// 5 -R0i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081)); -PS1i = int(intBitsToFloat(PV0i.z)); -// 6 -PV0i.x = PS1i & 0x000000e0; -// 7 -PV1i.w = PV0i.x >> 0x00000003; -// 8 -PS0i = floatBitsToInt(float(PV1i.w)); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0x42c00000)); -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.y) * 2.0 + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -// 11 -R5i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081))); -// 12 -R4i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R4i.w = R2i.w; -// 13 -R3i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R3i.w = R0i.w; -// 14 -R2i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R2i.w = R5i.w; -// 15 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -backupReg2i = R1i.z; -backupReg3i = R1i.w; -R1i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R1i.w = backupReg3i; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor5 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/91b6e09da2ff63cc_000003c3c3fc9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/91b6e09da2ff63cc_000003c3c3fc9249_ps.txt deleted file mode 100644 index f50cdb6c..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/91b6e09da2ff63cc_000003c3c3fc9249_ps.txt +++ /dev/null @@ -1,251 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Guardian Stalker + Scout + Guardian weapons - -// shader 91b6e09da2ff63cc -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R124f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem7; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem6; -R5f.xy = (texture(textureUnitPS3, R0f.xy).xy); -R1f.w = (texture(textureUnitPS2, R0f.xy).x); -R7f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R6f.xyz = (texture(textureUnitPS5, R0f.zw).xyz); -R1f.xyz = (texture(textureUnitPS6, R1f.xy).xyz); -R0f.xyz = (texture(textureUnitPS1, R0f.xy).xyz); -// 0 -PV0f.x = fract(R2f.x); -R126f.y = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R126f.y; -R127f.z = mul_nonIEEE(R3f.y, R4f.z); -PV0f.w = fract(R2f.y); -R126f.z = mul_nonIEEE(R3f.z, R4f.x); -PS0f = R126f.z; -// 1 -PV1f.x = mul_nonIEEE(R3f.x, R4f.y); -PV1f.y = PV0f.w + -(0.5); -PV1f.z = PV0f.x + -(0.5); -R127f.w = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV1f.w = R127f.w; -PS1f = mul_nonIEEE(PV0f.y, PV0f.y); -// 2 -R123f.x = (mul_nonIEEE(-(PV1f.z),PV1f.z) + 1.0); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -R127f.y = (mul_nonIEEE(-(R4f.y),R3f.z) + R127f.z); -R127f.z = (mul_nonIEEE(-(R4f.x),R3f.y) + PV1f.x); -R123f.w = (mul_nonIEEE(-(PV1f.y),PV1f.y) + 1.0); -R123f.w = clamp(R123f.w, 0.0, 1.0); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(PV1f.w,PV1f.w) + PS1f); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS0f = R122f.x; -// 3 -PV1f.x = -(PS0f) + 1.0; -PV1f.y = mul_nonIEEE(R4f.w, R127f.w); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.w); -R123f.w = (mul_nonIEEE(-(R4f.z),R3f.x) + R126f.z); -PV1f.w = R123f.w; -R125f.z = mul_nonIEEE(R6f.x, R1f.x); -PS1f = R125f.z; -// 4 -PV0f.x = mul_nonIEEE(R127f.y, PV1f.y); -PV0f.y = mul_nonIEEE(PV1f.z, PV1f.z); -PV0f.z = mul_nonIEEE(R127f.z, PV1f.y); -PV0f.w = mul_nonIEEE(PV1f.w, PV1f.y); -R127f.z = sqrt(PV1f.x); -PS0f = R127f.z; -// 5 -R123f.x = (mul_nonIEEE(R4f.y,R126f.y) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R4f.x,R126f.y) + PV0f.x); -PV1f.y = R123f.y; -R126f.z = mul_nonIEEE(R1f.w, PV0f.y); -R123f.w = (mul_nonIEEE(R4f.z,R126f.y) + PV0f.z); -PV1f.w = R123f.w; -R126f.y = mul_nonIEEE(R6f.z, R1f.z); -PS1f = R126f.y; -// 6 -R124f.x = (mul_nonIEEE(R3f.x,R127f.z) + PV1f.y); -R124f.y = (mul_nonIEEE(R3f.y,R127f.z) + PV1f.x); -R1f.z = (mul_nonIEEE(R3f.z,R127f.z) + PV1f.w); -R127f.w = mul_nonIEEE(R6f.y, R1f.y); -R126f.w = mul_nonIEEE(Color.r, R7f.x); -PS0f = R126f.w; -// 7 -R127f.x = mul_nonIEEE(Color.r, PS0f); -R127f.y = mul_nonIEEE(Color.g, R7f.y); -PV1f.z = R126f.z * intBitsToFloat(0x427f0000); -R125f.w = mul_nonIEEE(Color.b, R7f.z); -R124f.z = intBitsToFloat(0x3d008081); -PS1f = R124f.z; -// 8 -R123f.x = (mul_nonIEEE(-(R5f.z),intBitsToFloat(uf_remappedPS[1].z)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -R125f.y = mul_nonIEEE(R125f.z, intBitsToFloat(uf_remappedPS[1].x) * Factor); -PV0f.y = R125f.y; -R127f.z = mul_nonIEEE(R127f.w, intBitsToFloat(uf_remappedPS[1].x) * Factor); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R126f.y, intBitsToFloat(uf_remappedPS[1].x) * Factor); -PV0f.w = R127f.w; -R126f.y = floor(PV1f.z); -R126f.y *= 4.0; -PS0f = R126f.y; -// 9 -backupReg0f = R126f.w; -R126f.x = mul_nonIEEE(R127f.y, PV0f.z); -PV1f.y = mul_nonIEEE(Color.g, R127f.y); -R125f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w), PV0f.x); -PV1f.z = R125f.z; -R126f.w = mul_nonIEEE(backupReg0f, PV0f.y); -R125f.x = mul_nonIEEE(R125f.w, PV0f.w); -PS1f = R125f.x; -// 10 -backupReg0f = R126f.y; -PV0f.x = mul_nonIEEE(Color.b, R125f.w); -R126f.y = mul_nonIEEE(PV1f.z, R127f.x); -R126f.z = mul_nonIEEE(PV1f.z, PV1f.y); -R125f.w = intBitsToFloat(uf_remappedPS[2].z); -R127f.x = backupReg0f + 2.0; -PS0f = R127f.x; -// 11 -backupReg0f = R125f.z; -tempf.x = dot(vec4(R124f.x,R124f.y,R1f.z,-0.0),vec4(R124f.x,R124f.y,R1f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R125f.z = tempf.x; -PS1f = mul_nonIEEE(backupReg0f, PV0f.x); -// 12 -R5f.x = (mul_nonIEEE(R126f.y,R125f.y) + R126f.w); -R5f.y = (mul_nonIEEE(R126f.z,R127f.z) + R126f.x); -R5f.z = (mul_nonIEEE(PS1f,R127f.w) + R125f.x); -R1f.w = 1.0; -R1f.x = R124f.z; -PS0f = R1f.x; -// 13 -R1f.y = R125f.w; -R5f.w = 1.0; -R7f.w = R127f.x * intBitsToFloat(0x3b808081); -PS1f = R7f.w; -// 14 -R0f.w = intBitsToFloat(0x3ec2c2c4); -tempResultf = 1.0 / sqrt(R125f.z); -PS0f = tempResultf; -PS0f /= 2.0; -// 15 -R7f.x = (mul_nonIEEE(R124f.x,PS0f) + 0.5); -R7f.y = (mul_nonIEEE(R124f.y,PS0f) + 0.5); -R7f.z = (mul_nonIEEE(R1f.z,PS0f) + 0.5); -// 16 -backupReg0f = R5f.x; -backupReg1f = R5f.y; -backupReg2f = R5f.z; -backupReg3f = R5f.w; -R5f.xyz = vec3(backupReg0f,backupReg1f,backupReg2f); -R5f.w = backupReg3f; -// 17 -R4f.xyz = vec3(R7f.x,R7f.y,R7f.z); -R4f.w = R7f.w; -// 18 -R3f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R3f.w = R0f.w; -// 19 -R2f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R2f.w = R1f.w; -// export -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -passPixelColor1 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -passPixelColor3 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor5 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/rules.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/rules.txt deleted file mode 100644 index 1918bec8..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guadian_Stalker_Scout_and_Weapons/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Guardian Stalker & Guardian Scout & The top Half of Guardian weapons -path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Stalker & Scout & Guardian weapons" -description = Change Guardian Stalker, Scout, Guardian weapons's color. Originally it depends on whether it's corrupted by malice, or the state of the Guardian Scout. -version = 4 - -[Preset] -name = Malice Red -$R = 0.85 -$G = 0.029 -$B = 0.15 -$L_f = 1.0 - -[Preset] -name = Guardian Yellow -$R = 1.0 -$G = 0.2 -$B = 0.059 -$L_f = 1.0 - -[Preset] -name = Guardian weapon Yellow -$R = 1.0 -$G = 0.2 -$B = 0.0 -$L_f = 1.0 - -[Preset] -name = Ancient Orange -$R = 1.0 -$G = 0.2 -$B = 0.0006 -$L_f = 1.0 - -[Preset] -name = Ancient weapon Orange -$R = 1.0 -$G = 0.15 -$B = 0.05 -$L_f = 1.0 - -[Preset] -name = Energy Blue -$R = 0.03 -$G = 0.25 -$B = 1.0 -$L_f = 1.0 - -[Preset] -name = Custom (Edit in rules.txt) -$R = 0.000 -$G = 0.000 -$B = 0.000 -$L_f = 1.0 diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/133297c9a66bfc98_000003c3c3fc9249_ps.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/133297c9a66bfc98_000003c3c3fc9249_ps.txt deleted file mode 100644 index e7d463ca..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/133297c9a66bfc98_000003c3c3fc9249_ps.txt +++ /dev/null @@ -1,332 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -const vec3 Color = vec3($R,$G,$B); -const float Factor = $L_f; - -// Guardian Turret + Skywatcher - -// shader 133297c9a66bfc98 -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[5]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[5]; -uniform vec2 uf_fragCoordScale; -#endif -// uf_fragCoordScale was moved to the ufBlock -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem7); -R3i = floatBitsToInt(passParameterSem3); -R4i = floatBitsToInt(passParameterSem4); -R5i = floatBitsToInt(passParameterSem6); -R6i.xy = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R0i.xy)).xy); -R9i.xy = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R0i.xy)).xy); -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).w); -R8i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).xyz); -R7i.xyz = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).xyz); -R1i.xyz = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R1i.xy)).xyz); -R0i.xyz = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyz); -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R4i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R4i.x))); -R127i.z = floatBitsToInt((intBitsToFloat(R6i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R4i.z))); -R127i.y = floatBitsToInt((intBitsToFloat(R6i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PS0i = R127i.y; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.x))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R126i.x = floatBitsToInt(fract(intBitsToFloat(R2i.x))); -PS0i = R126i.x; -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -R127i.z = floatBitsToInt(fract(intBitsToFloat(R2i.y))); -PS1i = R127i.z; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.z))); -// 5 -backupReg0i = R127i.x; -backupReg1i = R127i.y; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg1i))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R126i.x) + -(0.5)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 7 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS0i))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 8 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R3i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -PV0i.y = R3i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); -PV0i.z = R3i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R127i.w)) + 1.0)); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(PS1i)) + intBitsToFloat(R9i.y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R9i.y) * intBitsToFloat(0x437f0000)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.w) + -(1.0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + 1.0); -PV0i.w = clampFI32(PV0i.w); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R1i.x))); -PS0i = R127i.y; -// 11 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R1i.y))); -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(PV0i.z)); -PV1i.y = R126i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R1i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV0i.x))); -PS1i = int(intBitsToFloat(PV0i.y)); -// 12 -R127i.x = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R8i.x))); -R125i.y = PS1i & 0x000000e0; -R126i.z = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R8i.y))); -R127i.w = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R8i.z))); -R125i.x = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(PV1i.y)); -PS0i = R125i.x; -// 13 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(uf_remappedPS[1].x) * Factor)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(uf_remappedPS[1].z)) + -(intBitsToFloat(uf_remappedPS[1].y)))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -R125i.w = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R126i.y)); -PS1i = R125i.w; -// 14 -backupReg0i = R126i.y; -backupReg1i = R126i.w; -PV0i.x = floatBitsToInt(mul_nonIEEE(Color.r, intBitsToFloat(R127i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w), intBitsToFloat(PV1i.w))); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(Color.g, intBitsToFloat(R126i.z))); -R126i.w = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(backupReg0i)); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(0x427f0000)); -PS0i = R127i.y; -// 15 -backupReg0i = R125i.y; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.x))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.z))); -R127i.z = backupReg0i >> 0x00000003; -PV1i.w = floatBitsToInt(mul_nonIEEE(Color.b, intBitsToFloat(R127i.w))); -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R126i.x))); -PS1i = R124i.x; -// 16 -backupReg0i = R125i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), intBitsToFloat(backupReg0i))); -R125i.x = clampFI32(R125i.x); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(R124i.y))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(R125i.z))); -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), intBitsToFloat(R125i.w))); -R8i.x = clampFI32(R8i.x); -PS0i = R8i.x; -// 17 -backupReg0i = R127i.x; -backupReg1i = R9i.y; -backupReg2i = R127i.z; -R127i.x = floatBitsToInt(floor(intBitsToFloat(R127i.y))); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 4.0); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.x)) + intBitsToFloat(R124i.x))); -R127i.z = ((intBitsToFloat(backupReg1i) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), intBitsToFloat(R126i.w))); -PV1i.w = clampFI32(PV1i.w); -R127i.y = floatBitsToInt(float(backupReg2i)); -PS1i = R127i.y; -// 18 -backupReg0i = R125i.x; -backupReg1i = R126i.y; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R124i.y)) + intBitsToFloat(R126i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(R8i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(backupReg0i))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(R125i.z)) + intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(PV1i.w))); -PS0i = R127i.w; -// 19 -backupReg0i = R127i.z; -backupReg1i = R9i.y; -R8i.x = floatBitsToInt(intBitsToFloat(R127i.x) + 2.0); -R9i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x42c20000)); -R127i.z = uf_remappedPS[4].z; -R125i.w = ((backupReg0i == 0)?(0x3d008081):(0x3d20a0a1)); -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(PV0i.z)) + intBitsToFloat(backupReg1i))); -PS1i = R5i.x; -// 20 -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R0i.x))); -R1i.x = clampFI32(R1i.x); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R126i.y)) + intBitsToFloat(R125i.x))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.w))); -R7i.w = floatBitsToInt(1.0); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R0i.y))); -R1i.y = clampFI32(R1i.y); -PS0i = R1i.y; -// 21 -R7i.x = R125i.w; -R7i.y = R127i.z; -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R0i.z))); -R1i.z = clampFI32(R1i.z); -R5i.w = 0x3f800000; -R0i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 0.5 + 0.5)); -PS1i = R0i.x; -// 0 -R0i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 0.5 + 0.5)); -R0i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 0.5 + 0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R8i.x) * intBitsToFloat(0x3b808081)); -R1i.w = floatBitsToInt(intBitsToFloat(R9i.y) * intBitsToFloat(0x3b808081)); -PS0i = R1i.w; -// 1 -backupReg0i = R5i.x; -backupReg1i = R5i.y; -backupReg2i = R5i.z; -backupReg3i = R5i.w; -R5i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R5i.w = backupReg3i; -// 2 -R4i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R4i.w = R0i.w; -// 3 -R3i.xyz = ivec3(R1i.x,R1i.y,R1i.z); -R3i.w = R1i.w; -// 4 -R2i.xyz = ivec3(R7i.x,R7i.y,R7i.z); -R2i.w = R7i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor1 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor3 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -passPixelColor5 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -} diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/rules.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/rules.txt deleted file mode 100644 index 7788e06d..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Guardian_Turret_Skywatcher/rules.txt +++ /dev/null @@ -1,55 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Guardian Turret & Skywatcher -path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Turret & Skywatcher" -description = Change Guardian Turret, Skywatcher's color. Originally it depends on whether it's corrupted by malice or not. -version = 4 - -[Preset] -name = Malice Red -$R = 0.85 -$G = 0.029 -$B = 0.15 -$L_f = 1.0 - -[Preset] -name = Guardian Yellow -$R = 1.0 -$G = 0.2 -$B = 0.059 -$L_f = 1.0 - -[Preset] -name = Guardian weapon Yellow -$R = 1.0 -$G = 0.2 -$B = 0.0 -$L_f = 1.0 - -[Preset] -name = Ancient Orange -$R = 1.0 -$G = 0.2 -$B = 0.0006 -$L_f = 1.0 - -[Preset] -name = Ancient weapon Orange -$R = 1.0 -$G = 0.15 -$B = 0.05 -$L_f = 1.0 - -[Preset] -name = Energy Blue -$R = 0.03 -$G = 0.25 -$B = 1.0 -$L_f = 1.0 - -[Preset] -name = Custom (Edit in rules.txt) -$R = 0.000 -$G = 0.000 -$B = 0.000 -$L_f = 1.0 diff --git a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Readme.txt b/Mods/BreathOfTheWild_ChangeAncientGlowColor/Readme.txt deleted file mode 100644 index dc61f66a..00000000 --- a/Mods/BreathOfTheWild_ChangeAncientGlowColor/Readme.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Top half of the Guardian weapon is drawed with Scout shader while the bottom half is Skywatcher shader. - -# Generally color is between 0-1 which is then multiplied by brightness (So Guardian can turn on/off) -# Guardian 50 (changing), Ancient armor 20, Ancient bow about 11 -# Exception: Ancient sword, shield (20.0, 3.0, 1.0) use un-normalized color, with brightness being 1.0 -# Equals to (1.0, 0.15, 0.05) with brightness 20 - -# Game control color & brightness with a uniform, so they can vary between objects (and through time) drawn with the same shader. It's hard to do this in Gfx pack. -# In theory You can add if condition to check for game's uniform value so you can change the color of a specific object without affecting others. - -# Try converting custom color from gamma encoded to linear (color/255)^2.2 if it look slightly off in game. diff --git a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/patches.txt b/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/patches.txt deleted file mode 100644 index 95c6a8b6..00000000 --- a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/patches.txt +++ /dev/null @@ -1,17 +0,0 @@ -[BotW_FasterArrowDraw_V208] -moduleMatches = 0x6267BFD0 - -_arrowDrawAddress = 0x100c50A0 ; Just used to load the lower half of the 0x100c50A0 offset from - -# Change offset from r10 register slightly to load a 3.0 float instead of 1.0 -0x024A0164 = lfs f0, _arrowDrawAddress@l(r10) ; Bow Draw Speed -0x024A019C = lfs f0, _arrowDrawAddress@l(r10) ; Bow Draw Cooldown - - -[BotW_FasterArrowDraw_V176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -_arrowDrawAddress = 0x100c5040 - -0x0249FDC0 = lfs f0, _arrowDrawAddress@l(r10) -0x0249FDF8 = lfs f0, _arrowDrawAddress@l(r10) diff --git a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/readme.txt b/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/rules.txt b/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/rules.txt deleted file mode 100644 index 2b41750a..00000000 --- a/Mods/BreathOfTheWild_Cheats_FasterArrowDraw/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Faster Arrow Draw -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Faster Arrow Draw" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfAmiibo/patches.txt b/Mods/BreathOfTheWild_Cheats_InfAmiibo/patches.txt deleted file mode 100644 index dce8fe70..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfAmiibo/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x029E949C = mr r29, r11; Inf Amiibo - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x029E90F0 = mr r29, r11; Inf Amiibo diff --git a/Mods/BreathOfTheWild_Cheats_InfAmiibo/readme.txt b/Mods/BreathOfTheWild_Cheats_InfAmiibo/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfAmiibo/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfAmiibo/rules.txt b/Mods/BreathOfTheWild_Cheats_InfAmiibo/rules.txt deleted file mode 100644 index 550fcf15..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfAmiibo/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Amiibo -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Amiibo" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfArrows/patches.txt b/Mods/BreathOfTheWild_Cheats_InfArrows/patches.txt deleted file mode 100644 index bf3d1d97..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfArrows/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02EB6758 = nop; Inf Arrows - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02EB61BC = nop ;inf arrows diff --git a/Mods/BreathOfTheWild_Cheats_InfArrows/readme.txt b/Mods/BreathOfTheWild_Cheats_InfArrows/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfArrows/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfArrows/rules.txt b/Mods/BreathOfTheWild_Cheats_InfArrows/rules.txt deleted file mode 100644 index 3853f779..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfArrows/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Arrows -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Arrows" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfDaruk/patches.txt b/Mods/BreathOfTheWild_Cheats_InfDaruk/patches.txt deleted file mode 100644 index a246be57..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfDaruk/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02D74498 = nop; Inf Daruk's Protection - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02D73EFC = nop; Inf Daruk's Protection diff --git a/Mods/BreathOfTheWild_Cheats_InfDaruk/readme.txt b/Mods/BreathOfTheWild_Cheats_InfDaruk/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfDaruk/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfDaruk/rules.txt b/Mods/BreathOfTheWild_Cheats_InfDaruk/rules.txt deleted file mode 100644 index 84fb3c66..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfDaruk/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Daruk's Protection -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Daruk's Protection" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfHearts/patches.txt b/Mods/BreathOfTheWild_Cheats_InfHearts/patches.txt deleted file mode 100644 index bd9bd95d..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfHearts/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02D452A4 = nop; Inf Hearts - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02D44D44 = nop ;inf hearts diff --git a/Mods/BreathOfTheWild_Cheats_InfHearts/readme.txt b/Mods/BreathOfTheWild_Cheats_InfHearts/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfHearts/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfHearts/rules.txt b/Mods/BreathOfTheWild_Cheats_InfHearts/rules.txt deleted file mode 100644 index 6647ecde..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfHearts/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Hearts -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Hearts" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfMipha/patches.txt b/Mods/BreathOfTheWild_Cheats_InfMipha/patches.txt deleted file mode 100644 index ac32c7c2..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMipha/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02D91DBC = fmuls f0, f13, f12; Inf Mipha's Grace - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02D91820 = fmuls f0, f13, f12; Inf Mipha's Grace diff --git a/Mods/BreathOfTheWild_Cheats_InfMipha/readme.txt b/Mods/BreathOfTheWild_Cheats_InfMipha/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMipha/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfMipha/rules.txt b/Mods/BreathOfTheWild_Cheats_InfMipha/rules.txt deleted file mode 100644 index 50764971..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMipha/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Mipha's Grace -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Mipha's Grace" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/patches.txt b/Mods/BreathOfTheWild_Cheats_InfMotorcycle/patches.txt deleted file mode 100644 index 1ec37305..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x020957DC = fmr f12, f0; Inf Motorcycle Energy - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x0209583C = fmr f12, f0; Inf Motorcycle Energy diff --git a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/readme.txt b/Mods/BreathOfTheWild_Cheats_InfMotorcycle/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/rules.txt b/Mods/BreathOfTheWild_Cheats_InfMotorcycle/rules.txt deleted file mode 100644 index e6457d45..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfMotorcycle/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Motorcycle Energy -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Motorcycle Energy" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfRevali/patches.txt b/Mods/BreathOfTheWild_Cheats_InfRevali/patches.txt deleted file mode 100644 index 8f108f6c..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfRevali/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02CE0328 = nop; Inf Revali's Gale - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02CDFE0C = nop; Inf Revali's Gale diff --git a/Mods/BreathOfTheWild_Cheats_InfRevali/readme.txt b/Mods/BreathOfTheWild_Cheats_InfRevali/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfRevali/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfRevali/rules.txt b/Mods/BreathOfTheWild_Cheats_InfRevali/rules.txt deleted file mode 100644 index 2d330cde..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfRevali/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Revali's Gale -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Revali's Gale" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfStamina/patches.txt b/Mods/BreathOfTheWild_Cheats_InfStamina/patches.txt deleted file mode 100644 index 6102df89..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfStamina/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02D90CC0 = fmr f29, f1; Inf Stamina - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02D90724 = fmr f29, f1 ;inf stamina diff --git a/Mods/BreathOfTheWild_Cheats_InfStamina/readme.txt b/Mods/BreathOfTheWild_Cheats_InfStamina/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfStamina/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfStamina/rules.txt b/Mods/BreathOfTheWild_Cheats_InfStamina/rules.txt deleted file mode 100644 index 2f08169c..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfStamina/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Stamina -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Stamina" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfUrbosa/patches.txt b/Mods/BreathOfTheWild_Cheats_InfUrbosa/patches.txt deleted file mode 100644 index 1d930160..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfUrbosa/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02D741C8 = nop; Inf Urbosa's Fury - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x02D73C2C = nop; Inf Urbosa's Fury diff --git a/Mods/BreathOfTheWild_Cheats_InfUrbosa/readme.txt b/Mods/BreathOfTheWild_Cheats_InfUrbosa/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfUrbosa/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfUrbosa/rules.txt b/Mods/BreathOfTheWild_Cheats_InfUrbosa/rules.txt deleted file mode 100644 index af9b57de..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfUrbosa/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Urbosa's Fury -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Urbosa's Fury" -description = BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_InfWeapons/patches.txt b/Mods/BreathOfTheWild_Cheats_InfWeapons/patches.txt deleted file mode 100644 index 4c972723..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfWeapons/patches.txt +++ /dev/null @@ -1,9 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x024ACBF4 = fsub f31, f31, f31; Inf Weapons, Bows and Shields (except burn damage and throwing weapon) - -[BotwV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 - -0x024AC850 = fsub f31, f31, f31; Inf Weapons, Bows and Shields (except burn damage and throwing weapon) diff --git a/Mods/BreathOfTheWild_Cheats_InfWeapons/readme.txt b/Mods/BreathOfTheWild_Cheats_InfWeapons/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfWeapons/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_InfWeapons/rules.txt b/Mods/BreathOfTheWild_Cheats_InfWeapons/rules.txt deleted file mode 100644 index 46828b05..00000000 --- a/Mods/BreathOfTheWild_Cheats_InfWeapons/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Infinite Weapons, Bows and Shields -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Weapons, Bows and Shields" -description = (except burn damage and throwing weapon) BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/patches.txt b/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/patches.txt deleted file mode 100644 index 469d727f..00000000 --- a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/patches.txt +++ /dev/null @@ -1,4 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x02A32A30 = li r3, 1; Spawn motorcycle anywhere, credits to Zeikken (converting to patches) and leoetlino (finding the value). diff --git a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/readme.txt b/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/readme.txt deleted file mode 100644 index cc2c0e69..00000000 --- a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -BotW Cheats by C313571N and Xalphenos. - -Burning of wooden items does not decrease durability, but measures for how long the item is burning and when it is long enough, item is instantly destroyed regardless of current durability. -Throwing a weapon instantly destroys it. diff --git a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/rules.txt b/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/rules.txt deleted file mode 100644 index 8d45a6aa..00000000 --- a/Mods/BreathOfTheWild_Cheats_MotorcycleAnywhere/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Spawn Motorcycle Anywhere -path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Spawn Motorcycle Anywhere" -description = v208 only! Credits to Zeikken (converting to patches) and leoetlino (finding the value). BotW Cheats by C313571N and Xalphenos -version = 4 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DayLength/patches.txt b/Mods/BreathOfTheWild_DayLength/patches.txt deleted file mode 100644 index 04e83487..00000000 --- a/Mods/BreathOfTheWild_DayLength/patches.txt +++ /dev/null @@ -1,4 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x10301844 = .float (1/(120*$timeScale)) diff --git a/Mods/BreathOfTheWild_DayLength/rules.txt b/Mods/BreathOfTheWild_DayLength/rules.txt deleted file mode 100644 index 82f7cc3d..00000000 --- a/Mods/BreathOfTheWild_DayLength/rules.txt +++ /dev/null @@ -1,46 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Day Length -path = "The Legend of Zelda: Breath of the Wild/Mods/Day Length" -description = Changes the amount of real time an in-game day takes. Any game slowdown will make the actual time longer. Blood moons won't appear or be less common. -version = 4 - -[Preset] -name = 48 minutes -$timeScale = 2 - -[Preset] -name = 72 minutes -$timeScale = 3 - -[Preset] -name = 96 minutes -$timeScale = 4 - -[Preset] -name = 2 hours -$timeScale = 5 - -[Preset] -name = 4 hours -$timeScale = 10 - -[Preset] -name = 6 hours -$timeScale = 15 - -[Preset] -name = 8 hours -$timeScale = 20 - -[Preset] -name = 12 hours -$timeScale = 30 - -[Preset] -name = 24 hours -$timeScale = 60 - -[Preset] -name = Freeze time -$timeScale = 6000 diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/2e2543216c04766d_0000000079249749_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/2e2543216c04766d_0000000079249749_ps.txt deleted file mode 100644 index 65451b80..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/2e2543216c04766d_0000000079249749_ps.txt +++ /dev/null @@ -1,713 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 2e2543216c04766d -- Water RGB and edge clarity and Distant Water Fog -#define waterfogred $waterfogred -#define waterfoggreen $waterfoggreen -#define waterfogblue $waterfogblue - -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[14]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[14]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform samplerCubeArray textureUnitPS8; -TEXTURE_LAYOUT(10, 1, 6) uniform sampler2DArray textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13; - -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem4; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock - -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } - -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex8 = 0.0; - -R0i = floatBitsToInt(passParameterSem0); // messing with this turns all body of water milky -R1i = floatBitsToInt(passParameterSem4); // does something to close water -R2i = floatBitsToInt(passParameterSem6); // afects near water bodies, reflections frame? - -R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); -R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); // water body world reflection frame R2izw -R4i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); -R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); -R7i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).xyzw); // affects edge of bodies of water - -// 0 -R126i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); // light reflections on water 2.0 defualt -R127i.y = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); // light reflections on water -R127i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); // light reflections on water -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); // shiny ripples on water -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.x)); -PS0i = R126i.z; -// 1 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); // R0i how much light reflection light reflections -PV1i.x = R2i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); // R0i how much light reflection light reflections -PV1i.y = R2i.y; -R124i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); // light reflection rays going off from a center point -PV1i.z = R124i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[2].y))); // enlargens light ripples reflection on waves x200 to visually see -R125i.x = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.y)); -PS1i = R125i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0)));// turns water more solid color -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R2i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); // (R126i.x) controls the amount of shiny waves -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.x = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R127i.x; -// 4 -R124i.x = floatBitsToInt(intBitsToFloat(R2i.x) + -(intBitsToFloat(uf_remappedPS[3].x))); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.y) + -(intBitsToFloat(uf_remappedPS[3].y))); -R125i.z = floatBitsToInt(intBitsToFloat(R124i.z) + -(intBitsToFloat(uf_remappedPS[3].z))); -R125i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0x43480000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R127i.w = R2i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 6 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS1i))); -PV0i.x = R11i.x; -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS1i))); -PV0i.y = R11i.y; -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -PV0i.z = R12i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.w)); -PS0i = R127i.y; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) * 2.0); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R127i.w))); -PS1i = R125i.y; -// 8 -backupReg0i = R126i.z; -backupReg0i = R126i.z; -backupReg1i = R125i.x; -backupReg1i = R125i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R10i.x)) + intBitsToFloat(R11i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R10i.y)) + intBitsToFloat(R11i.y))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R11i.z)) + intBitsToFloat(R12i.z))); -R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -R125i.x = floatBitsToInt(max(intBitsToFloat(backupReg1i), -(intBitsToFloat(backupReg1i)))); -PS0i = R125i.x; -// 9 -backupReg0i = R126i.w; -backupReg0i = R126i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = R126i.w; -// 10 -backupReg0i = R127i.y; -backupReg0i = R127i.y; -backupReg1i = R125i.w; -backupReg1i = R125i.w; -R126i.x = floatBitsToInt(fract(intBitsToFloat(R1i.y))); -R127i.y = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -R127i.z = floatBitsToInt(fract(intBitsToFloat(R1i.x))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV1i.x))); -R8i.w = 0x40400000; -PS0i = R8i.w; -// 11 -backupReg0i = R126i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = tempi.x; -R3i.z = floatBitsToInt(roundEven(1.0)); -PS1i = R3i.z; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(R125i.w)))); -PS0i = R122i.x; -// 13 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.y)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.w)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.z)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PS0i))); -// 14 -R124i.x = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PS1i)); -PV0i.x = R124i.x; -PV0i.y = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); -PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); -PS0i = floatBitsToInt(max(intBitsToFloat(PV1i.y), -(intBitsToFloat(PV1i.y)))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 4.0); -// 15 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R125i.x)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PS0i))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.x))); -PS1i = R122i.x; -// 16 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R124i.x)) + intBitsToFloat(R124i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R124i.x)) + intBitsToFloat(R2i.y))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R2i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(PS1i)); -PS0i = R2i.x; -// 17 -R124i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R2i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(PV0i.z)); -PV1i.y = R2i.y; -R5i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(PV0i.y)); -PV1i.z = R5i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -R9i.w = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PS1i = R9i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.z)); -PS0i = clampFI32(PS0i); -// 19 -R5i.x = uf_remappedPS[4].y; -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(R126i.x)); -PV1i.y = clampFI32(PV1i.y); -R10i.z = uf_remappedPS[5].y; -R3i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PS0i)); // world reflections became visible in the distant body waters -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R5i.w = floatBitsToInt(tempResultf); -PS1i = R5i.w; -// 20 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.w = floatBitsToInt(-(intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.y)); -PS0i = R4i.w; -// 21 -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),0.0))); -PV1i.x = R4i.x; -PV1i.y = R4i.x; -PV1i.z = R4i.x; -PV1i.w = R4i.x; -R4i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R4i.z; - -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.y = tempi.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R5i.w))); -PS0i = R126i.x; -// 1 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)) + intBitsToFloat(R0i.x))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R5i.w))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R5i.w))); -R3i.w = uf_remappedPS[9].y; -PS1i = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x41c80000)); -PS1i = clampFI32(PS1i); -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(R11i.x) + intBitsToFloat(uf_remappedPS[10].x)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R4i.w)) + intBitsToFloat(R0i.y))); -R0i.z = floatBitsToInt(intBitsToFloat(R11i.y) + intBitsToFloat(uf_remappedPS[10].y)); -R0i.w = floatBitsToInt((intBitsToFloat(PS1i) * 0.5 + 0.5)); -R1i.z = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(uf_remappedPS[10].z)); -PS0i = R1i.z; -// 3 -redcCUBE(vec4(intBitsToFloat(R4i.z),intBitsToFloat(R4i.z),intBitsToFloat(R4i.x),intBitsToFloat(R4i.y)),vec4(intBitsToFloat(R4i.y),intBitsToFloat(R4i.x),intBitsToFloat(R4i.z),intBitsToFloat(R4i.z)),cubeMapSTM,cubeMapFaceId); -R125i.x = floatBitsToInt(cubeMapSTM.x); -R125i.y = floatBitsToInt(cubeMapSTM.y); -R125i.z = floatBitsToInt(cubeMapSTM.z); -R125i.w = cubeMapFaceId; -PV1i.x = R125i.x; -PV1i.y = R125i.y; -PV1i.z = R125i.z; -PV1i.w = R125i.w; -R127i.w = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); -PS1i = R127i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -PS0i = R124i.x; -// 5 -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = R4i.x; -PV1i.y = R4i.x; -PV1i.z = R4i.x; -PV1i.w = R4i.x; -R4i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R4i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.y = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(R124i.x)) + 1.5)); -PS0i = R122i.x; -// 7 -backupReg0i = R125i.w; -R125i.x = floatBitsToInt((intBitsToFloat(R127i.w) * 0.5 + 0.5)); -R8i.y = PS0i; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R124i.x)) + 1.5)); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); -R8i.z = backupReg0i; -PS1i = R8i.z; -// 8 -redcCUBE(vec4(intBitsToFloat(R4i.z),intBitsToFloat(R4i.z),intBitsToFloat(R4i.x),intBitsToFloat(R4i.y)),vec4(intBitsToFloat(R4i.y),intBitsToFloat(R4i.x),intBitsToFloat(R4i.z),intBitsToFloat(R4i.z)),cubeMapSTM,cubeMapFaceId); // 2nd vec4 distant light reflections -R124i.x = floatBitsToInt(cubeMapSTM.x); -R124i.y = floatBitsToInt(cubeMapSTM.y); -R124i.z = floatBitsToInt(cubeMapSTM.z); -R124i.w = cubeMapFaceId; -PV0i.x = R124i.x; -PV0i.y = R124i.y; -PV0i.z = R124i.z; -PV0i.w = R124i.w; -R8i.x = PV1i.z; -PS0i = R8i.x; -// 9 -R6i.x = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R6i.x = clampFI32(R6i.x); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R125i.x))); -R6i.y = floatBitsToInt(intBitsToFloat(R6i.y) / 2.0); -R9i.z = PV0i.w; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); // great line to controld distance light/sun reflections on surface of water -// 10 -R7i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R7i.x = clampFI32(R7i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + 1.5)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x3c23d70a)); -PV0i.z = clampFI32(PV0i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS1i)) + 1.5)); -PV0i.w = R123i.w; -R6i.z = floatBitsToInt((intBitsToFloat(R7i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R6i.z = clampFI32(R6i.z); -PS0i = R6i.z; -// 11 -R9i.x = PV0i.w; -R9i.y = PV0i.y; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R11i.z))); -R7i.y = int(intBitsToFloat(R125i.w)); -PS1i = R7i.y; - -R2i.xzw = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R3i.xy)).xzw); // light reflections on water R3i frame -R8i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R8i.xy),R8i.z),cubeMapArrayIndex8),intBitsToFloat(R8i.w)).xyz); // level of detail for distant water -R9i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R9i.xy),R9i.z),cubeMapArrayIndex8),intBitsToFloat(R9i.w)).xyz); -R4i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z))).xyz); -R3i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R3i.xy)).xyz); //distant water looks like near water at x0 - -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R10i.z),intBitsToFloat(R7i.w),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].x)), intBitsToFloat(uf_remappedPS[11].w))); -PS0i = R127i.x; -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].y)), intBitsToFloat(uf_remappedPS[11].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R2i.w))); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[11].w), intBitsToFloat(uf_remappedPS[11].w))); -R125i.x = R7i.y & int(1); -PS1i = R125i.x; -// 2 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R10i.x))); -PV0i.x = R124i.x; -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R10i.y))); -PV0i.y = R124i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R11i.z))); -PV0i.z = R124i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].z)), intBitsToFloat(uf_remappedPS[11].w))); -R10i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x3f4ccccd)); -R10i.x = clampFI32(R10i.x); -PS0i = R10i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); // reflections -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(R125i.z))); -PS1i = R126i.y; -// 4 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.z),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.z),intBitsToFloat(R1i.z),0.0))); // reflections -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -backupReg0i = R124i.z; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); -PV1i.x = R5i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PV1i.z = R124i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R125i.z) + 0.25); -R127i.w = clampFI32(R127i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R125i.z = floatBitsToInt(tempResultf); -PS1i = R125i.z; -// 6 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -// 7 -backupReg0i = R0i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R125i.z))); -R124i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(uf_remappedPS[11].w))); -PV1i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.z))); -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R125i.w))); -PS1i = R0i.x; -// 8 -R124i.x = floatBitsToInt(min(intBitsToFloat(PV1i.z), 1.0)); -PV0i.x = R124i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.w)), intBitsToFloat(uf_remappedPS[11].w))); // affects water reflections -PV0i.y = R125i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.x)), intBitsToFloat(uf_remappedPS[11].w))); // affects water reflections -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R2i.z))); -R127i.z = floatBitsToInt(float(R125i.x)); -PS0i = R127i.z; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.x),intBitsToFloat(R124i.w),-0.0),vec4(intBitsToFloat(R124i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -R125i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R125i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.y),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),0.0))); // reflection glare on water surface -tempi.x = clampFI32(tempi.x); // will do the same as above line -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(R125i.x)) + intBitsToFloat(R125i.x))); -PV1i.y = R125i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R124i.z))); -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PS0i)) + intBitsToFloat(PS0i))); -PV1i.w = R124i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(R6i.y))) + intBitsToFloat(R124i.x))); -PS1i = R122i.x; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(PV1i.x)))); -PV0i.w = R125i.w; -PS0i = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PS1i)); -// 13 -backupReg0i = R125i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(PV0i.x))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.z))); -PV1i.y = R125i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + 1.0); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -PS1i = R124i.z; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R6i.y))) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((-(intBitsToFloat(PV1i.y)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); -PV0i.z = R123i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R10i.x))); -PV0i.w = R124i.w; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.x))); -PS0i = R125i.z; -// 15 -backupReg0i = R124i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PV0i.x)); -R126i.y = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.z)); -R124i.z = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); -R125i.w = floatBitsToInt(0.25 * intBitsToFloat(backupReg0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); // largens the area of light glitter from the sun on surface area -// 16 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),-(intBitsToFloat(R125i.y))) + intBitsToFloat(R127i.w))); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R8i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R8i.x))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); // largens the area of light glitter from the sun on surface area -// 17 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R8i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R0i.x))); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.z))); -PS1i = R122i.x; -// 18 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); // ufremapped makes water more solid pool color -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y),intBitsToFloat(R127i.x)) + intBitsToFloat(R125i.y))); // ufremapped makes water more solid pool color -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(R124i.z)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R6i.x))); -PS0i = R125i.y; -// 19 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R7i.x))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.z))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R6i.z))); -PS1i = R125i.w; -// 20 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x), intBitsToFloat(R126i.y))); -R4i.y = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z), intBitsToFloat(R126i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R126i.y))); -R8i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PS0i = R8i.y; -// 21 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(R124i.w))); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(R127i.x))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(R127i.y))); -R3i.w = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R126i.w))); -PS1i = R6i.w; -// 22 -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(R3i.w)); // blue color body water -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(R8i.y)); // green color body water -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(R4i.y)); // red color body water -// 23 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R3i.x) * waterfogred )); // R3i is water fog color red -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R3i.y) * waterfoggreen )); // R3i is water fog green -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R3i.z) * waterfogblue )); // R3i is water fog blue -// export -passPixelColor0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); // xyz is RGB for water color, and w is edge see through clarity -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/bec68ec6f40a864f_00fffff249259249_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/bec68ec6f40a864f_00fffff249259249_ps.txt deleted file mode 100644 index b9bad8a9..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/bec68ec6f40a864f_00fffff249259249_ps.txt +++ /dev/null @@ -1,996 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader bec68ec6f40a864f -- Affects distant area fog rgb, distance lighting, ground lighting -#define dli $distantlighting -#define dred $dred -#define dgreen $dgreen -#define dblue $dblue - -#ifdef VULKAN -layout(set = 1, binding = 12) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[33]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[33]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15; -TEXTURE_LAYOUT(17, 1, 11) uniform sampler2D textureUnitPS17; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 4) out vec4 passPixelColor4; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex7 = 0.0; - -R0i = floatBitsToInt(passParameterSem0); // affects lighting -R1i = floatBitsToInt(passParameterSem2); // affects shadows, though strange -R2i = floatBitsToInt(passParameterSem6); // affects shadow blur - -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R12i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R5i.xzw = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xzw); -R11i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R9i.xy = floatBitsToInt(texture(textureUnitPS15, intBitsToFloat(R0i.xy)).xy); -R22i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R2i.zw)).xyz); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R12i.x) * 2.0 + -(1.0))); -R127i.y = floatBitsToInt((intBitsToFloat(R12i.y) * 2.0 + -(1.0))); -R127i.z = floatBitsToInt((intBitsToFloat(R12i.z) * 2.0 + -(1.0))); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R6i.w; -R14i.w = 0x40400000; -PS0i = R14i.w; -// 1 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R124i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R125i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PV1i.z = R125i.z; -R3i.w = 0; -R8i.w = 0x3f800000; -PS1i = R8i.w; -// 2 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[2].x))); -R0i.y = floatBitsToInt((-(intBitsToFloat(R12i.w)) * 0.5 + 1.0)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[3].x))); -R16i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * intBitsToFloat(0x3ba3d70a)); -R15i.y = 0; -PS0i = R15i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(PV0i.z))); -PS1i = R122i.x; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(uf_remappedPS[4].x))); -R126i.z = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(0x437f0000)); -R17i.w = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(0x40400000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R8i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R5i.y; -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -R18i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[3].w) + intBitsToFloat(PV0i.x)); -PS1i = R18i.z; -// 6 -R6i.x = PS1i; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R0i.z = PV1i.x; -R0i.z = floatBitsToInt(intBitsToFloat(R0i.z) * 2.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -R2i.z = PV1i.y; -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -PS0i = R2i.z; -// 7 -backupReg0i = R126i.z; -R4i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].w) + intBitsToFloat(PV0i.y)); -PV1i.x = R4i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(PV0i.w))); -R3i.z = R8i.z; -R3i.z = floatBitsToInt(intBitsToFloat(R3i.z) * 2.0); -R0i.w = floatBitsToInt((intBitsToFloat(R6i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R0i.w = clampFI32(R0i.w); -R126i.z = int(intBitsToFloat(backupReg0i)); -PS1i = R126i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = tempi.x; -R15i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3a83126f)); -PS0i = R15i.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * 0.5 + 0.5)); -PS1i = R122i.x; -// 10 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(uf_remappedPS[7].x)) + -(intBitsToFloat(uf_remappedPS[7].y)))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0x40200000)); -R7i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(backupReg0i)); -R125i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -R127i.y = R126i.z & int(1); -PS0i = R127i.y; -// 11 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),0.0))); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -R2i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R2i.y; -// 12 -R13i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(uf_remappedPS[9].z)) + -(intBitsToFloat(uf_remappedPS[9].x)))); -R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(uf_remappedPS[9].z)) + -(intBitsToFloat(uf_remappedPS[9].y)))); -R15i.z = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3a83126f)); -R15i.w = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x3daaaaab)); -tempResultf = log2(intBitsToFloat(PS1i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R0i.x = floatBitsToInt(tempResultf); -PS0i = R0i.x; -// 13 -redcCUBE(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R125i.w),intBitsToFloat(R125i.x),intBitsToFloat(R125i.y)),vec4(intBitsToFloat(R125i.y),intBitsToFloat(R125i.x),intBitsToFloat(R125i.w),intBitsToFloat(R125i.w)),cubeMapSTM,cubeMapFaceId); -R126i.x = floatBitsToInt(cubeMapSTM.x); -R126i.y = floatBitsToInt(cubeMapSTM.y); -R126i.z = floatBitsToInt(cubeMapSTM.z); -R126i.w = cubeMapFaceId; -PV1i.x = R126i.x; -PV1i.y = R126i.y; -PV1i.z = R126i.z; -PV1i.w = R126i.w; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].y), intBitsToFloat(PS0i))); -PS1i = R127i.w; -// 14 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(uf_remappedPS[9].w)); -R127i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[10].w)) + 1.0); -R14i.z = PV1i.w; -R2i.w = ((backupReg0i == 0)?(0):(0x3f800000)); -PV0i.w = R2i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 15 -R123i.x = floatBitsToInt((intBitsToFloat(R125i.y) * 2.0 + -(1.0))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f4ccccd)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.w))); -// 16 -R14i.x = PV1i.w; -R14i.y = PV1i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[10].w))/2.0); -PV0i.w = R123i.w; -R19i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PS0i = R19i.y; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R18i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PS1i = R18i.y; -// 18 -R2i.x = uf_remappedPS[11].y; -R3i.y = uf_remappedPS[12].y; -R16i.z = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(0x3fa66666)); -R127i.w = floatBitsToInt(intBitsToFloat(R11i.w) * intBitsToFloat(0x437f0000)); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(uf_remappedPS[13].x)) + -(intBitsToFloat(uf_remappedPS[13].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R6i.y = 0; -R4i.z = uf_remappedPS[14].y; -R7i.w = 0; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 20 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R4i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R9i.w = int(intBitsToFloat(R127i.w)); -PS0i = R9i.w; -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].x), intBitsToFloat(uf_remappedPS[16].w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].y), intBitsToFloat(uf_remappedPS[16].w))); -PV0i.y = R125i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.y)),intBitsToFloat(R4i.y)) + 1.0)); -PV0i.z = R123i.z; -R124i.w = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(uf_remappedPS[15].x)); -R127i.y = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(uf_remappedPS[15].y)); -PS0i = R127i.y; -// 1 -R124i.x = PV0i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedPS[15].z)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z), intBitsToFloat(uf_remappedPS[16].w))); -PV1i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.w = R123i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.z)); -R124i.y = floatBitsToInt(tempResultf); -PS1i = R124i.y; -// 2 -R19i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(uf_remappedPS[17].y)); -PV0i.y = PV1i.z; -R126i.z = R9i.w & 0x000000fc; -R10i.w = R1i.x; -R10i.w = floatBitsToInt(intBitsToFloat(R10i.w) / 2.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.w)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R3i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R124i.y))); -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R6i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -PS0i = R125i.z; -// 5 -backupReg0i = R0i.z; -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R10i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R3i.x))); -PS1i = R10i.x; -// 6 -R7i.x = floatBitsToInt(min(intBitsToFloat(R5i.x), intBitsToFloat(R5i.w))); -PV0i.x = R7i.x; -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R2i.z)) + intBitsToFloat(R4i.y))); -R13i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R3i.z)) + intBitsToFloat(R6i.z))); -PV0i.w = floatBitsToInt(max(-(intBitsToFloat(R127i.w)), 0.0)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(0x3c23d70a))); -R127i.w = clampFI32(R127i.w); -PS0i = R127i.w; -// 7 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(min(intBitsToFloat(PV0i.w), 1.0)); -R0i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.z))); -R2i.w = floatBitsToInt(intBitsToFloat(R5i.x) + -(intBitsToFloat(PV0i.x))); -tempResultf = log2(intBitsToFloat(R4i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R0i.x; -backupReg1i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].x), intBitsToFloat(backupReg0i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(R125i.z))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x), intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); -PS0i = floatBitsToInt(float(backupReg1i)); -// 9 -PV1i.x = floatBitsToInt(max(-(intBitsToFloat(PV0i.y)), intBitsToFloat(0xbf7d70a4))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) / 2.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R124i.x)) + 1.0); -R19i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3b820821)); -R127i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R126i.w = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = R126i.w; -// 10 -backupReg0i = R126i.z; -R127i.x = R12i.w; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.z = R126i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(uf_remappedPS[19].x)) + intBitsToFloat(uf_remappedPS[20].w))); -R125i.w = clampFI32(R125i.w); -R5i.w = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R5i.w; -// 11 -R20i.x = floatBitsToInt((intBitsToFloat(R6i.w) * intBitsToFloat(0x3c23d70a) + -(0.5))); -R20i.x = clampFI32(R20i.x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.z = R123i.z; -R3i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x40200001)); -R3i.w = clampFI32(R3i.w); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].z),-(intBitsToFloat(R126i.w))) + intBitsToFloat(uf_remappedPS[10].z))); -PS1i = R125i.z; -// 12 -R21i.x = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R9i.y) + 1.0)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(0xbe593484))); -PV0i.y = R123i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(uf_remappedPS[21].w))); -R4i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].x) + -(1.0)); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.y))); -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R2i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].y) + -(1.0)); -R2i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].z) + -(1.0)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R125i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R5i.z = floatBitsToInt(tempResultf); -PS1i = R5i.z; -// 14 -R18i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + 1.0)); -R7i.y = floatBitsToInt((-(intBitsToFloat(R19i.z)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -R0i.z = floatBitsToInt((-(intBitsToFloat(R127i.x)) * intBitsToFloat(0x40400000) + 4.0)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(R124i.y)) + intBitsToFloat(R124i.y))); -PV0i.w = R123i.w; -R8i.y = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x3dcccccd)); -PS0i = R8i.y; -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R127i.y),intBitsToFloat(R126i.y),-0.0),vec4(intBitsToFloat(R124i.w),intBitsToFloat(R127i.y),intBitsToFloat(R126i.y),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.w))); -PS1i = R10i.z; -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R6i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -R9i.z = floatBitsToInt((intBitsToFloat(R6i.w) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 18 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[16].w))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(uf_remappedPS[16].w))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[16].w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z), intBitsToFloat(PS1i))); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R21i.x))); -PS0i = R6i.w; -// 19 -R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.z)),vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R125i.y)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R7i.w))))); -PV1i.x = R0i.x; -PV1i.y = R0i.x; -PV1i.z = R0i.x; -PV1i.w = R0i.x; -R4i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -PS1i = R4i.z; -// 20 -backupReg0i = R0i.y; -R5i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R125i.y)),-(intBitsToFloat(R127i.z)),-0.0),vec4(-(intBitsToFloat(R3i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R6i.z)),0.0))); -R5i.x = clampFI32(R5i.x); -PV0i.x = R5i.x; -PV0i.y = R5i.x; -PV0i.z = R5i.x; -PV0i.w = R5i.x; -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(backupReg0i)); -R2i.x = clampFI32(R2i.x); -PS0i = R2i.x; -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R6i.x),intBitsToFloat(R7i.z),intBitsToFloat(R8i.w)),vec4(intBitsToFloat(uf_remappedPS[22].x),intBitsToFloat(uf_remappedPS[22].y),intBitsToFloat(uf_remappedPS[22].z),intBitsToFloat(uf_remappedPS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -PS0i = R125i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R6i.x),intBitsToFloat(R7i.z),intBitsToFloat(R8i.w)),vec4(intBitsToFloat(uf_remappedPS[23].x),intBitsToFloat(uf_remappedPS[23].y),intBitsToFloat(uf_remappedPS[23].z),intBitsToFloat(uf_remappedPS[23].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R6i.x),intBitsToFloat(R7i.z),intBitsToFloat(R8i.w)),vec4(intBitsToFloat(uf_remappedPS[24].x),intBitsToFloat(uf_remappedPS[24].y),intBitsToFloat(uf_remappedPS[24].z),intBitsToFloat(uf_remappedPS[24].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R16i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R16i.x; -// 3 -backupReg0i = R2i.w; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y), intBitsToFloat(R5i.z))); -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[18].w)),intBitsToFloat(R4i.z)) + 1.0)); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.x)) + intBitsToFloat(R7i.x))); -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R3i.z)) + 1.0)); -PS1i = R2i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.z)),vec4(-(intBitsToFloat(R3i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R6i.z)),-(intBitsToFloat(R6i.y))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.w)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PS0i = R122i.x; -// 5 -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R6i.z = R0i.x; -R6i.z = clampFI32(R6i.z); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[25].w))); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.z)) + 1.0)); -PS1i = R8i.z; -// 6 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.y)) + -(intBitsToFloat(PV1i.y)))); -PV0i.x = R127i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R3i.z)) + 1.0)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(R19i.z)) + intBitsToFloat(R7i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R19i.z)) + intBitsToFloat(R7i.y))); -PS0i = R125i.w; -// 7 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R19i.z)) + intBitsToFloat(R7i.y))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R21i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R0i.z)); -// 8 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.y)),intBitsToFloat(R9i.z)) + intBitsToFloat(R9i.z))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -PS0i = R127i.x; -// 9 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R126i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R125i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R127i.z))) + intBitsToFloat(R125i.z))); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt((intBitsToFloat(R3i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 10 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PS1i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.y)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -R10i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[26].w))); -R0i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.y)); -PS0i = R0i.z; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R125i.z))); -PV1i.x = R123i.x; -R8i.y = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R124i.x)); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R125i.w))); -PV1i.w = R123i.w; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R126i.x))); -PS1i = R127i.z; -// 12 -backupReg0i = R9i.x; -R9i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 0.25); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -R9i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x)); -PV0i.w = backupReg0i; -PV0i.w = clampFI32(PV0i.w); -R5i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.w)); -PS0i = R5i.x; -// 13 -backupReg0i = R11i.y; -backupReg1i = R11i.z; -R0i.x = floatBitsToInt((intBitsToFloat(R11i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R0i.x = clampFI32(R0i.x); -R11i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R11i.y = clampFI32(R11i.y); -R11i.z = floatBitsToInt((intBitsToFloat(backupReg1i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R11i.z = clampFI32(R11i.z); -R11i.w = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(R127i.z)); -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R124i.w))); -PS1i = R11i.x; -// 14 -PV0i.x = R9i.w & int(1); -R24i.y = 0; -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),-(intBitsToFloat(R5i.y))) + intBitsToFloat(R6i.w))); -R25i.w = 0x3f800000; -R4i.w = 0x3f800000; -PS0i = R4i.w; -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R12i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R12i.w = tempi.x; -R6i.w = floatBitsToInt(float(PV0i.x)); -PS1i = R6i.w; -// 16 -R23i.w = 0x3f800000; -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R13i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R13i.z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R13i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg1i = R127i.z; -redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].w), intBitsToFloat(uf_remappedPS[16].w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PS1i))); -R17i.z = PV1i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -backupReg0i = R9i.x; -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -// 6 -R17i.x = PV1i.w; -R17i.y = PV1i.z; -R13i.z = floatBitsToInt(textureLod(textureUnitPS12, intBitsToFloat(R13i.xy),0.0).x); -R14i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R14i.xy),R14i.z),cubeMapArrayIndex7),intBitsToFloat(R14i.w)).xyz); -R15i.x = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R15i.xz),0.0).x); -R16i.y = floatBitsToInt(textureLod(textureUnitPS5, intBitsToFloat(R16i.xy),intBitsToFloat(R16i.w)).x); -R7i.xyz = floatBitsToInt(texture(textureUnitPS17, intBitsToFloat(R15i.wy)).xyz); -R17i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R17i.xy),R17i.z),cubeMapArrayIndex7),intBitsToFloat(R17i.w)).xyz); -R12i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R18i.xy)).xyz); -// export -passPixelColor4 = vec4(intBitsToFloat(R12i.w), intBitsToFloat(R12i.w), intBitsToFloat(R12i.w), intBitsToFloat(R12i.w)); -// 0 -PV0i.x = floatBitsToInt(max(intBitsToFloat(R14i.y), intBitsToFloat(R14i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[9].w)),intBitsToFloat(R13i.z)) + intBitsToFloat(R16i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(min(intBitsToFloat(R14i.y), intBitsToFloat(R14i.z))); -R123i.w = floatBitsToInt((intBitsToFloat(R15i.x) * 2.0 + -(1.0))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(intBitsToFloat(R16i.y) + intBitsToFloat(uf_remappedPS[27].z)); -PS0i = clampFI32(PS0i); -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * 0.25); -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x41c80000) + intBitsToFloat(R18i.z))); -R127i.z = floatBitsToInt(min(intBitsToFloat(R14i.x), intBitsToFloat(PV0i.z))); -R125i.w = floatBitsToInt(max(intBitsToFloat(R14i.x), intBitsToFloat(PV0i.x))); -PV1i.w = R125i.w; -R24i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R2i.w))); -PS1i = R24i.x; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x2edbe6ff)); -R126i.y = floatBitsToInt(intBitsToFloat(R14i.y) + -(intBitsToFloat(PV1i.w))); -R125i.z = floatBitsToInt(intBitsToFloat(R14i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R124i.w = floatBitsToInt(intBitsToFloat(R14i.z) + -(intBitsToFloat(PV1i.w))); -PS0i = R124i.w; -// 3 -R14i.x = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(uf_remappedPS[28].x)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R24i.x))); -PV1i.y = R125i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R9i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 4 -backupReg0i = R127i.x; -backupReg1i = R0i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R127i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R10i.z))); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(backupReg1i))); -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R8i.y))); -PS0i = R15i.x; -// 5 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.z), intBitsToFloat(R11i.w))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0x2edbe6ff)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R11i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.y), intBitsToFloat(backupReg0i))); -R17i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(R11i.x))); -PS1i = R17i.w; -// 6 -backupReg0i = R11i.x; -backupReg0i = R11i.x; -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(backupReg0i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R19i.x)) + intBitsToFloat(R127i.y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.y), intBitsToFloat(backupReg0i))); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -PS0i = R127i.w; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R10i.w)) + intBitsToFloat(R10i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.5 + 0.5)); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0xbdcccccd) + intBitsToFloat(0x3dcccccd))); -PV1i.z = R123i.z; -R24i.w = PV0i.y; -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(PV1i.y)); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.z)); -PV0i.y = clampFI32(PV0i.y); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R19i.y))) + intBitsToFloat(PV1i.x))); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R19i.y) + intBitsToFloat(PV0i.y)); -PV1i.x = clampFI32(PV1i.x); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.x))); -// 10 -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 11 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -// 12 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 13 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R127i.w))); -// 15 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.w))); -PV1i.z = R123i.z; -// 16 -backupReg0i = R126i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.z))); -PV0i.x = R127i.x; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.y))); -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PV0i.w = R126i.w; -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(R7i.z) + -(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.y) + -(intBitsToFloat(PV0i.x))); -// 18 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R20i.x)) + intBitsToFloat(R127i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R20i.x)) + intBitsToFloat(R126i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R20i.x)) + intBitsToFloat(R125i.z))); -PV0i.w = R123i.w; -// 19 -R25i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.x))); -R25i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R8i.z))); -R25i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R2i.y))); -// 0 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.x),intBitsToFloat(uf_remappedPS[29].x)) + intBitsToFloat(uf_remappedPS[30].w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[31].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].y),intBitsToFloat(R6i.z)) + intBitsToFloat(R25i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].x),intBitsToFloat(R6i.z)) + intBitsToFloat(R25i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].x), intBitsToFloat(R0i.z))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].y), intBitsToFloat(R2i.w))); -PS1i = R125i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].z),intBitsToFloat(R6i.z)) + intBitsToFloat(R25i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R19i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R21i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R19i.z)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].z), intBitsToFloat(R15i.x))); -PS0i = R126i.y; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R19i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R3i.y))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.x))); -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R3i.y)) + intBitsToFloat(R3i.y))); -PV1i.w = R124i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R11i.y))); -PS1i = R127i.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].x), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].y), intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R11i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].z), intBitsToFloat(PV1i.y))); -PS0i = R126i.z; -// 5 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R9i.x)) + intBitsToFloat(R11i.w))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R9i.x)) + intBitsToFloat(R12i.w))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].x),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R9i.x)) + intBitsToFloat(R5i.x))); -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -PS1i = R125i.x; -// 6 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R123i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R124i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].z),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -PV0i.w = R123i.w; -// 7 -backupReg0i = R126i.y; -backupReg1i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(R125i.x))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.w),intBitsToFloat(R2i.z)) + intBitsToFloat(R125i.z))); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.y)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R127i.x)); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(PS1i))); -R23i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].z),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.w))); -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(PV1i.z))); -PS0i = R4i.x; -// 9 -R23i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].x),intBitsToFloat(R5i.y)) + intBitsToFloat(R126i.y))); -R23i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].y),intBitsToFloat(R5i.y)) + intBitsToFloat(R126i.x))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R4i.z; -R24i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(R124i.w)) + intBitsToFloat(R124i.w))); -PS1i = R24i.z; -// 10 -R3i.xyz = ivec3(R4i.x,R4i.y,PV1i.z); -R3i.w = R4i.w; -// 11 -R1i.xyz = ivec3(R23i.x,R23i.y,R23i.z); -R1i.w = R23i.w; -// 12 -R0i.xyz = ivec3(R24i.x,R24i.y,R24i.z); -R0i.w = R24i.w; -// 13 -R2i.xyz = ivec3(R25i.x,R25i.y,R25i.z); -R2i.w = R25i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z) * dli, intBitsToFloat(R0i.w)); // x affects shadows sharpness, and z affects distant area lighting brightness -passPixelColor1 = vec4(intBitsToFloat(R1i.x) * dred, intBitsToFloat(R1i.y) * dgreen, intBitsToFloat(R1i.z) * dblue, intBitsToFloat(R1i.w)); // x,y,z affects the color red,green,blue of the fog, w does nothing -passPixelColor2 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); // affects ground color rgb -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); // xyz - RGB for body of waters edge surfaces -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/fb2e18ae56397ca7_00fffff249259249_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/fb2e18ae56397ca7_00fffff249259249_ps.txt deleted file mode 100644 index b6df6e8e..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/fb2e18ae56397ca7_00fffff249259249_ps.txt +++ /dev/null @@ -1,988 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader fb2e18ae56397ca7 -- Affects Trees Bushes and Vines -#define gli $greenerylighting -#define gred $gred -#define ggreen $ggreen -#define gblue $gblue - -#ifdef VULKAN -layout(set = 1, binding = 12) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[33]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[33]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15; -TEXTURE_LAYOUT(16, 1, 11) uniform sampler2D textureUnitPS16; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 4) out vec4 passPixelColor4; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R26i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex7 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem6); -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R11i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R10i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xw); -R8i.xy = floatBitsToInt(texture(textureUnitPS15, intBitsToFloat(R0i.xy)).xy); -R23i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R2i.zw)).xyz); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R11i.x) * 2.0 + -(1.0))); -R127i.y = floatBitsToInt((intBitsToFloat(R11i.y) * 2.0 + -(1.0))); -R127i.z = floatBitsToInt((intBitsToFloat(R11i.z) * 2.0 + -(1.0))); -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.w = R7i.w; -R14i.w = 0x40400000; -PS0i = R14i.w; -// 1 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R0i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PV1i.z = R126i.z; -R6i.w = 0x3f800000; -R2i.z = 0; -PS1i = R2i.z; -// 2 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[2].x))); -R3i.y = floatBitsToInt((-(intBitsToFloat(R11i.w)) * 0.5 + 1.0)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[3].x))); -R15i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * intBitsToFloat(0x3ba3d70a)); -R16i.y = 0; -PS0i = R16i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(PV0i.z))); -PS1i = R122i.x; -// 4 -R125i.x = floatBitsToInt(intBitsToFloat(R11i.w) * intBitsToFloat(0x437f0000)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(uf_remappedPS[4].x))); -R0i.z = floatBitsToInt((intBitsToFloat(R7i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R0i.z = clampFI32(R0i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(PS1i))); -PV0i.w = R123i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R5i.x; -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R6i.y; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -R13i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[3].w) + intBitsToFloat(PV0i.w)); -PS1i = R13i.z; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(R126i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R8i.z = PS1i; -R0i.w = PV1i.x; -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -R3i.x = PV1i.y; -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) * 2.0); -PS0i = R3i.x; -// 7 -R6i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].w) + intBitsToFloat(PV0i.y)); -PV1i.x = R6i.x; -R0i.y = R7i.z; -R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) * 2.0); -R125i.z = floatBitsToInt(intBitsToFloat(R10i.w) * intBitsToFloat(0x437f0000)); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(PV0i.x))); -R17i.w = floatBitsToInt(intBitsToFloat(R3i.y) * intBitsToFloat(0x40400000)); -PS1i = R17i.w; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R12i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3a83126f)); -PS0i = R12i.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -PS1i = R124i.y; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(uf_remappedPS[7].x)) + -(intBitsToFloat(uf_remappedPS[7].y)))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((-(intBitsToFloat(R127i.y)) * 0.5 + 0.5)); -R9i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(R127i.w)); -R124i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -R127i.z = int(intBitsToFloat(R125i.x)); -PS0i = R127i.z; -// 11 -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R3i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R3i.z; -// 12 -R13i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(uf_remappedPS[9].z)) + -(intBitsToFloat(uf_remappedPS[9].x)))); -R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(uf_remappedPS[9].z)) + -(intBitsToFloat(uf_remappedPS[9].y)))); -R12i.z = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(0x3a83126f)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(0x40200000)); -tempResultf = log2(intBitsToFloat(PS1i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R4i.y = floatBitsToInt(tempResultf); -PS0i = R4i.y; -// 13 -backupReg0i = R124i.x; -backupReg0i = R124i.x; -backupReg1i = R124i.y; -backupReg2i = R124i.w; -redcCUBE(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R124i.w),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(R124i.y),intBitsToFloat(backupReg0i),intBitsToFloat(R124i.w),intBitsToFloat(backupReg2i)),cubeMapSTM,cubeMapFaceId); -R124i.x = floatBitsToInt(cubeMapSTM.x); -R124i.y = floatBitsToInt(cubeMapSTM.y); -R124i.z = floatBitsToInt(cubeMapSTM.z); -R124i.w = cubeMapFaceId; -PV1i.x = R124i.x; -PV1i.y = R124i.y; -PV1i.z = R124i.z; -PV1i.w = R124i.w; -R16i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3daaaaab)); -PS1i = R16i.x; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].y), intBitsToFloat(R4i.y))); -R126i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[10].w)) + 1.0); -R14i.z = PV1i.w; -PV0i.w = R127i.z & int(1); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 15 -backupReg0i = R124i.x; -R124i.x = ((PV0i.w == 0)?(0):(0x3f800000)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(uf_remappedPS[9].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 16 -R14i.x = PV1i.y; -R14i.y = PV1i.w; -R124i.z = floatBitsToInt((intBitsToFloat(R127i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[10].w))/2.0); -PV0i.w = R123i.w; -R4i.x = uf_remappedPS[11].y; -PS0i = R4i.x; -// 17 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R18i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PS1i = R18i.y; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -R5i.y = uf_remappedPS[12].y; -R5i.z = uf_remappedPS[13].y; -R3i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y))); -PV0i.w = R3i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(uf_remappedPS[14].x)) + -(intBitsToFloat(uf_remappedPS[14].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R19i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0x3fa66666)); -R4i.z = floatBitsToInt(intBitsToFloat(R2i.y) + -(intBitsToFloat(PV0i.w))); -R5i.w = 0; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 20 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); -R2i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R9i.y = int(intBitsToFloat(R125i.z)); -PS0i = R9i.y; -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].x), intBitsToFloat(uf_remappedPS[16].w))); -PV0i.x = R127i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].y), intBitsToFloat(uf_remappedPS[16].w))); -PV0i.y = R124i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R2i.y)) + 1.0)); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(uf_remappedPS[15].x)); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.y) + intBitsToFloat(uf_remappedPS[15].y)); -PS0i = R126i.y; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.x = R123i.x; -R125i.y = PV0i.x; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z), intBitsToFloat(uf_remappedPS[16].w))); -PV1i.z = R127i.z; -R4i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedPS[15].z)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(tempResultf); -PS1i = R127i.y; -// 2 -backupReg0i = R0i.z; -R126i.x = 0; -PV0i.y = PV1i.z; -R0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(uf_remappedPS[17].y)); -R124i.w = R9i.y & 0x00000002; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.y))); -// 4 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.y),intBitsToFloat(R6i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -PS0i = R126i.w; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.w; -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(backupReg1i)) + intBitsToFloat(backupReg0i))); -PS1i = R2i.x; -// 6 -backupReg0i = R124i.w; -PV0i.x = floatBitsToInt(max(-(intBitsToFloat(R127i.w)), 0.0)); -R12i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(R2i.y))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R0i.y)) + intBitsToFloat(R6i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(R126i.w))); -R124i.w = floatBitsToInt(float(backupReg0i)); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0); -PS0i = R124i.w; -// 7 -PV1i.x = R9i.y & 0x000000fc; -R20i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R3i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.z)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R3i.w = floatBitsToInt(min(intBitsToFloat(PV0i.x), 1.0)); -tempResultf = log2(intBitsToFloat(R2i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS1i = R126i.z; -// 8 -PV0i.x = floatBitsToInt(max(-(intBitsToFloat(PV1i.z)), intBitsToFloat(0xbf7d70a4))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -R21i.y = R1i.x; -R21i.y = floatBitsToInt(intBitsToFloat(R21i.y) / 2.0); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].x), intBitsToFloat(R4i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(0x3c23d70a))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PV1i.x)); -// 9 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x), intBitsToFloat(R126i.z))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.z = R126i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + 1.0); -R7i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3b820821)); -PS1i = R7i.x; -// 10 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(uf_remappedPS[19].x)) + intBitsToFloat(uf_remappedPS[20].w))); -R125i.x = clampFI32(R125i.x); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R127i.w = floatBitsToInt(exp2(intBitsToFloat(R125i.z))); -PS0i = R127i.w; -// 11 -R3i.x = R11i.w; -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(0xbe593484))); -PV1i.y = R123i.y; -R15i.z = floatBitsToInt((intBitsToFloat(R7i.w) * intBitsToFloat(0x3c23d70a) + -(0.5))); -R15i.z = clampFI32(R15i.z); -R8i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x40200001)); -R8i.w = clampFI32(R8i.w); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.y))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R22i.y = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R8i.y) + 1.0)); -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R126i.w)) + intBitsToFloat(R126i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R2i.w = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -PS0i = R2i.w; -// 13 -R18i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.w))) + 1.0)); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].z),-(intBitsToFloat(R127i.w))) + intBitsToFloat(uf_remappedPS[10].z))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_remappedPS[21].w))); -R0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].z) + -(1.0)); -tempResultf = log2(intBitsToFloat(R125i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R3i.y = floatBitsToInt(tempResultf); -PS1i = R3i.y; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R4i.w),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R4i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].x) + -(1.0)); -PS0i = R0i.y; -// 15 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.y),intBitsToFloat(R6i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 16 -R0i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[21].y) + -(1.0)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 17 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[16].w))); -PV1i.x = R125i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[16].w))); -PV1i.y = R126i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[16].w))); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z), intBitsToFloat(PS0i))); -R4i.w = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x3e19999a)); -PS1i = R4i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R127i.z)),-0.0),vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.z = tempi.x; -R5i.z = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -PS0i = R5i.z; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.z)),vec4(-(intBitsToFloat(R125i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R126i.z)),-(intBitsToFloat(R5i.w))))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R5i.w; -// 20 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.z)),vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R126i.x))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.w = tempi.x; -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -PS0i = R6i.y; -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.z),intBitsToFloat(R9i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_remappedPS[22].x),intBitsToFloat(uf_remappedPS[22].y),intBitsToFloat(uf_remappedPS[22].z),intBitsToFloat(uf_remappedPS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R6i.y)) + -(intBitsToFloat(R6i.y)))); -PS0i = R127i.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.z),intBitsToFloat(R9i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_remappedPS[23].x),intBitsToFloat(uf_remappedPS[23].y),intBitsToFloat(uf_remappedPS[23].z),intBitsToFloat(uf_remappedPS[23].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.z),intBitsToFloat(R9i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_remappedPS[24].x),intBitsToFloat(uf_remappedPS[24].y),intBitsToFloat(uf_remappedPS[24].z),intBitsToFloat(uf_remappedPS[24].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R15i.x; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[18].w)),intBitsToFloat(R5i.z)) + 1.0)); -PV1i.x = R123i.x; -R15i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(R5i.w)) + intBitsToFloat(R5i.w))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.x) + 1.0); -R124i.y = floatBitsToInt((-(intBitsToFloat(R7i.x)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PS1i = R124i.y; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -R124i.w = floatBitsToInt((-(intBitsToFloat(R3i.x)) * intBitsToFloat(0x40400000) + 4.0)); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); -PS0i = R126i.z; -// 5 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.x))); -R127i.z = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x3dcccccd)); -R125i.w = floatBitsToInt((intBitsToFloat(R7i.w) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[25].w))); -PS1i = R127i.x; -// 6 -backupReg0i = R0i.x; -backupReg1i = R3i.y; -backupReg2i = R124i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R4i.z)) + 1.0)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.z)) + 1.0)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y), intBitsToFloat(backupReg1i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R22i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(backupReg2i)); -// 7 -backupReg0i = R126i.y; -backupReg1i = R4i.z; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R124i.y))); -PV1i.x = R124i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i)) + 1.0)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R125i.w)) + intBitsToFloat(R125i.w))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -R125i.x = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -PS1i = R125i.x; -// 8 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R22i.y))); -PV0i.x = R3i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R126i.x))) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -R125i.w = floatBitsToInt((intBitsToFloat(R8i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV1i.w))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.z)); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(uf_remappedPS[26].w))); -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -R0i.w = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV0i.y)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(R126i.y))) + intBitsToFloat(R124i.x))); -PS1i = R122i.x; -// 10 -backupReg0i = R8i.y; -backupReg1i = R8i.x; -R8i.x = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PS1i)); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -PV0i.z = backupReg1i; -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R125i.w)) + 1.0); -R8i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * 0.25); -PS0i = R8i.w; -// 11 -backupReg0i = R10i.x; -backupReg1i = R10i.z; -backupReg2i = R9i.y; -R10i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R10i.x = clampFI32(R10i.x); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(R125i.w))); -R10i.z = floatBitsToInt((intBitsToFloat(backupReg1i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R10i.z = clampFI32(R10i.z); -R10i.w = floatBitsToInt((intBitsToFloat(R10i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R10i.w = clampFI32(R10i.w); -PS1i = backupReg2i & int(1); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(R11i.z) * intBitsToFloat(0x3eaaaaab)); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),-(intBitsToFloat(R3i.x))) + intBitsToFloat(R124i.w))); -R26i.w = 0x3f800000; -R6i.z = floatBitsToInt(float(PS1i)); -PS0i = R6i.z; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.w = tempi.x; -R25i.y = 0; -PS1i = R25i.y; -// 14 -R5i.w = 0x3f800000; -R24i.w = 0x3f800000; -PS0i = R24i.w; -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R12i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R12i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = R126i.x; -PV1i.y = R126i.x; -PV1i.z = R126i.x; -PV1i.w = R126i.x; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R12i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -// 3 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg1i = R126i.z; -backupReg1i = R126i.z; -redcCUBE(vec4(intBitsToFloat(R126i.z),intBitsToFloat(R126i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R126i.x = floatBitsToInt(cubeMapSTM.x); -R126i.y = floatBitsToInt(cubeMapSTM.y); -R126i.z = floatBitsToInt(cubeMapSTM.z); -R126i.w = cubeMapFaceId; -PV1i.x = R126i.x; -PV1i.y = R126i.y; -PV1i.z = R126i.z; -PV1i.w = R126i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].w), intBitsToFloat(uf_remappedPS[16].w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PS1i))); -R17i.z = PV1i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -// 6 -R17i.x = PV1i.w; -R17i.y = PV1i.z; -R2i.z = floatBitsToInt(textureLod(textureUnitPS12, intBitsToFloat(R13i.xy),0.0).x); -R14i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R14i.xy),R14i.z),cubeMapArrayIndex7),intBitsToFloat(R14i.w)).xyz); -R15i.y = floatBitsToInt(textureLod(textureUnitPS5, intBitsToFloat(R15i.xy),intBitsToFloat(R15i.w)).x); -R12i.x = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R12i.xz),0.0).x); -R16i.xyz = floatBitsToInt(texture(textureUnitPS16, intBitsToFloat(R16i.xy)).xyz); -R17i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R17i.xy),R17i.z),cubeMapArrayIndex7),intBitsToFloat(R17i.w)).xyz); -R18i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R18i.xy)).xyz); -// export -passPixelColor4 = vec4(intBitsToFloat(R11i.w), intBitsToFloat(R11i.w), intBitsToFloat(R11i.w), intBitsToFloat(R11i.w)); -// 0 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R14i.y), intBitsToFloat(R14i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(R15i.y) + intBitsToFloat(uf_remappedPS[27].z)); -PV0i.y = clampFI32(PV0i.y); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R14i.y), intBitsToFloat(R14i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[9].w)),intBitsToFloat(R2i.z)) + intBitsToFloat(R19i.y))); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((intBitsToFloat(R12i.x) * 2.0 + -(1.0))); -PS0i = R122i.x; -// 1 -R126i.x = floatBitsToInt(min(intBitsToFloat(R14i.x), intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(max(intBitsToFloat(R14i.x), intBitsToFloat(PV0i.z))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R126i.z = clampFI32(R126i.z); -PV1i.z = R126i.z; -R126i.w = floatBitsToInt((intBitsToFloat(PS0i) * intBitsToFloat(0x41c80000) + intBitsToFloat(R13i.z))); -R25i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R20i.y))); -PS1i = R25i.x; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R124i.y = floatBitsToInt(intBitsToFloat(R14i.x) + -(intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt(intBitsToFloat(R14i.y) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0x2edbe6ff)); -R124i.x = floatBitsToInt(intBitsToFloat(R14i.z) + -(intBitsToFloat(PV1i.y))); -PS0i = R124i.x; -// 3 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R25i.x))); -PV1i.x = R125i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R14i.z = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(uf_remappedPS[28].x)); -R11i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.x), intBitsToFloat(R8i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 4 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R0i.w))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.z = R126i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R126i.w; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.y), intBitsToFloat(R8i.x))); -PS0i = R0i.w; -// 5 -backupReg0i = R17i.z; -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(R125i.x))); -R17i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R8i.x))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0x2edbe6ff)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.x), intBitsToFloat(R9i.y))); -PS1i = R4i.w; -// 6 -backupReg0i = R18i.z; -R18i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.y), intBitsToFloat(R9i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R0i.z)) + intBitsToFloat(R126i.w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R18i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R9i.y))); -R125i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R125i.x; -// 7 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0xbdcccccd) + intBitsToFloat(0x3dcccccd))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.5 + 0.5)); -PV1i.y = R123i.y; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R21i.y)) + intBitsToFloat(R21i.y))); -R25i.w = PV0i.y; -PS1i = R25i.w; -// 8 -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = clampFI32(PV0i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(R9i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = clampFI32(PV0i.w); -// 9 -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -tempResultf = log2(intBitsToFloat(PV0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -// 11 -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 12 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -// 13 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R125i.x))); -// 14 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(R127i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R127i.y))); -PV0i.w = R123i.w; -// 15 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.z))); -PV1i.x = R124i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.w))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -PV1i.z = R127i.z; -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(R16i.y) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R16i.z) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R16i.x) + -(intBitsToFloat(PV1i.x))); -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R15i.z)) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R15i.z)) + intBitsToFloat(R124i.x))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R15i.z)) + intBitsToFloat(R127i.z))); -PV1i.w = R123i.w; -// 18 -R26i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R4i.z))); -R26i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.y))); -R26i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R0i.x))); -// 0 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.z),intBitsToFloat(uf_remappedPS[29].x)) + intBitsToFloat(uf_remappedPS[30].w))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[31].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].y),intBitsToFloat(R0i.z)) + intBitsToFloat(R26i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].x),intBitsToFloat(R0i.z)) + intBitsToFloat(R26i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].x), intBitsToFloat(R14i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].y), intBitsToFloat(R14i.y))); -PS1i = R127i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].z),intBitsToFloat(R0i.z)) + intBitsToFloat(R26i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R22i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.x)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[32].z), intBitsToFloat(R14i.y))); -PS0i = R127i.y; -// 3 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R10i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R3i.z))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.z))); -PV1i.w = R125i.w; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R10i.w))); -PS1i = R125i.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].x), intBitsToFloat(PV1i.z))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV1i.w))); -PV0i.y = R124i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].y), intBitsToFloat(PV1i.z))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R10i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[31].z), intBitsToFloat(PV1i.z))); -PS0i = R126i.y; -// 5 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R2i.x)) + intBitsToFloat(R0i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R2i.x)) + intBitsToFloat(R11i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].x),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.x)) + intBitsToFloat(R17i.z))); -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -PS1i = R126i.x; -// 6 -R123i.x = floatBitsToInt((intBitsToFloat(R124i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R124i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[26].z),intBitsToFloat(R124i.y)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R10i.y)) + intBitsToFloat(PV1i.z))); -PS0i = R127i.z; -// 7 -backupReg0i = R127i.x; -backupReg1i = R126i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R18i.x),intBitsToFloat(R10i.y)) + intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.z)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R18i.z),intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.x)); -// 8 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.x),intBitsToFloat(R6i.z)) + intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),intBitsToFloat(R6i.z)) + intBitsToFloat(PV1i.y))); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PS1i))); -R24i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].x),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.z))); -PS0i = R24i.x; -// 9 -R24i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].y),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.x))); -R24i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[25].z),intBitsToFloat(R3i.x)) + intBitsToFloat(R126i.w))); -R25i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.y)),intBitsToFloat(R125i.w)) + intBitsToFloat(R125i.w))); -PS1i = R25i.z; -// 10 -R3i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R3i.w = R5i.w; -// 11 -R1i.xyz = ivec3(R24i.x,R24i.y,R24i.z); -R1i.w = R24i.w; -// 12 -R0i.xyz = ivec3(R25i.x,R25i.y,R25i.z); -R0i.w = R25i.w; -// 13 -R2i.xyz = ivec3(R26i.x,R26i.y,R26i.z); -R2i.w = R26i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z) * gli, intBitsToFloat(R0i.w)); // x affects shadows, z affects lighting of trees,bushes,flowers,vines -passPixelColor1 = vec4(intBitsToFloat(R1i.x) * gred, intBitsToFloat(R1i.y) * ggreen, intBitsToFloat(R1i.z) * gblue, intBitsToFloat(R1i.w)); // rgb fog for distant trees -passPixelColor2 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); // xyz - RGB Bloom/Glowness - to tress and bushes and vines multiply by 20 to see -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); // xyz - RGB Bloom for on water objects like korok rings -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/rules.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/rules.txt deleted file mode 100644 index af769f51..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_DistantFog/rules.txt +++ /dev/null @@ -1,338 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Distant Area Fog Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Distant Fog - Main" -description = Can Remove Distant Fog Haze from the world. Change its RGB color. Light up the Distance. -version = 4 - - -[Preset] -name = Fog 0% Light x1 -$distantlighting = 1 -$dred = 0 -$dgreen = 0 -$dblue = 0 - -$greenerylighting = 1 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = Fog 0% Light x2 -$distantlighting = 2 -$dred = 0 -$dgreen = 0 -$dblue = 0 - -$greenerylighting = 2 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = Fog 0% Light x4 -$distantlighting = 4 -$dred = 0 -$dgreen = 0 -$dblue = 0 - -$greenerylighting = 4 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = Fog 0% Light x8 -$distantlighting = 8 -$dred = 0 -$dgreen = 0 -$dblue = 0 - -$greenerylighting = 8 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = ---------------------------------------- -$distantlighting = 1 -$dred = 1 -$dgreen = 1 -$dblue = 1 -$greenerylighting = 1 -$gred = 1 -$ggreen = 1 -$gblue = 1 -$waterfogred = 1 -$waterfoggreen = 1 -$waterfogblue = 1 - -[Preset] -name = Fog 10% Light x1 -$distantlighting = 1 -$dred = 0.1 -$dgreen = 0.1 -$dblue = 0.1 - -$greenerylighting = 1 -$gred = 0.1 -$ggreen = 0.1 -$gblue = 0.1 - -$waterfogred = 0.1 -$waterfoggreen = 0.1 -$waterfogblue = 0.1 - - -[Preset] -name = Fog 10% Light x2 -$distantlighting = 2 -$dred = 0.1 -$dgreen = 0.1 -$dblue = 0.1 - -$greenerylighting = 2 -$gred = 0.1 -$ggreen = 0.1 -$gblue = 0.1 - -$waterfogred = 0.1 -$waterfoggreen = 0.1 -$waterfogblue = 0.1 - - -[Preset] -name = Fog 10% Light x4 -$distantlighting = 4 -$dred = 0.1 -$dgreen = 0.1 -$dblue = 0.1 - -$greenerylighting = 4 -$gred = 0.1 -$ggreen = 0.1 -$gblue = 0.1 - -$waterfogred = 0.1 -$waterfoggreen = 0.1 -$waterfogblue = 0.1 - - -[Preset] -name = Fog 10% Light x8 -$distantlighting = 8 -$dred = 0.1 -$dgreen = 0.1 -$dblue = 0.1 - -$greenerylighting = 8 -$gred = 0.1 -$ggreen = 0.1 -$gblue = 0.1 - -$waterfogred = 0.1 -$waterfoggreen = 0.1 -$waterfogblue = 0.1 - -[Preset] -name = ---------------------------------------- -$distantlighting = 1 -$dred = 1 -$dgreen = 1 -$dblue = 1 -$greenerylighting = 1 -$gred = 1 -$ggreen = 1 -$gblue = 1 -$waterfogred = 1 -$waterfoggreen = 1 -$waterfogblue = 1 - -[Preset] -name = Fog 30% Light x1 -$distantlighting = 1 -$dred = 0.3 -$dgreen = 0.3 -$dblue = 0.3 - -$greenerylighting = 1 -$gred = 0.3 -$ggreen = 0.3 -$gblue = 0.3 - -$waterfogred = 0.3 -$waterfoggreen = 0.3 -$waterfogblue = 0.3 - - -[Preset] -name = Fog 30% Light x2 -$distantlighting = 2 -$dred = 0.3 -$dgreen = 0.3 -$dblue = 0.3 - -$greenerylighting = 2 -$gred = 0.3 -$ggreen = 0.3 -$gblue = 0.3 - -$waterfogred = 0.3 -$waterfoggreen = 0.3 -$waterfogblue = 0.3 - - -[Preset] -name = Fog 30% Light x4 -$distantlighting = 4 -$dred = 0.3 -$dgreen = 0.3 -$dblue = 0.3 - -$greenerylighting = 4 -$gred = 0.3 -$ggreen = 0.3 -$gblue = 0.3 - -$waterfogred = 0.3 -$waterfoggreen = 0.3 -$waterfogblue = 0.3 - - -[Preset] -name = Fog 30% Light x8 -$distantlighting = 8 -$dred = 0.3 -$dgreen = 0.3 -$dblue = 0.3 - -$greenerylighting = 8 -$gred = 0.3 -$ggreen = 0.3 -$gblue = 0.3 - -$waterfogred = 0.3 -$waterfoggreen = 0.3 -$waterfogblue = 0.3 - - -[Preset] -name = ---------------------------------------- -$distantlighting = 1 -$dred = 1 -$dgreen = 1 -$dblue = 1 -$greenerylighting = 1 -$gred = 1 -$ggreen = 1 -$gblue = 1 -$waterfogred = 1 -$waterfoggreen = 1 -$waterfogblue = 1 - -[Preset] -name = Fog Red x4 Light x4 -$distantlighting = 4 -$dred = 4 -$dgreen = 0 -$dblue = 0 - -$greenerylighting = 1 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = Fog Blue x4 Light x4 -$distantlighting = 4 -$dred = 0 -$dgreen = 0 -$dblue = 4 - -$greenerylighting = 4 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -[Preset] -name = ---------------------------------------- -$distantlighting = 1 -$dred = 1 -$dgreen = 1 -$dblue = 1 -$greenerylighting = 1 -$gred = 1 -$ggreen = 1 -$gblue = 1 -$waterfogred = 1 -$waterfoggreen = 1 -$waterfogblue = 1 - -[Preset] -name = Original -$distantlighting = 1 -$dred = 1 -$dgreen = 1 -$dblue = 1 - -$greenerylighting = 1 -$gred = 1 -$ggreen = 1 -$gblue = 1 - -$waterfogred = 1 -$waterfoggreen = 1 -$waterfogblue = 1 - -[Preset] -name = Custom Preset -$distantlighting = 2 -$dred = 0.1 -$dgreen = 0.1 -$dblue = 0.1 - -$greenerylighting = 2 -$gred = 0 -$ggreen = 0 -$gblue = 0 - -$waterfogred = 0 -$waterfoggreen = 0 -$waterfogblue = 0 - -# Information -# by SkalFate -# ---------------------- -# Distant lighting - is for distant area lighting of the land and how far in the distance everything is lit up -# ------ Values are multiplied, so if you want to lower use 0.01-1.0, or if you want to go higher go from 1.0-X.X - -# Greenery lighting - is the same as above but for trees vines, bushes -# ------ Values are multiplied, so if you want to lower use 0.01-1.0, or if you want to go higher go from 1.0-X.X - -# RGB - Red, Green, Blue - is self explanatory for the color of the fog, trees, water. -# ------ Values are multiplied so if you want to lower use 0.01-1.0, or if you want to go higher go from 1.0-X.X \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/29c30aaa023dc7e6_0000000000000709_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/29c30aaa023dc7e6_0000000000000709_ps.txt deleted file mode 100644 index d3488c41..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/29c30aaa023dc7e6_0000000000000709_ps.txt +++ /dev/null @@ -1,210 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 29c30aaa023dc7e6 -- Ganons middle and bottom big swirl -#define aurafog $aurafog -#define aurared $aurared -#define auragreen $auragreen -#define aurablue $aurablue -#define auraopacity $auraopacity - -#ifndef aurafog - #define aurafog 1 -#endif -#ifndef aurared - #define aurared 1 -#endif -#ifndef auragreen - #define auragreen 1 -#endif -#ifndef aurablue - #define aurablue 1 -#endif -#ifndef auraopacity - #define auraopacity 1 -#endif - -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem14; -layout(location = 8) in vec4 passParameterSem15; -layout(location = 9) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; - -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem5; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem14; -R8f = passParameterSem15; -R9f = passParameterSem16; -R3f.xw = (texture(textureUnitPS0, R5f.xy).xw); - -// 0 -R123f.z = (R3f.w * 2.0 + -(1.0)); -PV0f.z = R123f.z; -R123f.w = (R3f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -// 1 -PV1f.y = mul_nonIEEE(R2f.y, PV0f.w); -PV1f.w = mul_nonIEEE(R3f.y, PV0f.z); -// 2 -backupReg0f = R3f.z; -backupReg0f = R3f.z; -R3f.x = R5f.z + PV1f.y; -R3f.y = R5f.w + PV1f.w; -R3f.z = (mul_nonIEEE(backupReg0f,PV1f.y) + R6f.x); -R3f.w = (mul_nonIEEE(backupReg0f,PV1f.w) + R6f.y); -R3f.x = (texture(textureUnitPS1, R3f.xy).w); -R5f.xw = (texture(textureUnitPS2, R3f.zw).xw); // how shiny ganons spirit - -// 0 -R127f.x = mul_nonIEEE(R5f.x, R5f.x); -R123f.z = (mul_nonIEEE(R4f.w,R3f.x) + -(R0f.w)); -PV0f.z = R123f.z; -R127f.w = mul_nonIEEE(R5f.w, R5f.w); -// 1 -PV1f.y = mul_nonIEEE(R1f.w, PV0f.z); -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 2 -backupReg0f = R127f.x; -R127f.x = mul_nonIEEE(backupReg0f, PV1f.y); -PV0f.y = PV1f.y; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -PV0f.w = mul_nonIEEE(R127f.w, PV1f.y); -// 3 -R123f.x = (mul_nonIEEE(R0f.z,PV0f.w) + intBitsToFloat(0x3d23d70a)); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R0f.y,PV0f.w) + intBitsToFloat(0x3c75c28f)); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R0f.x,PV0f.w) + intBitsToFloat(0x3c75c28f)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(R2f.x, PV0f.y); -// 4 -R127f.y = (mul_nonIEEE(R1f.z,R127f.x) + PV1f.x); -PV0f.y = R127f.y; -R127f.z = (mul_nonIEEE(R1f.y,R127f.x) + PV1f.y); -PV0f.z = R127f.z; -R127f.w = (mul_nonIEEE(R1f.x,R127f.x) + PV1f.z); -PV0f.w = R127f.w; -R1f.w = mul_nonIEEE(R7f.w, PV1f.w); -PS0f = R1f.w; -// 5 -PV1f.x = -(PV0f.y) + intBitsToFloat(uf_remappedPS[0].z); -PV1f.y = -(PV0f.z) + intBitsToFloat(uf_remappedPS[0].y); -PV1f.z = -(PV0f.w) + intBitsToFloat(uf_remappedPS[0].x); -// 6 -backupReg0f = R127f.y; -backupReg1f = R127f.z; -backupReg2f = R127f.w; -R127f.y = (mul_nonIEEE(PV1f.x,R9f.y) + backupReg0f); -PV0f.y = R127f.y; -R127f.z = (mul_nonIEEE(PV1f.y,R9f.y) + backupReg1f); -PV0f.z = R127f.z; -R127f.w = (mul_nonIEEE(PV1f.z,R9f.y) + backupReg2f); -PV0f.w = R127f.w; - -// 7 -R8f = vec4(aurafog); // custom code to set fog to 0 ------------------------------<<<< -PV1f.x = R8f.x + -(PV0f.w); // R8f looks like to be the fog -PV1f.z = R8f.z + -(PV0f.y); // R8f looks like to be the fog -PV1f.w = R8f.y + -(PV0f.z); // R8f looks like to be the fog - -// 8 -backupReg0f = R127f.y; -R127f.x = (mul_nonIEEE(PV1f.w,R8f.w) + R127f.z); -PV0f.x = R127f.x; -R127f.y = (mul_nonIEEE(PV1f.x,R8f.w) + R127f.w); -PV0f.y = R127f.y; -R127f.w = (mul_nonIEEE(PV1f.z,R8f.w) + backupReg0f); -PV0f.w = R127f.w; -// 9 -PV1f.x = -(PV0f.w) + intBitsToFloat(uf_remappedPS[1].z); // blue rgb -PV1f.y = -(PV0f.x) + intBitsToFloat(uf_remappedPS[1].y); // green rgb -PV1f.z = -(PV0f.y) + intBitsToFloat(uf_remappedPS[1].x); // red rgb -// 10 -R1f.x = (mul_nonIEEE(PV1f.z,R9f.x) + R127f.y); // red rgb -R1f.y = (mul_nonIEEE(PV1f.y,R9f.x) + R127f.x); // green rgb -R1f.z = (mul_nonIEEE(PV1f.x,R9f.x) + R127f.w); // blue rgb -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x * aurared, R1f.y * auragreen, R1f.z * aurablue, R1f.w * auraopacity); // rgb color and opacity for the middle swirl effect -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/397f3d8521c96e30_0000000000000709_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/397f3d8521c96e30_0000000000000709_ps.txt deleted file mode 100644 index 5a424530..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/397f3d8521c96e30_0000000000000709_ps.txt +++ /dev/null @@ -1,233 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 397f3d8521c96e30 -- ganons castle swirl shader -#define aurafog $aurafog -#define aurared $aurared -#define auragreen $auragreen -#define aurablue $aurablue -#define auraopacity $auraopacity - -#ifndef aurafog - #define aurafog 1 -#endif -#ifndef aurared - #define aurared 1 -#endif -#ifndef auragreen - #define auragreen 1 -#endif -#ifndef aurablue - #define aurablue 1 -#endif -#ifndef auraopacity - #define auraopacity 1 -#endif - -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem12; -layout(location = 8) in vec4 passParameterSem14; -layout(location = 9) in vec4 passParameterSem15; -layout(location = 10) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; - -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem5; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem12; -R8f = passParameterSem14; -R9f = passParameterSem15; -R10f = passParameterSem16; -R3f.xw = (texture(textureUnitPS0, R5f.xy).xw); - -// 0 -R123f.x = (R3f.x * 2.0 + -(1.0)); -PV0f.x = R123f.x; -PV0f.y = 1.0; -R123f.w = (R3f.w * 2.0 + -(1.0)); -PV0f.w = R123f.w; -// 1 -PV1f.x = mul_nonIEEE(PV0f.y, intBitsToFloat(uf_remappedPS[0].w)); -PV1f.y = mul_nonIEEE(R3f.y, PV0f.w); -PV1f.z = mul_nonIEEE(R2f.y, PV0f.x); -// 2 -R3f.x = (mul_nonIEEE(R3f.z,PV1f.z) + R6f.x); -R3f.y = (mul_nonIEEE(R3f.z,PV1f.y) + R6f.y); -R3f.z = R5f.z + PV1f.z; -R3f.w = R5f.w + PV1f.y; -R5f.x = (mul_nonIEEE(R7f.z,intBitsToFloat(uf_remappedPS[0].z)) + PV1f.x); -PS0f = R5f.x; -R6f.xw = (texture(textureUnitPS2, R3f.xy).xw); // how shiny ganons spirit -R3f.x = (texture(textureUnitPS1, R3f.zw).w); -// 0 -tempf.x = dot(vec4(R7f.x,R7f.y,R5f.x,0.0),vec4(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(uf_remappedPS[0].y),1.0,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -PS0f = mul_nonIEEE(R6f.w, R6f.w); -// 1 -PV1f.x = mul_nonIEEE(R6f.x, R6f.x); -R127f.y = mul_nonIEEE(R4f.w, R3f.x); -PV1f.y = R127f.y; -PV1f.z = mul_nonIEEE(R4f.w, PS0f); -PV1f.w = -(PV0f.x) + intBitsToFloat(0xc2c80000); -// 2 -R127f.x = mul_nonIEEE(PV1f.z, PV1f.y); -R126f.y = -(R0f.w) + PV1f.y; -R126f.y = clamp(R126f.y, 0.0, 1.0); -R127f.z = PV1f.w * intBitsToFloat(0x3ba3d70a); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -PV0f.w = mul_nonIEEE(R4f.w, PV1f.x); -// 3 -backupReg0f = R0f.x; -backupReg1f = R0f.y; -PV1f.x = mul_nonIEEE(R0f.z, PV0f.z); -PV1f.y = mul_nonIEEE(backupReg0f, PV0f.z); -PV1f.z = mul_nonIEEE(backupReg1f, PV0f.z); -R126f.w = mul_nonIEEE(PV0f.w, R127f.y); -R127f.w = mul_nonIEEE(R1f.x, PV0f.z); -PS1f = R127f.w; -// 4 -R123f.x = (mul_nonIEEE(PV1f.x,R127f.x) + intBitsToFloat(0x3d23d70a)); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(PV1f.z,R127f.x) + intBitsToFloat(0x3c75c28f)); -PV0f.y = R123f.y; -R123f.z = (mul_nonIEEE(PV1f.y,R127f.x) + intBitsToFloat(0x3c75c28f)); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(R1f.y, R127f.z); -PS0f = mul_nonIEEE(R1f.z, R127f.z); -// 5 -R127f.x = (mul_nonIEEE(R126f.w,R127f.w) + PV0f.z); -PV1f.x = R127f.x; -PV1f.y = mul_nonIEEE(R1f.w, R126f.y); -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -R127f.z = (mul_nonIEEE(R126f.w,PS0f) + PV0f.x); -PV1f.z = R127f.z; -R127f.w = (mul_nonIEEE(R126f.w,PV0f.w) + PV0f.y); -PV1f.w = R127f.w; -// 6 -PV0f.x = -(PV1f.z) + intBitsToFloat(uf_remappedPS[1].z); -PV0f.y = -(PV1f.w) + intBitsToFloat(uf_remappedPS[1].y); -PV0f.z = -(PV1f.x) + intBitsToFloat(uf_remappedPS[1].x); -PV0f.w = mul_nonIEEE(R2f.x, PV1f.y); -// 7 -backupReg0f = R8f.w; -R126f.y = (mul_nonIEEE(PV0f.x,R10f.y) + R127f.z); -PV1f.y = R126f.y; -R127f.z = (mul_nonIEEE(PV0f.y,R10f.y) + R127f.w); -PV1f.z = R127f.z; -R127f.w = (mul_nonIEEE(PV0f.z,R10f.y) + R127f.x); -PV1f.w = R127f.w; -R8f.w = mul_nonIEEE(backupReg0f, PV0f.w); -PS1f = R8f.w; - -// 8 -R9f = vec4(aurafog); // custom code - reinitilize the vector to set fog to 0 ------------------------------<<<< -PV0f.x = R9f.x + -(PV1f.w); // R9f looks like to be the fog -PV0f.z = R9f.z + -(PV1f.y); // R9f looks like to be the fog -PV0f.w = R9f.y + -(PV1f.z); // R9f looks like to be the fog - -// 9 -backupReg0f = R126f.y; -R127f.x = (mul_nonIEEE(PV0f.w,R9f.w) + R127f.z); -PV1f.x = R127f.x; -R126f.y = (mul_nonIEEE(PV0f.x,R9f.w) + R127f.w); -PV1f.y = R126f.y; -R127f.w = (mul_nonIEEE(PV0f.z,R9f.w) + backupReg0f); -PV1f.w = R127f.w; -// 10 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[2].z); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[2].y); -PV0f.z = -(PV1f.y) + intBitsToFloat(uf_remappedPS[2].x); -// 11 -R8f.x = (mul_nonIEEE(PV0f.z,R10f.x) + R126f.y); -R8f.y = (mul_nonIEEE(PV0f.y,R10f.x) + R127f.x); -R8f.z = (mul_nonIEEE(PV0f.x,R10f.x) + R127f.w); -// export -if( ((vec4(R8f.x, R8f.y, R8f.z, R8f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R8f.x * aurared, R8f.y * auragreen, R8f.z * aurablue, R8f.w * auraopacity); // rgb color for the top swirls effect -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/5a8eb2055c65a0c2_0000000000003849_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/5a8eb2055c65a0c2_0000000000003849_ps.txt deleted file mode 100644 index 6bf419a9..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/5a8eb2055c65a0c2_0000000000003849_ps.txt +++ /dev/null @@ -1,252 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 5a8eb2055c65a0c2 -- Vertex Shader - Close to Castle Aura RGB -#define aurafog $aurafog -#define aurared $aurared -#define auragreen $auragreen -#define aurablue $aurablue -#define auraopacity $auraopacity - -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 6) in vec4 passParameterSem7; -layout(location = 7) in vec4 passParameterSem8; -layout(location = 8) in vec4 passParameterSem9; -layout(location = 9) in vec4 passParameterSem11; -layout(location = 10) in vec4 passParameterSem14; -layout(location = 11) in vec4 passParameterSem15; -layout(location = 12) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R12f = vec4(0.0); -vec4 R13f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R6f = passParameterSem7; -R7f = passParameterSem8; -R8f = passParameterSem9; -R9f = passParameterSem11; -R10f = passParameterSem14; -R11f = passParameterSem15; -R12f = passParameterSem16; -R5f.xw = (texture(textureUnitPS0, R7f.xy).xw); -// 0 -R127f.x = R2f.z * R2f.z; -R123f.y = (R5f.x * 2.0 + -(1.0)); -PV0f.y = R123f.y; -R4f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -R123f.w = (R5f.w * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R3f.w; -// 1 -R13f.x = mul_nonIEEE(R3f.x, PS0f); -PV1f.y = mul_nonIEEE(R5f.y, PV0f.w); -PV1f.z = mul_nonIEEE(R4f.y, PV0f.y); -R13f.w = mul_nonIEEE(R3f.y, PS0f); -R6f.y = 1.0 / R3f.w; -PS1f = R6f.y; -// 2 -backupReg0f = R5f.z; -backupReg0f = R5f.z; -R5f.x = R7f.z + PV1f.z; -R5f.y = R7f.w + PV1f.y; -R5f.z = (mul_nonIEEE(backupReg0f,PV1f.z) + R8f.x); -R5f.w = (mul_nonIEEE(backupReg0f,PV1f.y) + R8f.y); -R7f.x = (R2f.y * R2f.y + R127f.x); -PS0f = R7f.x; -R5f.x = (texture(textureUnitPS1, R5f.xy).w); -R8f.xw = (texture(textureUnitPS2, R5f.zw).xw); -R5f.z = (texture(textureUnitPS4, R13f.xw).x); -// 0 -R123f.x = (mul_nonIEEE(R6f.w,R5f.x) + -(R0f.w)); -PV0f.x = R123f.x; -PV0f.y = R3f.z * R6f.y; -R123f.z = (R2f.x * R2f.x + R7f.x); -PV0f.z = R123f.z; -R127f.w = mul_nonIEEE(R8f.w, R8f.w); -R126f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R5f.z) + intBitsToFloat(uf_remappedPS[1].x)); -PS0f = R126f.w; -// 1 -PV1f.x = mul_nonIEEE(R8f.x, R8f.x); -R127f.y = (mul_nonIEEE(PV0f.y,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R125f.w = mul_nonIEEE(R1f.w, PV0f.x); -R125f.w = clamp(R125f.w, 0.0, 1.0); -PV1f.w = R125f.w; -tempResultf = 1.0 / sqrt(PV0f.z); -PS1f = tempResultf; -// 2 -backupReg0f = R127f.w; -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R127f.w = mul_nonIEEE(backupReg0f, PV1f.w); -PV0f.w = R127f.w; -R127f.z = mul_nonIEEE(PV1f.x, PV1f.w); -PS0f = R127f.z; -// 3 -backupReg0f = R0f.x; -tempf.x = dot(vec4(R9f.x,R9f.y,R9f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R122f.x = (mul_nonIEEE(backupReg0f,PV0f.w) + intBitsToFloat(0x3c75c28f)); -PS1f = R122f.x; -// 4 -backupReg0f = R0f.y; -PV0f.x = max(PV1f.x, -(PV1f.x)); -R0f.y = (mul_nonIEEE(R1f.x,R127f.z) + PS1f); -R123f.z = (mul_nonIEEE(R0f.z,R127f.w) + intBitsToFloat(0x3d23d70a)); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(backupReg0f,R127f.w) + intBitsToFloat(0x3c75c28f)); -PV0f.w = R123f.w; -PS0f = 1.0 / R127f.y; -// 5 -R1f.x = (mul_nonIEEE(R1f.y,R127f.z) + PV0f.w); -PV1f.y = -(intBitsToFloat(uf_remappedPS[1].z)) * PS0f; -PV1f.z = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -R1f.w = (mul_nonIEEE(R1f.z,R127f.z) + PV0f.z); -PS1f = 1.0 / R4f.z; -// 6 -PV0f.x = PV1f.z * PS1f; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R127f.y = R125f.w; -R127f.y = clamp(R127f.y, 0.0, 1.0); -PV0f.z = -(PV1f.y) + R126f.w; -PS0f = 1.0 / intBitsToFloat(uf_remappedPS[2].y); -// 7 -PV1f.x = PV0f.z * PS0f; -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -PV0f.w = mul_nonIEEE(R127f.y, PV1f.x); -// 9 -PV1f.x = mul_nonIEEE(PV0f.w, PV0f.y); -// 10 -PV0f.w = mul_nonIEEE(R4f.x, PV1f.x); -// 11 -backupReg0f = R10f.w; -R10f.w = mul_nonIEEE(backupReg0f, PV0f.w); -// 0 -backupReg0f = R0f.y; -PV0f.x = -(R1f.w) + intBitsToFloat(uf_remappedPS[3].z); -PV0f.y = -(R1f.x) + intBitsToFloat(uf_remappedPS[3].y); -PV0f.z = -(backupReg0f) + intBitsToFloat(uf_remappedPS[3].x); -// 1 -R127f.y = (mul_nonIEEE(PV0f.x,R12f.y) + R1f.w); -PV1f.y = R127f.y; -R127f.z = (mul_nonIEEE(PV0f.y,R12f.y) + R1f.x); -PV1f.z = R127f.z; -R126f.w = (mul_nonIEEE(PV0f.z,R12f.y) + R0f.y); -PV1f.w = R126f.w; -// 2 -PV0f.x = R11f.x + -(PV1f.w); -PV0f.z = R11f.z + -(PV1f.y); -PV0f.w = R11f.y + -(PV1f.z); -// 3 -backupReg0f = R127f.y; -R127f.x = (mul_nonIEEE(PV0f.w,R11f.w) + R127f.z); -PV1f.x = R127f.x; -R127f.y = (mul_nonIEEE(PV0f.x,R11f.w) + R126f.w); -PV1f.y = R127f.y; -R126f.w = (mul_nonIEEE(PV0f.z,R11f.w) + backupReg0f); -PV1f.w = R126f.w; -// 4 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[4].z); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[4].y); -PV0f.z = -(PV1f.y) + intBitsToFloat(uf_remappedPS[4].x); -// 5 -R10f.x = (mul_nonIEEE(PV0f.z,R12f.x) + R127f.y); -R10f.y = (mul_nonIEEE(PV0f.y,R12f.x) + R127f.x); -R10f.z = (mul_nonIEEE(PV0f.x,R12f.x) + R126f.w); -// export -if( ((vec4(R10f.x, R10f.y, R10f.z, R10f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R10f.x * aurared, R10f.y * auragreen, R10f.z * aurablue, R10f.w * auraopacity); -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/ReadMe.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/ReadMe.txt deleted file mode 100644 index d867825c..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/ReadMe.txt +++ /dev/null @@ -1,24 +0,0 @@ -# Information -# by SkalFate -# ---------------------- - -Example Preset : - -// Changing it here doesn't do anything, this is for demonstration. Change it in rules.txt file instead. - -[Preset] -name = Custom Preset -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - - -# (aurafog) -- Fog over Ganons Aura. -# ------------ 0 = disabled , 1 = Enabled - -# (auraopacity) -- How opaque do you want the color strenght to be. -# ---------------- 0 = Transparent , Values from 1x to 100x - -# (aurared, auragreen, aurablue ) = RGB - Red, Green, Blue - allows for chaning the color of the Aura. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/rules.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/rules.txt deleted file mode 100644 index 945986fa..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleAura/rules.txt +++ /dev/null @@ -1,132 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Castle Ganons Aura Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Ganons Aura" -description = Can Remove the Fog on Ganons Aura on Hyrule castle. Change its RGB color. -version = 4 - - -[Preset] -name = Ganons Aura Fog Disabled -$aurafog = 0 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Fog 10% -$aurafog = 0.1 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Fog 30% -$aurafog = 0.3 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Fog Enabled -$aurafog = 1 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = ---------------------------------------- -$aurafog = 1 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Opacity 3x -$aurafog = 0 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 3 - -[Preset] -name = ---------------------------------------- -$aurafog = 1 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Black -$aurafog = 0 -$aurared = 0 -$auragreen = 0 -$aurablue = 0 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Navy -$aurafog = 0 -$aurared = 0 -$auragreen = 0 -$aurablue = 0.5 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Red -$aurafog = 0 -$aurared = 1 -$auragreen = 0 -$aurablue = 0 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Green -$aurafog = 0 -$aurared = 0 -$auragreen = 1 -$aurablue = 0 -$auraopacity = 1 - -[Preset] -name = Ganons Aura Blue -$aurafog = 0 -$aurared = 0 -$auragreen = 0 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = ---------------------------------------- -$aurafog = 0 -$aurared = 1 -$auragreen = 1 -$aurablue = 1 -$auraopacity = 1 - -[Preset] -name = Custom Preset -$aurafog = 0 -$aurared = 2 -$auragreen = 1 -$aurablue = 2 -$auraopacity = 1 - -# Information -# by SkalFate -# ---------------------- - -# (aurafog) -- Fog over Ganons Aura. -# ------------ 0 = disabled , 1 = Enabled - -# (auraopacity) -- How opaque do you want the color strenght to be. -# ---------------- 0 = Transparent , Values from 1x to 100x - -# (aurared, auragreen, aurablue ) = RGB - Red, Green, Blue - allows for chaning the color of the Aura. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/699b238ae15d113b_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/699b238ae15d113b_00000000000000e1_ps.txt deleted file mode 100644 index a478df9c..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/699b238ae15d113b_00000000000000e1_ps.txt +++ /dev/null @@ -1,219 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 699b238ae15d113b -- Ganons Castle Moat Fog Fragment Shader -#define basefogred $basefogred -#define basefoggreen $basefoggreen -#define basefogblue $basefogblue -#define basefogopacity $basefogopacity - -#ifndef basefogred - #define basefogred 1 -#endif -#ifndef basefoggreen - #define basefoggreen 1 -#endif -#ifndef basefogblue - #define basefogblue 1 -#endif -#ifndef basefogopacity - #define basefogopacity 1 -#endif - -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 7) in vec4 passParameterSem14; -layout(location = 8) in vec4 passParameterSem15; -layout(location = 9) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem2; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem11; -R7f = passParameterSem14; -R8f = passParameterSem15; -R9f = passParameterSem16; -R1f.w = (texture(textureUnitPS0, R5f.xy).w); -// 0 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,-0.0),vec4(R1f.x,R1f.y,R1f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = tempf.x; -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = mul_nonIEEE(R2f.x, PS0f); -R5f.y = mul_nonIEEE(R2f.y, PS0f); -R3f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -R3f.w = mul_nonIEEE(R0f.x, R4f.x); -PV1f.w = R3f.w; -PS1f = 1.0 / R2f.w; -// 2 -R2f.x = R2f.z * PS1f; -R2f.y = mul_nonIEEE(R0f.y, R4f.y); -R5f.z = -(PV1f.w) + intBitsToFloat(uf_remappedPS[1].x); -R2f.w = mul_nonIEEE(R4f.w, R1f.w); -tempResultf = 1.0 / sqrt(R127f.z); -R1f.w = tempResultf; -PS0f = R1f.w; -R2f.z = (texture(textureUnitPS4, R5f.xy).x); -// 0 -backupReg0f = R0f.z; -PV0f.x = mul_nonIEEE(R1f.x, R1f.w); -PV0f.y = mul_nonIEEE(R1f.y, R1f.w); -PV0f.z = mul_nonIEEE(R1f.z, R1f.w); -R123f.w = (mul_nonIEEE(R2f.x,intBitsToFloat(uf_remappedPS[2].w)) + -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.w = R123f.w; -R1f.x = mul_nonIEEE(backupReg0f, R4f.z); -PS0f = R1f.x; -// 1 -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -PS1f = 1.0 / PV0f.w; -// 2 -PV0f.x = max(PV1f.x, -(PV1f.x)); -PV0f.y = -(intBitsToFloat(uf_remappedPS[2].z)) * PS1f; -R127f.z = mul_nonIEEE(R0f.w, R2f.w); -R127f.z = clamp(R127f.z, 0.0, 1.0); -R123f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].w),R2f.z) + intBitsToFloat(uf_remappedPS[2].x)); -PV0f.w = R123f.w; -R127f.y = 1.0 / R3f.z; -PS0f = R127f.y; -// 3 -R127f.x = (mul_nonIEEE(R5f.z,R9f.y) + R3f.w); -PV1f.x = R127f.x; -PV1f.z = -(PV0f.y) + PV0f.w; -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -PS1f = 1.0 / intBitsToFloat(uf_remappedPS[3].y); -// 4 -PV0f.x = PV1f.w * R127f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.y = PV1f.z * PS1f; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -PV0f.z = R8f.x + -(PV1f.x); -// 5 -backupReg0f = R127f.x; -R127f.x = mul_nonIEEE(R127f.z, PV0f.y); -R0f.y = (mul_nonIEEE(PV0f.z,R8f.w) + backupReg0f); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 6 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 7 -PV1f.x = mul_nonIEEE(R127f.x, PV0f.y); -// 8 -PV0f.w = mul_nonIEEE(R3f.x, PV1f.x); -// 9 -backupReg0f = R7f.w; -R7f.w = mul_nonIEEE(backupReg0f, PV0f.w); -// 0 -PV0f.x = -(R1f.x) + intBitsToFloat(uf_remappedPS[1].z); -PV0f.y = -(R2f.y) + intBitsToFloat(uf_remappedPS[1].y); -// 1 -PV1f.x = -(R0f.y) + intBitsToFloat(uf_remappedPS[4].x); -R127f.y = (mul_nonIEEE(PV0f.x,R9f.y) + R1f.x); -PV1f.y = R127f.y; -R127f.z = (mul_nonIEEE(PV0f.y,R9f.y) + R2f.y); -PV1f.z = R127f.z; -// 2 -R7f.x = (mul_nonIEEE(PV1f.x,R9f.x) + R0f.y); -PV0f.z = R8f.z + -(PV1f.y); -PV0f.w = R8f.y + -(PV1f.z); -// 3 -R127f.x = (mul_nonIEEE(PV0f.w,R8f.w) + R127f.z); -PV1f.x = R127f.x; -R127f.w = (mul_nonIEEE(PV0f.z,R8f.w) + R127f.y); -PV1f.w = R127f.w; -// 4 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[4].z); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[4].y); -// 5 -R7f.y = (mul_nonIEEE(PV0f.y,R9f.x) + R127f.x); -R7f.z = (mul_nonIEEE(PV0f.x,R9f.x) + R127f.w); - -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x * basefogred, R7f.y * basefoggreen, R7f.z * basefogblue, R7f.w * basefogopacity); // rgb and opacity -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/ReadMe.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/ReadMe.txt deleted file mode 100644 index 246bf59f..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/ReadMe.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Information -# by SkalFate -# ---------------------- - -Example Preset : - -// Changing it here doesn't do anything, this is for demonstration. Change it in rules.txt file instead. - -[Preset] -name = Custom Preset -$basefogopacity = 1 -$basefogred = 3 -$basefoggreen = 1 -$basefogblue = 2 - - -# (basefogopacity) = Fog Transparency/Opacity - how thick you want the Hyrule Castle Base Fog to look -# ------ Values are multiplied, so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] - -# (basefogred, basefoggreen, basefogblue ) = RGB - Red, Green, Blue - Changes the color of the Hyrule Base Fog. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/rules.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/rules.txt deleted file mode 100644 index de536de6..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_HyruleCastleBaseFog/rules.txt +++ /dev/null @@ -1,100 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Hyrule Castle Base Fog Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Base Fog" -description = Can Remove the Fog glow at the Base of Hyrule Castle. Can Change its RGB color. -version = 4 - - -[Preset] -name = Castle Base Fog Disabled -$basefogopacity = 0 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Castle Base Fog 30% -$basefogopacity = 0.3 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Castle Base Fog 50% -$basefogopacity = 0.5 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Castle Base Fog Enabled -$basefogopacity = 1 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = ---------------------------------------- -$basefogopacity = 1 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Castle Base Fog Opacity 3X -$basefogopacity = 3 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = ---------------------------------------- -$basefogopacity = 1 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Castle Base Fog Red -$basefogopacity = 1.4 -$basefogred = 2 -$basefoggreen = 0 -$basefogblue = 0 - -[Preset] -name = Castle Base Fog Green -$basefogopacity = 1 -$basefogred = 0 -$basefoggreen = 1 -$basefogblue = 0 - -[Preset] -name = Castle Base Fog Blue -$basefogopacity = 1 -$basefogred = 0 -$basefoggreen = 0 -$basefogblue = 1 - -[Preset] -name = ---------------------------------------- -$basefogopacity = 1 -$basefogred = 1 -$basefoggreen = 1 -$basefogblue = 1 - -[Preset] -name = Custom Preset -$basefogopacity = 1 -$basefogred = 4 -$basefoggreen = 1.0 -$basefogblue = 1.5 - -# Information -# by SkalFate -# ---------------------- -# (basefogopacity) = Fog Transparency/Opacity - how thick you want the Hyrule Castle Base Fog to look -# ------ Values are multiplied, so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] - -# (basefogred, basefoggreen, basefogblue ) = RGB - Red, Green, Blue - Changes the color of the Hyrule Base Fog. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/1c7db40ff5d693ab_001ffffe4924b249_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/1c7db40ff5d693ab_001ffffe4924b249_ps.txt deleted file mode 100644 index a1e4ac6c..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/1c7db40ff5d693ab_001ffffe4924b249_ps.txt +++ /dev/null @@ -1,847 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 1c7db40ff5d693ab -- Links and all NPCs RGb renderer, all npcs fog rgb renderer, sun-side facing brightness -#define npcfogred $npcfogred -#define npcfoggreen $npcfoggreen -#define npcfogblue $npcfogblue - -#ifdef VULKAN -layout(set = 1, binding = 11) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[33]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[33]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 4) out vec4 passPixelColor4; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex7 = 0.0; -R0i = floatBitsToInt(passParameterSem0); // Links cutout comes from passparamsem0 -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem6); - -// ------------------------------------------------------------------------------------------------------------- Extra dynamic shadows on link -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); // seems to affect links head area -R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); // seems to affect shadows on link body -R15i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xw); -R4i.xy = floatBitsToInt(texture(textureUnitPS15, intBitsToFloat(R0i.xy)).xy); -R16i.xyz = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R2i.zw)).xyz); -R14i.x = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R2i.zw)).x); -} - -// ------------------------------------------------------------------------------------------------------------- false makes link grey -if( activeMaskStackC[1] == true ) { -// 0 -R124i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -PV0i.y = R125i.y; -R3i.z = 0; -R5i.w = 0x3f800000; -R126i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); -PS0i = R126i.y; -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[2].x)) + -(intBitsToFloat(uf_remappedPS[2].y)))); -R127i.w = clampFI32(R127i.w); -R126i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].w)) + 1.0); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[4].x))); -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[4].y)) + intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[5].x))); -R10i.w = floatBitsToInt(-(intBitsToFloat(R127i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[5].y)) + intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[6].x))); -R125i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); -R127i.w = floatBitsToInt(max(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(uf_remappedPS[6].y)) + intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R0i.y; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[4].z)) + intBitsToFloat(backupReg0i))); -PV1i.w = R123i.w; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PS1i = R3i.x; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.x = R123i.x; -R6i.y = floatBitsToInt(max(intBitsToFloat(R15i.x), intBitsToFloat(R127i.w))); -R9i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) + intBitsToFloat(PV1i.w)); -PV0i.z = R9i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(R125i.x))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R3i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.y = floatBitsToInt(tempResultf); -PS0i = R127i.y; -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) + intBitsToFloat(PV0i.w)); -PV1i.x = R5i.x; -R8i.y = PV0i.z; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(R127i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R4i.z = floatBitsToInt(tempResultf); -PS1i = R4i.z; -// 8 -R9i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3a83126f)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(R127i.y))); -R8i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[6].w) + intBitsToFloat(PV1i.z)); -PV0i.z = R8i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(R127i.y))); -R13i.x = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y))); -PS0i = R13i.x; -// 9 -R127i.x = uf_remappedPS[7].y; -R9i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3a83126f)); -R127i.z = uf_remappedPS[8].y; -R125i.w = floatBitsToInt(min(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 10 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[3].w))/2.0); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(0x2edbe6ff)); -R126i.z = uf_remappedPS[9].y; -R127i.w = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(0xbecccccd)); -R125i.x = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R125i.x; -// 11 -backupReg0i = R126i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[10].x)) + -(intBitsToFloat(uf_remappedPS[10].y)))); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -R11i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(uf_remappedPS[11].y))); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40200001)); -R126i.w = clampFI32(R126i.w); -R14i.y = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R4i.y) + 1.0)); -PS1i = R14i.y; -// 12 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R127i.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 14 -R0i.x = floatBitsToInt(min(intBitsToFloat(R15i.x), intBitsToFloat(R125i.w))); -R12i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x41200000)); -R12i.y = clampFI32(R12i.y); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].z), intBitsToFloat(PS1i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(uf_remappedPS[3].z))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 15 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(uf_remappedPS[13].x)) + intBitsToFloat(uf_remappedPS[14].w))); -R125i.x = clampFI32(R125i.x); -R127i.y = floatBitsToInt((intBitsToFloat(PS0i) * 4.0 + intBitsToFloat(0xc0400000))); -R127i.y = clampFI32(R127i.y); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R14i.y))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -R17i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -R17i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R127i.w = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -tempResultf = log2(intBitsToFloat(R127i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 17 -R6i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(0x3f4ccccd)); -R13i.y = floatBitsToInt(intBitsToFloat(R127i.y) + -(0.5)); -R13i.y = floatBitsToInt(intBitsToFloat(R13i.y) * 4.0); -R13i.y = clampFI32(R13i.y); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(PS0i))); -R6i.w = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3f4ccccd)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.z))); -// 18 -R8i.x = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(0x3f4ccccd)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R2i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[12].w)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 19 -R12i.x = R1i.w; -R12i.x = clampFI32(R12i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R6i.z = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(intBitsToFloat(R13i.y) + intBitsToFloat(0x3f4ccccd)); -PV1i.w = clampFI32(PV1i.w); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 20 -R2i.x = floatBitsToInt((intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd) + 1.0)); -R5i.y = R6i.y; -R5i.y = clampFI32(R5i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[15].w))); -R3i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + -(1.0)); -tempResultf = log2(intBitsToFloat(R125i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R0i.w = floatBitsToInt(tempResultf); -PS0i = R0i.w; -} -// ------------------------------------------------------------------------------------------------------------- false turns link almost dark, lighting on link -if( activeMaskStackC[1] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].x), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].y), intBitsToFloat(uf_remappedPS[17].w))); -PV0i.y = R125i.y; -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R14i.y))); -PV0i.z = R10i.z; -R4i.w = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x42960000)); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(R2i.y)); -PS0i = R126i.w; -// 1 -R125i.x = PV0i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(PS0i)) + 1.0)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[16].z), intBitsToFloat(uf_remappedPS[17].w))); -PV1i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.w = R123i.w; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R2i.z)) + intBitsToFloat(R2i.z))); -PS1i = R0i.z; -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R0i.w))); -PV0i.y = PV1i.z; -R2i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].x) + -(intBitsToFloat(R6i.x))); -R0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].y) + -(intBitsToFloat(R6i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.w)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R3i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R4i.z))); -// 4 -backupReg0i = R127i.y; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x2edbe6ff)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R124i.z = backupReg0i; -R124i.z = clampFI32(R124i.z); -R8i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[18].z) + -(intBitsToFloat(R8i.x))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg1i))); -// 5 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[19].w))); -// 6 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); -R126i.y = R4i.x; -R126i.y = clampFI32(R126i.y); -PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 7 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x437f0000)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R6i.z)) + 1.0); -PS1i = R127i.y; -// 8 -R127i.x = floatBitsToInt(intBitsToFloat(R15i.x) + -(intBitsToFloat(R6i.y))); -PV0i.y = floatBitsToInt(max(-(intBitsToFloat(PV1i.z)), intBitsToFloat(0xbf7d70a4))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x40a00000)); -PV0i.z = clampFI32(PV0i.z); -R125i.w = floatBitsToInt(intBitsToFloat(R15i.y) + -(intBitsToFloat(R6i.y))); -R124i.w = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R6i.y))); -PS0i = R124i.w; -// 9 -backupReg0i = R127i.y; -backupReg1i = R6i.z; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV0i.z)) + 1.0)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R5i.y))); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.y)) + intBitsToFloat(backupReg1i))); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -PV1i.w = R126i.w; -R3i.w = 0; -PS1i = R3i.w; -// 10 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.x)) + intBitsToFloat(R6i.y))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.w = R123i.w; -R127i.w = int(intBitsToFloat(backupReg1i)); -PS0i = R127i.w; -// 11 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R124i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R124i.x))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.z))); -// 12 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R124i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R127i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R127i.y = R127i.w & int(1); -PS0i = R127i.y; -// 13 -backupReg0i = R2i.w; -backupReg0i = R2i.w; -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.w))) + 1.0)); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(0xba0a8ec8))); -R5i.y = clampFI32(R5i.y); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(0xba0a8ec8))); -R5i.z = clampFI32(R5i.z); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R10i.z))) + intBitsToFloat(backupReg0i))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(0xba0a8ec8))); -R3i.z = clampFI32(R3i.z); -PS1i = R3i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[16].x),intBitsToFloat(uf_remappedPS[16].y),intBitsToFloat(uf_remappedPS[16].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(float(R127i.y)); -// 15 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); -PS1i = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3eaaaaab)); -// 16 -R123i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), -(intBitsToFloat(R3i.w)))); -// 17 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3eaaaaab) + intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbecccccd)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),-(intBitsToFloat(R126i.z))) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.y),-(intBitsToFloat(R125i.y))) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R4i.w))); -R7i.z = clampFI32(R7i.z); -// 19 -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.x),-(intBitsToFloat(R126i.x))) + intBitsToFloat(PV0i.x))); -PV1i.z = R12i.z; -// 20 -PV0i.y = PV1i.z; -PV0i.y = clampFI32(PV0i.y); -// 21 -R14i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0xbecccccd)); -} - -// ------------------------------------------------------------------------------------------------------------- -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[20].x),intBitsToFloat(uf_remappedPS[20].y),intBitsToFloat(uf_remappedPS[20].z),intBitsToFloat(uf_remappedPS[20].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[21].x),intBitsToFloat(uf_remappedPS[21].y),intBitsToFloat(uf_remappedPS[21].z),intBitsToFloat(uf_remappedPS[21].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_remappedPS[22].x),intBitsToFloat(uf_remappedPS[22].y),intBitsToFloat(uf_remappedPS[22].z),intBitsToFloat(uf_remappedPS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R10i.x; -// 3 -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.z))); -} - -// ------------------------------------------------------------------------------------------------------------- makes link yellower -if( activeMaskStackC[1] == true ) { -R9i.y = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R9i.xy),0.0).x); -R10i.w = floatBitsToInt(textureLod(textureUnitPS5, intBitsToFloat(R10i.xy),intBitsToFloat(R10i.w)).x); -R11i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R11i.xy)).xyz); -} - -// ------------------------------------------------------------------------------------------------------------- makes link yellower -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R9i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.w) + intBitsToFloat(uf_remappedPS[23].z)); -PV0i.x = clampFI32(PV0i.x); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(R6i.z))); -R123i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PV0i.z = R123i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(R6i.z))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R6i.z))); -PS0i = R11i.y; -// 1 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x41c80000) + intBitsToFloat(R9i.z))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[24].z))); -PV1i.y = R3i.y; -// 2 -R4i.y = PV1i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R12i.y))); -R10i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[25].x)); -// 3 -PV1i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R8i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.x))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R12i.x)) + 1.0)); -PV0i.w = R123i.w; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R7i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[26].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[26].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[26].x))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.x))); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.w))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R6i.y))); -PV1i.w = R123i.w; -// 8 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R5i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R3i.z))); -// 9 -R0i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R0i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -R2i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -} - -// ------------------------------------------------------------------------------------------------------------- makes whole link blue/pink -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedPS[27].x)) + intBitsToFloat(uf_remappedPS[28].w))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -// 1 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[29].w))); -// 2 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R14i.y))); -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R0i.z)) + intBitsToFloat(R0i.z))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.z))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].y), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].z), intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[29].x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV1i.x))); -R5i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PS0i = R5i.z; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].z),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].x),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R4i.w = 0; -// 6 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; // links whole body red -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; // links whole body green -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; // links whole body blue -// 7 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].x),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.y))); // affects color of links back side -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].y),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.z))); // affects color of links back side -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z),intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.w))); // affects color of links back side -// 8 -predResult = (intBitsToFloat(R14i.x) != intBitsToFloat(0x3dc0c0c1)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} - -// ------------------------------------------------------------------------------------------------------------- false makes link back-side shadow blue -if( activeMaskStackC[2] == true ) { -// 0 -R3i.xyz = floatBitsToInt(vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R4i.z)) + vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R2i.z))); -R3i.w = 0x3f800000; -R0i.x = 0; -PS0i = R0i.x; -// 1 -R0i.yzw = ivec3(0,0,0); // orginal code -//R0i.yzw = ivec3(floatBitsToInt(1.0),floatBitsToInt(1.0),floatBitsToInt(1.0)); // controls the color and brightness of the backside shadows on all npcs -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; - -// ------------------------------------------------------------------------------------------------------------- false changes links color to be more yellowish -if( activeMaskStackC[2] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[30].x),intBitsToFloat(uf_remappedPS[30].y),intBitsToFloat(uf_remappedPS[30].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = 0x40400000; -PS0i = R0i.w; -// 1 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[31].x),intBitsToFloat(uf_remappedPS[31].y),intBitsToFloat(uf_remappedPS[31].z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R17i.x),intBitsToFloat(R17i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[32].x),intBitsToFloat(uf_remappedPS[32].y),intBitsToFloat(uf_remappedPS[32].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R13i.x))); -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg1i = R127i.z; -redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -R2i.z = clampFI32(R2i.z); -PS1i = R2i.z; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R14i.z) * intBitsToFloat(0x42960000)); -PV0i.x = clampFI32(PV0i.x); -R0i.z = PV1i.w; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -backupReg0i = R1i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.x = R123i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.z))); -PS1i = R1i.x; -// 6 -R0i.x = PV1i.w; -R0i.y = PV1i.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(PV1i.z))); -PS0i = R3i.x; -} - -// ------------------------------------------------------------------------------------------------------------- false makes link back side brightened up -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS7, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex7),intBitsToFloat(R0i.w)).xyz); // R0i.z controls links back side , it britghens it up -} - -// ------------------------------------------------------------------------------------------------------------- false makes link a bit brighter front and back -if( activeMaskStackC[2] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].y),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.x))); -PV0i.y = R123i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].z),intBitsToFloat(R2i.z)) + intBitsToFloat(R0i.z))); -PV0i.w = R123i.w; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(R1i.y))); -PS0i = R3i.y; -// 1 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.x))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.z))); -R0i.w = 0; -R3i.w = 0x3f800000; -PS1i = R3i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; - -// ------------------------------------------------------------------------------------------------------------- false darkens links models curves shadows -if( activeMaskStackC[1] == true ) { -// 0 -R1i.w = 0x3f800000; -// 1 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -backupReg2i = R3i.z; -backupReg3i = R3i.w; -R3i.xyz = ivec3(backupReg0i,backupReg1i,backupReg2i); -R3i.w = backupReg3i; -// 2 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -// 3 -backupReg0i = R1i.w; -R1i.xyz = ivec3(R4i.x,R5i.y,R6i.z); -R1i.w = backupReg0i; -// 4 -R0i.xyz = ivec3(R13i.x,R4i.y,R5i.z); -R0i.w = R4i.w; -// 5 -R4i.xyz = ivec3(R7i.x,R7i.x,R7i.x); -R4i.w = R7i.x; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); // light/shadows on link when sun face side -passPixelColor1 = vec4(intBitsToFloat(R1i.x) * npcfogred, intBitsToFloat(R1i.y) * npcfoggreen, intBitsToFloat(R1i.z) * npcfogblue, intBitsToFloat(R1i.w)); // links and all npcs fog rgb -passPixelColor2 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); // link rgb only in celshade removal mode -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor4 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/ReadMe.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/ReadMe.txt deleted file mode 100644 index 73658cdb..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/ReadMe.txt +++ /dev/null @@ -1,16 +0,0 @@ -# Information -# by SkalFate -# ---------------------- - -Example Preset : - -// Changing it here doesn't do anything, this is for demonstration. Change it in rules.txt file instead. - -[Preset] -name = Custom Preset -$npcfogred = 1 -$npcfoggreen = 1 -$npcfogblue = 1 - -# (npcfogred, npcfoggreen, npcblue ) = RGB - Red, Green, Blue - Changes the color of distant npcs fog. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/rules.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/rules.txt deleted file mode 100644 index 9b547dfc..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_NPCFog/rules.txt +++ /dev/null @@ -1,74 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Distant NPCs Fog Removal Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/NPC Fog Removal" -description = Can Remove Fog from Distant NPCs. Conflicts with Cel-Shade ShadowFix Packs. -version = 4 - - -[Preset] -name = Distant NPC Fog Disabled -$npcfogred = 0 -$npcfoggreen = 0 -$npcfogblue = 0 - -[Preset] -name = Distant NPC Fog 10% -$npcfogred = 0.1 -$npcfoggreen = 0.1 -$npcfogblue = 0.1 - -[Preset] -name = Distant NPC Fog 30% -$npcfogred = 0.3 -$npcfoggreen = 0.3 -$npcfogblue = 0.3 - -[Preset] -name = Distant NPC Fog Enabled -$npcfogred = 1 -$npcfoggreen = 1 -$npcfogblue = 1 - -[Preset] -name = ---------------------------------------- -$npcfogred = 1 -$npcfoggreen = 1 -$npcfogblue = 1 - -[Preset] -name = Distant NPC Fog Red -$npcfogred = 2 -$npcfoggreen = 0 -$npcfogblue = 0 - -[Preset] -name = Distant NPC Fog Green -$npcfogred = 0 -$npcfoggreen = 1 -$npcfogblue = 0 - -[Preset] -name = Distant NPC Fog Blue -$npcfogred = 0 -$npcfoggreen = 0 -$npcfogblue = 1 - -[Preset] -name = ---------------------------------------- -$npcfogred = 1 -$npcfoggreen = 1 -$npcfogblue = 1 - -[Preset] -name = Custom Preset -$npcfogred = 1 -$npcfoggreen = 1 -$npcfogblue = 1 - -# Information -# by SkalFate -# ---------------------- - -# (npcfogred, npcfoggreen, npcblue ) = RGB - Red, Green, Blue - Changes the color of distant npcs fog. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/527591781440691a_000000000001c24b_ps.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/527591781440691a_000000000001c24b_ps.txt deleted file mode 100644 index 6a46ab36..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/527591781440691a_000000000001c24b_ps.txt +++ /dev/null @@ -1,358 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -/* This shaders was auto-converted from OpenGL to Cemu. -Conversion output: -*/ - - -// shader 527591781440691a -- Controls RGb of the Fog Fields in the distance ans their opacity -#define ffopacity $ffopacity -#define ffred $ffred -#define ffgreen $ffgreen -#define ffblue $ffblue - -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[7]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[7]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(10, 1, 4) uniform samplerCubeArray textureUnitPS10; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem11; -layout(location = 8) in vec4 passParameterSem14; -layout(location = 9) in vec4 passParameterSem15; -layout(location = 10) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R12f = vec4(0.0); -vec4 R13f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex10 = 0.0; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem11; -R8f = passParameterSem14; -R9f = passParameterSem15; -R10f = passParameterSem16; -R11f.xw = (texture(textureUnitPS0, R5f.xy).xw); -R13f.x = (texture(textureUnitPS2, R6f.xy).w); -// 0 -backupReg0f = R7f.z; -R127f.x = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.y = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R7f.z = -(backupReg0f); -PV0f.z = R7f.z; -R123f.w = (R11f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -R127f.z = (R11f.w * 2.0 + -(1.0)); -PS0f = R127f.z; -// 1 -redcCUBE(vec4(PV0f.z,PV0f.z,R7f.x,R7f.y),vec4(R7f.y,R7f.x,PV0f.z,PV0f.z),cubeMapSTM,cubeMapFaceId); -R126f.x = cubeMapSTM.x; -R126f.y = cubeMapSTM.y; -R126f.z = cubeMapSTM.z; -R126f.w = intBitsToFloat(cubeMapFaceId); -PV1f.x = R126f.x; -PV1f.y = R126f.y; -PV1f.z = R126f.z; -PV1f.w = R126f.w; -R7f.x = (mul_nonIEEE(PV0f.y,PV0f.w) + R5f.z); -PS1f = R7f.x; -// 2 -R11f.x = R0f.x + -(R1f.x); -R7f.y = (mul_nonIEEE(R127f.x,R127f.z) + R5f.w); -R5f.z = PV1f.w; -R5f.w = intBitsToFloat(uf_remappedPS[1].x); -PS0f = 1.0 / abs(PV1f.z); -// 3 -R6f.x = R0f.z + -(R1f.z); -R6f.y = R0f.y + -(R1f.y); -R123f.z = (mul_nonIEEE(R126f.y,PS0f) + 1.5); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R126f.x,PS0f) + 1.5); -PV1f.w = R123f.w; -PS1f = 1.0 / R2f.w; -// 4 -R5f.x = PV1f.z; -R5f.y = PV1f.w; -R7f.z = mul_nonIEEE(R2f.x, PS1f); -R7f.w = mul_nonIEEE(R2f.y, PS1f); -R11f.w = 1.0 / R2f.w; -PS0f = R11f.w; -R12f.xyzw = (texture(textureUnitPS1, R7f.xy).xyzw); -R5f.xyz = (textureLod(textureUnitPS10, vec4(redcCUBEReverse(R5f.xy,floatBitsToInt(R5f.z)),cubeMapArrayIndex10),R5f.w).xyz); -R7f.x = (texture(textureUnitPS4, R7f.zw).x); -// 0 -PV0f.x = mul_nonIEEE(R12f.y, R12f.y); -PV0f.y = mul_nonIEEE(R12f.x, R12f.x); -R126f.z = R5f.x * 1.0; -PV0f.w = mul_nonIEEE(R12f.z, R12f.z); -R126f.x = R5f.y * 1.0; -PS0f = R126f.x; -// 1 -PV1f.x = PV0f.w * 1.0; -PV1f.y = PV0f.x * 1.0; -PV1f.z = PV0f.y * 1.0; -R126f.w = R5f.z * 1.0; -R127f.w = R8f.x + 0.0; -PS1f = R127f.w; -// 2 -R127f.x = R8f.y + 0.0; -R126f.y = (mul_nonIEEE(R6f.x,PV1f.x) + R1f.z); -R123f.z = (mul_nonIEEE(R6f.y,PV1f.y) + R1f.y); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R11f.x,PV1f.z) + R1f.x); -PV0f.w = R123f.w; -R127f.y = R8f.z + 0.0; -PS0f = R127f.y; -// 3 -R123f.x = (mul_nonIEEE(R126f.w,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R126f.x,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R126f.z,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -PV1f.z = R123f.z; -R126f.w = mul_nonIEEE(R4f.x, PV0f.w); -R125f.w = mul_nonIEEE(R4f.y, PV0f.z); -PS1f = R125f.w; -// 4 -R2f.x = R2f.z * R11f.w; -R123f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),PV1f.y) + R127f.x); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R4f.z, R126f.y); -R123f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),PV1f.z) + R127f.w); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),PV1f.x) + R127f.y); -PS0f = R122f.x; -// 5 -R127f.x = mul_nonIEEE(R126f.w, PV0f.w); -PV1f.x = R127f.x; -PV1f.y = mul_nonIEEE(R12f.w, R13f.x); -R126f.z = mul_nonIEEE(PV0f.z, PS0f); -PV1f.z = R126f.z; -R126f.w = mul_nonIEEE(R125f.w, PV0f.y); -PV1f.w = R126f.w; -// 6 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[3].y); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[3].x); -R123f.z = (mul_nonIEEE(R4f.w,PV1f.y) + -(R0f.w))*4.0; -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -PV0f.w = -(PV1f.z) + intBitsToFloat(uf_remappedPS[3].z); -// 7 -backupReg0f = R127f.x; -backupReg1f = R1f.w; -R127f.x = (mul_nonIEEE(PV0f.w,R10f.y) + R126f.z); -PV1f.x = R127f.x; -R127f.y = (mul_nonIEEE(PV0f.x,R10f.y) + R126f.w); -PV1f.y = R127f.y; -R126f.z = (mul_nonIEEE(PV0f.y,R10f.y) + backupReg0f); -PV1f.z = R126f.z; -R1f.w = mul_nonIEEE(backupReg1f, PV0f.z); -R1f.w = clamp(R1f.w, 0.0, 1.0); -// 8 -PV0f.y = R9f.z + -(PV1f.x); -PV0f.z = R9f.y + -(PV1f.y); -PV0f.w = R9f.x + -(PV1f.z); -// 9 -backupReg0f = R127f.x; -R127f.x = (mul_nonIEEE(PV0f.w,R9f.w) + R126f.z); -PV1f.x = R127f.x; -R126f.z = (mul_nonIEEE(PV0f.y,R9f.w) + backupReg0f); -PV1f.z = R126f.z; -R126f.w = (mul_nonIEEE(PV0f.z,R9f.w) + R127f.y); -PV1f.w = R126f.w; -// 10 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[4].y); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[4].x); -PV0f.w = -(PV1f.z) + intBitsToFloat(uf_remappedPS[4].z); -// 11 -backupReg0f = R10f.x; -backupReg0f = R10f.x; -backupReg0f = R10f.x; -R10f.x = (mul_nonIEEE(PV0f.y,backupReg0f) + R127f.x); -R10f.y = (mul_nonIEEE(PV0f.x,backupReg0f) + R126f.w); -R10f.z = (mul_nonIEEE(PV0f.w,backupReg0f) + R126f.z); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].w),R7f.x) + intBitsToFloat(uf_remappedPS[5].x)); -R123f.y = (mul_nonIEEE(R2f.x,intBitsToFloat(uf_remappedPS[5].w)) + -(intBitsToFloat(uf_remappedPS[5].y))); -PV0f.y = R123f.y; -// 1 -PS1f = 1.0 / PV0f.y; -// 2 -PV0f.z = -(intBitsToFloat(uf_remappedPS[5].z)) * PS1f; -R126f.z = 1.0 / intBitsToFloat(uf_remappedPS[6].y); -PS0f = R126f.z; -// 3 -PV1f.w = -(PV0f.z) + R127f.x; -// 4 -PV0f.y = PV1f.w * R126f.z; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -// 5 -PV1f.x = mul_nonIEEE(R1f.w, PV0f.y); -// 6 -R10f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R10f.x, R10f.y, R10f.z, R10f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R10f.x * ffred, R10f.y * ffgreen, R10f.z * ffblue, R10f.w * ffopacity); // RGB for fog fields in the distance -} diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/ReadMe.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/ReadMe.txt deleted file mode 100644 index 574b6024..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/ReadMe.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Information -# by SkalFate -# ---------------------- - -Example Preset : - -// Changing it here doesn't do anything, this is for demonstration. Change it in rules.txt file instead. - -[Preset] -name = Custom Preset -$ffopacity = 1 -$ffred = 2 -$ffgreen = 1 -$ffblue = 2 - -# (ffopacity) = Fog Transparency/Opacity - how thick you want the fog fields to look -# 0 = transparent -# ------ Values are multiplied, so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] - -# (ffred, ffgreen, ffblue ) = RGB - Red, Green, Blue - Changes the color of the fog fields. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/rules.txt b/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/rules.txt deleted file mode 100644 index 507fa53f..00000000 --- a/Mods/BreathOfTheWild_DistantFogRemoval/Botw_WorldFogFields/rules.txt +++ /dev/null @@ -1,100 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Fog Fields Pack -path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/World Fog Fields" -description = Can Remove Fog Fields from the whole world. Change its RGB color. -version = 4 - - -[Preset] -name = Fog Fields Disabled -$ffopacity = 0 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Fog Fields Enabled -$ffopacity = 1 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = ---------------------------------------- -$ffopacity = 1 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Fog Fields Opacity 50% -$ffopacity = 0.5 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Fog Fields Opacity 2x -$ffopacity = 2 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Fog Fields Opacity 3x -$ffopacity = 3 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = ---------------------------------------- -$ffopacity = 1 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Fog Fields Red -$ffopacity = 1 -$ffred = 1 -$ffgreen = 0 -$ffblue = 0 - -[Preset] -name = Fog Fields Green -$ffopacity = 1 -$ffred = 0 -$ffgreen = 1 -$ffblue = 0 - -[Preset] -name = Fog Fields Blue -$ffopacity = 1 -$ffred = 0 -$ffgreen = 0 -$ffblue = 1 - -[Preset] -name = ---------------------------------------- -$ffopacity = 1 -$ffred = 1 -$ffgreen = 1 -$ffblue = 1 - -[Preset] -name = Custom Preset -$ffopacity = 1 -$ffred = 2 -$ffgreen = 1 -$ffblue = 2 - -# Information -# by SkalFate -# ---------------------- -# (ffopacity) = Fog Transparency/Opacity - how thick or thin you want the fog fields to look -# ------ Values are multiplied, so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] - -# (ffred, ffgreen, ffblue ) = RGB - Red, Green, Blue - Changes the color of the fog fields. -# ------ Values are multiplied so if you want to lower use [0.01 - 1.0], or if you want to go higher go from [1.0 - X.X] \ No newline at end of file diff --git a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/6fa2baef8a4ece42_0000000000000709_ps.txt b/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/6fa2baef8a4ece42_0000000000000709_ps.txt deleted file mode 100644 index d516bb85..00000000 --- a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/6fa2baef8a4ece42_0000000000000709_ps.txt +++ /dev/null @@ -1,171 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 6fa2baef8a4ece42 -// Divine Laser Beams Customizer - rings -// Credit for hsv functions below -// http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define RAINBOW_EFFECT $rainbow // [0 or 1] set it to 1 to enable rainbow beams effect. in that case, HUE_ROTATION is ignored -#define DISABLE_BEAMS $disableBeams // [0 or 1] set it to 1 to hide the lasers completely -#define HUE_ROTATION $hue //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://i.imgur.com/5UpyIGh.png -#define SATURATION_FACTOR 1.0 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 1.0 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem14; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -#if (DISABLE_BEAMS == 1) && (RAINBOW_EFFECT == 0) -discard; -#endif -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem14; -R7f.xw = (texture(textureUnitPS0, R5f.xy).xw); -// 0 -R123f.x = (R7f.x * 2.0 + -(1.0)); -PV0f.x = R123f.x; -R123f.y = (R7f.w * 2.0 + -(1.0)); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.w = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = (mul_nonIEEE(PV0f.w,PV0f.x) + R5f.z); -R5f.y = (mul_nonIEEE(PV0f.z,PV0f.y) + R5f.w); -PV1f.z = R2f.z * PS0f; -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = (mul_nonIEEE(PV1f.z,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R2f.z = mul_nonIEEE(backupReg1f, PS1f); -R7f.x = mul_nonIEEE(R0f.x, R4f.x); -PS0f = R7f.x; -R2f.z = (texture(textureUnitPS4, R2f.xz).x); -R5f.x = (texture(textureUnitPS1, R5f.xy).w); -// 0 -R123f.x = (mul_nonIEEE(R4f.w,R5f.x) + -(R0f.w)); -PV0f.x = R123f.x; -R127f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R2f.z) + intBitsToFloat(uf_remappedPS[1].x)); -R7f.z = mul_nonIEEE(R0f.z, R4f.z); -PS0f = 1.0 / R2f.y; -// 1 -R127f.x = mul_nonIEEE(R1f.w, PV0f.x); -R127f.x = clamp(R127f.x, 0.0, 1.0); -R7f.y = mul_nonIEEE(R0f.y, R4f.y); -PV1f.w = -(intBitsToFloat(uf_remappedPS[1].z)) * PS0f; -R127f.w = 1.0 / intBitsToFloat(uf_remappedPS[2].y); -PS1f = R127f.w; -// 2 -PV0f.x = -(PV1f.w) + R127f.y; -// 3 -PV1f.z = PV0f.x * R127f.w; -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -// 4 -PV0f.y = mul_nonIEEE(R127f.x, PV1f.z); -// 5 -PV1f.x = mul_nonIEEE(R3f.x, PV0f.y); -// 6 -R7f.w = mul_nonIEEE(R6f.w, PV1f.x); -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -#if (RAINBOW_EFFECT == 1) -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + 1.5*R5f.y, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -#else -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -#endif -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/de960d36a997b34d_0000000000000709_ps.txt b/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/de960d36a997b34d_0000000000000709_ps.txt deleted file mode 100644 index 002fbaef..00000000 --- a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/de960d36a997b34d_0000000000000709_ps.txt +++ /dev/null @@ -1,189 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader de960d36a997b34d -// Divine Laser Beams Customizer - beams -// Credit for hsv functions below -// http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define RAINBOW_EFFECT $rainbow // [0 or 1] set it to 1 to enable rainbow beams effect. in that case, HUE_ROTATION is ignored -#define DISABLE_BEAMS $disableBeams // [0 or 1] set it to 1 to hide the lasers completely -#define HUE_ROTATION $hue //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://i.imgur.com/5UpyIGh.png -#define SATURATION_FACTOR 1.0 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 1.0 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem12; -layout(location = 7) in vec4 passParameterSem14; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -#if (DISABLE_BEAMS == 1) && (RAINBOW_EFFECT == 0) -discard; -#endif -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f = passParameterSem8; -R6f = passParameterSem12; -R7f = passParameterSem14; -R1f.w = (texture(textureUnitPS0, R5f.xy).x); -// 0 -backupReg0f = R4f.y; -R127f.x = 1.0; -R4f.y = R5f.w + 0.0; -R3f.z = -(R3f.y) + backupReg0f; -R123f.w = (R1f.w * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R5f.z; -R5f.x = mul_nonIEEE(R2f.x, PS0f); -R5f.y = mul_nonIEEE(R2f.y, PS0f); -R5f.z = R0f.x + -(R1f.x); -R5f.w = R0f.y + -(R1f.y); -R4f.x = (PV0f.w * intBitsToFloat(0x3dcccccd) + backupReg0f); -PS1f = R4f.x; -// 2 -backupReg0f = R6f.y; -tempf.x = dot(vec4(R6f.x,backupReg0f,R6f.z,R127f.x),vec4(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(uf_remappedPS[0].y),intBitsToFloat(uf_remappedPS[0].z),intBitsToFloat(uf_remappedPS[0].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R6f.y = tempf.x; -R6f.x = 1.0 / R2f.w; -PS0f = R6f.x; -R5f.x = (texture(textureUnitPS4, R5f.xy).x); -R4f.xyzw = (texture(textureUnitPS1, R4f.xy).xyzw); -// 0 -R127f.x = mul_nonIEEE(R0f.w, R4f.w); -R127f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R5f.x) + intBitsToFloat(uf_remappedPS[1].x)); -PV0f.z = -(R3f.y) + -(R6f.y); -PV0f.w = R2f.z * R6f.x; -PS0f = 1.0 / R3f.z; -// 1 -PV1f.x = mul_nonIEEE(PV0f.z, PS0f); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R123f.y = (mul_nonIEEE(PV0f.w,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -PV1f.y = R123f.y; -R127f.w = R0f.z + -(R1f.z); -R0f.x = (mul_nonIEEE(R5f.z,R4f.x) + R1f.x); -PS1f = R0f.x; -// 2 -R0f.y = (mul_nonIEEE(R5f.w,R4f.y) + R1f.y); -R127f.z = mul_nonIEEE(R127f.x, PV1f.x); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PS0f = 1.0 / PV1f.y; -// 3 -R0f.z = (mul_nonIEEE(R127f.w,R4f.z) + R1f.z); -PV1f.w = -(intBitsToFloat(uf_remappedPS[1].z)) * PS0f; -R127f.w = 1.0 / intBitsToFloat(uf_remappedPS[2].y); -PS1f = R127f.w; -// 4 -PV0f.x = -(PV1f.w) + R127f.y; -// 5 -PV1f.z = PV0f.x * R127f.w; -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -// 6 -PV0f.y = mul_nonIEEE(R127f.z, PV1f.z); -// 7 -PV1f.x = mul_nonIEEE(R3f.x, PV0f.y); -// 8 -R0f.w = mul_nonIEEE(R7f.w, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -#if (RAINBOW_EFFECT == 1) -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + 3.0*R5f.y, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -#else -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -#endif -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/rules.txt b/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/rules.txt deleted file mode 100644 index 4c3f816b..00000000 --- a/Mods/BreathOfTheWild_DivineLaserBeamCustomizer/rules.txt +++ /dev/null @@ -1,48 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Divine Laser Beams Customizer -path = "The Legend of Zelda: Breath of the Wild/Mods/Divine Laser Beams Customizer" -description = Allows customization of the color of the Divine Beasts's Laser Beams. They can also be completely hidden. Inside the shader you can find other options like saturation and transparency. -version = 4 - -[Preset] -name = Red (Default) -$hue:int = 0 -$rainbow:int = 0 -$disableBeams:int = 0 - -[Preset] -name = Blue -$hue:int = 225 -$rainbow:int = 0 -$disableBeams:int = 0 - -[Preset] -name = Green -$hue:int = 120 -$rainbow:int = 0 -$disableBeams:int = 0 - -[Preset] -name = Yellow -$hue:int = 45 -$rainbow:int = 0 -$disableBeams:int = 0 - -[Preset] -name = Purple -$hue:int = 300 -$rainbow:int = 0 -$disableBeams:int = 0 - -[Preset] -name = Disabled -$hue:int = 0 -$rainbow:int = 0 -$disableBeams:int = 1 - -[Preset] -name = Rainbow -$hue:int = 0 -$rainbow:int = 1 -$disableBeams:int = 0 diff --git a/Mods/BreathOfTheWild_ExtendedMemory/patch_extendedHeaps.asm b/Mods/BreathOfTheWild_ExtendedMemory/patch_extendedHeaps.asm deleted file mode 100644 index b9ac73ee..00000000 --- a/Mods/BreathOfTheWild_ExtendedMemory/patch_extendedHeaps.asm +++ /dev/null @@ -1,37 +0,0 @@ -[BotW_ExtendedMemory_V208] -moduleMatches = 0x6267BFD0 - -; BotW's heap system is quite complex with heaps being allocated within heaps. This work-in-progress hack only expands the size of a few important heaps - -; Useful functions: -; CreateHeap (inside other heap) 0x3624FAC and 0x3624108 -; Another CreateHeap function (unknown purpose) 0x30A857C - -0x02C5E660 = lis r9, 0x8B60 ; add 0x50000000 to main gameheap which by default has a fixed size of 0x3B600000. Can't make it larger due to overlay arena being in the way - -SaveAreaHeapSize = 8 * 1024 * 1024; // 8MiB (default is 2312KiB) -TriggerParamHeapSize = 8 * 1024 * 1024; // 8MiB (default is around 2616KiB) -HavokMainHeapSize = 80 * 1024 * 1024; // 80MiB (default is 30MiB) - -; GameDataHeap -0x032015E0 = lis r3, (SaveAreaHeapSize@ha + TriggerParamHeapSize@ha) - -; GameDataHeap -> SaveArea heap -0x03201A44 = lis r3, SaveAreaHeapSize@ha -0x03201A5C = addi r3, r3, SaveAreaHeapSize@l - -; GameDataHeap -> TriggerParam -; Uses the remaining allocatable size of GameDataHeap -; Heap creation is near 0x03201174 - -; HavokMainHeap -0x037FD6A4 = lis r6, HavokMainHeapSize@ha - -; Overlay arena -0x030AA5F4 = lis r7, 0x4000 ; expand overlay arena root heap size to 0x40000000 (1GiB) from default 0x1C000000 (448MiB). Can't make it larger due to forground bucket memory being in the way (starts at 0xE0000000) - ; Extra size for overlay arena from rules.txt is 0x24000000 (576MiB) -; Overlay arena -> FixedHeap -0x034ED614 = lis r3, 0x0C20 + 0x1000 ; add 256MiB - -; Overlay arena -> MoveableMemoryHeap -0x034ED66C = lis r3, 0x0FD0 + 0x1000 ; add 256MiB \ No newline at end of file diff --git a/Mods/BreathOfTheWild_ExtendedMemory/rules.txt b/Mods/BreathOfTheWild_ExtendedMemory/rules.txt deleted file mode 100644 index 763cb481..00000000 --- a/Mods/BreathOfTheWild_ExtendedMemory/rules.txt +++ /dev/null @@ -1,13 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Extended Memory -path = "The Legend of Zelda: Breath of the Wild/Mods/Extended Memory" -description = Requires Cemu 1.21.0 or above|Adds an extra 2GB of emulated RAM. Some mods may require this. -version = 6 - -[RAM] -mapping0 = 0x10000000-0xA0000000 # extend MEM2 region (default range is 0x10000000-0x50000000) -mapping1 = 0xA0000000-0xE0000000 # extend overlay region (default range is 0xA0000000-0xBC000000) - -# If you've got any improvements for this pack (since it's currently work-in-progress), please let us know in the Cemu Graphic Packs github (https://github.com/slashiee/cemu_graphic_packs) via an issue. -# Also, it'd be appreciated if the code for this graphic pack wasn't included inside of mods for the sake of mod compatibility. \ No newline at end of file diff --git a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/patches.txt b/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/patches.txt deleted file mode 100644 index 9d48ed8e..00000000 --- a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/patches.txt +++ /dev/null @@ -1,261 +0,0 @@ -[BotwFPSV208] -moduleMatches = 0x6267BFD0 - -#rodata constants -_float.5 = 0x100005E0 -_float1 = 0x10000670 -_float30 = 0x101E7964 -#_float30 = 0x10032238 -_convSub = 0x10000BB0 -_float32 = 0x1021FCEC -_arrowsDiv = 0x1001CCAC -_arrowsDer = 0x1001CB18 -_mapSpeed = 0x1022F880 -0x1031E2C0 = .float 2 - - -#TestCave -codeCaveSize = 0x124 - -_fpsCalc = 0x00000018 -0x00000000 = .float 3 ; Don't edit me! -_lowlimit = 0x00000000 -0x00000004 = .float 62156250 -_busSpeed = 0x00000004 -_averageFPS = 0x00000008 -_speedDiv = 0x0000000C - -0x00000010 = .float ($amount_of_FPS_averaged) -_bufferSize = 0x00000010 -0x00000014 = .int (4*$amount_of_FPS_averaged+4) -_numBytes = 0x00000014 - -0x00000018 = stw r0, 0x78(r30) #orig instruction we are replacing ;ticks between frame are currently in r12. -0x0000001C = xoris r12, r12, 0x8000 #flip the sign bit of int ticks for floating point conversion -0x00000020 = stw r12, 0xD4(r30) #store sign flipped ticks in memory as lower half of double -0x00000024 = lis r12, 0x4330 #create upper half of ticks double -0x00000028 = stw r12, 0xD0(r30) #store it in upper half of memory -0x0000002C = lfd f10, 0xD0(r30) #Load full double ticks into f10 -0x00000030 = lis r12, _convSub@ha #load number to subtract from tick double... -0x00000034 = lfd f12, _convSub@l(r12) #...to create tick float into f12 -0x00000038 = fsub f10, f10, f12 #Do the subtraction -0x0000003C = frsp f10, f10 #round to single precision and tick float is in f10 -0x00000040 = lis r12, _float1@ha #Load float of 1... -0x00000044 = lfs f12, _float1@l(r12) #...into f12 -0x00000048 = fdivs f10, f12, f10 #divide 1 by ticks -0x0000004C = lis r12, _busSpeed@ha #load wii u bus speed... -0x00000050 = lfs f12, _busSpeed@l(r12) #...into f12 -0x00000054 = fmuls f10, f12, f10 #multiply bus speed to have current fps in f10. (1/ticks)*bus speed - -0x00000058 = mr r3, r30 #Make a copy of r30 so we can screw around with it -0x0000005C = addi r3, r3, 0xE0 #Add offset to available memory space -0x00000060 = stw r3, 0xD8(r30) #Save our virgin memory address so we can retrieve it later -0x00000064 = lwz r12, 0xDC(r30) #load counter into r12 -0x00000068 = add r3, r3, r12 #add our counter to the offset for our memory location -0x0000006C = stfsu f10, 0x04(r3) #store current fps to memory location +4 and update efective address into r3 -0x00000070 = lfs f7, 0xE0(r30) #Load fpsSum into f7 -0x00000074 = fadds f10, f10, f7 #Add currentFPS to fpsSum -0x00000078 = addi r12, r12, 0x04 #Incriment counter by 4 -0x0000007C = lis r11, _numBytes@ha -0x00000080 = lwz r11, _numBytes@l(r11) -0x00000084 = cmpw r12, r11 #Compare counter with 0x80(32 address from base memory location) -0x00000088 = bne .+0x0C #If we write our last current fps then -0x0000008C = lis r12, 0 #Zero our counter -0x00000090 = lwz r3, 0xD8(r30) #and reload our virgin memory offset -0x00000094 = stw r12, 0xDC(r30) #Store counter r12 to memory location -0x00000098 = lfs f7, 0x04(r3) #load oldest fps into f7 -0x0000009C = fsubs f10, f10, f7 #Subtract oldest fps from fpsSum -0x000000A0 = stfs f10, 0xE0(r30) #store fpsSum back into it's memory address. -0x000000A4 = lis r12, _bufferSize@ha #load 32 as a float ... -0x000000A8 = lfs f7, _bufferSize@l(r12) #...into f7 -0x000000AC = fdivs f10, f10, f7 #divide fps sum by 32, the number of saved fps values, to get average fps over 32 frames -0x000000B0 = lis r12, _averageFPS@ha #Store averaged fps... -0x000000B4 = stfs f10, _averageFPS@l(r12) #... into _averageFPS variable. - -0x000000B8 = lis r12, _float30@ha #Setting up speed diviser. 30/current fps = game speed. ex 30/60 = .5 game speed -0x000000BC = lfs f12, _float30@l(r12) #load float 30 into f12 -0x000000C0 = fdivs f7, f12, f10 #do the division f10 is our current fps(now averaged) -0x000000C4 = lis r12, _lowlimit@ha #set up a low limit to not set game speed below. here: 10/30 = 3 -0x000000C8 = lfs f12, _lowlimit@l(r12) #Set 3 as the low limit into f12 -0x000000CC = lis r12, _speedDiv@ha #prepare to store game speed into _speedDiv but wait. -0x000000D0 = fcmpu cr0, f7, f12 #compare Compare lowlimit with current working game speed -0x000000D4 = bge .+0x08 #If game speed is not being set below 10 fps... -0x000000D8 = b .+0x08 #then skip the next line -0x000000DC = fmr f7, f12 #else overrite working current speed with low limit as new working current speed -0x000000E0 = stfs f7, _speedDiv@l(r12) #store working current speed into _speedDiv - -0x000000E4 = lis r12, _float30@ha #An attempt to port arrow fix to fps++ -0x000000E8 = lfs f12, _float30@l(r12) #load float30 into f12 -0x000000EC = fmuls f10, f7, f12 #arrowsDiv = 30 * speedDiv -0x000000F0 = lis r12, _arrowsDiv@ha -0x000000F4 = stfs f10, _arrowsDiv@l(r12) #store the results -0x000000F8 = lis r12, _float.5@ha #load float of .5 into f12 -0x000000FC = lfs f12, _float.5@l(r12) -0x00000100 = fdivs f10, f12, f7 #arrowsDer = .5 / speedDiv -0x00000104 = lis r12, _arrowsDer@ha -0x00000108 = stfs f10, _arrowsDer@l(r12) #store the results -0x0000010C = blr #return - -_arrowTimeDrain = 0x00000110 -0x00000110 = lfs f1, 0xFC(r11) -0x00000114 = lis r12, _speedDiv@ha -0x00000118 = lfs f0, _speedDiv@l(r12) -0x0000011C = fmuls f1, f1, f0 -0x00000120 = blr - -#codeChanges -0x031FA97C = bla _fpsCalc -0x03793328 = nop -0x03793334 = nop -0x03793378 = lis r29, _speedDiv@ha -0x03793380 = lfs f0, _speedDiv@L(r29) -0x0379338C = nop -0x03415C1C = lis r12, _speedDiv@ha -0x03415C24 = lfs f0, _speedDiv@l(r12) -0x03415C2C = nop -0x02D90D2C = lis r10, _averageFPS@ha -0x02D90D30 = lfs f11, _averageFPS@l(r10) -0x02D90D88 = lis r10, _averageFPS@ha -0x02D90D8C = lfs f11, _averageFPS@l(r10) -0x02D5F760 = bla _arrowTimeDrain -0x037DC35C = lis r12, _speedDiv@ha #Audio fix -0x037DC360 = lfs f13, _speedDiv@l(r12) -0x02F62B3C = lis r12, _speedDiv@ha #map scroll fix -0x02F62B40 = lfs f0, _speedDiv@l(r12) - - - - -#break all forms of frame limiting -0x031FACD0 = nop ; disable vsync -0x031FACF4 = nop ; disable vsync loop - - - -[BotwFPSv176V192] -moduleMatches = 0xFD091F9F, 0xD472D8A5 - -# rodata constants -_float.5 = 0x100005E0 -_float1 = 0x10000670 -_float30 = 0x101E78F4 -_float32 = 0x1025D1A8 -_convSub = 0x10000BB0 -_arrowsDiv = 0x1001CCAC -_arrowsDer = 0x1001CB18 - - -#TestCave -codeCaveSize = 0x124 - -_fpsCalc = 0x00000018 -0x00000000 = .float 3 ; Don't edit me! -_lowlimit = 0x00000000 -0x00000004 = .float 62156250 -_busSpeed = 0x00000004 -_averageFPS = 0x00000008 -_speedDiv = 0x0000000C - -0x00000010 = .float ($amount_of_FPS_averaged) -_bufferSize = 0x00000010 -0x00000014 = .int (4*$amount_of_FPS_averaged+4) -_numBytes = 0x00000014 - -0x00000018 = stw r0, 0x78(r30) #orig instruction we are replacing ;ticks between frame are currently in r12. -0x0000001C = xoris r12, r12, 0x8000 #flip the sign bit of int ticks for floating point conversion -0x00000020 = stw r12, 0xD4(r30) #store sign flipped ticks in memory as lower half of double -0x00000024 = lis r12, 0x4330 #create upper half of ticks double -0x00000028 = stw r12, 0xD0(r30) #store it in upper half of memory -0x0000002C = lfd f10, 0xD0(r30) #Load full double ticks into f10 -0x00000030 = lis r12, _convSub@ha #load number to subtract from tick double... -0x00000034 = lfd f12, _convSub@l(r12) #...to create tick float into f12 -0x00000038 = fsub f10, f10, f12 #Do the subtraction -0x0000003C = frsp f10, f10 #round to single precision and tick float is in f10 -0x00000040 = lis r12, _float1@ha #Load float of 1... -0x00000044 = lfs f12, _float1@l(r12) #...into f12 -0x00000048 = fdivs f10, f12, f10 #divide 1 by ticks -0x0000004C = lis r12, _busSpeed@ha #load wii u bus speed... -0x00000050 = lfs f12, _busSpeed@l(r12) #...into f12 -0x00000054 = fmuls f10, f12, f10 #multiply bus speed to have current fps in f10. (1/ticks)*bus speed - -0x00000058 = mr r3, r30 #Make a copy of r30 so we can screw around with it -0x0000005C = addi r3, r3, 0xE0 #Add offset to available memory space -0x00000060 = stw r3, 0xD8(r30) #Save our virgin memory address so we can retrieve it later -0x00000064 = lwz r12, 0xDC(r30) #load counter into r12 -0x00000068 = add r3, r3, r12 #add our counter to the offset for our memory location -0x0000006C = stfsu f10, 0x04(r3) #store current fps to memory location +4 and update efective address into r3 -0x00000070 = lfs f7, 0xE0(r30) #Load fpsSum into f7 -0x00000074 = fadds f10, f10, f7 #Add currentFPS to fpsSum -0x00000078 = addi r12, r12, 0x04 #Incriment counter by 4 -0x0000007C = lis r11, _numBytes@ha -0x00000080 = lwz r11, _numBytes@l(r11) -0x00000084 = cmpw r12, r11 #Compare counter with 0x80(32 address from base memory location) -0x00000088 = bne .+0x0C #If we write our last current fps then -0x0000008C = lis r12, 0 #Zero our counter -0x00000090 = lwz r3, 0xD8(r30) #and reload our virgin memory offset -0x00000094 = stw r12, 0xDC(r30) #Store counter r12 to memory location -0x00000098 = lfs f7, 0x04(r3) #load oldest fps into f7 -0x0000009C = fsubs f10, f10, f7 #Subtract oldest fps from fpsSum -0x000000A0 = stfs f10, 0xE0(r30) #store fpsSum back into it's memory address. -0x000000A4 = lis r12, _bufferSize@ha #load 32 as a float ... -0x000000A8 = lfs f7, _bufferSize@l(r12) #...into f7 -0x000000AC = fdivs f10, f10, f7 #divide fps sum by 32, the number of saved fps values, to get average fps over 32 frames -0x000000B0 = lis r12, _averageFPS@ha #Store averaged fps... -0x000000B4 = stfs f10, _averageFPS@l(r12) #... into _averageFPS variable. - -0x000000B8 = lis r12, _float30@ha #Setting up speed diviser. 30/current fps = game speed. ex 30/60 = .5 game speed -0x000000BC = lfs f12, _float30@l(r12) #load float 30 into f12 -0x000000C0 = fdivs f7, f12, f10 #do the division f10 is our current fps(now averaged) -0x000000C4 = lis r12, _lowlimit@ha #set up a low limit to not set game speed below. here: 10/30 = 3 -0x000000C8 = lfs f12, _lowlimit@l(r12) #Set 3 as the low limit into f12 -0x000000CC = lis r12, _speedDiv@ha #prepare to store game speed into _speedDiv but wait. -0x000000D0 = fcmpu cr0, f7, f12 #compare Compare lowlimit with current working game speed -0x000000D4 = bge .+0x08 #If game speed is not being set below 10 fps... -0x000000D8 = b .+0x08 #then skip the next line -0x000000DC = fmr f7, f12 #else overrite working current speed with low limit as new working current speed -0x000000E0 = stfs f7, _speedDiv@l(r12) #store working current speed into _speedDiv - -0x000000E4 = lis r12, _float30@ha #An attempt to port arrow fix to fps++ -0x000000E8 = lfs f12, _float30@l(r12) #load float30 into f12 -0x000000EC = fmuls f10, f7, f12 #arrowsDiv = 30 * speedDiv -0x000000F0 = lis r12, _arrowsDiv@ha -0x000000F4 = stfs f10, _arrowsDiv@l(r12) #store the results -0x000000F8 = lis r12, _float.5@ha #load float of .5 into f12 -0x000000FC = lfs f12, _float.5@l(r12) -0x00000100 = fdivs f10, f12, f7 #arrowsDer = .5 / speedDiv -0x00000104 = lis r12, _arrowsDer@ha -0x00000108 = stfs f10, _arrowsDer@l(r12) #store the results -0x0000010C = blr #return - -_arrowTimeDrain = 0x00000110 -0x00000110 = lfs f1, 0xFC(r11) -0x00000114 = lis r12, _speedDiv@ha -0x00000118 = lfs f0, _speedDiv@l(r12) -0x0000011C = fmuls f1, f1, f0 -0x00000120 = blr - -#codeChanges -0x031F9E80 = bla _fpsCalc -0x03792620 = nop -0x0379262C = nop -0x03792670 = lis r29, _speedDiv@ha -0x03792678 = lfs f0, _speedDiv@l(r29) -0x03792684 = nop -0x03414EF8 = lis r12, _speedDiv@ha -0x03414F00 = lfs f0, _speedDiv@l(r12) -0x03414F08 = nop -0x02D90790 = lis r10, _averageFPS@ha -0x02D90794 = lfs f11, _averageFPS@l(r10) -0x02D907EC = lis r10, _averageFPS@ha -0x02D907F0 = lfs f11, _averageFPS@l(r10) -0x02D5F200 = bla _arrowTimeDrain -0x037DB654 = lis r12, _speedDiv@ha -0x037DB658 = lfs f13, _speedDiv@l(r12) - -# Break all forms of frame limiting -0x031FA1D4 = nop -0x031FA1F8 = nop - - - - diff --git a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/readme.txt b/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/readme.txt deleted file mode 100644 index 4596d83b..00000000 --- a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -Since this work isn't wholly mine anymore I feel it needs a readme. -Thanks to the contributors Crementif and epigramx and as always rajkosto for the input early on and for making it possible to begin with. Also thanks to the Cemu dev team for creating such a fun emulator. They recently added a debugger to aid in projects like this and I can't wait to try it out. - -Credits for the arrow fix go to epigramx and the initial porting of it to FPS++ by Crementif. It's always nice to see people contribute to make something better. I fully welcome others messing around with this and have added comments to all the original code in hope that it is easier to understand. But I suck at comments as much as I suck at code. If you have questions about patching feel free to ask me on Discord. I would like to avoid situations where a whole bunch of lines are copy pasted into FPS++, where 90% of them don't do anything, claiming it fixes things it doesn't. And fragmenting the user base with regards to which FPS++ they should use. diff --git a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/rules.txt b/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/rules.txt deleted file mode 100644 index e0421e0f..00000000 --- a/Mods/BreathOfTheWild_FPS++/Dynamic Gamespeed/rules.txt +++ /dev/null @@ -1,26 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Dynamic Gamespeed -path = "The Legend of Zelda: Breath of the Wild/Mods/FPS++/Dynamic Gamespeed (Required)" -description = DON'T USE STATIC FPS WITH FPS++! Don't forget to set the FPS limit if you want to exceed 30 FPS. Lowering the amount of averaged frames, how more reactive the gamespeed becomes to your FPS. Made by Xalphenos, Crementif, and epigramx. -version = 4 - -[Preset] -name = 16 Frames Averaged -$amount_of_FPS_averaged = 16 - -[Preset] -name = 8 Frames Averaged -$amount_of_FPS_averaged = 8 - -[Preset] -name = 6 Frames Averaged -$amount_of_FPS_averaged = 6 - -[Preset] -name = 4 Frames Averaged -$amount_of_FPS_averaged = 4 - -[Preset] -name = 3 Frames Averaged -$amount_of_FPS_averaged = 3 diff --git a/Mods/BreathOfTheWild_FPS++/Fence Method/patches.txt b/Mods/BreathOfTheWild_FPS++/Fence Method/patches.txt deleted file mode 100644 index 643602a7..00000000 --- a/Mods/BreathOfTheWild_FPS++/Fence Method/patches.txt +++ /dev/null @@ -1,81 +0,0 @@ -[BotwFenceV208] -moduleMatches = 0x6267BFD0 - -# Code Cave -codeCaveSize = 0x50 - -# Fence Method Value -_fenceMethod = 0x0000000 -0x0000000 = .int $fenceMethod - -# Performance Fence method - -_conditionalPerformanceFence = 0x0000004 -0x0000004 = lis r11, _fenceMethod@ha -0x0000008 = lwz r11, _fenceMethod@l(r11) ; Load the fence method value -0x000000C = cmpwi r11, 1 ; Compare the skip fence method with the fence method that's set, store comparison to the conditional register -0x0000010 = bne .+0x0C ; If the conditional register isn't equel to the performance fence method, skip the next two instructions -0x0000014 = li r0, 1 # Performance fence always set the fence skip value to 1 -0x0000018 = blr ; Return to the instruction that jumped to this part to the code cave -0x000001C = lwz r0, 0x388(r31) ; Instruction that gets executed if performance fence isn't used, this is the original instruction. -0x0000020 = blr ; Return to the instruction that jumped to this part to the code cave - -# Accurate and Skip Fence methods - -_conditionalAccurateAndSkipFence = 0x0000024 -0x0000024 = lis r5, _fenceMethod@ha -0x0000028 = lwz r11, _fenceMethod@l(r5) ; Load the fence method value -0x000002C = cmpwi r11, 2 ; Compare the accurate fence method with the fence method that's set, store comparison to the conditional register -0x0000030 = li r5, 6 ; Original instruction that got replaced with the jump -0x0000034 = add r6, r12, r0 ; Instruction that got replaced with the fence skip check -0x0000038 = bne .+0x10 ; If the conditional register isn't equel to accurate fence, skip the next three instructions (the ones that are the accurate fence) to the next comparison instruction. -0x000003C = cmpwi r6, 500 # Accurate fence basically checks if it's the first 500 frames of the game, in which case it does a full fence. -0x0000040 = blt .+0x08 -0x0000044 = subi r6, r6, 1 -0x0000048 = cmpwi r11, 3 ; Compare the skip fence method with the fence method that's set, in preparation of the fence skip since it stores the result in the conditional register. -0x000004C = blr ; Return to the instruction that jumped to this part to the code cave - -0x31FAAE8 = bla _conditionalPerformanceFence ; Jumps to the conditional performance part of the code cave that creates the performance fence skip if that preset has been chosen. -0x31FAAF8 = bla _conditionalAccurateAndSkipFence ; Jumps to the conditional accurate part of the code cave that creates the accurate fence skip if that preset has been chosen. -0x31FAAFC = beq .+0x08 ; This part is the crucial part of the fence skip method. It skips the GX2SetGPUFence call in which case there's no fence skip, if the conditional register that has previously been set by the accurate code cave was true. - -[BotwFenceV176V192] -moduleMatches = 0xFD091F9F, 0xD472D8A5 - -# Code Cave -codeCaveSize = 0x50 - -# Fence Method Value -_fenceMethod = 0x0000000 -0x0000000 = .int $fenceMethod - -# Performance Fence method - -_conditionalPerformanceFence = 0x0000004 -0x0000004 = lis r11, _fenceMethod@ha -0x0000008 = lwz r11, _fenceMethod@l(r11) -0x000000C = cmpwi r11, 1 -0x0000010 = bne .+0x0C -0x0000014 = li r0, 1 -0x0000018 = blr -0x000001C = lwz r0, 0x388(r31) -0x0000020 = blr - -# Accurate and Skip Fence methods - -_conditionalAccurateAndSkipFence = 0x0000024 -0x0000024 = lis r5, _fenceMethod@ha -0x0000028 = lwz r11, _fenceMethod@l(r5) -0x000002C = cmpwi r11, 2 -0x0000030 = li r5, 6 -0x0000034 = add r6, r12, r0 -0x0000038 = bne .+0x10 -0x000003C = cmpwi r6, 500 -0x0000040 = blt .+0x08 -0x0000044 = subi r6, r6, 1 -0x0000048 = cmpwi r11, 3 -0x000004C = blr - -0x31F9FEC = bla _conditionalPerformanceFence -0x31F9FFC = bla _conditionalAccurateAndSkipFence -0x31FA000 = beq .+0x08 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_FPS++/Fence Method/rules.txt b/Mods/BreathOfTheWild_FPS++/Fence Method/rules.txt deleted file mode 100644 index c86a0b05..00000000 --- a/Mods/BreathOfTheWild_FPS++/Fence Method/rules.txt +++ /dev/null @@ -1,18 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Fence Method -path = "The Legend of Zelda: Breath of the Wild/Mods/FPS++/Fence Method (Required)" -description = Performance fence gives better performance with some CPU's and some (lower) resolutions. Accurate fence likely solves all of the milk water. Fence skip will likely cause milk water. -version = 4 - -[Preset] -name = Performance Fence -$fenceMethod:int = 1 - -[Preset] -name = Accurate Fence -$fenceMethod:int = 2 - -[Preset] -name = Fence Skip -$fenceMethod:int = 3 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_FPS++/Limit FPS/rules.txt b/Mods/BreathOfTheWild_FPS++/Limit FPS/rules.txt deleted file mode 100644 index 1a2e4f4c..00000000 --- a/Mods/BreathOfTheWild_FPS++/Limit FPS/rules.txt +++ /dev/null @@ -1,57 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Set FPS Limit -path = "The Legend of Zelda: Breath of the Wild/Mods/FPS++/Set FPS Limit (Required)" -description = Sets a cap on the FPS. If you want no gameplay bugs, use 30FPS. These bugs range from crashing after cutscenes, certain boss fights will fly away to the horizon and some physics are more intense. -version = 4 - -[Preset] -name = 60FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 60 - -[Preset] -name = 30FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 30 - -[Preset] -name = 40FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 40 - -[Preset] -name = 20FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 20 - -[Preset] -name = 33FPS (ideal for 165Hz displays) -$targetFPS:int = 33 - -[Preset] -name = 48FPS (ideal for 144Hz displays) -$targetFPS:int = 48 - -[Preset] -name = 55FPS (ideal for 165Hz displays) -$targetFPS:int = 55 - -[Preset] -name = 72FPS (ideal for 144Hz displays) -$targetFPS:int = 72 - -[Preset] -name = 75FPS (ideal for 75Hz displays) -$targetFPS:int = 75 - -[Preset] -name = 120FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 120 - -[Preset] -name = 144FPS (ideal for 144Hz displays) -$targetFPS:int = 144 - -[Preset] -name = 165FPS (ideal for 165Hz displays) -$targetFPS:int = 165 - -[Control] -vsyncFrequency = $targetFPS \ No newline at end of file diff --git a/Mods/BreathOfTheWild_FPS++/Occlusion Query/patches.txt b/Mods/BreathOfTheWild_FPS++/Occlusion Query/patches.txt deleted file mode 100644 index 35e725d1..00000000 --- a/Mods/BreathOfTheWild_FPS++/Occlusion Query/patches.txt +++ /dev/null @@ -1,11 +0,0 @@ -[BotwFPSV208] -moduleMatches = 0x6267BFD0 - -#code changes -0x03B25BB0 = lis r3, 0 - -[BotwFPSv176V192] -moduleMatches = 0xFD091F9F, 0xD472D8A5 - -#code changes -0x03B24F14 = li r3, 0 \ No newline at end of file diff --git a/Mods/BreathOfTheWild_FPS++/Occlusion Query/rules.txt b/Mods/BreathOfTheWild_FPS++/Occlusion Query/rules.txt deleted file mode 100644 index ad2681d7..00000000 --- a/Mods/BreathOfTheWild_FPS++/Occlusion Query/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = CPU Occlusion Query -path = "The Legend of Zelda: Breath of the Wild/Mods/FPS++/NPC Stutter Fix (CPU Occlusion Query)" -description = Changes occlusion queries from GPU to CPU type. This is a workaround for the NPC or creatures stuttering at a distance when full sync at GX2DrawDone is disabled. If you disable that option for extra FPS, you will need to enable the LWZX workaround to fix (most) crashes if you disable this. -version = 4 diff --git a/Mods/BreathOfTheWild_GlowLightsColors/0453fb7ad9cc0f79_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/0453fb7ad9cc0f79_0000000000003849_ps.txt deleted file mode 100644 index 0b00cb29..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/0453fb7ad9cc0f79_0000000000003849_ps.txt +++ /dev/null @@ -1,205 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0453fb7ad9cc0f79 -// Bomb - explosion sphere -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f = passParameterSem9; -R6f.xy = (texture(textureUnitPS0, R4f.xy).xy); -R4f.xy = (texture(textureUnitPS0, R4f.zw).xy); -// 0 -PV0f.x = R6f.y + R4f.y; -R6f.y = -(R1f.w) + 1.0; -PV0f.z = R6f.x + R4f.x; -PS0f = 1.0 / R2f.w; -// 1 -PV1f.x = PV0f.z + -(1.0); -R127f.y = PV0f.x + -(1.0); -PV1f.w = R2f.z * PS0f; -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = mul_nonIEEE(backupReg1f, PS1f); -R123f.z = (mul_nonIEEE(PV1f.w,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -PV0f.z = R123f.z; -R2f.w = R0f.w + PV1f.x; -PS0f = mul_nonIEEE(R3f.y, PV1f.x); -// 3 -R4f.x = R5f.x + PS0f; -PV1f.z = mul_nonIEEE(R3f.y, R127f.y); -PS1f = 1.0 / PV0f.z; -// 4 -R5f.x = -(intBitsToFloat(uf_remappedPS[0].z)) * PS1f; -R4f.y = R5f.y + PV1f.z; -R4f.w = (texture(textureUnitPS4, R2f.xy).x); -R2f.z = (texture(textureUnitPS1, R2f.ww).x); -R4f.y = (texture(textureUnitPS2, R4f.xy).w); -// 0 -R127f.x = (0.5 * R2f.z + 0.5); -R123f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R4f.w) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.w = R123f.w; -// 1 -PV1f.y = -(R5f.x) + PV0f.w; -// 2 -R123f.z = (PV1f.y * intBitsToFloat(0x40555554) + intBitsToFloat(0xbeaaaaaa)); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -// 3 -PV1f.w = -(PV0f.z) + 1.0; -PV1f.w = clamp(PV1f.w, 0.0, 1.0); -// 4 -PV0f.z = PV1f.w + R127f.x; -// 5 -R127f.x = mul_nonIEEE(R0f.y, PV0f.z); -PV1f.x = R127f.x; -R127f.y = mul_nonIEEE(R0f.x, PV0f.z); -PV1f.y = R127f.y; -R127f.z = mul_nonIEEE(R0f.z, PV0f.z); -PV1f.z = R127f.z; -R127f.w = PV0f.z + R4f.y; -R127f.w /= 2.0; -PV1f.w = R127f.w; -// 6 -PV0f.x = PV1f.y * intBitsToFloat(0x41200000); -PV0f.y = PV1f.x * intBitsToFloat(0x41200000); -PV0f.z = PV1f.w + intBitsToFloat(0xbf333333); -PV0f.z = clamp(PV0f.z, 0.0, 1.0); -PV0f.w = PV1f.z * intBitsToFloat(0x41200000); -// 7 -backupReg0f = R127f.z; -R123f.x = (mul_nonIEEE(PV0f.y,PV0f.z) + R127f.x); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(PV0f.x,PV0f.z) + R127f.y); -PV1f.y = R123f.y; -R127f.z = (mul_nonIEEE(R4f.y,R127f.w) + PV0f.z); -PV1f.z = R127f.z; -R123f.w = (mul_nonIEEE(PV0f.w,PV0f.z) + backupReg0f); -PV1f.w = R123f.w; -// 8 -R123f.x = (PV1f.y * intBitsToFloat(0x41f00000) + -(R1f.x)); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(R6f.y,PV1f.z) + R1f.w); -PV0f.y = R123f.y; -R123f.z = (PV1f.x * intBitsToFloat(0x41f00000) + -(R1f.y)); -PV0f.z = R123f.z; -R123f.w = (PV1f.w * intBitsToFloat(0x41f00000) + -(R1f.z)); -PV0f.w = R123f.w; -// 9 -backupReg0f = R1f.y; -backupReg1f = R1f.z; -backupReg2f = R1f.x; -PV1f.x = mul_nonIEEE(R1f.w, PV0f.y); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R1f.y = (mul_nonIEEE(PV0f.z,R127f.z) + backupReg0f); -R1f.z = (mul_nonIEEE(PV0f.w,R127f.z) + backupReg1f); -R1f.x = (mul_nonIEEE(PV0f.x,R127f.z) + backupReg2f); -PS1f = R1f.x; -// 10 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/097eac672c26b4a4_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/097eac672c26b4a4_00000000000000e1_ps.txt deleted file mode 100644 index 5d8aafae..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/097eac672c26b4a4_00000000000000e1_ps.txt +++ /dev/null @@ -1,139 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 097eac672c26b4a4 -// Shrine - ending field shatter particles 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(9, 1, 1) uniform sampler2D textureUnitPS9; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R0f.x; -backupReg1f = R0f.z; -PV0f.x = R0f.y + -(R1f.y); -R0f.y = mul_nonIEEE(R0f.w, R4f.w); -R0f.y = clamp(R0f.y, 0.0, 1.0); -PV0f.z = backupReg0f + -(R1f.x); -PV0f.w = backupReg1f + -(R1f.z); -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R1f.y; -backupReg1f = R1f.x; -backupReg2f = R1f.z; -R1f.x = mul_nonIEEE(R2f.x, PS0f); -R1f.y = mul_nonIEEE(R2f.y, PS0f); -R1f.z = (mul_nonIEEE(PV0f.x,R4f.y) + backupReg0f); -R2f.w = (mul_nonIEEE(PV0f.z,R4f.x) + backupReg1f); -R2f.x = (mul_nonIEEE(PV0f.w,R4f.z) + backupReg2f); -PS1f = R2f.x; -R1f.x = (texture(textureUnitPS9, R1f.xy).x); -// 0 -backupReg0f = R0f.y; -PV0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), intBitsToFloat(uf_remappedPS[0].w)); -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(uf_remappedPS[0].w)); -PV0f.z = R1f.x; -PV0f.z /= 2.0; -PV0f.z = clamp(PV0f.z, 0.0, 1.0); -PV0f.w = mul_nonIEEE(R3f.x, backupReg0f); -PS0f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), intBitsToFloat(uf_remappedPS[0].w)); -// 1 -R1f.x = mul_nonIEEE(R2f.w, PV0f.y); -R1f.y = mul_nonIEEE(R1f.z, PV0f.x); -R1f.z = mul_nonIEEE(R2f.x, PS0f); -R1f.w = mul_nonIEEE(PV0f.w, PV0f.z); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/0ce5fca5c70640d1_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/0ce5fca5c70640d1_0000000000003849_ps.txt deleted file mode 100644 index 762861e2..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/0ce5fca5c70640d1_0000000000003849_ps.txt +++ /dev/null @@ -1,168 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0ce5fca5c70640d1 -// Electric arc -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f = passParameterSem9; -R6f.xw = (texture(textureUnitPS0, R4f.xy).xw); -R5f.xyzw = (texture(textureUnitPS2, R5f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.y = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R123f.z = (R6f.w * 2.0 + -(1.0)); -PV0f.z = R123f.z; -R123f.w = (R6f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R2f.w; -// 1 -R4f.x = (mul_nonIEEE(PV0f.y,PV0f.w) + R4f.z); -R4f.y = (mul_nonIEEE(PV0f.x,PV0f.z) + R4f.w); -R4f.z = mul_nonIEEE(R2f.x, PS0f); -R4f.w = mul_nonIEEE(R2f.y, PS0f); -PS1f = 1.0 / R2f.w; -// 2 -R6f.x = R0f.x + -(R1f.x); -R2f.y = R2f.z * PS1f; -R2f.z = R0f.y + -(R1f.y); -R2f.w = R0f.z + -(R1f.z); -R3f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS0f = R3f.z; -R2f.x = (texture(textureUnitPS4, R4f.zw).x); -R4f.xyzw = (texture(textureUnitPS1, R4f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R4f.w, R5f.w); -R127f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].w),R2f.x) + intBitsToFloat(uf_remappedPS[2].x)); -R123f.z = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedPS[2].w)) + -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(R4f.x, R4f.x); -PS0f = mul_nonIEEE(R4f.y, R4f.y); -// 1 -PV1f.x = mul_nonIEEE(R4f.z, R4f.z); -PV1f.y = mul_nonIEEE(PV0f.w, R5f.x); -PV1f.z = mul_nonIEEE(R0f.w, PV0f.x); -R127f.w = mul_nonIEEE(PS0f, R5f.y); -PS1f = 1.0 / PV0f.z; -// 2 -R127f.x = mul_nonIEEE(R1f.w, PV1f.z); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.y = -(intBitsToFloat(uf_remappedPS[2].z)) * PS1f; -PV0f.w = mul_nonIEEE(PV1f.x, R5f.z); -R5f.x = (mul_nonIEEE(R6f.x,PV1f.y) + R1f.x); -PS0f = R5f.x; -// 3 -R5f.y = (mul_nonIEEE(R2f.z,R127f.w) + R1f.y); -R5f.z = (mul_nonIEEE(R2f.w,PV0f.w) + R1f.z); -PV1f.w = -(PV0f.y) + R127f.y; -// 4 -PV0f.y = PV1f.w * R3f.z; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -// 5 -PV1f.x = mul_nonIEEE(R127f.x, PV0f.y); -// 6 -R5f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/12fe44a2273b452c_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/12fe44a2273b452c_000000000000001c_ps.txt deleted file mode 100644 index efd55ec3..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/12fe44a2273b452c_000000000000001c_ps.txt +++ /dev/null @@ -1,141 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 12fe44a2273b452c -// Shrine - elevator pass through field -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(4, 1, 0) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem3; -R2f = passParameterSem4; -R3f = passParameterSem7; -// 0 -PV0f.x = R3f.w * 1.0; -R4f.y = mul_nonIEEE(R0f.y, R3f.y); -R4f.z = mul_nonIEEE(R0f.z, R3f.z); -PS0f = 1.0 / R1f.w; -// 1 -backupReg0f = R0f.x; -R0f.x = mul_nonIEEE(R1f.x, PS0f); -R0f.y = R1f.z * PS0f; -R0f.z = mul_nonIEEE(R1f.y, PS0f); -R1f.w = mul_nonIEEE(R0f.w, PV0f.x); -R1f.w = clamp(R1f.w, 0.0, 1.0); -R4f.x = mul_nonIEEE(backupReg0f, R3f.x); -PS1f = R4f.x; -R0f.w = (texture(textureUnitPS4, R0f.xz).x); -// 0 -R123f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R0f.y) + -(intBitsToFloat(uf_remappedPS[0].y))); -PV0f.x = R123f.x; -R127f.z = (mul_nonIEEE(R0f.w,intBitsToFloat(uf_remappedPS[0].w)) + intBitsToFloat(uf_remappedPS[0].x)); -// 1 -PS1f = 1.0 / PV0f.x; -// 2 -PV0f.z = -(intBitsToFloat(uf_remappedPS[0].z)) * PS1f; -// 3 -PV1f.y = R127f.z + -(PV0f.z); -// 4 -PV0f.x = max(PV1f.y, -(PV1f.y)); -// 5 -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[1].x)); -// 6 -R123f.z = intBitsToFloat(((PV1f.w >= 0.0)?(floatBitsToInt(1.0)):(0))); -PV0f.z = R123f.z; -// 7 -PV1f.y = -(PV0f.z) + 1.0; -// 8 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -// 9 -R4f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/146164991e2929e2_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/146164991e2929e2_0000000000000709_ps.txt deleted file mode 100644 index f335389b..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/146164991e2929e2_0000000000000709_ps.txt +++ /dev/null @@ -1,173 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 146164991e2929e2 -// Shrine - volumetric light -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(9, 1, 2) uniform sampler2D textureUnitPS9; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R5f.xyzw = (texture(textureUnitPS0, R5f.xy).xyzw); -// 0 -R127f.x = R0f.y + -(R1f.y); -PV0f.y = mul_nonIEEE(R4f.w, R5f.w); -R3f.z = R0f.z + -(R1f.z); -PV0f.w = R0f.x + -(R1f.x); -PS0f = 1.0 / R2f.w; -// 1 -R0f.x = mul_nonIEEE(R2f.x, PS0f); -R0f.y = mul_nonIEEE(R2f.y, PS0f); -R0f.z = mul_nonIEEE(R0f.w, PV0f.y); -R0f.z = clamp(R0f.z, 0.0, 1.0); -R123f.w = (mul_nonIEEE(PV0f.w,R5f.x) + R1f.x); -PV1f.w = R123f.w; -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.z; -R2f.x = (mul_nonIEEE(R127f.x,R5f.y) + R1f.y); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), intBitsToFloat(uf_remappedPS[0].w)); -R2f.z = mul_nonIEEE(R4f.x, PV1f.w); -R2f.w = backupReg0f * PS1f; -R6f.x = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS0f = R6f.x; -R0f.w = (texture(textureUnitPS4, R0f.xy).x); -R0f.x = (texture(textureUnitPS9, R0f.xy).x); -// 0 -R123f.x = (mul_nonIEEE(R3f.z,R5f.z) + R1f.z); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(R2f.w,intBitsToFloat(uf_remappedPS[2].w)) + -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.y = R123f.y; -R127f.z = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].w),R0f.w) + intBitsToFloat(uf_remappedPS[2].x)); -R127f.w = mul_nonIEEE(R4f.y, R2f.x); -R126f.z = R0f.x; -R126f.z /= 2.0; -R126f.z = clamp(R126f.z, 0.0, 1.0); -PS0f = R126f.z; -// 1 -PV1f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), intBitsToFloat(uf_remappedPS[0].w)); -PV1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(uf_remappedPS[0].w)); -PV1f.w = mul_nonIEEE(R4f.z, PV0f.x); -PS1f = 1.0 / PV0f.y; -// 2 -backupReg0f = R2f.y; -backupReg1f = R2f.z; -PV0f.x = -(intBitsToFloat(uf_remappedPS[2].z)) * PS1f; -R2f.y = mul_nonIEEE(R127f.w, PV1f.x); -R2f.z = mul_nonIEEE(PV1f.w, backupReg0f); -R2f.x = mul_nonIEEE(backupReg1f, PV1f.y); -PS0f = R2f.x; -// 3 -PV1f.y = -(PV0f.x) + R127f.z; -// 4 -PV0f.w = PV1f.y * R6f.x; -PV0f.w = clamp(PV0f.w, 0.0, 1.0); -// 5 -backupReg0f = R0f.z; -PV1f.z = mul_nonIEEE(backupReg0f, PV0f.w); -// 6 -PV0f.y = mul_nonIEEE(R3f.x, PV1f.z); -// 7 -R2f.w = mul_nonIEEE(PV0f.y, R126f.z); -// export -if( ((vec4(R2f.x, R2f.y, R2f.z, R2f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/14f5a7cf99f2904a_00000000000000f1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/14f5a7cf99f2904a_00000000000000f1_ps.txt deleted file mode 100644 index b610f561..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/14f5a7cf99f2904a_00000000000000f1_ps.txt +++ /dev/null @@ -1,120 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 14f5a7cf99f2904a -// Shrine - laser beam -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R2f.w = (texture(textureUnitPS0, R4f.xy).w); -R4f.z = (texture(textureUnitPS1, R4f.zw).w); -// 0 -backupReg0f = R3f.x; -backupReg1f = R3f.y; -backupReg2f = R0f.z; -backupReg3f = R3f.z; -R3f.x = mul_nonIEEE(R0f.x, backupReg0f); -R3f.y = mul_nonIEEE(R0f.y, backupReg1f); -PV0f.z = mul_nonIEEE(R2f.w, R4f.z); -R3f.z = mul_nonIEEE(backupReg2f, backupReg3f); -PS0f = R3f.z; -// 1 -PV1f.y = mul_nonIEEE(R0f.w, PV0f.z); -// 2 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 3 -R3f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R3f.x, R3f.y, R3f.z, R3f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/15e2d4f74a5e8445_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/15e2d4f74a5e8445_000000000000001c_ps.txt deleted file mode 100644 index b13f8941..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/15e2d4f74a5e8445_000000000000001c_ps.txt +++ /dev/null @@ -1,175 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 15e2d4f74a5e8445 -// Bomb - explosion first sphere -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem11; -R5f.xyzw = (texture(textureUnitPS0, R5f.xy).xyzw); -// 0 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -PS0f = R127f.z; -// 1 -R127f.x = mul_nonIEEE(R5f.x, R5f.x); -PV1f.y = mul_nonIEEE(R4f.w, R5f.w); -R126f.z = mul_nonIEEE(R5f.y, R5f.y); -R127f.w = mul_nonIEEE(R5f.z, R5f.z); -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R126f.w = mul_nonIEEE(R0f.w, PV1f.y); -R126f.w = clamp(R126f.w, 0.0, 1.0); -R127f.y = 1.0 / R127f.z; -PS0f = R127f.y; -// 3 -backupReg0f = R0f.x; -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -PS1f = backupReg0f + -(R1f.x); -// 4 -backupReg0f = R0f.y; -backupReg1f = R0f.z; -PV0f.x = max(PV1f.x, -(PV1f.x)); -PV0f.y = backupReg0f + -(R1f.y); -PV0f.z = backupReg1f + -(R1f.z); -R123f.w = (mul_nonIEEE(PS1f,R127f.x) + R1f.x); -PV0f.w = R123f.w; -// 5 -R123f.x = (mul_nonIEEE(PV0f.z,R127f.w) + R1f.z); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(PV0f.y,R126f.z) + R1f.y); -PV1f.z = R123f.z; -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -R1f.x = mul_nonIEEE(R4f.x, PV0f.w); -PS1f = R1f.x; -// 6 -PV0f.x = PV1f.w * R127f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R1f.y = mul_nonIEEE(R4f.y, PV1f.z); -R1f.z = mul_nonIEEE(R4f.z, PV1f.x); -// 7 -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 9 -PV1f.x = mul_nonIEEE(R126f.w, PV0f.y); -// 10 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/1dd8be9054c94f4e_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/1dd8be9054c94f4e_0000000000003849_ps.txt deleted file mode 100644 index 219bca98..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/1dd8be9054c94f4e_0000000000003849_ps.txt +++ /dev/null @@ -1,247 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 1dd8be9054c94f4e -// Shrine - activation circle -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem9; -layout(location = 8) in vec4 passParameterSem11; -layout(location = 9) in vec4 passParameterSem12; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R6f = passParameterSem8; -R7f = passParameterSem9; -R8f = passParameterSem11; -R9f = passParameterSem12; -R10f.xy = (texture(textureUnitPS0, R6f.xy).xy); -R6f.xy = (texture(textureUnitPS0, R6f.zw).xy); -// 0 -R127f.x = -(R5f.y) + R5f.z; -PV0f.y = R10f.y + R6f.y; -PV0f.z = R10f.x + R6f.x; -R2f.w = 1.0; -PS0f = 1.0 / R3f.w; -// 1 -PV1f.x = PV0f.z + -(1.0); -R6f.y = mul_nonIEEE(R3f.y, PS0f); -PV1f.z = PV0f.y + -(1.0); -R6f.w = mul_nonIEEE(R3f.x, PS0f); -PS1f = 1.0 / R3f.w; -// 2 -PV0f.x = mul_nonIEEE(R4f.y, PV1f.x); -R3f.y = R0f.w + PV1f.x; -PV0f.z = R3f.z * PS1f; -PV0f.w = mul_nonIEEE(R4f.y, PV1f.z); -R4f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -PS0f = R4f.z; -// 3 -backupReg0f = R7f.x; -backupReg1f = R7f.y; -R7f.x = backupReg0f + PV0f.x; -R7f.y = backupReg1f + PV0f.w; -R3f.z = (mul_nonIEEE(PV0f.z,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R4f.w = R0f.y + -(R1f.y); -R3f.w = 1.0 / R127f.x; -PS1f = R3f.w; -R6f.z = (texture(textureUnitPS2, R7f.xy).w); -R5f.w = (texture(textureUnitPS1, R3f.yy).x); -R6f.y = (texture(textureUnitPS4, R6f.wy).x); -// 0 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = R5f.w + R6f.z; -R127f.z /= 2.0; -PS0f = R127f.z; -// 1 -tempf.x = dot(vec4(R9f.x,R9f.y,R9f.z,R2f.w),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(uf_remappedPS[2].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.z = tempf.x; -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R125f.w = R127f.z + intBitsToFloat(0xbf333333); -R125f.w = clamp(R125f.w, 0.0, 1.0); -PV0f.w = R125f.w; -R127f.y = 1.0 / R3f.z; -PS0f = R127f.y; -// 3 -tempf.x = dot(vec4(R8f.x,R8f.y,R8f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R122f.x = (mul_nonIEEE(R6f.z,R127f.z) + PV0f.w); -PS1f = R122f.x; -// 4 -R127f.x = max(PV1f.x, -(PV1f.x)); -PV0f.y = -(R5f.y) + -(R126f.z); -R126f.z = mul_nonIEEE(R1f.w, PS1f); -R126f.z = clamp(R126f.z, 0.0, 1.0); -R127f.w = -(intBitsToFloat(uf_remappedPS[1].z)) * R127f.y; -R127f.y = 1.0 / R4f.z; -PS0f = R127f.y; -// 5 -R123f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R6f.y) + intBitsToFloat(uf_remappedPS[1].x)); -PV1f.x = R123f.x; -R126f.y = R0f.z + -(R1f.z); -PV1f.z = mul_nonIEEE(PV0f.y, R3f.w); -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -PV1f.w = R0f.x + -(R1f.x); -R126f.w = (mul_nonIEEE(R4f.w,R5f.w) + R1f.y); -PS1f = R126f.w; -// 6 -PV0f.x = -(R127f.w) + PV1f.x; -R125f.y = mul_nonIEEE(R126f.z, PV1f.z); -R125f.y = clamp(R125f.y, 0.0, 1.0); -R126f.z = (mul_nonIEEE(PV1f.w,R5f.w) + R1f.x); -PV0f.z = R126f.z; -PV0f.w = R127f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -PS0f = 1.0 / intBitsToFloat(uf_remappedPS[3].y); -// 7 -PV1f.x = PV0f.w * R127f.y; -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -PV1f.y = PV0f.x * PS0f; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -R127f.z = (mul_nonIEEE(R126f.y,R5f.w) + R1f.z); -PV1f.z = R127f.z; -PV1f.w = PV0f.z * intBitsToFloat(0x41200000); -R127f.y = R126f.w * intBitsToFloat(0x41200000); -PS1f = R127f.y; -// 8 -R127f.x = mul_nonIEEE(R125f.y, PV1f.y); -PV0f.y = PV1f.z * intBitsToFloat(0x41200000); -R123f.z = (intBitsToFloat(0xc0000000) * PV1f.x + intBitsToFloat(0x40400000)); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(PV1f.x, PV1f.x); -R1f.x = (mul_nonIEEE(PV1f.w,R125f.w) + R126f.z); -PS0f = R1f.x; -// 9 -PV1f.y = mul_nonIEEE(PV0f.w, PV0f.z); -R1f.z = (mul_nonIEEE(PV0f.y,R125f.w) + R127f.z); -R1f.y = (mul_nonIEEE(R127f.y,R125f.w) + R126f.w); -PS1f = R1f.y; -// 10 -PV0f.x = mul_nonIEEE(R127f.x, PV1f.y); -// 11 -R1f.w = mul_nonIEEE(R4f.x, PV0f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/233a000439032e75_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/233a000439032e75_00000000000000e1_ps.txt deleted file mode 100644 index 34b7cb4b..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/233a000439032e75_00000000000000e1_ps.txt +++ /dev/null @@ -1,142 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 233a000439032e75 -// Bomb - explosion circle -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R5f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -R4f.xyzw = (texture(textureUnitPS1, R4f.zw).xyzw); -// 0 -PV0f.x = R5f.w + R4f.w; -PV0f.y = mul_nonIEEE(R5f.x, R5f.x); -R127f.z = mul_nonIEEE(R5f.y, R5f.y); -R127f.w = mul_nonIEEE(R5f.z, R5f.z); -PS0f = mul_nonIEEE(R4f.x, R4f.x); -// 1 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(R4f.z, R4f.z); -PV1f.y = mul_nonIEEE(R4f.y, R4f.y); -R126f.z = (mul_nonIEEE(R3f.w,PV0f.x) + -(R0f.w)); -PV1f.w = mul_nonIEEE(PV0f.y, PS0f); -PS1f = backupReg0f + -(R1f.x); -// 2 -backupReg0f = R0f.z; -PV0f.x = R0f.y + -(R1f.y); -PV0f.y = mul_nonIEEE(R127f.w, PV1f.x); -PV0f.z = mul_nonIEEE(R127f.z, PV1f.y); -PV0f.w = backupReg0f + -(R1f.z); -R122f.x = (mul_nonIEEE(PS1f,PV1f.w) + R1f.x); -PS0f = R122f.x; -// 3 -PV1f.x = mul_nonIEEE(R1f.w, R126f.z); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R123f.z = (mul_nonIEEE(PV0f.w,PV0f.y) + R1f.z); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(PV0f.x,PV0f.z) + R1f.y); -PV1f.w = R123f.w; -R1f.x = mul_nonIEEE(R3f.x, PS0f); -PS1f = R1f.x; -// 4 -R1f.y = mul_nonIEEE(R3f.y, PV1f.w); -R1f.z = mul_nonIEEE(R3f.z, PV1f.z); -R1f.w = mul_nonIEEE(R2f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/266a0d760fe1ddfc_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/266a0d760fe1ddfc_0000000000003849_ps.txt deleted file mode 100644 index 10398ed6..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/266a0d760fe1ddfc_0000000000003849_ps.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 266a0d760fe1ddfc -// Shrine - elevator base -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem9; -layout(location = 8) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem7; -R6f = passParameterSem8; -R7f = passParameterSem9; -R8f = passParameterSem11; -R9f.xw = (texture(textureUnitPS0, R6f.xy).xw); -R7f.xyzw = (texture(textureUnitPS2, R7f.xy).xyzw); -// 0 -R123f.x = (R9f.w * 2.0 + -(1.0)); -PV0f.x = R123f.x; -PV0f.y = mul_nonIEEE(R4f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.z = mul_nonIEEE(R4f.y, intBitsToFloat(uf_remappedPS[0].x)); -R123f.w = (R9f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R3f.w; -// 1 -R6f.x = (mul_nonIEEE(PV0f.z,PV0f.w) + R6f.z); -R6f.y = (mul_nonIEEE(PV0f.y,PV0f.x) + R6f.w); -R6f.z = mul_nonIEEE(R3f.x, PS0f); -R6f.w = mul_nonIEEE(R3f.y, PS0f); -PS1f = 1.0 / R3f.w; -// 2 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -PS0f = R3f.z * PS1f; -// 3 -R9f.x = mul_nonIEEE(R7f.x, R7f.x); -R3f.y = mul_nonIEEE(R7f.y, R7f.y); -R4f.z = (mul_nonIEEE(PS0f,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -R3f.w = mul_nonIEEE(R7f.z, R7f.z); -tempResultf = 1.0 / sqrt(PV0f.x); -R3f.z = tempResultf; -PS1f = R3f.z; -R3f.x = (texture(textureUnitPS4, R6f.zw).x); -R6f.xyzw = (texture(textureUnitPS1, R6f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R2f.x, R3f.z); -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.z, R3f.z); -R127f.w = -(intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(uf_remappedPS[2].w); -R127f.y = 1.0 / R4f.z; -PS0f = R127f.y; -// 1 -tempf.x = dot(vec4(R8f.x,R8f.y,R8f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -PS1f = mul_nonIEEE(R6f.w, R7f.w); -// 2 -PV0f.x = max(PV1f.x, -(PV1f.x)); -R123f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R3f.x) + intBitsToFloat(uf_remappedPS[1].x)); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R5f.w, PS1f); -PV0f.w = -(intBitsToFloat(uf_remappedPS[1].z)) * R127f.y; -R127f.y = 1.0 / R127f.w; -PS0f = R127f.y; -// 3 -PV1f.x = -(PV0f.w) + PV0f.y; -R126f.y = mul_nonIEEE(R0f.w, PV0f.z); -R126f.y = clamp(R126f.y, 0.0, 1.0); -PV1f.z = mul_nonIEEE(R6f.x, R6f.x); -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[2].z)); -PS1f = 1.0 / intBitsToFloat(uf_remappedPS[3].y); -// 4 -PV0f.x = PV1f.w * R127f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.y = PV1f.x * PS1f; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -PV0f.z = mul_nonIEEE(R6f.z, R6f.z); -PV0f.w = mul_nonIEEE(R6f.y, R6f.y); -R127f.y = mul_nonIEEE(PV1f.z, R9f.x); -PS0f = R127f.y; -// 5 -backupReg0f = R126f.y; -R127f.x = mul_nonIEEE(PV0f.w, R3f.y); -R126f.y = mul_nonIEEE(PV0f.z, R3f.w); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -R126f.x = mul_nonIEEE(backupReg0f, PV0f.y); -PS1f = R126f.x; -// 6 -backupReg0f = R0f.x; -backupReg1f = R0f.y; -backupReg2f = R0f.z; -PV0f.x = backupReg0f + -(R1f.x); -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -PV0f.z = backupReg1f + -(R1f.y); -PV0f.w = backupReg2f + -(R1f.z); -// 7 -R123f.x = (mul_nonIEEE(PV0f.w,R126f.y) + R1f.z); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(PV0f.z,R127f.x) + R1f.y); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(R126f.x, PV0f.y); -R123f.w = (mul_nonIEEE(PV0f.x,R127f.y) + R1f.x); -PV1f.w = R123f.w; -// 8 -backupReg0f = R4f.x; -R4f.x = mul_nonIEEE(R5f.x, PV1f.w); -R4f.y = mul_nonIEEE(R5f.y, PV1f.y); -R4f.z = mul_nonIEEE(R5f.z, PV1f.x); -R4f.w = mul_nonIEEE(backupReg0f, PV1f.z); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/2a045e62b99640b5_00000001e1e21c49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/2a045e62b99640b5_00000001e1e21c49_ps.txt deleted file mode 100644 index f86bf5b0..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/2a045e62b99640b5_00000001e1e21c49_ps.txt +++ /dev/null @@ -1,200 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 2a045e62b99640b5 -// Shrine of Resurrection - walls -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R1f.w = (texture(textureUnitPS5, R0f.xy).x); -R1f.z = (texture(textureUnitPS6, R0f.zw).w); -R0f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.z, R3f.x); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.z); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.x, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.y, PS1f); -PV0f.w = mul_nonIEEE(PV1f.w, PS1f); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R1f.w); -PS0f = R127f.w; -// 3 -PV1f.x = -(PV0f.y) + 1.0; -R127f.y = (mul_nonIEEE(R3f.y,R127f.x) + PV0f.z)/2.0; -R127f.z = (mul_nonIEEE(R3f.x,R127f.x) + PV0f.x)/2.0; -R126f.w = (mul_nonIEEE(R3f.z,R127f.x) + PV0f.w)/2.0; -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R1f.w); -// 4 -PV0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R1f.w); -PV0f.y = R4f.z * intBitsToFloat(0x427f0000); -R126f.z = mul_nonIEEE(R1f.z, R127f.w); -R127f.w = mul_nonIEEE(R1f.z, PS1f); -PS0f = sqrt(PV1f.x); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(R2f.z,PS0f) + R126f.w); -PV1f.y = mul_nonIEEE(R1f.z, PV0f.x); -R127f.z = (mul_nonIEEE(R2f.y,PS0f) + R127f.y); -R126f.w = (mul_nonIEEE(R2f.x,PS0f) + backupReg0f); -R126f.x = floor(PV0f.y); -R126f.x *= 4.0; -PS1f = R126f.x; -// 6 -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R126f.z); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.w); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV1f.y); -R3f.w = R0f.w; -R4f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R4f.x; -// 7 -R3f.x = intBitsToFloat(0x3c808081); -R4f.y = mul_nonIEEE(R1f.x, R0f.y); -R4f.z = mul_nonIEEE(R1f.x, R0f.z); -R2f.w = 1.0; -R3f.y = intBitsToFloat(uf_remappedPS[2].z); -PS1f = R3f.y; -// 8 -R0f.xyz = vec3(R126f.w,R127f.z,R127f.x) + vec3(0.5,0.5,0.5); -R4f.w = intBitsToFloat(0x3b808081); -R0f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS0f = R0f.w; -// 9 -R8f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R8f.w = R2f.w; -// 10 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 11 -R6f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R6f.w = R4f.w; -// 12 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor1 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor3 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor5 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/2a87149b7154c69d_000000000001c24b_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/2a87149b7154c69d_000000000001c24b_ps.txt deleted file mode 100644 index d3fde6e8..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/2a87149b7154c69d_000000000001c24b_ps.txt +++ /dev/null @@ -1,339 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 2a87149b7154c69d -// Bomb - smoke -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(10, 1, 4) uniform samplerCubeArray textureUnitPS10; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem11; -layout(location = 8) in vec4 passParameterSem14; -layout(location = 9) in vec4 passParameterSem15; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex10 = 0.0; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem11; -R8f = passParameterSem14; -R9f = passParameterSem15; -R10f.xw = (texture(textureUnitPS0, R5f.xy).xw); -// 0 -backupReg0f = R10f.x; -backupReg1f = R7f.z; -R10f.x = (R0f.w * 2.0 + -(1.0)); -R123f.y = (backupReg0f * 2.0 + -(1.0)); -PV0f.y = R123f.y; -R7f.z = -(backupReg1f); -R123f.w = (R10f.w * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R2f.w; -// 1 -PV1f.x = mul_nonIEEE(R3f.y, PV0f.w); -R10f.y = mul_nonIEEE(R2f.y, PS0f); -PV1f.z = mul_nonIEEE(R3f.y, PV0f.y); -R10f.w = mul_nonIEEE(R2f.x, PS0f); -R11f.w = intBitsToFloat(uf_remappedPS[0].x); -PS1f = R11f.w; -// 2 -backupReg0f = R5f.z; -backupReg1f = R5f.w; -R5f.xyz = vec3(R6f.x,R6f.y,backupReg0f) + vec3(PV1f.z,PV1f.x,PV1f.z); -R5f.w = backupReg1f + PV1f.x; -PS0f = 1.0 / R2f.w; -// 3 -redcCUBE(vec4(R7f.z,R7f.z,R7f.x,R7f.y),vec4(R7f.y,R7f.x,R7f.z,R7f.z),cubeMapSTM,cubeMapFaceId); -R127f.x = cubeMapSTM.x; -R127f.y = cubeMapSTM.y; -R127f.z = cubeMapSTM.z; -R127f.w = intBitsToFloat(cubeMapFaceId); -PV1f.x = R127f.x; -PV1f.y = R127f.y; -PV1f.z = R127f.z; -PV1f.w = R127f.w; -PS1f = R2f.z * PS0f; -// 4 -R123f.x = (mul_nonIEEE(PS1f,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -PV0f.x = R123f.x; -R2f.y = mul_nonIEEE(R4f.w, R4f.w); -R11f.z = PV1f.w; -R4f.w = -(R9f.w) + 1.0; -PS0f = 1.0 / abs(PV1f.z); -// 5 -R2f.x = R0f.x + -(R1f.x); -R123f.y = (mul_nonIEEE(R127f.y,PS0f) + 1.5); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R127f.x,PS0f) + 1.5); -PV1f.z = R123f.z; -R9f.w = R0f.y + -(R1f.y); -PS1f = 1.0 / PV0f.x; -// 6 -backupReg0f = R0f.z; -R11f.x = PV1f.y; -R11f.y = PV1f.z; -R0f.z = -(intBitsToFloat(uf_remappedPS[1].z)) * PS1f; -R2f.w = backupReg0f + -(R1f.z); -R2f.z = R8f.x + 0.0; -PS0f = R2f.z; -R5f.x = (texture(textureUnitPS2, R5f.xy).w); -R0f.xw = (texture(textureUnitPS1, R5f.zw).xw); -R5f.z = (texture(textureUnitPS4, R10f.wy).x); -R11f.xyz = (textureLod(textureUnitPS10, vec4(redcCUBEReverse(R11f.xy,floatBitsToInt(R11f.z)),cubeMapArrayIndex10),R11f.w).xyz); -// 0 -R123f.x = (R0f.z * intBitsToFloat(0x3d4ccccd) + -(0.5)); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -PV0f.y = R5f.x + R10f.x; -R123f.z = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R5f.z) + intBitsToFloat(uf_remappedPS[1].x)); -PV0f.z = R123f.z; -R127f.w = mul_nonIEEE(R11f.x, R4f.w); -R127f.z = mul_nonIEEE(R11f.y, R4f.w); -PS0f = R127f.z; -// 1 -PV1f.x = max(PV0f.y, intBitsToFloat(0x3dcccccd)); -PV1f.y = mul_nonIEEE(R0f.w, PV0f.y); -R126f.z = -(PV0f.x) + 1.0; -R126f.w = -(R0f.z) + PV0f.z; -R126f.w = clamp(R126f.w, 0.0, 1.0); -R127f.y = mul_nonIEEE(R11f.z, R4f.w); -PS1f = R127f.y; -// 2 -backupReg0f = R8f.y; -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -R8f.y = backupReg0f + 0.0; -PV0f.z = min(PV1f.x, 0.5); -R4f.w = R8f.z + 0.0; -R8f.x = (mul_nonIEEE(R127f.w,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -PS0f = R8f.x; -// 3 -PV1f.x = mul_nonIEEE(PV0f.x, R2f.y); -R2f.y = (mul_nonIEEE(R127f.z,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -R8f.z = (mul_nonIEEE(R127f.y,intBitsToFloat(uf_remappedPS[2].y)) + 0.0); -PV1f.w = PV0f.z + intBitsToFloat(0xbdcccccd); -R3f.w = R3f.x * 1.0; -PS1f = R3f.w; -// 4 -PV0f.y = PV1f.w * intBitsToFloat(0x40200000); -PV0f.w = mul_nonIEEE(PV1f.x, R126f.z); -PV0f.w = clamp(PV0f.w, 0.0, 1.0); -// 5 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(backupReg0f, PV0f.y); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R126f.z = mul_nonIEEE(PV0f.w, R126f.w); -R126f.z = clamp(R126f.z, 0.0, 1.0); -// 6 -R123f.x = (mul_nonIEEE(R2f.x,PV1f.x) + R1f.x); -PV0f.x = R123f.x; -R123f.z = (mul_nonIEEE(R9f.w,PV1f.x) + R1f.y); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.w,PV1f.x) + R1f.z); -PV0f.w = R123f.w; -// 7 -R1f.x = mul_nonIEEE(PV0f.z, R126f.z); -R1f.y = mul_nonIEEE(PV0f.x, R126f.z); -R1f.w = mul_nonIEEE(PV0f.w, R126f.z); -// 0 -R123f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R2f.y) + R8f.y); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R8f.x) + R2f.z); -PV0f.y = R123f.y; -R123f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R8f.z) + R4f.w); -PV0f.w = R123f.w; -// 1 -R3f.x = mul_nonIEEE(R1f.y, PV0f.y); -R3f.y = mul_nonIEEE(R1f.x, PV0f.x); -R3f.z = mul_nonIEEE(R1f.w, PV0f.w); -// export -if( ((vec4(R3f.x, R3f.y, R3f.z, R3f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/2f64af19b1835ab0_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/2f64af19b1835ab0_00000000000000e1_ps.txt deleted file mode 100644 index 0e921fd2..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/2f64af19b1835ab0_00000000000000e1_ps.txt +++ /dev/null @@ -1,147 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 2f64af19b1835ab0 -// Shrine - ending particles -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R0f.x; -backupReg1f = R0f.z; -backupReg2f = R0f.y; -R0f.x = mul_nonIEEE(R0f.w, R4f.w); -R0f.x = clamp(R0f.x, 0.0, 1.0); -PV0f.y = backupReg0f + -(R1f.x); -PV0f.z = backupReg1f + -(R1f.z); -R127f.w = backupReg2f + -(R1f.y); -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = (mul_nonIEEE(PV0f.y,R4f.x) + R1f.x); -PV1f.y = R2f.z * PS0f; -R5f.z = (mul_nonIEEE(PV0f.z,R4f.z) + R1f.z); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R1f.y; -R1f.x = mul_nonIEEE(R2f.x, PS1f); -R1f.y = mul_nonIEEE(R2f.y, PS1f); -R1f.z = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R5f.y = (mul_nonIEEE(R127f.w,R4f.y) + backupReg0f); -PS0f = R5f.y; -R1f.x = (texture(textureUnitPS4, R1f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R1f.x) + intBitsToFloat(uf_remappedPS[0].x)); -PS0f = 1.0 / R1f.z; -// 1 -PV1f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.y) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -backupReg0f = R0f.x; -PV0f.x = mul_nonIEEE(backupReg0f, PV1f.y); -// 5 -R5f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/319e60116b59ceec_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/319e60116b59ceec_00000001e1e1fe49_ps.txt deleted file mode 100644 index 33147fb5..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/319e60116b59ceec_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 319e60116b59ceec -// Sheikah Tower - active -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem6; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R126f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R126f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.z, R3f.x); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R127f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -R127f.y = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.z); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R126f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -R122f.x = (mul_nonIEEE(-(R4f.z),intBitsToFloat(uf_remappedPS[0].x)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS1f = R122f.x; -// 2 -R125f.x = R5f.z * intBitsToFloat(0x427f0000); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.w, R127f.w); -R127f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z),PS1f) + 1.0); -PV0f.w = R127f.w; -R5f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R5f.x; -// 3 -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -PV1f.y = mul_nonIEEE(backupReg0f, PV0f.z); -PV1f.z = mul_nonIEEE(R127f.y, PV0f.z); -PV1f.w = mul_nonIEEE(R126f.w, PV0f.z); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R126f.x; -backupReg0f = R126f.x; -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(R3f.z,backupReg0f) + PV1f.w)/2.0; -R127f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV1f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV1f.y)/2.0; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R127f.w); -PS0f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R127f.w); -// 5 -backupReg0f = R0f.w; -backupReg1f = R127f.x; -R127f.x = floor(R125f.x); -R127f.x *= 4.0; -R126f.y = mul_nonIEEE(R0f.w, PS0f); -PV1f.z = mul_nonIEEE(R0f.w, R127f.z); -PV1f.w = mul_nonIEEE(backupReg0f, PV0f.w); -PS1f = sqrt(backupReg1f); -PS1f /= 2.0; -// 6 -backupReg0f = R126f.x; -backupReg1f = R2f.y; -backupReg2f = R126f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS1f) + backupReg0f); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.w); -R126f.z = (mul_nonIEEE(backupReg1f,PS1f) + R127f.y); -R127f.w = (mul_nonIEEE(R2f.x,PS1f) + backupReg2f); -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.z); -PS0f = R2f.x; -// 7 -backupReg0f = R1f.x; -backupReg0f = R1f.x; -R1f.x = intBitsToFloat(0x3c808081); -R5f.y = mul_nonIEEE(backupReg0f, R0f.y); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), R126f.y); -R1f.w = 1.0; -R5f.z = mul_nonIEEE(backupReg0f, R0f.z); -PS1f = R5f.z; -// 8 -R0f.x = R127f.w + 0.5; -R1f.y = 0.0; -R0f.z = R126f.x + 0.5; -R2f.w = 1.0; -R0f.y = R126f.z + 0.5; -PS0f = R0f.y; -// 9 -R5f.w = intBitsToFloat(0x3b808081); -R0f.w = (R127f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R0f.w; -// 10 -R9f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R9f.w = R2f.w; -// 11 -R8f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R8f.w = R0f.w; -// 12 -R7f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R7f.w = R5f.w; -// 13 -R6f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R6f.w = R1f.w; -// export -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/38d70ed9280bb3bc_0000000000000079_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/38d70ed9280bb3bc_0000000000000079_ps.txt deleted file mode 100644 index 76dc3ff0..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/38d70ed9280bb3bc_0000000000000079_ps.txt +++ /dev/null @@ -1,96 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 38d70ed9280bb3bc -// Bloom color cast -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R0f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -// 0 -backupReg0f = R0f.x; -backupReg1f = R0f.y; -backupReg2f = R0f.z; -vec3 magicColor = intBitsToFloat(uf_remappedPS[0].xyz); -vec3 colhsv = rgb2hsv(magicColor.rgb); -magicColor.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -R0f.x = mul_nonIEEE(backupReg0f, magicColor.x); -R0f.y = mul_nonIEEE(backupReg1f, magicColor.y); -R0f.z = mul_nonIEEE(backupReg2f, magicColor.z); -R0f.w = 1.0; -// export -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/3d383d2d61500c9c_0000000f0f0ff249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/3d383d2d61500c9c_0000000f0f0ff249_ps.txt deleted file mode 100644 index 855f5e5a..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/3d383d2d61500c9c_0000000f0f0ff249_ps.txt +++ /dev/null @@ -1,196 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 3d383d2d61500c9c -// Sheikah Tower - middle structure above control panel -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R1f.w = (texture(textureUnitPS5, R0f.xy).x); -R1f.z = (texture(textureUnitPS6, R0f.zw).w); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.z, R3f.x); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.x, PS1f); -PV0f.w = mul_nonIEEE(PV1f.w, PS1f); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R1f.w); -PS0f = R127f.w; -// 3 -PV1f.x = -(PV0f.y) + 1.0; -R127f.y = (mul_nonIEEE(R3f.y,R127f.x) + PV0f.z)/2.0; -R127f.z = (mul_nonIEEE(R3f.x,R127f.x) + PV0f.x)/2.0; -R126f.w = (mul_nonIEEE(R3f.z,R127f.x) + PV0f.w)/2.0; -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R1f.w); -// 4 -PV0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R1f.w); -PV0f.y = R4f.z * intBitsToFloat(0x427f0000); -R126f.z = mul_nonIEEE(R1f.z, R127f.w); -R127f.w = mul_nonIEEE(R1f.z, PS1f); -PS0f = sqrt(PV1f.x); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(R2f.z,PS0f) + R126f.w); -PV1f.y = mul_nonIEEE(R1f.z, PV0f.x); -R127f.z = (mul_nonIEEE(R2f.y,PS0f) + R127f.y); -R126f.w = (mul_nonIEEE(R2f.x,PS0f) + backupReg0f); -R126f.x = floor(PV0f.y); -R126f.x *= 4.0; -PS1f = R126f.x; -// 6 -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R126f.z); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.w); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV1f.y); -R3f.w = 1.0; -R4f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R4f.x; -// 7 -R3f.x = intBitsToFloat(0x3c808081); -R4f.y = mul_nonIEEE(R1f.x, R0f.y); -R4f.z = mul_nonIEEE(R1f.x, R0f.z); -R2f.w = 1.0; -R3f.y = intBitsToFloat(uf_remappedPS[2].z); -PS1f = R3f.y; -// 8 -R0f.xyz = vec3(R126f.w,R127f.z,R127f.x) + vec3(0.5,0.5,0.5); -R4f.w = intBitsToFloat(0x3b808081); -R0f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS0f = R0f.w; -// 9 -R8f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R8f.w = R2f.w; -// 10 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 11 -R6f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R6f.w = R4f.w; -// 12 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// export -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor1 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor3 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor5 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/42c9208b54ad72ca_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/42c9208b54ad72ca_00000000000000e1_ps.txt deleted file mode 100644 index 5681e123..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/42c9208b54ad72ca_00000000000000e1_ps.txt +++ /dev/null @@ -1,128 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 42c9208b54ad72ca -// Guardian scout fire debris -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyzw = (texture(textureUnitPS1, R3f.zw).xyzw); -// 0 -backupReg0f = R0f.x; -PV0f.x = R4f.w + R3f.w; -PV0f.y = mul_nonIEEE(R3f.y, R3f.y); -PV0f.z = mul_nonIEEE(R3f.x, R3f.x); -PV0f.w = mul_nonIEEE(R3f.z, R3f.z); -R127f.w = backupReg0f + -(R1f.x); -PS0f = R127f.w; -// 1 -PV1f.x = mul_nonIEEE(R0f.w, PV0f.x); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R127f.y = (mul_nonIEEE(R4f.z,R4f.z) + PV0f.w); -R123f.z = (mul_nonIEEE(R4f.y,R4f.y) + PV0f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R4f.x,R4f.x) + PV0f.z); -PV1f.w = R123f.w; -PS1f = R0f.y + -(R1f.y); -// 2 -R0f.x = (mul_nonIEEE(R127f.w,PV1f.w) + R1f.x); -PV0f.y = R0f.z + -(R1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -R0f.y = (mul_nonIEEE(PS1f,PV1f.z) + R1f.y); -PS0f = R0f.y; -// 3 -R0f.z = (mul_nonIEEE(PV0f.y,R127f.y) + R1f.z); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/458dd826bd589332_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/458dd826bd589332_0000000000000709_ps.txt deleted file mode 100644 index 144cbba8..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/458dd826bd589332_0000000000000709_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 458dd826bd589332 -// Hateno fire - glow -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f.xw = (texture(textureUnitPS0, R4f.xy).xw); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.y = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R123f.z = (R5f.w * 2.0 + -(1.0)); -PV0f.z = R123f.z; -R123f.w = (R5f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R4f.z; -backupReg1f = R4f.w; -R4f.x = mul_nonIEEE(R2f.x, PS0f); -R4f.y = mul_nonIEEE(R2f.y, PS0f); -R4f.z = (mul_nonIEEE(PV0f.y,PV0f.w) + backupReg0f); -R4f.w = (mul_nonIEEE(PV0f.x,PV0f.z) + backupReg1f); -PS1f = 1.0 / R2f.w; -// 2 -R2f.x = R0f.x + -(R1f.x); -R2f.y = R2f.z * PS1f; -R2f.z = R0f.z + -(R1f.z); -R2f.w = R0f.y + -(R1f.y); -R3f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS0f = R3f.z; -R4f.x = (texture(textureUnitPS4, R4f.xy).x); -R5f.xyzw = (texture(textureUnitPS1, R4f.zw).xyzw); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].w),R4f.x) + intBitsToFloat(uf_remappedPS[2].x)); -R127f.y = mul_nonIEEE(R0f.w, R5f.w); -R127f.y = clamp(R127f.y, 0.0, 1.0); -R123f.z = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedPS[2].w)) + -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.z = R123f.z; -R0f.y = (mul_nonIEEE(R2f.w,R5f.y) + R1f.y); -PS0f = R0f.y; -// 1 -R0f.x = (mul_nonIEEE(R2f.x,R5f.x) + R1f.x); -R0f.z = (mul_nonIEEE(R2f.z,R5f.z) + R1f.z); -PS1f = 1.0 / PV0f.z; -// 2 -PV0f.y = -(intBitsToFloat(uf_remappedPS[2].z)) * PS1f; -// 3 -PV1f.w = -(PV0f.y) + R127f.x; -// 4 -PV0f.y = PV1f.w * R3f.z; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -// 5 -PV1f.x = mul_nonIEEE(R127f.y, PV0f.y); -// 6 -R0f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/48a94cda336d2976_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/48a94cda336d2976_00000000000000e1_ps.txt deleted file mode 100644 index e26efd3a..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/48a94cda336d2976_00000000000000e1_ps.txt +++ /dev/null @@ -1,134 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 48a94cda336d2976 -// Hateno fire - horizontal flare -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyzw = (texture(textureUnitPS1, R3f.zw).xyzw); -// 0 -R127f.x = mul_nonIEEE(R4f.y, R4f.y); -PV0f.y = mul_nonIEEE(R4f.w, R3f.w); -PV0f.z = mul_nonIEEE(R4f.x, R4f.x); -R127f.w = mul_nonIEEE(R4f.z, R4f.z); -PS0f = mul_nonIEEE(R3f.x, R3f.x); -// 1 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(R3f.z, R3f.z); -PV1f.y = mul_nonIEEE(R0f.w, PV0f.y); -PV1f.z = mul_nonIEEE(R3f.y, R3f.y); -R126f.w = mul_nonIEEE(PV0f.z, PS0f); -R126f.x = backupReg0f + -(R1f.x); -PS1f = R126f.x; -// 2 -backupReg0f = R0f.y; -backupReg1f = R0f.z; -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.y = backupReg0f + -(R1f.y); -PV0f.z = mul_nonIEEE(R127f.w, PV1f.x); -PV0f.w = mul_nonIEEE(R127f.x, PV1f.z); -PS0f = backupReg1f + -(R1f.z); -// 3 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -backupReg2f = R1f.z; -R1f.x = (mul_nonIEEE(R126f.x,R126f.w) + backupReg0f); -R1f.y = (mul_nonIEEE(PV0f.y,PV0f.w) + backupReg1f); -R1f.z = (mul_nonIEEE(PS0f,PV0f.z) + backupReg2f); -R1f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/4af8a4670205be4c_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/4af8a4670205be4c_00000000000000e1_ps.txt deleted file mode 100644 index fb2ad00f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/4af8a4670205be4c_00000000000000e1_ps.txt +++ /dev/null @@ -1,254 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 4af8a4670205be4c -// Shrine - laser beam glow -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[5]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem11; -layout(location = 8) in vec4 passParameterSem14; -layout(location = 9) in vec4 passParameterSem15; -layout(location = 10) in vec4 passParameterSem16; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R12f = vec4(0.0); -vec4 R13f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem7; -R6f = passParameterSem8; -R7f = passParameterSem11; -R8f = passParameterSem14; -R9f = passParameterSem15; -R10f = passParameterSem16; -R13f.xyzw = (texture(textureUnitPS0, R6f.xy).xyzw); -// 0 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = tempf.x; -PS0f = 1.0 / R3f.w; -// 1 -R6f.x = mul_nonIEEE(R3f.x, PS0f); -R6f.y = mul_nonIEEE(R3f.y, PS0f); -R126f.z = mul_nonIEEE(R13f.x, R13f.x); -R127f.w = mul_nonIEEE(R13f.y, R13f.y); -R127f.x = mul_nonIEEE(R13f.z, R13f.z); -PS1f = R127f.x; -// 2 -backupReg0f = R0f.y; -backupReg1f = R0f.z; -R12f.x = R8f.x + 0.0; -PV0f.y = backupReg0f + -(R1f.y); -PV0f.z = R0f.x + -(R1f.x); -PV0f.w = backupReg1f + -(R1f.z); -R11f.x = 1.0 / R3f.w; -PS0f = R11f.x; -// 3 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = (mul_nonIEEE(PV0f.z,R126f.z) + backupReg0f); -R1f.y = (mul_nonIEEE(PV0f.w,R127f.x) + R1f.z); -R1f.z = (mul_nonIEEE(PV0f.y,R127f.w) + backupReg1f); -R2f.w = R8f.y + 0.0; -tempResultf = 1.0 / sqrt(R127f.z); -R1f.w = tempResultf; -PS1f = R1f.w; -R6f.y = (texture(textureUnitPS4, R6f.xy).x); -// 0 -PV0f.x = mul_nonIEEE(R2f.x, R1f.w); -PV0f.y = mul_nonIEEE(R2f.y, R1f.w); -R127f.z = R3f.z * R11f.x; -PV0f.w = mul_nonIEEE(R2f.z, R1f.w); -R127f.x = R8f.z + 0.0; -PS0f = R127f.x; -// 1 -tempf.x = dot(vec4(R7f.x,R7f.y,R7f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.w,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R127f.y = tempf.x; -R127f.w = mul_nonIEEE(R5f.x, R1f.x); -PS1f = R127f.w; -// 2 -PV0f.x = mul_nonIEEE(R5f.y, R1f.z); -R123f.y = (mul_nonIEEE(R127f.z,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -PV0f.y = R123f.y; -R127f.z = mul_nonIEEE(R5f.z, R1f.y); -PV0f.w = R12f.x + 0.0; -PS0f = R2f.w + 0.0; -// 3 -R12f.x = mul_nonIEEE(R127f.w, PV0f.w); -PV1f.y = R127f.x + 0.0; -PV1f.z = max(R127f.y, -(R127f.y)); -R2f.w = mul_nonIEEE(PV0f.x, PS0f); -PS1f = 1.0 / PV0f.y; -// 4 -PV0f.x = -(intBitsToFloat(uf_remappedPS[1].z)) + intBitsToFloat(uf_remappedPS[1].w); -R127f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS1f; -R5f.z = mul_nonIEEE(R127f.z, PV1f.y); -R127f.w = PV1f.z + -(intBitsToFloat(uf_remappedPS[1].z)); -PS0f = mul_nonIEEE(R5f.w, R13f.w); -// 5 -R127f.x = mul_nonIEEE(R0f.w, PS0f); -R127f.x = clamp(R127f.x, 0.0, 1.0); -R123f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R6f.y) + intBitsToFloat(uf_remappedPS[0].x)); -PV1f.w = R123f.w; -PS1f = 1.0 / PV0f.x; -// 6 -PV0f.x = R127f.w * PS1f; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.z = -(R127f.y) + PV1f.w; -PS0f = 1.0 / intBitsToFloat(uf_remappedPS[2].y); -// 7 -PV1f.x = PV0f.z * PS0f; -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -PV0f.w = mul_nonIEEE(R127f.x, PV1f.x); -// 9 -PV1f.x = mul_nonIEEE(PV0f.w, PV0f.y); -// 10 -R4f.w = mul_nonIEEE(R4f.x, PV1f.x); -// 0 -PV0f.x = -(R2f.w) + intBitsToFloat(uf_remappedPS[3].y); -PV0f.y = -(R12f.x) + intBitsToFloat(uf_remappedPS[3].x); -PV0f.w = -(R5f.z) + intBitsToFloat(uf_remappedPS[3].z); -// 1 -R127f.x = (mul_nonIEEE(PV0f.w,R10f.y) + R5f.z); -PV1f.x = R127f.x; -R127f.y = (mul_nonIEEE(PV0f.x,R10f.y) + R2f.w); -PV1f.y = R127f.y; -R127f.z = (mul_nonIEEE(PV0f.y,R10f.y) + R12f.x); -PV1f.z = R127f.z; -// 2 -PV0f.y = R9f.z + -(PV1f.x); -PV0f.z = R9f.y + -(PV1f.y); -PV0f.w = R9f.x + -(PV1f.z); -// 3 -backupReg0f = R127f.x; -R127f.x = (mul_nonIEEE(PV0f.w,R9f.w) + R127f.z); -PV1f.x = R127f.x; -R127f.z = (mul_nonIEEE(PV0f.y,R9f.w) + backupReg0f); -PV1f.z = R127f.z; -R127f.w = (mul_nonIEEE(PV0f.z,R9f.w) + R127f.y); -PV1f.w = R127f.w; -// 4 -PV0f.x = -(PV1f.w) + intBitsToFloat(uf_remappedPS[4].y); -PV0f.y = -(PV1f.x) + intBitsToFloat(uf_remappedPS[4].x); -PV0f.w = -(PV1f.z) + intBitsToFloat(uf_remappedPS[4].z); -// 5 -R4f.x = (mul_nonIEEE(PV0f.y,R10f.x) + R127f.x); -R4f.y = (mul_nonIEEE(PV0f.x,R10f.x) + R127f.w); -R4f.z = (mul_nonIEEE(PV0f.w,R10f.x) + R127f.z); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/4bdac25bb98f5804_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/4bdac25bb98f5804_0000000000003849_ps.txt deleted file mode 100644 index 8aa216b5..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/4bdac25bb98f5804_0000000000003849_ps.txt +++ /dev/null @@ -1,202 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 4bdac25bb98f5804 -// Hateno fire -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f = passParameterSem9; -R6f.xy = (texture(textureUnitPS0, R4f.zw).xy); -R4f.xy = (texture(textureUnitPS0, R4f.xy).xy); -R4f.w = (texture(textureUnitPS2, R5f.xy).z); -// 0 -backupReg0f = R4f.x; -backupReg1f = R0f.z; -R4f.x = backupReg0f + R6f.x; -R4f.x /= 2.0; -PV0f.x = R4f.x; -PV0f.z = R4f.y + R6f.y; -PV0f.z /= 2.0; -R3f.w = backupReg1f + -(R1f.z); -PS0f = 1.0 / R2f.w; -// 1 -R123f.x = (PV0f.z * 2.0 + -(1.0)); -PV1f.x = R123f.x; -R123f.y = (PV0f.x * 2.0 + -(1.0)); -PV1f.y = R123f.y; -PV1f.z = R2f.z * PS0f; -R0f.w = R0f.x + -(R1f.x); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = mul_nonIEEE(backupReg1f, PS1f); -R123f.z = (mul_nonIEEE(R3f.y,PV1f.x) + -0.0); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R3f.y,PV1f.y) + -0.0); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(PV1f.z,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -PS0f = R122f.x; -// 3 -backupReg0f = R0f.y; -R0f.y = backupReg0f + -(R1f.y); -PV1f.z = mul_nonIEEE(R4f.w, PV0f.z); -PV1f.w = mul_nonIEEE(R4f.w, PV0f.w); -PS1f = 1.0 / PS0f; -// 4 -backupReg0f = R5f.x; -backupReg1f = R5f.y; -R5f.x = backupReg0f + PV1f.w; -R5f.y = backupReg1f + PV1f.z; -R4f.z = -(intBitsToFloat(uf_remappedPS[0].z)) * PS1f; -R3f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS0f = R3f.z; -R5f.xyw = (texture(textureUnitPS2, R5f.xy).xyw); -R0f.z = (texture(textureUnitPS4, R2f.xy).x); -// 0 -backupReg0f = R4f.x; -R4f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R0f.z) + intBitsToFloat(uf_remappedPS[0].x)); -R2f.y = (R5f.x * intBitsToFloat(0x3e4ccccd) + backupReg0f); -R2f.xyz = (texture(textureUnitPS1, R2f.yy).xyz); -// 0 -PV0f.x = R5f.x + R2f.x; -PV0f.y = -(R4f.z) + R4f.x; -R127f.z = R5f.x + R2f.z; -PV0f.z = R127f.z; -R127f.w = R5f.x + R2f.y; -PV0f.w = R127f.w; -// 1 -PV1f.x = PV0f.x * intBitsToFloat(0x3e990afe); -R127f.y = PV0f.y * R3f.z; -R127f.y = clamp(R127f.y, 0.0, 1.0); -PV1f.z = mul_nonIEEE(R5f.w, PV0f.x); -PV1f.w = mul_nonIEEE(R5f.w, PV0f.w); -PS1f = mul_nonIEEE(R5f.w, PV0f.z); -// 2 -backupReg0f = R0f.y; -R0f.x = (mul_nonIEEE(R0f.w,PV1f.z) + R1f.x); -R0f.y = (mul_nonIEEE(backupReg0f,PV1f.w) + R1f.y); -R0f.z = (mul_nonIEEE(R3f.w,PS1f) + R1f.z); -R123f.w = (R127f.w * intBitsToFloat(0x3f162c23) + PV1f.x); -PV0f.w = R123f.w; -// 3 -R123f.z = (R127f.z * intBitsToFloat(0x3dea7371) + PV0f.w); -PV1f.z = R123f.z; -// 4 -PV0f.y = R5f.y + PV1f.z; -PV0f.y /= 2.0; -// 5 -PV1f.x = mul_nonIEEE(R5f.y, PV0f.y); -// 6 -PV0f.w = mul_nonIEEE(R1f.w, PV1f.x); -PV0f.w = clamp(PV0f.w, 0.0, 1.0); -// 7 -PV1f.x = mul_nonIEEE(PV0f.w, R127f.y); -// 8 -R0f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/5219277e990fe5ba_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/5219277e990fe5ba_00000000000000e1_ps.txt deleted file mode 100644 index 882c2d12..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/5219277e990fe5ba_00000000000000e1_ps.txt +++ /dev/null @@ -1,125 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5219277e990fe5ba -// Bomb - horizontal appearance effect -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyzw = (texture(textureUnitPS1, R3f.zw).xyzw); -// 0 -backupReg0f = R0f.x; -PV0f.x = mul_nonIEEE(R4f.w, R3f.w); -PV0f.y = mul_nonIEEE(R3f.y, R3f.y); -PV0f.z = mul_nonIEEE(R3f.x, R3f.x); -PV0f.w = mul_nonIEEE(R3f.z, R3f.z); -R127f.w = backupReg0f + -(R1f.x); -PS0f = R127f.w; -// 1 -PV1f.x = mul_nonIEEE(R0f.w, PV0f.x); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R127f.y = mul_nonIEEE(R4f.z, PV0f.w); -PV1f.z = mul_nonIEEE(R4f.y, PV0f.y); -PV1f.w = mul_nonIEEE(R4f.x, PV0f.z); -PS1f = R0f.y + -(R1f.y); -// 2 -R0f.x = (mul_nonIEEE(R127f.w,PV1f.w) + R1f.x); -PV0f.y = R0f.z + -(R1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -R0f.y = (mul_nonIEEE(PS1f,PV1f.z) + R1f.y); -PS0f = R0f.y; -// 3 -R0f.z = (mul_nonIEEE(PV0f.y,R127f.y) + R1f.z); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/5b04d28f319a1d6d_0000000f0f0ff249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/5b04d28f319a1d6d_0000000f0f0ff249_ps.txt deleted file mode 100644 index 561a23cc..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/5b04d28f319a1d6d_0000000f0f0ff249_ps.txt +++ /dev/null @@ -1,220 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5b04d28f319a1d6d -// Bomb -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem3; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f.xy = (texture(textureUnitPS3, R0f.xy).xy); -R0f.w = (texture(textureUnitPS2, R0f.xy).x); -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R6f.xyz = (texture(textureUnitPS1, R0f.xy).xyz); -// 0 -R126f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R126f.x; -PV0f.y = fract(R3f.y); -PV0f.z = fract(R3f.x); -R127f.w = mul_nonIEEE(R1f.y, R2f.z); -R127f.x = mul_nonIEEE(R1f.z, R2f.x); -PS0f = R127f.x; -// 1 -PV1f.x = PV0f.z + -(0.5); -PV1f.y = mul_nonIEEE(R1f.x, R2f.y); -R127f.z = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV1f.w = PV0f.y + -(0.5); -R126f.w = mul_nonIEEE(PV0f.x, PV0f.x); -PS1f = R126f.w; -// 2 -backupReg0f = R127f.x; -R127f.x = (mul_nonIEEE(-(R2f.y),R1f.z) + R127f.w); -R123f.y = (mul_nonIEEE(-(PV1f.w),PV1f.w) + 1.0); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -R123f.z = (mul_nonIEEE(-(PV1f.x),PV1f.x) + 1.0); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -R127f.w = (mul_nonIEEE(-(R2f.z),R1f.x) + backupReg0f); -R125f.w = (mul_nonIEEE(-(R2f.x),R1f.y) + PV1f.y); -PS0f = R125f.w; -// 3 -PV1f.x = mul_nonIEEE(PV0f.z, PV0f.y); -R127f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R5f.x); -R123f.z = (mul_nonIEEE(R127f.z,R127f.z) + R126f.w); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(R2f.w, R127f.z); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R5f.y); -PS1f = R127f.z; -// 4 -PV0f.x = mul_nonIEEE(R127f.w, PV1f.w); -PV0f.y = -(PV1f.z) + 1.0; -PV0f.z = mul_nonIEEE(R127f.x, PV1f.w); -PV0f.w = mul_nonIEEE(R125f.w, PV1f.w); -PS0f = mul_nonIEEE(PV1f.x, PV1f.x); -// 5 -R123f.x = (mul_nonIEEE(R2f.z,R126f.x) + PV0f.w); -PV1f.x = R123f.x; -PV1f.y = mul_nonIEEE(R0f.w, PS0f); -R123f.z = (mul_nonIEEE(R2f.y,R126f.x) + PV0f.x); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.x,R126f.x) + PV0f.z); -PV1f.w = R123f.w; -PS1f = sqrt(PV0f.y); -// 6 -R126f.x = (mul_nonIEEE(R1f.x,PS1f) + PV1f.w); -PV0f.x = R126f.x; -R125f.y = (mul_nonIEEE(R1f.y,PS1f) + PV1f.z); -PV0f.y = R125f.y; -R126f.z = (mul_nonIEEE(R1f.z,PS1f) + PV1f.x); -PV0f.z = R126f.z; -PV0f.w = PV1f.y * intBitsToFloat(0x427f0000); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R5f.z); -PS0f = R127f.w; -// 7 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.y = tempf.x; -PS1f = floor(PV0f.w); -PS1f *= 4.0; -// 8 -PV0f.x = PS1f + 2.0; -R1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R1f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.w); -R0f.w = 1.0; -R1f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.y); -PS0f = R1f.x; -// 9 -R0f.x = intBitsToFloat(0x3d008081); -R0f.y = intBitsToFloat(uf_remappedPS[2].z); -R1f.w = 1.0; -R5f.w = PV0f.x * intBitsToFloat(0x3b808081); -PS1f = R5f.w; -// 10 -R6f.w = intBitsToFloat(0x3e828283); -tempResultf = 1.0 / sqrt(R126f.y); -PS0f = tempResultf; -PS0f /= 2.0; -// 11 -R5f.x = (mul_nonIEEE(R126f.x,PS0f) + 0.5); -R5f.y = (mul_nonIEEE(R125f.y,PS0f) + 0.5); -R5f.z = (mul_nonIEEE(R126f.z,PS0f) + 0.5); -// 12 -R4f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R4f.w = R1f.w; -// 13 -R3f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R3f.w = R5f.w; -// 14 -R2f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R2f.w = R6f.w; -// 15 -R1f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R1f.w = R0f.w; -// export -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -passPixelColor1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -passPixelColor3 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -passPixelColor5 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/5b9b7727ca24e22b_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/5b9b7727ca24e22b_0000000000000709_ps.txt deleted file mode 100644 index 092f5f73..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/5b9b7727ca24e22b_0000000000000709_ps.txt +++ /dev/null @@ -1,195 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5b9b7727ca24e22b -// Shrine - ending field 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem11; -R8f.xw = (texture(textureUnitPS0, R5f.xy).xw); -R6f.x = (texture(textureUnitPS2, R6f.xy).w); -// 0 -R123f.x = (R8f.x * 2.0 + -(1.0)); -PV0f.x = R123f.x; -PV0f.y = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PV0f.z = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R123f.w = (R8f.w * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = -(intBitsToFloat(uf_remappedPS[1].z)) + intBitsToFloat(uf_remappedPS[1].w); -// 1 -R5f.x = (mul_nonIEEE(PV0f.z,PV0f.x) + R5f.z); -R5f.y = (mul_nonIEEE(PV0f.y,PV0f.w) + R5f.w); -R3f.z = R0f.x + -(R1f.x); -R5f.w = R0f.y + -(R1f.y); -R6f.y = 1.0 / PS0f; -PS1f = R6f.y; -// 2 -backupReg0f = R0f.z; -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R9f.x = backupReg0f + -(R1f.z); -PS0f = R9f.x; -// 3 -tempResultf = 1.0 / sqrt(PV0f.x); -R5f.z = tempResultf; -PS1f = R5f.z; -R8f.xyzw = (texture(textureUnitPS1, R5f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R2f.x, R5f.z); -PV0f.y = mul_nonIEEE(R2f.y, R5f.z); -PV0f.z = mul_nonIEEE(R2f.z, R5f.z); -PV0f.w = mul_nonIEEE(R8f.w, R6f.x); -R127f.z = R8f.x * 1.0; -PS0f = R127f.z; -// 1 -tempf.x = dot(vec4(R7f.x,R7f.y,R7f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -PS1f = mul_nonIEEE(R4f.w, PV0f.w); -// 2 -PV0f.x = max(PV1f.x, -(PV1f.x)); -R127f.y = mul_nonIEEE(R0f.w, PS1f); -R127f.y = clamp(R127f.y, 0.0, 1.0); -PV0f.z = R8f.y * 1.0; -PV0f.w = R8f.z * 1.0; -R122f.x = (mul_nonIEEE(R3f.z,R127f.z) + R1f.x); -PS0f = R122f.x; -// 3 -R123f.x = (mul_nonIEEE(R9f.x,PV0f.w) + R1f.z); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(R5f.w,PV0f.z) + R1f.y); -PV1f.z = R123f.z; -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[1].z)); -R1f.x = mul_nonIEEE(R4f.x, PS0f); -PS1f = R1f.x; -// 4 -PV0f.x = PV1f.w * R6f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R1f.y = mul_nonIEEE(R4f.y, PV1f.z); -R1f.z = mul_nonIEEE(R4f.z, PV1f.x); -// 5 -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 6 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 7 -PV1f.x = mul_nonIEEE(R127f.y, PV0f.y); -// 8 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/5f4e60117b59cf65_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/5f4e60117b59cf65_00000001e1e1fe49_ps.txt deleted file mode 100644 index 12d8b821..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/5f4e60117b59cf65_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5f4e60117b59cf65 -// Sheikah Tower - inactive + Shrine -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem6; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R126f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R126f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.z, R3f.x); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R127f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -R127f.y = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.z); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R126f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -R122f.x = (mul_nonIEEE(-(R4f.z),intBitsToFloat(uf_remappedPS[0].x)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS1f = R122f.x; -// 2 -R125f.x = R5f.z * intBitsToFloat(0x427f0000); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.w, R127f.w); -R127f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z),PS1f) + 1.0); -PV0f.w = R127f.w; -R5f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R5f.x; -// 3 -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -PV1f.y = mul_nonIEEE(backupReg0f, PV0f.z); -PV1f.z = mul_nonIEEE(R127f.y, PV0f.z); -PV1f.w = mul_nonIEEE(R126f.w, PV0f.z); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R126f.x; -backupReg0f = R126f.x; -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(R3f.z,backupReg0f) + PV1f.w)/2.0; -R127f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV1f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV1f.y)/2.0; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R127f.w); -PS0f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R127f.w); -// 5 -backupReg0f = R0f.w; -backupReg1f = R127f.x; -R127f.x = floor(R125f.x); -R127f.x *= 4.0; -R126f.y = mul_nonIEEE(R0f.w, PS0f); -PV1f.z = mul_nonIEEE(R0f.w, R127f.z); -PV1f.w = mul_nonIEEE(backupReg0f, PV0f.w); -PS1f = sqrt(backupReg1f); -PS1f /= 2.0; -// 6 -backupReg0f = R126f.x; -backupReg1f = R2f.y; -backupReg2f = R126f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS1f) + backupReg0f); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.w); -R126f.z = (mul_nonIEEE(backupReg1f,PS1f) + R127f.y); -R127f.w = (mul_nonIEEE(R2f.x,PS1f) + backupReg2f); -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.z); -PS0f = R2f.x; -// 7 -backupReg0f = R1f.x; -backupReg0f = R1f.x; -R1f.x = intBitsToFloat(0x3c808081); -R5f.y = mul_nonIEEE(backupReg0f, R0f.y); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), R126f.y); -R1f.w = 1.0; -R5f.z = mul_nonIEEE(backupReg0f, R0f.z); -PS1f = R5f.z; -// 8 -R0f.x = R127f.w + 0.5; -R1f.y = intBitsToFloat(uf_remappedPS[2].z); -R0f.z = R126f.x + 0.5; -R2f.w = 1.0; -R0f.y = R126f.z + 0.5; -PS0f = R0f.y; -// 9 -R5f.w = intBitsToFloat(0x3b808081); -R0f.w = (R127f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R0f.w; -// 10 -R9f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R9f.w = R2f.w; -// 11 -R8f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R8f.w = R0f.w; -// 12 -R7f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R7f.w = R5f.w; -// 13 -R6f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R6f.w = R1f.w; -// export -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/603d7ad06d86617e_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/603d7ad06d86617e_00000000000000e1_ps.txt deleted file mode 100644 index af95c81f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/603d7ad06d86617e_00000000000000e1_ps.txt +++ /dev/null @@ -1,127 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 603d7ad06d86617e -// Teleportation - part 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyzw = (texture(textureUnitPS1, R3f.zw).xyzw); -// 0 -backupReg0f = R0f.x; -PV0f.x = mul_nonIEEE(R4f.y, R4f.y); -R123f.y = (mul_nonIEEE(R4f.w,R3f.w) + -(R0f.w)); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R4f.x, R4f.x); -PV0f.w = mul_nonIEEE(R4f.z, R4f.z); -R127f.x = backupReg0f + -(R1f.x); -PS0f = R127f.x; -// 1 -PV1f.x = mul_nonIEEE(R1f.w, PV0f.y); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R127f.y = mul_nonIEEE(PV0f.w, R3f.z); -PV1f.z = mul_nonIEEE(PV0f.x, R3f.y); -PV1f.w = mul_nonIEEE(PV0f.z, R3f.x); -PS1f = R0f.y + -(R1f.y); -// 2 -backupReg0f = R0f.z; -R0f.x = (mul_nonIEEE(R127f.x,PV1f.w) + R1f.x); -R0f.y = (mul_nonIEEE(PS1f,PV1f.z) + R1f.y); -PV0f.z = backupReg0f + -(R1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -// 3 -R0f.z = (mul_nonIEEE(PV0f.z,R127f.y) + R1f.z); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/6240983542445009_00000001e1e21c49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/6240983542445009_00000001e1e21c49_ps.txt deleted file mode 100644 index b87e792c..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/6240983542445009_00000001e1e21c49_ps.txt +++ /dev/null @@ -1,247 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 6240983542445009 -// Shrine - bulbs -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem6; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem6; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f = passParameterSem7; -R7f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R6f.xyz = (texture(textureUnitPS5, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS7, R5f.xy).x); -R5f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R2f.y, R3f.z); -PV0f.y = mul_nonIEEE(R2f.z, R3f.x); -R126f.z = (R7f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.z = R126f.z; -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R7f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R127f.x = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.y = mul_nonIEEE(PV0f.z, PV0f.z); -R127f.z = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.y); -R126f.w = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.x); -R127f.y = mul_nonIEEE(R3f.w, PS0f); -PS1f = R127f.y; -// 2 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,-0.0),vec4(R1f.x,R1f.y,R1f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R122f.x = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.y); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS0f = R122f.x; -// 3 -PV1f.x = mul_nonIEEE(R126f.w, R127f.y); -PV1f.y = mul_nonIEEE(R127f.z, R127f.y); -R127f.z = -(PS0f) + 1.0; -PV1f.w = mul_nonIEEE(R127f.x, R127f.y); -PS1f = sqrt(PV0f.x); -// 4 -R127f.x = (mul_nonIEEE(R3f.y,R126f.z) + PV1f.y); -R127f.y = (mul_nonIEEE(R3f.x,R126f.z) + PV1f.x); -R125f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R6f.x); -R126f.w = (mul_nonIEEE(R3f.z,R126f.z) + PV1f.w); -PS0f = 1.0 / PS1f; -// 5 -backupReg0f = R127f.z; -R126f.x = mul_nonIEEE(R1f.x, PS0f); -R126f.y = mul_nonIEEE(R1f.y, PS0f); -R127f.z = mul_nonIEEE(R1f.z, PS0f); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R6f.y); -PS1f = sqrt(backupReg0f); -// 6 -backupReg0f = R127f.x; -R127f.x = (mul_nonIEEE(R2f.x,PS1f) + R127f.y); -PV0f.x = R127f.x; -R125f.y = (mul_nonIEEE(R2f.y,PS1f) + backupReg0f); -PV0f.y = R125f.y; -R126f.z = (mul_nonIEEE(R2f.z,PS1f) + R126f.w); -PV0f.z = R126f.z; -R126f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R6f.z); -R127f.y = R7f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 7 -backupReg0f = R0f.w; -tempf.x = dot(vec4(R126f.x,R126f.y,R127f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R127f.z = mul_nonIEEE(R4f.x, backupReg0f); -PS1f = R127f.z; -// 8 -R126f.x = floor(R127f.y); -R126f.x *= 4.0; -PV0f.y = PV1f.x + 1.0; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -R4f.z = mul_nonIEEE(R5f.z, PS1f); -R2f.w = R5f.w; -R4f.x = mul_nonIEEE(R5f.x, PS1f); -PS0f = R4f.x; -// 9 -R125f.x = -(PV0f.y) + 1.0; -R4f.y = mul_nonIEEE(R5f.y, R127f.z); -R2f.z = intBitsToFloat(0x3c808081); -R5f.w = 1.0; -R2f.y = intBitsToFloat(uf_remappedPS[1].z); -PS1f = R2f.y; -// 10 -R0f.x = (R127f.x * 0.5 + 0.5); -R0f.y = (R125f.y * 0.5 + 0.5); -R0f.z = (R126f.z * 0.5 + 0.5); -R4f.w = intBitsToFloat(0x3b808081); -R0f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS0f = R0f.w; -// 11 -tempResultf = log2(R125f.x); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1f = tempResultf; -// 12 -PV0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), PS1f); -// 13 -PS1f = exp2(PV0f.z); -PS1f = clamp(PS1f, 0.0, 1.0); -// 14 -PV0f.x = intBitsToFloat(uf_remappedPS[2].w) + PS1f; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 15 -PV1f.x = mul_nonIEEE(PV0f.x, R125f.z); -PV1f.z = mul_nonIEEE(PV0f.x, R126f.w); -PV1f.w = mul_nonIEEE(PV0f.x, R127f.w); -// 16 -R5f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV1f.x); -PV0f.x = R5f.x; -R5f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV1f.w); -PV0f.y = R5f.y; -R5f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV1f.z); -PV0f.z = R5f.z; -// 17 -R8f.xyz = vec3(PV0f.x,PV0f.y,PV0f.z); -R8f.w = R5f.w; -// 18 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 19 -R6f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R6f.w = R4f.w; -// 20 -R5f.xyz = vec3(R2f.z,R2f.y,R2f.z); -R5f.w = R2f.w; -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor1 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor3 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor5 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/64342503518ca97a_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/64342503518ca97a_0000000000000709_ps.txt deleted file mode 100644 index 5ccf93ab..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/64342503518ca97a_0000000000000709_ps.txt +++ /dev/null @@ -1,156 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 64342503518ca97a -// Shrine - ending -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R5f = passParameterSem9; -R6f.xw = (texture(textureUnitPS0, R4f.xy).xw); -R5f.xyzw = (texture(textureUnitPS2, R5f.xy).xyzw); -// 0 -R123f.x = (R6f.w * 2.0 + -(1.0)); -PV0f.x = R123f.x; -PV0f.y = mul_nonIEEE(R2f.y, intBitsToFloat(uf_remappedPS[0].y)); -R123f.z = (R6f.x * 2.0 + -(1.0)); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(R2f.y, intBitsToFloat(uf_remappedPS[0].x)); -R2f.z = mul_nonIEEE(R5f.x, R5f.x); -PS0f = R2f.z; -// 1 -R4f.x = (mul_nonIEEE(PV0f.w,PV0f.z) + R4f.z); -R4f.y = (mul_nonIEEE(PV0f.y,PV0f.x) + R4f.w); -R4f.z = mul_nonIEEE(R5f.y, R5f.y); -R4f.w = mul_nonIEEE(R5f.z, R5f.z); -R1f.w = R0f.x + -(R1f.x); -PS1f = R1f.w; -R6f.xyzw = (texture(textureUnitPS1, R4f.xy).xyzw); -// 0 -PV0f.x = R6f.w + R5f.w; -R127f.y = (mul_nonIEEE(R6f.z,R6f.z) + R4f.w); -R123f.z = (mul_nonIEEE(R6f.y,R6f.y) + R4f.z); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R6f.x,R6f.x) + R2f.z); -PV0f.w = R123f.w; -PS0f = R0f.y + -(R1f.y); -// 1 -PV1f.x = R0f.z + -(R1f.z); -PV1f.y = mul_nonIEEE(R3f.w, PV0f.x); -R123f.z = (mul_nonIEEE(R1f.w,PV0f.w) + R1f.x); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(PS0f,PV0f.z) + R1f.y); -PV1f.w = R123f.w; -// 2 -PV0f.x = mul_nonIEEE(R0f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R0f.y = mul_nonIEEE(R3f.y, PV1f.w); -R123f.z = (mul_nonIEEE(PV1f.x,R127f.y) + R1f.z); -PV0f.z = R123f.z; -R0f.x = mul_nonIEEE(R3f.x, PV1f.z); -PS0f = R0f.x; -// 3 -R0f.z = mul_nonIEEE(R3f.z, PV0f.z); -R0f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/6832b00344c32a71_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/6832b00344c32a71_00000000000000e1_ps.txt deleted file mode 100644 index 459b2e4e..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/6832b00344c32a71_00000000000000e1_ps.txt +++ /dev/null @@ -1,142 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 6832b00344c32a71 -// Shrine - ending back wall -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R5f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -R4f.xyzw = (texture(textureUnitPS1, R4f.zw).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R5f.w, R4f.w); -PV0f.y = mul_nonIEEE(R5f.x, R5f.x); -R127f.z = mul_nonIEEE(R5f.y, R5f.y); -R127f.w = mul_nonIEEE(R5f.z, R5f.z); -PS0f = mul_nonIEEE(R4f.x, R4f.x); -// 1 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(R4f.z, R4f.z); -PV1f.y = mul_nonIEEE(R4f.y, R4f.y); -R126f.z = mul_nonIEEE(R3f.w, PV0f.x); -PV1f.w = mul_nonIEEE(PV0f.y, PS0f); -PS1f = backupReg0f + -(R1f.x); -// 2 -backupReg0f = R0f.z; -PV0f.x = R0f.y + -(R1f.y); -PV0f.y = mul_nonIEEE(R127f.w, PV1f.x); -PV0f.z = mul_nonIEEE(R127f.z, PV1f.y); -PV0f.w = backupReg0f + -(R1f.z); -R122f.x = (mul_nonIEEE(PS1f,PV1f.w) + R1f.x); -PS0f = R122f.x; -// 3 -PV1f.x = mul_nonIEEE(R0f.w, R126f.z); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -R123f.z = (mul_nonIEEE(PV0f.w,PV0f.y) + R1f.z); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(PV0f.x,PV0f.z) + R1f.y); -PV1f.w = R123f.w; -R0f.x = mul_nonIEEE(R3f.x, PS0f); -PS1f = R0f.x; -// 4 -R0f.y = mul_nonIEEE(R3f.y, PV1f.w); -R0f.z = mul_nonIEEE(R3f.z, PV1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/687da8c1b555b262_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/687da8c1b555b262_0000000000003849_ps.txt deleted file mode 100644 index 7b8f7c20..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/687da8c1b555b262_0000000000003849_ps.txt +++ /dev/null @@ -1,181 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 687da8c1b555b262 -// Bomb - explosion sphere + distorsion -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f.xyw = (texture(textureUnitPS0, R5f.xy).xyw); -R5f.w = (texture(textureUnitPS1, R5f.zw).w); -R5f.z = (texture(textureUnitPS2, R6f.xy).w); -// 0 -R123f.x = (R7f.y * 2.0 + -(1.0)); -PV0f.x = R123f.x; -R123f.y = (R7f.x * 2.0 + -(1.0)); -PV0f.y = R123f.y; -R127f.z = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R127f.w = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PS0f = 0.0; -// 1 -backupReg0f = R0f.x; -PV1f.x = R2f.w + PS0f; -PV1f.y = R5f.w * 1.0; -PV1f.z = PV0f.x * intBitsToFloat(0x41c80000); -PV1f.w = PV0f.y * intBitsToFloat(0x41c80000); -R5f.w = backupReg0f + -(R1f.x); -PS1f = R5f.w; -// 2 -backupReg0f = R0f.y; -PV0f.x = mul_nonIEEE(PV1f.w, R127f.z); -PV0f.y = mul_nonIEEE(R5f.z, PV1f.y); -PV0f.z = mul_nonIEEE(PV1f.z, R127f.w); -R3f.w = backupReg0f + -(R1f.y); -R127f.w = 1.0 / PV1f.x; -PS0f = R127f.w; -// 3 -PV1f.x = mul_nonIEEE(R7f.w, PV0f.z); -PV1f.y = mul_nonIEEE(R7f.w, PV0f.x); -R123f.z = (mul_nonIEEE(R4f.w,PV0f.y) + -(R0f.w)); -PV1f.z = R123f.z; -R0f.w = R0f.z + -(R1f.z); -// 4 -PV0f.x = R2f.y + PV1f.x; -PV0f.y = R2f.x + PV1f.y; -PV0f.z = mul_nonIEEE(R1f.w, PV1f.z); -PV0f.z = clamp(PV0f.z, 0.0, 1.0); -// 5 -backupReg0f = R3f.x; -R3f.x = mul_nonIEEE(PV0f.y, R127f.w); -R3f.y = mul_nonIEEE(PV0f.x, R127f.w); -R2f.w = mul_nonIEEE(backupReg0f, PV0f.z); -R3f.xyz = (texture(textureUnitPS3, R3f.xy).xyz); -vec3 colhsv = rgb2hsv(R3f.rgb); // inverse hue rotation -R3f.rgb = hsv2rgb(vec3(mod(colhsv.x - hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -R3f.a *= ALPHA_FACTOR; -// 0 -PV0f.y = R3f.z * 1.0; -PV0f.z = R3f.y * 1.0; -PV0f.w = R3f.x * 1.0; -// 1 -PV1f.y = PV0f.y * 1.0; -PV1f.z = PV0f.z * 1.0; -PV1f.w = PV0f.w * 1.0; -// 2 -R123f.x = (mul_nonIEEE(R5f.w,PV1f.w) + R1f.x); -PV0f.x = R123f.x; -R123f.z = (mul_nonIEEE(R0f.w,PV1f.y) + R1f.z); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R3f.w,PV1f.z) + R1f.y); -PV0f.w = R123f.w; -// 3 -R2f.x = mul_nonIEEE(R4f.x, PV0f.x); -R2f.y = mul_nonIEEE(R4f.y, PV0f.w); -R2f.z = mul_nonIEEE(R4f.z, PV0f.z); -// export -if( ((vec4(R2f.x, R2f.y, R2f.z, R2f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/68aa37ce58db094d_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/68aa37ce58db094d_00000000000000e1_ps.txt deleted file mode 100644 index 7f641710..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/68aa37ce58db094d_00000000000000e1_ps.txt +++ /dev/null @@ -1,154 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 68aa37ce58db094d -// Bomb - appear effect center -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R4f.y; -backupReg0f = R4f.y; -backupReg1f = R4f.x; -backupReg1f = R4f.x; -R4f.x = mul_nonIEEE(R0f.w, R4f.w); -R4f.x = clamp(R4f.x, 0.0, 1.0); -R4f.y = mul_nonIEEE(R4f.z, R4f.z); -R4f.z = mul_nonIEEE(backupReg0f, backupReg0f); -R127f.w = mul_nonIEEE(backupReg1f, backupReg1f); -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R0f.x; -backupReg1f = R0f.z; -backupReg2f = R0f.y; -PV1f.x = backupReg0f + -(R1f.x); -PV1f.y = R2f.z * PS0f; -R0f.z = backupReg1f + -(R1f.z); -R0f.w = backupReg2f + -(R1f.y); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = mul_nonIEEE(backupReg1f, PS1f); -R2f.z = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R5f.x = (mul_nonIEEE(PV1f.x,R127f.w) + R1f.x); -PS0f = R5f.x; -R2f.x = (texture(textureUnitPS4, R2f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R2f.x) + intBitsToFloat(uf_remappedPS[0].x)); -R5f.y = (mul_nonIEEE(R0f.w,R4f.z) + R1f.y); -PS0f = 1.0 / R2f.z; -// 1 -PV1f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R5f.z = (mul_nonIEEE(R0f.z,R4f.y) + R1f.z); -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.y) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R4f.x, PV1f.y); -// 5 -R5f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/70a79265ab7d498a_0000000f0f10e249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/70a79265ab7d498a_0000000f0f10e249_ps.txt deleted file mode 100644 index 0a26d28e..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/70a79265ab7d498a_0000000f0f10e249_ps.txt +++ /dev/null @@ -1,217 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 70a79265ab7d498a -// Electric balls -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2D textureUnitPS8; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f.xy = (texture(textureUnitPS6, R0f.xy).xy); -R6f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R1f.w = (texture(textureUnitPS5, R0f.xy).x); -R8f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R0f.x = (R6f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R0f.x; -R127f.y = mul_nonIEEE(R2f.y, R3f.z); -R123f.z = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.z = R123f.z; -R123f.w = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.w = R123f.w; -R127f.z = mul_nonIEEE(R2f.z, R3f.x); -PS0f = R127f.z; -// 1 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),PV0f.w) + backupReg0f); -R1f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y),PV0f.z) + backupReg1f); -PV1f.z = mul_nonIEEE(R2f.x, R3f.y); -R123f.w = (R6f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(PV0f.x, PV0f.x); -// 2 -R5f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + R127f.y); -R5f.y = (mul_nonIEEE(PV1f.w,PV1f.w) + PS1f); -R5f.y = clamp(R5f.y, 0.0, 1.0); -R0f.z = (mul_nonIEEE(-(R3f.x),R2f.y) + PV1f.z); -R0f.w = (mul_nonIEEE(-(R3f.z),R2f.x) + R127f.z); -R1f.z = mul_nonIEEE(R3f.w, PV1f.w); -PS0f = R1f.z; -R7f.xyz = (texture(textureUnitPS8, R1f.xy).xyz); -// 0 -backupReg0f = R0f.z; -R127f.x = -(R5f.y) + 1.0; -PV0f.y = mul_nonIEEE(R5f.x, R1f.z); -PV0f.z = mul_nonIEEE(R0f.w, R1f.z); -PV0f.w = mul_nonIEEE(backupReg0f, R1f.z); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R1f.w); -PS0f = R127f.w; -// 1 -R126f.x = (mul_nonIEEE(R3f.z,R0f.x) + PV0f.w)/2.0; -R127f.y = (mul_nonIEEE(R3f.y,R0f.x) + PV0f.z)/2.0; -R127f.z = (mul_nonIEEE(R3f.x,R0f.x) + PV0f.y)/2.0; -PV1f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R1f.w); -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R1f.w); -// 2 -backupReg0f = R127f.x; -R127f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PS1f); -PV0f.y = R6f.z * intBitsToFloat(0x427f0000); -PV0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), R127f.w); -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV1f.w); -PS0f = sqrt(backupReg0f); -PS0f /= 2.0; -// 3 -backupReg0f = R126f.x; -backupReg1f = R127f.y; -backupReg2f = R127f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS0f) + backupReg0f); -R127f.y = floor(PV0f.y); -R127f.y *= 4.0; -R127f.z = (mul_nonIEEE(R2f.y,PS0f) + backupReg1f); -R126f.w = (mul_nonIEEE(R2f.x,PS0f) + backupReg2f); -R2f.x = mul_nonIEEE(R7f.x, PV0f.z); -PS1f = R2f.x; -// 4 -R7f.x = mul_nonIEEE(R4f.x, R8f.x); -R2f.y = mul_nonIEEE(R7f.y, R127f.w); -R2f.z = mul_nonIEEE(R7f.z, R127f.x); -R6f.w = R8f.w; -R7f.y = mul_nonIEEE(R4f.x, R8f.y); -PS0f = R7f.y; -// 5 -R6f.x = intBitsToFloat(0x3c808081); -R6f.y = intBitsToFloat(uf_remappedPS[3].z); -R7f.z = mul_nonIEEE(R4f.x, R8f.z); -R2f.w = 1.0; -R4f.x = R126f.w + 0.5; -PS1f = R4f.x; -// 6 -R4f.y = R127f.z + 0.5; -R4f.z = R126f.x + 0.5; -R7f.w = intBitsToFloat(0x3b808081); -R4f.w = (R127f.y * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS0f = R4f.w; -// 7 -R3f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R3f.w = R2f.w; -// 8 -R2f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R2f.w = R4f.w; -// 9 -R1f.xyz = vec3(R7f.x,R7f.y,R7f.z); -R1f.w = R7f.w; -// 10 -R0f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R0f.w = R6f.w; -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -passPixelColor1 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -passPixelColor3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -passPixelColor5 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/70d96b85a0ce93ef_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/70d96b85a0ce93ef_00000000000000e1_ps.txt deleted file mode 100644 index c71b1fd5..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/70d96b85a0ce93ef_00000000000000e1_ps.txt +++ /dev/null @@ -1,119 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 70d96b85a0ce93ef -// Shrine - ending - field shatter effect particle -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R123f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R2f.w = (texture(textureUnitPS0, R4f.xy).w); -R4f.z = (texture(textureUnitPS1, R4f.zw).w); -// 0 -backupReg0f = R0f.z; -R4f.x = mul_nonIEEE(R0f.x, R3f.x); -R4f.y = mul_nonIEEE(R0f.y, R3f.y); -PV0f.z = mul_nonIEEE(R2f.w, R4f.z); -R4f.z = mul_nonIEEE(backupReg0f, R3f.z); -PS0f = R4f.z; -// 1 -R123f.y = (mul_nonIEEE(R3f.w,PV0f.z) + -(R0f.w)); -PV1f.y = R123f.y; -// 2 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 3 -R4f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/751393d6cbcd0c76_000003c3c3fc9249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/751393d6cbcd0c76_000003c3c3fc9249_ps.txt deleted file mode 100644 index 1b9af5f9..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/751393d6cbcd0c76_000003c3c3fc9249_ps.txt +++ /dev/null @@ -1,278 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 751393d6cbcd0c76 -// Shrine - walls 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R124f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem7; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R6f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R7f.xyz = (texture(textureUnitPS6, R1f.xy).xyz); -R8f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -R9f.xyz = (texture(textureUnitPS5, R1f.xy).xyz); -R0f.w = (texture(textureUnitPS8, R0f.xy).x); -R2f.y = (texture(textureUnitPS7, R2f.xy).x); -R1f.w = (texture(textureUnitPS8, R1f.zw).w); -// 0 -R127f.x = (R7f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -R124f.y = (R6f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R124f.y; -R127f.z = (R6f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.z = R127f.z; -R123f.w = (R7f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.w = R123f.w; -R127f.y = -(R5f.w) + 1.0; -PS0f = R127f.y; -// 1 -PV1f.x = R8f.w + -(1.0); -R126f.y = -(PV0f.z) + PV0f.w; -PV1f.z = mul_nonIEEE(PV0f.w, PV0f.w); -PV1f.w = mul_nonIEEE(PV0f.z, PV0f.z); -R125f.y = -(PV0f.y) + PV0f.x; -PS1f = R125f.y; -// 2 -R123f.x = (mul_nonIEEE(R124f.y,R124f.y) + PV1f.w); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(R127f.x,R127f.x) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.y, R4f.z); -R125f.w = (mul_nonIEEE(PV1f.x,R127f.y) + 1.0); -PV0f.w = R125f.w; -R127f.w = mul_nonIEEE(R3f.z, R4f.x); -PS0f = R127f.w; -// 3 -R127f.x = mul_nonIEEE(R3f.x, R4f.y); -R127f.y = -(PV0f.w) + 1.0; -PV1f.y = R127f.y; -PV1f.z = -(PV0f.x) + 1.0; -R126f.w = -(PV0f.y) + 1.0; -R1f.z = (mul_nonIEEE(-(R4f.y),R3f.z) + PV0f.z); -PS1f = R1f.z; -// 4 -backupReg0f = R127f.w; -R126f.x = (mul_nonIEEE(R126f.y,PV1f.y) + R127f.z); -R1f.y = (mul_nonIEEE(R125f.y,PV1f.y) + R124f.y); -R127f.z = R8f.x + -(R9f.x); -R127f.w = (mul_nonIEEE(-(R4f.z),R3f.x) + backupReg0f); -R126f.y = sqrt(PV1f.z); -PS0f = R126f.y; -// 5 -PV1f.x = R6f.z + -(R7f.z); -R125f.y = R8f.y + -(R9f.y); -R126f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -R124f.w = (mul_nonIEEE(-(R4f.x),R3f.y) + R127f.x); -PS1f = sqrt(R126f.w); -// 6 -backupReg0f = R0f.w; -PV0f.x = R8f.z + -(R9f.z); -R124f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -R123f.z = (mul_nonIEEE(PV1f.x,R125f.w) + R7f.z); -PV0f.z = R123f.z; -PV0f.w = -(R126f.y) + PS1f; -R125f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), backupReg0f); -PS0f = R125f.z; -// 7 -backupReg0f = R127f.y; -backupReg1f = R127f.z; -R125f.x = (mul_nonIEEE(PV0f.x,R125f.w) + R9f.z); -R127f.y = PV0f.z * intBitsToFloat(0x427f0000); -R127f.z = (mul_nonIEEE(PV0f.w,backupReg0f) + R126f.y); -PV1f.z = R127f.z; -R126f.w = (mul_nonIEEE(backupReg1f,R125f.w) + R9f.x); -R7f.z = mul_nonIEEE(R5f.x, R2f.y); -PS1f = R7f.z; -// 8 -tempf.x = dot(vec4(R126f.x,R1f.y,PV1f.z,-0.0),vec4(R126f.x,R1f.y,PV1f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R124f.z = (mul_nonIEEE(R125f.y,R125f.w) + R9f.y); -PS0f = R124f.z; -// 9 -R127f.x = (mul_nonIEEE(-(R125f.w),R124f.y) + R124f.y); -R123f.y = (mul_nonIEEE(-(R125f.w),R126f.z) + R126f.z); -PV1f.y = R123f.y; -R126f.z = floor(R127f.y); -R126f.z *= 4.0; -R5f.w = 1.0; -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 10 -backupReg0f = R126f.x; -R126f.x = mul_nonIEEE(R127f.z, PS1f); -PV0f.y = mul_nonIEEE(R1f.y, PS1f); -R127f.z = mul_nonIEEE(backupReg0f, PS1f); -R123f.w = (mul_nonIEEE(-(R125f.w),R125f.z) + R125f.z); -PV0f.w = R123f.w; -R9f.x = mul_nonIEEE(R1f.w, PV1f.y); -PS0f = R9f.x; -// 11 -R2f.x = mul_nonIEEE(R126f.w, R7f.z); -R9f.y = mul_nonIEEE(R1f.w, R127f.x); -R9f.z = mul_nonIEEE(R1f.w, PV0f.w); -PV1f.w = mul_nonIEEE(R4f.w, PV0f.y); -R2f.y = mul_nonIEEE(R124f.z, R7f.z); -PS1f = R2f.y; -// 12 -PV0f.x = mul_nonIEEE(R124f.w, PV1f.w); -PV0f.y = mul_nonIEEE(R127f.w, PV1f.w); -PV0f.z = mul_nonIEEE(R1f.z, PV1f.w); -R9f.w = 1.0; -R2f.z = mul_nonIEEE(R125f.x, R7f.z); -PS0f = R2f.z; -// 13 -R5f.x = intBitsToFloat(0x3c808081); -R123f.y = (mul_nonIEEE(R4f.z,R127f.z) + PV0f.x); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R4f.y,R127f.z) + PV0f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R4f.x,R127f.z) + PV0f.z); -PV1f.w = R123f.w; -R5f.y = intBitsToFloat(uf_remappedPS[1].z); -PS1f = R5f.y; -// 14 -R123f.x = (mul_nonIEEE(R3f.x,R126f.x) + PV1f.w)/2.0; -PV0f.x = R123f.x; -R123f.z = (mul_nonIEEE(R3f.z,R126f.x) + PV1f.y)/2.0; -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R3f.y,R126f.x) + PV1f.z)/2.0; -PV0f.w = R123f.w; -R2f.w = intBitsToFloat(0x3b808081); -PS0f = R2f.w; -// 15 -R3f.xyz = vec3(PV0f.x,PV0f.w,PV0f.z) + vec3(0.5,0.5,0.5); -R3f.w = (R126f.z * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 16 -backupReg0f = R9f.x; -backupReg1f = R9f.y; -backupReg2f = R9f.z; -backupReg3f = R9f.w; -R9f.xyz = vec3(backupReg0f,backupReg1f,backupReg2f); -R9f.w = backupReg3f; -// 17 -R8f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R8f.w = R3f.w; -// 18 -R7f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R7f.w = R2f.w; -// 19 -R6f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R6f.w = R5f.w; -// export -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/80b87385a0d2942f_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/80b87385a0d2942f_00000000000000e1_ps.txt deleted file mode 100644 index 73d817c9..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/80b87385a0d2942f_00000000000000e1_ps.txt +++ /dev/null @@ -1,120 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 80b87385a0d2942f -// Bomp - appear effect circle 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R123f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R2f.w = (texture(textureUnitPS0, R4f.xy).w); -R4f.z = (texture(textureUnitPS1, R4f.zw).w); -// 0 -backupReg0f = R0f.z; -R4f.x = mul_nonIEEE(R0f.x, R3f.x); -R4f.y = mul_nonIEEE(R0f.y, R3f.y); -PV0f.z = R2f.w + R4f.z; -R4f.z = mul_nonIEEE(backupReg0f, R3f.z); -PS0f = R4f.z; -// 1 -R123f.y = (mul_nonIEEE(R3f.w,PV0f.z) + -(R0f.w))*4.0; -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV1f.y = R123f.y; -// 2 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 3 -R4f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/81adf9797e4661a7_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/81adf9797e4661a7_00000000000000e1_ps.txt deleted file mode 100644 index 1bc08b72..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/81adf9797e4661a7_00000000000000e1_ps.txt +++ /dev/null @@ -1,136 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 81adf9797e4661a7 -// Shrine - ending glowing wall -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R5f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -R4f.xyz = (texture(textureUnitPS1, R4f.zw).xyz); -// 0 -backupReg0f = R0f.x; -PV0f.x = mul_nonIEEE(R4f.z, R4f.z); -PV0f.y = mul_nonIEEE(R4f.y, R4f.y); -PV0f.z = mul_nonIEEE(R4f.x, R4f.x); -PV0f.w = R5f.w * 1.0; -R127f.w = backupReg0f + -(R1f.x); -PS0f = R127f.w; -// 1 -PV1f.x = mul_nonIEEE(R3f.w, PV0f.w); -R127f.y = mul_nonIEEE(R5f.z, PV0f.x); -PV1f.z = mul_nonIEEE(R5f.y, PV0f.y); -PV1f.w = mul_nonIEEE(R5f.x, PV0f.z); -PS1f = R0f.y + -(R1f.y); -// 2 -R123f.x = (mul_nonIEEE(R127f.w,PV1f.w) + R1f.x); -PV0f.x = R123f.x; -PV0f.y = R0f.z + -(R1f.z); -PV0f.z = mul_nonIEEE(R0f.w, PV1f.x); -PV0f.z = clamp(PV0f.z, 0.0, 1.0); -R123f.w = (mul_nonIEEE(PS1f,PV1f.z) + R1f.y); -PV0f.w = R123f.w; -// 3 -R1f.x = mul_nonIEEE(R3f.x, PV0f.x); -R1f.y = mul_nonIEEE(R3f.y, PV0f.w); -R123f.z = (mul_nonIEEE(PV0f.y,R127f.y) + R1f.z); -PV1f.z = R123f.z; -R1f.w = mul_nonIEEE(R2f.x, PV0f.z); -// 4 -R1f.z = mul_nonIEEE(R3f.z, PV1f.z); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8438998c284fe428_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8438998c284fe428_000000000000001c_ps.txt deleted file mode 100644 index 01a78d38..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8438998c284fe428_000000000000001c_ps.txt +++ /dev/null @@ -1,105 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8438998c284fe428 -// Shrine - elevator particles 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R2f.w = (texture(textureUnitPS0, R3f.xy).w); -// 0 -PV0f.y = -(R0f.w) + R2f.w; -// 1 -PV1f.x = mul_nonIEEE(R1f.w, PV0f.y); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -// 2 -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/87790fa17c847fea_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/87790fa17c847fea_0000000000000709_ps.txt deleted file mode 100644 index b7e4e486..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/87790fa17c847fea_0000000000000709_ps.txt +++ /dev/null @@ -1,182 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 87790fa17c847fea -// Shrine - elevator field + distortion -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem12; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f = passParameterSem8; -R6f = passParameterSem12; -R4f.xw = (texture(textureUnitPS0, R5f.xy).xw); -// 0 -PV0f.x = -(R0f.w) + R1f.w; -R127f.y = (R4f.x * 2.0 + -(1.0)); -R125f.z = (R4f.w * 2.0 + -(1.0)); -PV0f.w = 1.0; -R126f.z = R3f.y; -R126f.z /= 2.0; -PS0f = R126f.z; -// 1 -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(uf_remappedPS[0].y),intBitsToFloat(uf_remappedPS[0].z),intBitsToFloat(uf_remappedPS[0].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R127f.w = tempf.x; -R127f.z = 1.0 / PV0f.x; -PS1f = R127f.z; -// 2 -R5f.x = (mul_nonIEEE(R3f.y,R127f.y) + R5f.z); -PV0f.y = -(R0f.w) + -(PV1f.x); -R5f.z = (mul_nonIEEE(R3f.y,R125f.z) + R5f.w); -R126f.w = -(R4f.y) + R4f.z; -R5f.y = R0f.x + -(R1f.x); -PS0f = R5f.y; -// 3 -backupReg0f = R127f.z; -R0f.x = R0f.y + -(R1f.y); -R0f.y = R0f.z + -(R1f.z); -R127f.z = -(R4f.y) + -(R127f.w); -PV1f.w = mul_nonIEEE(PV0f.y, backupReg0f); -PV1f.w = clamp(PV1f.w, 0.0, 1.0); -R127f.w = 1.0 / R2f.w; -PS1f = R127f.w; -// 4 -PV0f.y = mul_nonIEEE(R126f.z, PV1f.w); -PS0f = 1.0 / R126f.w; -// 5 -R123f.x = (mul_nonIEEE(R127f.y,PV0f.y) + R2f.x); -PV1f.x = R123f.x; -PV1f.y = mul_nonIEEE(R127f.z, PS0f); -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -R123f.z = (mul_nonIEEE(R125f.z,PV0f.y) + R2f.y); -PV1f.z = R123f.z; -// 6 -backupReg0f = R3f.x; -R3f.x = mul_nonIEEE(PV1f.x, R127f.w); -R3f.y = mul_nonIEEE(PV1f.z, R127f.w); -R2f.w = mul_nonIEEE(backupReg0f, PV1f.y); -R5f.x = (texture(textureUnitPS1, R5f.xz).w); -R3f.xyz = (texture(textureUnitPS3, R3f.xy).xyz); -vec3 colhsv = rgb2hsv(R3f.rgb); // inverse hue rotation -R3f.rgb = hsv2rgb(vec3(mod(colhsv.x - hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -R3f.a *= ALPHA_FACTOR; -// 0 -PV0f.z = mul_nonIEEE(R5f.x, R5f.x); -// 1 -R123f.x = (mul_nonIEEE(R0f.y,PV0f.z) + R1f.z); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R0f.x,PV0f.z) + R1f.y); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R5f.y,PV0f.z) + R1f.x); -PV1f.z = R123f.z; -// 2 -R2f.x = (mul_nonIEEE(R5f.x,PV1f.z) + R3f.x); -R2f.y = (mul_nonIEEE(R5f.x,PV1f.y) + R3f.y); -R2f.z = (mul_nonIEEE(R5f.x,PV1f.x) + R3f.z); -// export -if (((vec4(R2f.x, R2f.y, R2f.z, R2f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8798144a6f066e7c_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8798144a6f066e7c_00000000000000e1_ps.txt deleted file mode 100644 index c31e1da3..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8798144a6f066e7c_00000000000000e1_ps.txt +++ /dev/null @@ -1,185 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8798144a6f066e7c -// Shrine - ending field 3 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem11; -R7f.xyzw = (texture(textureUnitPS0, R5f.xy).xyzw); -R5f.xyz = (texture(textureUnitPS1, R5f.zw).xyz); -// 0 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -PS0f = R127f.z; -// 1 -R127f.x = mul_nonIEEE(R5f.y, R5f.y); -R127f.y = mul_nonIEEE(R5f.x, R5f.x); -R126f.z = mul_nonIEEE(R5f.z, R5f.z); -PV1f.w = R7f.w * 1.0; -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R127f.w = mul_nonIEEE(R4f.w, PV1f.w); -R126f.y = 1.0 / R127f.z; -PS0f = R126f.y; -// 3 -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R127f.z = mul_nonIEEE(R7f.x, R127f.y); -PS1f = R127f.z; -// 4 -backupReg0f = R126f.z; -backupReg1f = R127f.w; -backupReg2f = R0f.x; -PV0f.x = max(PV1f.x, -(PV1f.x)); -R127f.y = mul_nonIEEE(R7f.y, R127f.x); -R126f.z = mul_nonIEEE(R7f.z, backupReg0f); -R127f.w = mul_nonIEEE(R0f.w, backupReg1f); -R127f.w = clamp(R127f.w, 0.0, 1.0); -PS0f = backupReg2f + -(R1f.x); -// 5 -backupReg0f = R0f.y; -PV1f.x = R0f.z + -(R1f.z); -PV1f.y = backupReg0f + -(R1f.y); -R123f.z = (mul_nonIEEE(PS0f,R127f.z) + R1f.x); -PV1f.z = R123f.z; -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -// 6 -PV0f.x = PV1f.w * R126f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R123f.z = (mul_nonIEEE(PV1f.y,R127f.y) + R1f.y); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(PV1f.x,R126f.z) + R1f.z); -PV0f.w = R123f.w; -R1f.x = mul_nonIEEE(R4f.x, PV1f.z); -PS0f = R1f.x; -// 7 -R1f.y = mul_nonIEEE(R4f.y, PV0f.z); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -R1f.z = mul_nonIEEE(R4f.z, PV0f.w); -PS1f = R1f.z; -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 9 -PV1f.x = mul_nonIEEE(R127f.w, PV0f.y); -// 10 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/87babe7569572ff5_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/87babe7569572ff5_0000000000003849_ps.txt deleted file mode 100644 index fe88a094..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/87babe7569572ff5_0000000000003849_ps.txt +++ /dev/null @@ -1,177 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 87babe7569572ff5 -// Bomb - trails 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f = passParameterSem7; -R6f = passParameterSem8; -R4f.xw = (texture(textureUnitPS0, R5f.xy).xw); -R7f.y = (texture(textureUnitPS2, R6f.xy).w); -// 0 -backupReg0f = R7f.y; -backupReg1f = R0f.x; -PV0f.x = mul_nonIEEE(R1f.w, R7f.y); -R7f.y = mul_nonIEEE(R0f.w, backupReg0f); -R6f.z = backupReg1f + -(R1f.x); -R123f.w = (R4f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = (mul_nonIEEE(PV0f.w,PV0f.x) + R5f.z); -R5f.y = (mul_nonIEEE(PV0f.w,PV0f.x) + R5f.w); -R5f.z = mul_nonIEEE(R2f.x, PS0f); -R5f.w = mul_nonIEEE(R2f.y, PS0f); -R3f.w = 1.0 / R2f.w; -PS1f = R3f.w; -R3f.z = (texture(textureUnitPS1, R5f.xy).x); -R5f.x = (texture(textureUnitPS4, R5f.zw).x); -// 0 -backupReg0f = R0f.y; -R2f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R5f.x) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.y = R2f.z * R3f.w; -R123f.z = (R3f.z * 2.0 + -(1.0)); -PV0f.z = R123f.z; -R2f.w = backupReg0f + -(R1f.y); -// 1 -backupReg0f = R6f.y; -backupReg1f = R0f.z; -R6f.y = (mul_nonIEEE(PV0f.z,R7f.y) + backupReg0f); -R0f.z = (mul_nonIEEE(PV0f.y,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R0f.w = backupReg1f + -(R1f.z); -R6f.y = (texture(textureUnitPS2, R6f.xy).x); -// 0 -R123f.x = (mul_nonIEEE(R4f.w,R6f.y) + -(R3f.y)); -PV0f.x = R123f.x; -PV0f.y = -(R3f.y) + R6f.y; -PS0f = 1.0 / R0f.z; -// 1 -PV1f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -PV1f.z = mul_nonIEEE(R4f.y, PV0f.y); -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -PV1f.w = mul_nonIEEE(R4f.y, PV0f.x); -PV1f.w = clamp(PV1f.w, 0.0, 1.0); -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -R127f.x = mul_nonIEEE(R4f.z, PV1f.z); -R127f.x = clamp(R127f.x, 0.0, 1.0); -R0f.y = (mul_nonIEEE(R2f.w,PV1f.w) + R1f.y); -R0f.z = (mul_nonIEEE(R0f.w,PV1f.w) + R1f.z); -PV0f.w = -(PV1f.y) + R2f.x; -R0f.x = (mul_nonIEEE(R6f.z,PV1f.w) + R1f.x); -PS0f = R0f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R127f.x, PV1f.y); -// 5 -R0f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8836c3a20b053cf0_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8836c3a20b053cf0_000000000000001c_ps.txt deleted file mode 100644 index a49bdad3..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8836c3a20b053cf0_000000000000001c_ps.txt +++ /dev/null @@ -1,170 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8836c3a20b053cf0 -// Shrine - vertical lines field -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem11; -R5f.xyzw = (texture(textureUnitPS0, R5f.xy).xyzw); -// 0 -tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,-0.0),vec4(R2f.x,R2f.y,R2f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -PS0f = R127f.z; -// 1 -R127f.x = R0f.y + -(R1f.y); -PV1f.y = mul_nonIEEE(R4f.w, R5f.w); -R126f.z = R0f.x + -(R1f.x); -R127f.w = R0f.z + -(R1f.z); -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R126f.w = mul_nonIEEE(R0f.w, PV1f.y); -R126f.w = clamp(R126f.w, 0.0, 1.0); -R127f.y = 1.0 / R127f.z; -PS0f = R127f.y; -// 3 -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R122f.x = (mul_nonIEEE(R126f.z,R5f.x) + R1f.x); -PS1f = R122f.x; -// 4 -PV0f.x = max(PV1f.x, -(PV1f.x)); -R123f.z = (mul_nonIEEE(R127f.x,R5f.y) + R1f.y); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R127f.w,R5f.z) + R1f.z); -PV0f.w = R123f.w; -R1f.x = mul_nonIEEE(R4f.x, PS1f); -PS0f = R1f.x; -// 5 -R1f.y = mul_nonIEEE(R4f.y, PV0f.z); -R1f.z = mul_nonIEEE(R4f.z, PV0f.w); -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -// 6 -PV0f.x = PV1f.w * R127f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 7 -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 9 -PV1f.x = mul_nonIEEE(R126f.w, PV0f.y); -// 10 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8d0a18894dd0c9cb_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8d0a18894dd0c9cb_0000000000000709_ps.txt deleted file mode 100644 index 6e6d3581..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8d0a18894dd0c9cb_0000000000000709_ps.txt +++ /dev/null @@ -1,201 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8d0a18894dd0c9cb -// Shrine - ending field 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f = passParameterSem9; -R6f = passParameterSem11; -R7f.xy = (texture(textureUnitPS0, R4f.xy).xy); -R4f.xy = (texture(textureUnitPS0, R4f.zw).xy); -// 0 -backupReg0f = R0f.z; -R127f.x = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -PV0f.y = R7f.y + R4f.y; -PV0f.z = R7f.x + R4f.x; -R4f.w = backupReg0f + -(R1f.z); -PS0f = R2f.z * R2f.z; -// 1 -backupReg0f = R0f.x; -PV1f.x = PV0f.z + -(1.0); -R4f.y = backupReg0f + -(R1f.x); -R5f.z = R0f.y + -(R1f.y); -PV1f.w = PV0f.y + -(1.0); -R122f.x = (R2f.y * R2f.y + PS0f); -PS1f = R122f.x; -// 2 -PV0f.x = mul_nonIEEE(R3f.y, PV1f.x); -R123f.y = (R2f.x * R2f.x + PS1f); -PV0f.y = R123f.y; -R0f.z = R0f.w + PV1f.x; -PV0f.w = mul_nonIEEE(R3f.y, PV1f.w); -R0f.y = 1.0 / R127f.x; -PS0f = R0f.y; -// 3 -backupReg0f = R5f.x; -backupReg1f = R5f.y; -R5f.x = backupReg0f + PV0f.x; -R5f.y = backupReg1f + PV0f.w; -tempResultf = 1.0 / sqrt(PV0f.y); -R4f.z = tempResultf; -PS1f = R4f.z; -R3f.z = (texture(textureUnitPS2, R5f.xy).w); -R0f.w = (texture(textureUnitPS1, R0f.zz).x); -// 0 -PV0f.x = mul_nonIEEE(R2f.x, R4f.z); -PV0f.y = mul_nonIEEE(R2f.y, R4f.z); -PV0f.z = mul_nonIEEE(R2f.z, R4f.z); -R127f.w = R0f.w + R3f.z; -R127f.w /= 2.0; -PV0f.w = R127f.w; -R127f.z = (mul_nonIEEE(R4f.y,R0f.w) + R1f.x); -PS0f = R127f.z; -// 1 -tempf.x = dot(vec4(R6f.x,R6f.y,R6f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.w = PV0f.w + intBitsToFloat(0xbf333333); -R126f.w = clamp(R126f.w, 0.0, 1.0); -PS1f = R126f.w; -// 2 -PV0f.x = max(PV1f.x, -(PV1f.x)); -R123f.y = (mul_nonIEEE(R3f.z,R127f.w) + PS1f); -PV0f.y = R123f.y; -R126f.z = (mul_nonIEEE(R5f.z,R0f.w) + R1f.y); -PV0f.z = R126f.z; -R127f.w = (mul_nonIEEE(R4f.w,R0f.w) + R1f.z); -PV0f.w = R127f.w; -// 3 -R127f.x = mul_nonIEEE(R1f.w, PV0f.y); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV1f.y = R127f.z * intBitsToFloat(0x41200000); -PV1f.z = PV0f.z * intBitsToFloat(0x41200000); -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -PS1f = PV0f.w * intBitsToFloat(0x41200000); -// 4 -PV0f.x = PV1f.w * R0f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R0f.y = (mul_nonIEEE(PV1f.z,R126f.w) + R126f.z); -R0f.z = (mul_nonIEEE(PS1f,R126f.w) + R127f.w); -R0f.x = (mul_nonIEEE(PV1f.y,R126f.w) + R127f.z); -PS0f = R0f.x; -// 5 -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -// 6 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 7 -PV1f.x = mul_nonIEEE(R127f.x, PV0f.y); -// 8 -R0f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8e9e804a3cd384c3_00000000000ff259_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8e9e804a3cd384c3_00000000000ff259_ps.txt deleted file mode 100644 index 2228b616..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8e9e804a3cd384c3_00000000000ff259_ps.txt +++ /dev/null @@ -1,657 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8e9e804a3cd384c3 -// Shrine lights, volcano path lights, generic lights, electric balls - reflection pass -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[13]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[13]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform samplerCubeArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex2 = 0.0; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -// 0 -R6i.x = 0x3f800000; -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedPS[0].x))); -R127i.z = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(uf_remappedPS[0].y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R11i.w = 0; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].y)); -// 2 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.z)); -R0i.y = floatBitsToInt(tempResultf); -PS0i = R0i.y; -R3i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.xy)).xyzw); -R2i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R2i.x)) + intBitsToFloat(uf_remappedPS[2].x))); -PV0i.w = R126i.w; -R127i.w = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -PS0i = R127i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),-(intBitsToFloat(PV0i.w))) + -(intBitsToFloat(uf_remappedPS[3].x)))); -PS1i = R5i.x; -// 2 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].y)))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].z)))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R0i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R0i.y))); -PS1i = int(intBitsToFloat(R127i.w)); -// 4 -backupReg0i = R0i.z; -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),-0.0),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.x = PS1i & 0x00000002; -PS0i = R125i.x; -// 5 -R126i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3a83126f))); -PV1i.x = R126i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + 1.0); -R2i.z = floatBitsToInt(-(intBitsToFloat(R126i.w))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R126i.w)))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R126i.w)))); -PS1i = R4i.y; -// 6 -backupReg0i = R0i.z; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 7 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.x)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R2i.y)), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), intBitsToFloat(PS0i))); -PV1i.z = R4i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].w), intBitsToFloat(PS0i))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg0i)) + intBitsToFloat(0x3d4ccccd))); -R126i.z = clampFI32(R126i.z); -PS1i = R126i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = R125i.z; -// 9 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(1.0))); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(R0i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); -PS0i = R126i.w; -// 11 -redcCUBE(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x),intBitsToFloat(R127i.x),intBitsToFloat(R127i.y)),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)),cubeMapSTM,cubeMapFaceId); -R1i.x = floatBitsToInt(cubeMapSTM.x); -R1i.y = floatBitsToInt(cubeMapSTM.y); -R1i.z = floatBitsToInt(cubeMapSTM.z); -R1i.w = cubeMapFaceId; -PV1i.x = R1i.x; -PV1i.y = R1i.y; -PV1i.z = R1i.z; -PV1i.w = R1i.w; -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS1i = R127i.x; -// 12 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(uf_remappedPS[8].x)) + intBitsToFloat(uf_remappedPS[8].y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R126i.z))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(uf_remappedPS[8].z)) + intBitsToFloat(uf_remappedPS[8].w))); -PV0i.z = R126i.z; -R126i.w = floatBitsToInt((intBitsToFloat(R0i.y) * 0.5 + 0.5)); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 13 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R127i.w = ((intBitsToFloat(PV0i.z) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R10i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(1.0)); -PS1i = R10i.x; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); -R5i.y = floatBitsToInt(intBitsToFloat(R5i.y) / 2.0); -PV0i.y = R5i.y; -R6i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3ea2f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x40400000)); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); -PS0i = R6i.w; -// 15 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[9].y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[10].y))); -PV1i.y = clampFI32(PV1i.y); -R123i.z = ((R127i.w == 0)?(0):(PV0i.x)); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -R4i.x = ((intBitsToFloat(R3i.x) > intBitsToFloat(uf_remappedPS[9].x))?int(0xFFFFFFFF):int(0x0)); -R3i.y = ((R125i.x == 0)?(R126i.z):(PV1i.z)); -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R3i.w = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PS1i)); -R3i.w = clampFI32(R3i.w); -R0i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -R0i.x = floatBitsToInt(intBitsToFloat(R0i.x) / 2.0); -PS0i = R0i.x; -R1i.w = floatBitsToInt(texture(textureUnitPS2, vec4(redcCUBEReverse(intBitsToFloat(R1i.yx),R1i.w),cubeMapArrayIndex2)).x); -R3i.y = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R3i.xy)).x); -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R4i.w),intBitsToFloat(R5i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = ((intBitsToFloat(R1i.w) > intBitsToFloat(0x3f7ae148))?int(0xFFFFFFFF):int(0x0)); -// 1 -R126i.x = ((PS0i == 0)?(R1i.w):(0x42c80000)); -PV1i.y = PV0i.x; -PV1i.y = clampFI32(PV1i.y); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R2i.x))); -PV1i.w = PV0i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R3i.w)); -// 2 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R7i.x)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R4i.w)))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R5i.w)))); -PV0i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y))); -PV0i.w = R123i.w; -R126i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -PS0i = R126i.y; -// 3 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.y; -// 4 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -backupReg2i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.x))); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R2i.y))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R0i.z))); -PV0i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].z),intBitsToFloat(backupReg2i)) + 4.0)/2.0); -PV0i.w = R123i.w; -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.y))); -PS0i = R3i.w; -// 5 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(backupReg0i))); -R127i.z = clampFI32(R127i.z); -PS1i = R127i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),intBitsToFloat(uf_remappedPS[4].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),intBitsToFloat(uf_remappedPS[6].w)))); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 8 -R124i.x = ((R4i.x == 0)?(R3i.y):(R125i.z)); -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[11].y)); -R125i.y = clampFI32(R125i.y); -R125i.z = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(uf_remappedPS[11].x)); -R125i.z = clampFI32(R125i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) * intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R3i.z))); -PS0i = R1i.w; -// 9 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R5i.x)))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R2i.y)))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R0i.z)))); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(uf_remappedPS[12].x))); -PV1i.w = clampFI32(PV1i.w); -R125i.x = floatBitsToInt(intBitsToFloat(backupReg3i) + -(intBitsToFloat(uf_remappedPS[12].y))); -R125i.x = clampFI32(R125i.x); -PS1i = R125i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.w))); -PS0i = R127i.x; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),intBitsToFloat(uf_remappedPS[7].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 12 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -backupReg2i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R124i.w = floatBitsToInt(max(intBitsToFloat(R125i.y), intBitsToFloat(R125i.x))); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg2i)) + 1.0); -PS0i = R127i.w; -// 13 -backupReg0i = R125i.w; -backupReg0i = R125i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.x)); -PV1i.x = R126i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.y)); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[11].z)); -R125i.w = clampFI32(R125i.w); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(uf_remappedPS[12].z))); -R126i.w = clampFI32(R126i.w); -PS1i = R126i.w; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = floatBitsToInt(max(-(intBitsToFloat(R4i.z)), 0.0)); -PS0i = R0i.w; -// 15 -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -R6i.x = clampFI32(R6i.x); -PV1i.x = R6i.x; -PV1i.y = R6i.x; -PV1i.z = R6i.x; -PV1i.w = R6i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 16 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y))); -PV0i.w = R123i.w; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(R127i.w))); -PS0i = R125i.z; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R4i.w),intBitsToFloat(R5i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R127i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R127i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R125i.y; -// 19 -backupReg0i = R124i.y; -backupReg1i = R9i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(max(intBitsToFloat(R125i.w), intBitsToFloat(R126i.w))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R9i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].z)),intBitsToFloat(backupReg1i)) + 1.0)); -R9i.x = clampFI32(R9i.x); -PS1i = R9i.x; -// 20 -backupReg0i = R125i.y; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -R125i.y = floatBitsToInt(min(intBitsToFloat(R0i.w), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(PV1i.w)) + 1.0)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R1i.w)) + 1.0); -PS0i = R127i.y; -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R6i.y = floatBitsToInt(-(intBitsToFloat(R124i.y)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.x))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(R124i.x))); -PS1i = R5i.y; -// 22 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(R124i.x))); -R4i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(R1i.w))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(R124i.x))); -R0i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R0i.w; -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R6i.y)) + -(1.0))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R5i.y) * intBitsToFloat(0x3ea2f983)); -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(R0i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R10i.x) * intBitsToFloat(0x3ea2f983)); -PS0i = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(0x3ea2f983)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R4i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[10].w)) + 1.0)); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS0i))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.x))); -// 3 -R11i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -R11i.y = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R11i.z = floatBitsToInt(min(intBitsToFloat(PV0i.z), intBitsToFloat(0x42000000))); -PS1i = R11i.z; -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.z))); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(PV0i.y))); -// 6 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(PV0i.w))); -// 8 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.z))); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.z))); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.z))); -// 11 -R4i.x = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -R4i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -R4i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(0x42000000))); -// 12 -R0i.xyz = ivec3(R11i.x,R11i.y,R11i.z); -R0i.w = R11i.w; -// 13 -R1i.xyz = ivec3(R4i.x,R4i.y,R4i.z); -R1i.w = R4i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -colhsv = rgb2hsv(passPixelColor1.rgb); -passPixelColor1.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor1.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/8fe014235f134ac1_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/8fe014235f134ac1_00000000000000e1_ps.txt deleted file mode 100644 index b0a71172..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/8fe014235f134ac1_00000000000000e1_ps.txt +++ /dev/null @@ -1,138 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8fe014235f134ac1 -// Shrine - generic particles -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem3; -R2f = passParameterSem4; -R3f = passParameterSem8; -R3f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -// 0 -R4f.x = mul_nonIEEE(R0f.w, R3f.w); -R4f.x = clamp(R4f.x, 0.0, 1.0); -R5f.y = mul_nonIEEE(R0f.y, R3f.y); -R5f.z = mul_nonIEEE(R0f.z, R3f.z); -PS0f = 1.0 / R1f.w; -// 1 -R5f.x = mul_nonIEEE(R0f.x, R3f.x); -PV1f.y = R1f.z * PS0f; -PS1f = 1.0 / R1f.w; -// 2 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = mul_nonIEEE(backupReg0f, PS1f); -R1f.y = mul_nonIEEE(backupReg1f, PS1f); -R1f.z = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R1f.x = (texture(textureUnitPS4, R1f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R1f.x) + intBitsToFloat(uf_remappedPS[0].x)); -PS0f = 1.0 / R1f.z; -// 1 -PV1f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.y) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R4f.x, PV1f.y); -// 5 -R5f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/99122c964b6a1a19_000000000001fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/99122c964b6a1a19_000000000001fe49_ps.txt deleted file mode 100644 index 97510444..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/99122c964b6a1a19_000000000001fe49_ps.txt +++ /dev/null @@ -1,640 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 99122c964b6a1a19 -// Shrine - elevator reflection pass -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -if( activeMaskStackC[1] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[0].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[0].y)); -// 2 -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -R0i.y = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].w)); -PS0i = R0i.y; -} -if( activeMaskStackC[1] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -R2i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.xy)).xyzw); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -R127i.y = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -R127i.z = floatBitsToInt((intBitsToFloat(R2i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R0i.x)) + intBitsToFloat(uf_remappedPS[2].x))); -PV0i.w = R123i.w; -// 1 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R125i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(PV0i.w)))); -PV1i.y = R126i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PV1i.z = R126i.z; -PS1i = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PV0i.z)); -// 2 -R5i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedPS[3].x)); -PV0i.x = R5i.x; -R7i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[3].y)); -PV0i.y = R7i.y; -R7i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[3].z)); -PV0i.z = R7i.z; -R122i.x = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(R127i.y) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(R127i.x) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 4 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R0i.y)); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(PV0i.x)) + intBitsToFloat(uf_remappedPS[3].y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(PV0i.x)) + intBitsToFloat(uf_remappedPS[3].x))); -PV1i.w = R123i.w; -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -PS1i = R8i.z; -// 6 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(PV1i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z),intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[3].z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R125i.x) + -(intBitsToFloat(PV1i.z))); -// 7 -backupReg0i = R126i.z; -R126i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.y))); -PV1i.z = R126i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(PV1i.z)),-0.0),vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(PV1i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.w = tempi.x; -// 9 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 10 -R6i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(PS1i))); -R6i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.z)), intBitsToFloat(PS1i))); -R6i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.z)), intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(uf_remappedPS[4].w))); -PV0i.w = R0i.w; -// 11 -R5i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R5i.w; -// 12 -predResult = (intBitsToFloat(R0i.w) > 1.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[1].z) + intBitsToFloat(R6i.z)); -PV0i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[1].y) + intBitsToFloat(R6i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[1].x) + intBitsToFloat(R6i.x)); -R1i.w = 0x3f800000; -PS0i = R1i.w; -// 1 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R5i.w)) + -(intBitsToFloat(uf_remappedPS[1].x)))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R5i.w)) + -(intBitsToFloat(uf_remappedPS[1].y)))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R5i.w)) + -(intBitsToFloat(uf_remappedPS[1].z)))); -PV1i.z = R127i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 3 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -// 5 -R0i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R1i.w = R5i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(uf_remappedPS[5].x)) + intBitsToFloat(uf_remappedPS[5].y))); -PS0i = R2i.x; -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(1.0))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -PV1i.y = R3i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].x)) + intBitsToFloat(uf_remappedPS[7].x)); -R4i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].y)) + intBitsToFloat(uf_remappedPS[7].y)); -PS1i = R4i.y; -// 2 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * 0.5 + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3d4ccccd))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(min(intBitsToFloat(PV1i.x), 1.0)); -R2i.z = 0; -PS0i = R2i.z; -// 3 -backupReg0i = R1i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -PV1i.x = R127i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(uf_remappedPS[5].w))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R4i.z = floatBitsToInt(intBitsToFloat(R4i.z) / 2.0); -PV1i.z = R4i.z; -R1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x40400000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 4 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS1i))); -PV0i.x = R4i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -PV0i.y = R5i.y; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -PV0i.z = R5i.z; -R4i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(1.0)); -R3i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = R3i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3ea2f983)); -PS1i = R6i.y; -// 6 -R0i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(0xbf666666)); -R0i.y = PV1i.x; -R0i.y = clampFI32(R0i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R0i.w))); -R0i.w = PV1i.x; -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -R3i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(uf_remappedPS[6].x)); -PS0i = R3i.x; -} -if( activeMaskStackC[1] == true ) { -R3i.z = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.xy)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(R0i.w)) + -(intBitsToFloat(R4i.x)))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R0i.w)) + -(intBitsToFloat(R5i.y)))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R0i.w)) + -(intBitsToFloat(R5i.z)))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z))); -PV0i.w = R123i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(0x40a00000)); -R126i.x = clampFI32(R126i.x); -PS0i = R126i.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -R0i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R0i.y; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -R125i.x = floatBitsToInt(1.0 / intBitsToFloat(R1i.w)); -PS0i = R125i.x; -// 3 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.x))); -// 5 -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(PS0i))); -R125i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(uf_remappedPS[6].y)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R126i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[1].w)),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg1i))); -PV1i.w = R123i.w; -R127i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R125i.x)); -R127i.w = clampFI32(R127i.w); -PS1i = R127i.w; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R2i.w),intBitsToFloat(R4i.y),intBitsToFloat(R4i.y),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 7 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(uf_remappedPS[8].y))); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(uf_remappedPS[9].y))); -R124i.z = ((intBitsToFloat(R2i.x) > intBitsToFloat(uf_remappedPS[9].x))?int(0xFFFFFFFF):int(0x0)); -R1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -PV1i.w = R1i.w; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.w; -// 8 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R5i.x))); -PV0i.x = R126i.x; -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(PV1i.w)) + intBitsToFloat(R7i.y))); -PV0i.y = R124i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R7i.z))); -PV0i.z = R0i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = clampFI32(PV0i.w); -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R127i.w)); -PS0i = R125i.z; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.z))); -PS1i = R1i.z; -// 10 -backupReg0i = R126i.y; -backupReg1i = R125i.z; -backupReg2i = R127i.x; -backupReg2i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(R126i.x)))); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(R124i.y)))); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(R0i.z)))); -PV0i.z = R125i.z; -R5i.w = floatBitsToInt(intBitsToFloat(R3i.y) * intBitsToFloat(backupReg1i)); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg2i)),intBitsToFloat(backupReg2i)) + 1.0)); -PS0i = R126i.z; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(uf_remappedPS[7].z)); -PS1i = R127i.w; -// 12 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R3i.x)),-(intBitsToFloat(R125i.y)),-(intBitsToFloat(R125i.y)),-0.0),vec4(intBitsToFloat(R2i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 13 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R127i.y))); -R127i.y = floatBitsToInt(max(-(intBitsToFloat(R6i.z)), 0.0)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(R126i.w)); -PV1i.z = clampFI32(PV1i.z); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R126i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 14 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].w) * intBitsToFloat(PS1i)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R3i.x))); -PV0i.y = R123i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(R125i.y))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[6].z))); -R2i.w = ((backupReg0i == 0)?(R3i.z):(PV1i.x)); -PS0i = R2i.w; -// 15 -backupReg0i = R0i.w; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -R126i.z = floatBitsToInt(min(intBitsToFloat(R127i.y), 1.0)); -PV1i.w = PV0i.x; -PV1i.w = clampFI32(PV1i.w); -R124i.x = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -PS1i = R124i.x; -// 16 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R125i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.w)) + intBitsToFloat(R126i.x))); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV1i.w)) + intBitsToFloat(R124i.y))); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV1i.w)) + intBitsToFloat(R0i.z))); -PV0i.z = R125i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z)) + intBitsToFloat(PV1i.y))); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.w; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = ((0.0 > intBitsToFloat(PS0i))?int(0xFFFFFFFF):int(0x0)); -PS1i = R124i.z; -// 18 -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) * -(1.0)); -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R124i.x)) + intBitsToFloat(R0i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 19 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R3i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -PV1i.y = R3i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -PV1i.z = R0i.z; -R123i.w = ((R124i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -R7i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R125i.w)) + 1.0)); -R7i.w = clampFI32(R7i.w); -PS1i = R7i.w; -// 20 -R2i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV1i.x)); -PV0i.x = R2i.x; -R2i.y = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(PV1i.y)); -PV0i.y = R2i.y; -R3i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(PV1i.z)); -PV0i.z = R3i.z; -R6i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3dcccccd)); -R6i.w = clampFI32(R6i.w); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].x), intBitsToFloat(R2i.w))); -PS0i = R2i.z; -// 21 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.y = tempi.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].y), intBitsToFloat(R2i.w))); -PS1i = R1i.y; -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.z; -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(backupReg0i),0.0))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R4i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS0i))); -PV1i.z = R125i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z))); -PV1i.w = R123i.w; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R2i.w))); -PS1i = R124i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R127i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 4 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R127i.w))); -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = R126i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(PS1i)) + 1.0)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3ea2f983)); -R125i.z = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(0x3ea2f983)); -PS0i = R125i.z; -// 5 -backupReg0i = R124i.x; -backupReg1i = R0i.w; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -PV1i.x = R124i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R124i.z = floatBitsToInt((intBitsToFloat(R1i.w) * intBitsToFloat(0x41200000) + 1.0)); -R124i.z = clampFI32(R124i.z); -PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3ea2f983)); -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV0i.w))); -PS1i = R2i.x; -// 6 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R125i.z))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 7 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(intBitsToFloat(R6i.y) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -R2i.w = 0; -// 8 -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -PV0i.y = R123i.y; -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.y))); -// 10 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.z))); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * 0.25); -// 12 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.x))); -// 13 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.w))); -// 14 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.z))); -// 15 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(PV0i.y))); -// 16 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].y), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].x), intBitsToFloat(PV1i.x))); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(PV0i.z))); -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PV1i.z))); -// 19 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV0i.x))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV0i.w))); -// 20 -R1i.xyz = ivec3(R2i.x,R2i.y,R2i.z); -R1i.w = R2i.w; -// 21 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -colhsv = rgb2hsv(passPixelColor1.rgb); -passPixelColor1.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor1.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/99fc7f42b65ca284_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/99fc7f42b65ca284_0000000000000709_ps.txt deleted file mode 100644 index 13efd00e..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/99fc7f42b65ca284_0000000000000709_ps.txt +++ /dev/null @@ -1,230 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 99fc7f42b65ca284 -// Shrine - elevator -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem5; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 7) in vec4 passParameterSem11; -layout(location = 8) in vec4 passParameterSem12; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem2; -R3f = passParameterSem4; -R4f = passParameterSem5; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f = passParameterSem11; -R8f = passParameterSem12; -R9f.xy = (texture(textureUnitPS0, R5f.xy).xy); -R5f.xy = (texture(textureUnitPS0, R5f.zw).xy); -// 0 -PV0f.x = R9f.y + R5f.y; -PV0f.y = R9f.x + R5f.x; -PV0f.z = -(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[0].w); -R126f.w = 1.0; -R127f.w = -(R4f.y) + R4f.z; -PS0f = R127f.w; -// 1 -R9f.x = R0f.y + -(R1f.y); -PV1f.y = PV0f.x + -(1.0); -PV1f.z = PV0f.y + -(1.0); -R5f.w = R0f.x + -(R1f.x); -R5f.y = 1.0 / PV0f.z; -PS1f = R5f.y; -// 2 -R0f.x = R0f.w + PV1f.z; -R0f.y = R0f.z + -(R1f.z); -PV0f.z = mul_nonIEEE(R3f.y, PV1f.z); -PV0f.w = mul_nonIEEE(R3f.y, PV1f.y); -R3f.z = 1.0 / R127f.w; -PS0f = R3f.z; -// 3 -backupReg0f = R6f.x; -backupReg1f = R6f.y; -R6f.x = backupReg0f + PV0f.z; -R6f.y = backupReg1f + PV0f.w; -R0f.z = mul_nonIEEE(R126f.w, intBitsToFloat(uf_remappedPS[1].w)); -R5f.x = R2f.z * R2f.z; -PS1f = R5f.x; -R5f.z = (texture(textureUnitPS2, R6f.xy).w); -R0f.w = (texture(textureUnitPS1, R0f.xx).x); -// 0 -backupReg0f = R0f.w; -tempf.x = dot(vec4(R2f.x,R2f.y,R5f.x,-0.0),vec4(R2f.x,R2f.y,1.0,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.y = backupReg0f + R5f.z; -R127f.y /= 2.0; -PS0f = R127f.y; -// 1 -backupReg0f = R0f.z; -tempf.x = dot(vec4(R8f.x,R8f.y,R8f.z,backupReg0f),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),1.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.y = tempf.x; -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -PV0f.x = mul_nonIEEE(R2f.x, PS1f); -PV0f.y = mul_nonIEEE(R2f.y, PS1f); -PV0f.z = mul_nonIEEE(R2f.z, PS1f); -R126f.w = R127f.y + intBitsToFloat(0xbf333333); -R126f.w = clamp(R126f.w, 0.0, 1.0); -PV0f.w = R126f.w; -R127f.x = (mul_nonIEEE(R5f.w,R0f.w) + R1f.x); -PS0f = R127f.x; -// 3 -tempf.x = dot(vec4(R7f.x,R7f.y,R7f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R122f.x = (mul_nonIEEE(R5f.z,R127f.y) + PV0f.w); -PS1f = R122f.x; -// 4 -PV0f.x = max(PV1f.x, -(PV1f.x)); -PV0f.y = -(R4f.y) + -(R126f.y); -R127f.z = mul_nonIEEE(R1f.w, PS1f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.w = R127f.x * intBitsToFloat(0x41200000); -// 5 -backupReg0f = R0f.y; -backupReg1f = R127f.x; -R127f.x = (mul_nonIEEE(R9f.x,R0f.w) + R1f.y); -PV1f.x = R127f.x; -PV1f.y = mul_nonIEEE(PV0f.y, R3f.z); -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -R126f.z = (mul_nonIEEE(backupReg0f,R0f.w) + R1f.z); -PV1f.z = R126f.z; -PV1f.w = PV0f.x + -(intBitsToFloat(uf_remappedPS[0].z)); -R0f.x = (mul_nonIEEE(PV0f.w,R126f.w) + backupReg1f); -PS1f = R0f.x; -// 6 -PV0f.x = PV1f.w * R5f.y; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R126f.y = mul_nonIEEE(R127f.z, PV1f.y); -R126f.y = clamp(R126f.y, 0.0, 1.0); -PV0f.z = PV1f.x * intBitsToFloat(0x41200000); -PV0f.w = PV1f.z * intBitsToFloat(0x41200000); -// 7 -R0f.y = (mul_nonIEEE(PV0f.z,R126f.w) + R127f.x); -R123f.z = (intBitsToFloat(0xc0000000) * PV0f.x + intBitsToFloat(0x40400000)); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -R0f.z = (mul_nonIEEE(PV0f.w,R126f.w) + R126f.z); -PS1f = R0f.z; -// 8 -PV0f.y = mul_nonIEEE(PV1f.w, PV1f.z); -// 9 -PV1f.x = mul_nonIEEE(R126f.y, PV0f.y); -// 10 -R0f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/9aacad682248145f_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/9aacad682248145f_0000000000000709_ps.txt deleted file mode 100644 index 79cf43be..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/9aacad682248145f_0000000000000709_ps.txt +++ /dev/null @@ -1,169 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 9aacad682248145f -// Teleportation - part 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R3f.w = (texture(textureUnitPS0, R5f.xy).w); -R5f.xyzw = (texture(textureUnitPS1, R5f.zw).xyzw); -// 0 -backupReg0f = R5f.z; -PV0f.x = mul_nonIEEE(R3f.w, R5f.w); -R3f.y = mul_nonIEEE(R3f.w, R5f.x); -R5f.z = mul_nonIEEE(R3f.w, backupReg0f); -R5f.w = mul_nonIEEE(R3f.w, R5f.y); -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = mul_nonIEEE(R2f.x, PS0f); -R5f.y = mul_nonIEEE(R2f.y, PS0f); -R123f.z = (mul_nonIEEE(R4f.w,PV0f.x) + -(R0f.w))*4.0; -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV1f.z = R123f.z; -R3f.w = R0f.x + -(R1f.x); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R0f.z; -backupReg1f = R0f.y; -R0f.x = mul_nonIEEE(R1f.w, PV1f.z); -R0f.x = clamp(R0f.x, 0.0, 1.0); -R0f.y = R2f.z * PS1f; -R0f.z = backupReg0f + -(R1f.z); -R0f.w = backupReg1f + -(R1f.y); -R2f.z = 1.0 / intBitsToFloat(uf_remappedPS[0].y); -PS0f = R2f.z; -R5f.x = (texture(textureUnitPS4, R5f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].w),R5f.x) + intBitsToFloat(uf_remappedPS[1].x)); -R123f.y = (mul_nonIEEE(R3f.w,R3f.y) + R1f.x); -PV0f.y = R123f.y; -R123f.z = (mul_nonIEEE(R0f.y,intBitsToFloat(uf_remappedPS[1].w)) + -(intBitsToFloat(uf_remappedPS[1].y))); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R0f.w,R5f.w) + R1f.y); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(R0f.z,R5f.z) + R1f.z); -PS0f = R122f.x; -// 1 -backupReg0f = R4f.x; -backupReg1f = R4f.y; -backupReg2f = R4f.z; -R4f.x = mul_nonIEEE(backupReg0f, PV0f.y); -R4f.y = mul_nonIEEE(backupReg1f, PV0f.w); -R4f.z = mul_nonIEEE(backupReg2f, PS0f); -PS1f = 1.0 / PV0f.z; -// 2 -PV0f.y = -(intBitsToFloat(uf_remappedPS[1].z)) * PS1f; -// 3 -PV1f.w = -(PV0f.y) + R127f.x; -// 4 -PV0f.y = PV1f.w * R2f.z; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -// 5 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(backupReg0f, PV0f.y); -// 6 -R4f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R4f.x, R4f.y, R4f.z, R4f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/9c9c75d87bb9b4ef_0000000f0f10e249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/9c9c75d87bb9b4ef_0000000f0f10e249_ps.txt deleted file mode 100644 index 97e5a6cd..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/9c9c75d87bb9b4ef_0000000f0f10e249_ps.txt +++ /dev/null @@ -1,218 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 9c9c75d87bb9b4ef -// Shrine - ceiling decorations -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R11f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem7; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R6f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R2f.y = (texture(textureUnitPS7, R2f.xy).x); -R1f.x = (texture(textureUnitPS6, R1f.xy).w); -R7f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, R4f.z); -R127f.y = (R6f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R127f.y; -PV0f.z = mul_nonIEEE(R3f.x, R4f.y); -PV0f.w = mul_nonIEEE(R3f.z, R4f.x); -R127f.x = (R6f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.x; -// 1 -R123f.x = (mul_nonIEEE(-(R4f.z),R3f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R4f.y),R3f.z) + PV0f.x); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(-(R4f.x),R3f.y) + PV0f.z); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.y, PV0f.y); -PS1f = mul_nonIEEE(R4f.w, PS0f); -// 2 -backupReg0f = R0f.w; -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -PV0f.y = mul_nonIEEE(PV1f.x, PS1f); -R123f.z = (mul_nonIEEE(R127f.x,R127f.x) + PV1f.w); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(PV1f.z, PS1f); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), backupReg0f); -PS0f = R127f.z; -// 3 -R127f.x = (mul_nonIEEE(R4f.z,R127f.y) + PV0f.w)/2.0; -PV1f.y = -(PV0f.z) + 1.0; -R126f.z = (mul_nonIEEE(R4f.y,R127f.y) + PV0f.y)/2.0; -R127f.w = (mul_nonIEEE(R4f.x,R127f.y) + PV0f.x)/2.0; -R127f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -PS1f = R127f.y; -// 4 -backupReg0f = R0f.w; -R126f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R126f.y = R6f.z * intBitsToFloat(0x427f0000); -R127f.z = mul_nonIEEE(R5f.x, R2f.y); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), backupReg0f); -PS0f = sqrt(PV1f.y); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.x; -backupReg1f = R126f.z; -R127f.x = (mul_nonIEEE(R3f.x,PS0f) + R127f.w); -PV1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.y); -R126f.z = (mul_nonIEEE(R3f.z,PS0f) + backupReg0f); -R127f.w = (mul_nonIEEE(R3f.y,PS0f) + backupReg1f); -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -// 6 -backupReg0f = R1f.x; -backupReg1f = R126f.x; -R126f.x = floor(R126f.y); -R126f.x *= 4.0; -R1f.y = mul_nonIEEE(R1f.x, PV1f.y); -R1f.z = mul_nonIEEE(R1f.x, PS1f); -R0f.w = R7f.w; -R1f.x = mul_nonIEEE(backupReg0f, backupReg1f); -PS0f = R1f.x; -// 7 -R3f.x = mul_nonIEEE(R7f.x, R127f.z); -R3f.y = mul_nonIEEE(R7f.y, R127f.z); -R3f.z = mul_nonIEEE(R7f.z, R127f.z); -R1f.w = 1.0; -R0f.x = intBitsToFloat(0x3c808081); -PS1f = R0f.x; -// 8 -R7f.x = R127f.x + 0.5; -R0f.y = intBitsToFloat(uf_remappedPS[2].z); -R7f.z = R126f.z + 0.5; -R3f.w = intBitsToFloat(0x3b808081); -R7f.y = R127f.w + 0.5; -PS0f = R7f.y; -// 9 -R7f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 10 -R11f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R11f.w = R1f.w; -// 11 -R10f.xyz = vec3(R7f.x,R7f.y,R7f.z); -R10f.w = R7f.w; -// 12 -R9f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R9f.w = R3f.w; -// 13 -R8f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R8f.w = R0f.w; -// export -if( ((vec4(R8f.x, R8f.y, R8f.z, R8f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor1 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor3 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -passPixelColor5 = vec4(R11f.x, R11f.y, R11f.z, R11f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/Readme.txt b/Mods/BreathOfTheWild_GlowLightsColors/Readme.txt deleted file mode 100644 index 16256a88..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/Readme.txt +++ /dev/null @@ -1,17 +0,0 @@ -This pack can be used to change the color of (most) glowing objects in the game, including the Sheikah Towers, Shrines (inside and outside), bombs, and others. -The pack is designed to take advantage of the duality of the main colors. It is intended to be customizable. -On each and every shader you will find values you can adjust. My suggestion is to use any tool that can search and replace in multiple files and use the same parameters in all files. -Be aware that some shaders affect both the "On" and the "Off" color of some objects (ex: the open/closed chests in shrines) -Also be aware that this pack changes the color of most lights as well, including orange lights that are not affiliated with the "Off" concept. This is unintended, but I can't do anything about it. -The default configuration uses a red/green combination of colors. -Here are some other example values for HUE_ROTATION, with the respective result - 0 blue/orange - 60 pink/lime - 135 red/green - 200 yellow/cyan - 270 green/magenta - 330 cyan/pink - -Shaders dumped from Cemu 1.11.0b and BotW 1.3.1 -Pack made by Kiri -Have fun with it \ No newline at end of file diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a02a462f9ba59f2e_000000003c3c4389_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a02a462f9ba59f2e_000000003c3c4389_ps.txt deleted file mode 100644 index 77bae664..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a02a462f9ba59f2e_000000003c3c4389_ps.txt +++ /dev/null @@ -1,202 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a02a462f9ba59f2e -// Sheikah Tower - inactive - middle part -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R5f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.z, R3f.x); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.z); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.w, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.y, PS1f); -PV0f.w = mul_nonIEEE(PV1f.x, PS1f); -R127f.y = R4f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -R126f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV0f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV0f.x)/2.0; -R127f.w = (mul_nonIEEE(R3f.z,backupReg0f) + PV0f.w)/2.0; -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R0f.w; -R126f.x = floor(R127f.y); -R126f.x *= 4.0; -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R0f.w); -R0f.z = mul_nonIEEE(R1f.x, R5f.z); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), backupReg0f); -R0f.x = mul_nonIEEE(R1f.x, R5f.x); -PS0f = R0f.x; -// 5 -backupReg0f = R1f.x; -R1f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -R1f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.y); -R0f.y = mul_nonIEEE(backupReg0f, R5f.y); -PS1f = R0f.y; -// 6 -R5f.x = intBitsToFloat(0x3c808081); -R5f.y = intBitsToFloat(uf_remappedPS[2].z); -R1f.w = 1.0; -PS0f = sqrt(R127f.x); -PS0f /= 2.0; -// 7 -R123f.x = (mul_nonIEEE(R2f.z,PS0f) + R127f.w); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(R2f.y,PS0f) + R126f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.x,PS0f) + R126f.z); -PV1f.w = R123f.w; -R0f.w = intBitsToFloat(0x3b808081); -PS1f = R0f.w; -// 8 -R2f.xyz = vec3(PV1f.w,PV1f.z,PV1f.x) + vec3(0.5,0.5,0.5); -R2f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 9 -R9f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R9f.w = R1f.w; -// 10 -R8f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R8f.w = R2f.w; -// 11 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 12 -R6f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R6f.w = R5f.w; -// export -if( ((vec4(R6f.x, R6f.y, R6f.z, R6f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a11251f0bffe8631_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a11251f0bffe8631_000000000000001c_ps.txt deleted file mode 100644 index d2f0ebeb..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a11251f0bffe8631_000000000000001c_ps.txt +++ /dev/null @@ -1,116 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a11251f0bffe8631 -// Shrine - elevator particles 3 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R3f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -// 0 -backupReg0f = R0f.x; -PV0f.x = mul_nonIEEE(R0f.w, R3f.w); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R127f.y = mul_nonIEEE(R3f.y, R3f.y); -PV0f.z = mul_nonIEEE(R3f.x, R3f.x); -R127f.w = mul_nonIEEE(R3f.z, R3f.z); -PS0f = backupReg0f + -(R1f.x); -// 1 -backupReg0f = R0f.y; -R0f.x = (mul_nonIEEE(PS0f,PV0f.z) + R1f.x); -PV1f.y = R0f.z + -(R1f.z); -PV1f.z = backupReg0f + -(R1f.y); -R0f.w = mul_nonIEEE(R2f.x, PV0f.x); -// 2 -R0f.y = (mul_nonIEEE(PV1f.z,R127f.y) + R1f.y); -R0f.z = (mul_nonIEEE(PV1f.y,R127f.w) + R1f.z); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a54bdb88a57b9be9_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a54bdb88a57b9be9_0000000000003849_ps.txt deleted file mode 100644 index 7bf3590f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a54bdb88a57b9be9_0000000000003849_ps.txt +++ /dev/null @@ -1,183 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a54bdb88a57b9be9 -// Bomb - explosion particles 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 5) in vec4 passParameterSem8; -layout(location = 6) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem7; -R5f = passParameterSem8; -R6f = passParameterSem9; -R7f.xw = (texture(textureUnitPS0, R5f.xy).xw); -R6f.xyzw = (texture(textureUnitPS2, R6f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].x)); -R123f.y = (R7f.w * 2.0 + -(1.0)); -PV0f.y = R123f.y; -R123f.z = (R7f.x * 2.0 + -(1.0)); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(R3f.y, intBitsToFloat(uf_remappedPS[0].y)); -PS0f = 1.0 / R2f.w; -// 1 -R5f.x = (mul_nonIEEE(PV0f.x,PV0f.z) + R5f.z); -R5f.y = (mul_nonIEEE(PV0f.w,PV0f.y) + R5f.w); -R5f.z = mul_nonIEEE(R2f.x, PS0f); -R5f.w = mul_nonIEEE(R2f.y, PS0f); -PS1f = 1.0 / R2f.w; -// 2 -R7f.x = mul_nonIEEE(R6f.z, R6f.z); -R2f.y = R2f.z * PS1f; -R2f.z = mul_nonIEEE(R6f.y, R6f.y); -R2f.w = mul_nonIEEE(R6f.x, R6f.x); -R3f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS0f = R3f.z; -R2f.x = (texture(textureUnitPS4, R5f.zw).x); -R5f.xyzw = (texture(textureUnitPS1, R5f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R5f.w, R6f.w); -R127f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].w),R2f.x) + intBitsToFloat(uf_remappedPS[2].x)); -R123f.z = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedPS[2].w)) + -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.z = R123f.z; -R127f.w = (mul_nonIEEE(R5f.x,R5f.x) + R2f.w); -R126f.w = (mul_nonIEEE(R5f.y,R5f.y) + R2f.z); -PS0f = R126f.w; -// 1 -backupReg0f = R0f.y; -R127f.x = (mul_nonIEEE(R5f.z,R5f.z) + R7f.x); -PV1f.y = R0f.x + -(R1f.x); -R123f.z = (mul_nonIEEE(R4f.w,PV0f.x) + -(R0f.w)); -PV1f.z = R123f.z; -PV1f.w = backupReg0f + -(R1f.y); -PS1f = 1.0 / PV0f.z; -// 2 -backupReg0f = R0f.z; -R126f.x = mul_nonIEEE(R1f.w, PV1f.z); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV0f.y = -(intBitsToFloat(uf_remappedPS[2].z)) * PS1f; -PV0f.z = backupReg0f + -(R1f.z); -R123f.w = (mul_nonIEEE(PV1f.y,R127f.w) + R1f.x); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(PV1f.w,R126f.w) + R1f.y); -PS0f = R122f.x; -// 3 -R123f.x = (mul_nonIEEE(PV0f.z,R127f.x) + R1f.z); -PV1f.x = R123f.x; -R1f.y = mul_nonIEEE(R4f.y, PS0f); -PV1f.w = -(PV0f.y) + R127f.y; -R1f.x = mul_nonIEEE(R4f.x, PV0f.w); -PS1f = R1f.x; -// 4 -PV0f.y = PV1f.w * R3f.z; -PV0f.y = clamp(PV0f.y, 0.0, 1.0); -R1f.z = mul_nonIEEE(R4f.z, PV1f.x); -// 5 -PV1f.x = mul_nonIEEE(R126f.x, PV0f.y); -// 6 -R1f.w = mul_nonIEEE(R3f.x, PV1f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a6ea718e4c60e157_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a6ea718e4c60e157_00000000000000e1_ps.txt deleted file mode 100644 index d2c07ae2..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a6ea718e4c60e157_00000000000000e1_ps.txt +++ /dev/null @@ -1,151 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a6ea718e4c60e157 -// Bomb - trails 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R4f.y; -backupReg0f = R4f.y; -R127f.x = mul_nonIEEE(R4f.x, R4f.x); -R4f.y = mul_nonIEEE(R4f.z, R4f.z); -PV0f.z = -(R0f.w) + R4f.w; -PV0f.z *= 4.0; -PV0f.z = clamp(PV0f.z, 0.0, 1.0); -R3f.w = mul_nonIEEE(backupReg0f, backupReg0f); -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R0f.x; -PV1f.x = R2f.z * PS0f; -R3f.y = mul_nonIEEE(R1f.w, PV0f.z); -R3f.y = clamp(R3f.y, 0.0, 1.0); -PV1f.z = backupReg0f + -(R1f.x); -R4f.w = R0f.y + -(R1f.y); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R0f.z; -R0f.x = mul_nonIEEE(R2f.x, PS1f); -R0f.y = mul_nonIEEE(R2f.y, PS1f); -R0f.z = (mul_nonIEEE(PV1f.x,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R0f.w = backupReg0f + -(R1f.z); -R2f.x = (mul_nonIEEE(PV1f.z,R127f.x) + R1f.x); -PS0f = R2f.x; -R0f.y = (texture(textureUnitPS4, R0f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R0f.y) + intBitsToFloat(uf_remappedPS[0].x)); -R2f.y = (mul_nonIEEE(R4f.w,R3f.w) + R1f.y); -R2f.z = (mul_nonIEEE(R0f.w,R4f.y) + R1f.z); -PS0f = 1.0 / R0f.z; -// 1 -PV1f.w = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.w) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R3f.y, PV1f.y); -// 5 -R2f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R2f.x, R2f.y, R2f.z, R2f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a6eb708e4b616557_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a6eb708e4b616557_00000000000000e1_ps.txt deleted file mode 100644 index adb304d4..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a6eb708e4b616557_00000000000000e1_ps.txt +++ /dev/null @@ -1,149 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a6eb708e4b616557 -// Bomb - explosion particles 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R4f.y; -backupReg0f = R4f.y; -R127f.x = mul_nonIEEE(R4f.x, R4f.x); -R4f.y = mul_nonIEEE(R4f.z, R4f.z); -PV0f.z = mul_nonIEEE(R0f.w, R4f.w); -R3f.w = mul_nonIEEE(backupReg0f, backupReg0f); -PS0f = 1.0 / R2f.w; -// 1 -backupReg0f = R0f.x; -PV1f.x = R2f.z * PS0f; -R3f.y = mul_nonIEEE(R1f.w, PV0f.z); -R3f.y = clamp(R3f.y, 0.0, 1.0); -PV1f.z = backupReg0f + -(R1f.x); -R4f.w = R0f.y + -(R1f.y); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R0f.z; -R0f.x = mul_nonIEEE(R2f.x, PS1f); -R0f.y = mul_nonIEEE(R2f.y, PS1f); -R0f.z = (mul_nonIEEE(PV1f.x,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R0f.w = backupReg0f + -(R1f.z); -R2f.x = (mul_nonIEEE(PV1f.z,R127f.x) + R1f.x); -PS0f = R2f.x; -R0f.y = (texture(textureUnitPS4, R0f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R0f.y) + intBitsToFloat(uf_remappedPS[0].x)); -R2f.y = (mul_nonIEEE(R4f.w,R3f.w) + R1f.y); -R2f.z = (mul_nonIEEE(R0f.w,R4f.y) + R1f.z); -PS0f = 1.0 / R0f.z; -// 1 -PV1f.w = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.w) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R3f.y, PV1f.y); -// 5 -R2f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R2f.x, R2f.y, R2f.z, R2f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/a95fbb49ae2c8f46_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/a95fbb49ae2c8f46_00000000000000e1_ps.txt deleted file mode 100644 index 9c1e664b..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/a95fbb49ae2c8f46_00000000000000e1_ps.txt +++ /dev/null @@ -1,129 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a95fbb49ae2c8f46 -// Guardian scout fire -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyzw = (texture(textureUnitPS1, R3f.zw).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R4f.w, R3f.w); -PV0f.y = mul_nonIEEE(R4f.x, R4f.x); -R127f.z = mul_nonIEEE(R4f.y, R4f.y); -R127f.w = mul_nonIEEE(R4f.z, R4f.z); -PS0f = mul_nonIEEE(R3f.x, R3f.x); -// 1 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(R3f.z, R3f.z); -PV1f.y = mul_nonIEEE(R3f.y, R3f.y); -R126f.z = mul_nonIEEE(R0f.w, PV0f.x); -R126f.z = clamp(R126f.z, 0.0, 1.0); -PV1f.w = mul_nonIEEE(PV0f.y, PS0f); -PS1f = backupReg0f + -(R1f.x); -// 2 -backupReg0f = R0f.z; -PV0f.x = R0f.y + -(R1f.y); -PV0f.y = mul_nonIEEE(R127f.w, PV1f.x); -PV0f.z = mul_nonIEEE(R127f.z, PV1f.y); -PV0f.w = backupReg0f + -(R1f.z); -R0f.x = (mul_nonIEEE(PS1f,PV1f.w) + R1f.x); -PS0f = R0f.x; -// 3 -R0f.y = (mul_nonIEEE(PV0f.x,PV0f.z) + R1f.y); -R0f.z = (mul_nonIEEE(PV0f.w,PV0f.y) + R1f.z); -R0f.w = mul_nonIEEE(R2f.x, R126f.z); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/b2cf5924b04ea6a4_0000000f0f0ff249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/b2cf5924b04ea6a4_0000000f0f0ff249_ps.txt deleted file mode 100644 index 4140299a..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/b2cf5924b04ea6a4_0000000f0f0ff249_ps.txt +++ /dev/null @@ -1,205 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b2cf5924b04ea6a4 -// Shrine - metal chests -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R4f.x = (texture(textureUnitPS5, R0f.xy).x); -R0f.w = (texture(textureUnitPS6, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -PV0f.x = mul_nonIEEE(R2f.y, R3f.z); -PV0f.y = mul_nonIEEE(R2f.z, R3f.x); -R127f.z = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.z = R127f.z; -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.x = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.x; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.x = R123f.x; -PV1f.y = mul_nonIEEE(PV0f.z, PV0f.z); -R123f.z = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.x); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.w, PS1f); -PV0f.y = mul_nonIEEE(PV1f.x, PS1f); -PV0f.z = mul_nonIEEE(PV1f.z, PS1f); -R123f.w = (mul_nonIEEE(R127f.x,R127f.x) + PV1f.y); -R123f.w = clamp(R123f.w, 0.0, 1.0); -PV0f.w = R123f.w; -R127f.x = intBitsToFloat(0x427f0000) * R4f.x; -PS0f = R127f.x; -// 3 -R126f.x = (mul_nonIEEE(R3f.z,R127f.z) + PV0f.y)/2.0; -R127f.y = (mul_nonIEEE(R3f.x,R127f.z) + PV0f.x)/2.0; -PV1f.z = -(PV0f.w) + 1.0; -R127f.w = (mul_nonIEEE(R3f.y,R127f.z) + PV0f.z)/2.0; -R126f.y = intBitsToFloat(0x427f0000) * R5f.z; -PS1f = R126f.y; -// 4 -backupReg0f = R127f.x; -backupReg1f = R0f.w; -R127f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R0f.w); -R125f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -R126f.z = floor(backupReg0f); -R126f.z *= 4.0; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), backupReg1f); -PS0f = sqrt(PV1f.z); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.y; -backupReg1f = R126f.x; -backupReg2f = R127f.w; -R126f.x = floor(R126f.y); -R126f.x *= 4.0; -R127f.y = (mul_nonIEEE(R2f.x,PS0f) + backupReg0f); -R127f.z = (mul_nonIEEE(R2f.z,PS0f) + backupReg1f); -R127f.w = (mul_nonIEEE(R2f.y,PS0f) + backupReg2f); -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -PS1f = R2f.x; -// 6 -R3f.x = mul_nonIEEE(R1f.x, R0f.x); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R125f.y); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.x); -R5f.w = 1.0; -R3f.y = mul_nonIEEE(R1f.x, R0f.y); -PS0f = R3f.y; -// 7 -R5f.x = intBitsToFloat(0x3c808081); -R5f.y = intBitsToFloat(uf_remappedPS[2].z); -R3f.z = mul_nonIEEE(R1f.x, R0f.z); -R2f.w = 1.0; -R0f.x = R127f.y + 0.5; -PS1f = R0f.x; -// 8 -R0f.y = R127f.w + 0.5; -R0f.z = R127f.z + 0.5; -R3f.w = (R126f.z * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -R0f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS0f = R0f.w; -// 9 -R9f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R9f.w = R2f.w; -// 10 -R8f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R8f.w = R0f.w; -// 11 -R7f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R7f.w = R3f.w; -// 12 -R6f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R6f.w = R5f.w; -// export -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/b2e1c9ce2f160aab_000000003c3c4389_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/b2e1c9ce2f160aab_000000003c3c4389_ps.txt deleted file mode 100644 index c5893212..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/b2e1c9ce2f160aab_000000003c3c4389_ps.txt +++ /dev/null @@ -1,241 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b2e1c9ce2f160aab -// Shrine of Resurrection - lights -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem6; -R6f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R5f.xyz = (texture(textureUnitPS5, R0f.xy).xyz); -R0f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -PV0f.x = mul_nonIEEE(R2f.y, R3f.z); -R126f.y = (R6f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R126f.y; -PV0f.z = mul_nonIEEE(R2f.z, R3f.x); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.x = (R6f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.x; -// 1 -R126f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.x); -R127f.y = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.z); -R127f.z = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.w = mul_nonIEEE(PV0f.y, PV0f.y); -R127f.w = mul_nonIEEE(R3f.w, PS0f); -PS1f = R127f.w; -// 2 -tempf.x = dot(vec4(R4f.x,R4f.y,R4f.z,-0.0),vec4(R4f.x,R4f.y,R4f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R122f.x = (mul_nonIEEE(R127f.x,R127f.x) + PV1f.w); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS0f = R122f.x; -// 3 -PV1f.x = mul_nonIEEE(R127f.y, R127f.w); -R127f.y = -(PS0f) + 1.0; -PV1f.z = mul_nonIEEE(R126f.x, R127f.w); -PV1f.w = mul_nonIEEE(R127f.z, R127f.w); -PS1f = sqrt(PV0f.x); -// 4 -R126f.x = (mul_nonIEEE(R3f.z,R126f.y) + PV1f.w); -R125f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R5f.x); -R127f.z = (mul_nonIEEE(R3f.y,R126f.y) + PV1f.x); -R127f.w = (mul_nonIEEE(R3f.x,R126f.y) + PV1f.z); -PS0f = 1.0 / PS1f; -// 5 -backupReg0f = R127f.y; -R127f.x = mul_nonIEEE(R4f.x, PS0f); -R127f.y = mul_nonIEEE(R4f.y, PS0f); -R126f.z = mul_nonIEEE(R4f.z, PS0f); -R126f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R5f.y); -PS1f = sqrt(backupReg0f); -// 6 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(R2f.x,PS1f) + R127f.w); -PV0f.x = R126f.x; -R126f.y = (mul_nonIEEE(R2f.y,PS1f) + R127f.z); -PV0f.y = R126f.y; -R127f.z = (mul_nonIEEE(R2f.z,PS1f) + backupReg0f); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R5f.z); -R2f.y = mul_nonIEEE(R1f.x, R0f.y); -PS0f = R2f.y; -// 7 -tempf.x = dot(vec4(R127f.x,R127f.y,R126f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -PS1f = R6f.z * intBitsToFloat(0x427f0000); -// 8 -backupReg0f = R0f.x; -PV0f.x = PV1f.x + 1.0; -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -R127f.y = floor(PS1f); -R127f.y *= 4.0; -R2f.z = mul_nonIEEE(R1f.x, R0f.z); -R6f.w = R0f.w; -R2f.x = mul_nonIEEE(R1f.x, backupReg0f); -PS0f = R2f.x; -// 9 -R6f.x = intBitsToFloat(0x3c808081); -R6f.y = intBitsToFloat(uf_remappedPS[1].z); -PV1f.z = -(PV0f.x) + 1.0; -R0f.w = 1.0; -R1f.x = (R126f.x * 0.5 + 0.5); -PS1f = R1f.x; -// 10 -R1f.y = (R126f.y * 0.5 + 0.5); -R1f.z = (R127f.z * 0.5 + 0.5); -R2f.w = intBitsToFloat(0x3b808081); -tempResultf = log2(PV1f.z); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0f = tempResultf; -// 11 -PV1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), PS0f); -R1f.w = (R127f.y * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 12 -PS0f = exp2(PV1f.y); -PS0f = clamp(PS0f, 0.0, 1.0); -// 13 -PV1f.z = intBitsToFloat(uf_remappedPS[2].w) + PS0f; -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -// 14 -PV0f.x = mul_nonIEEE(PV1f.z, R127f.w); -PV0f.z = mul_nonIEEE(PV1f.z, R125f.y); -PV0f.w = mul_nonIEEE(PV1f.z, R126f.w); -// 15 -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV0f.z); -PV1f.x = R0f.x; -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV0f.w); -PV1f.y = R0f.y; -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x), PV0f.x); -PV1f.z = R0f.z; -// 16 -R10f.xyz = vec3(PV1f.x,PV1f.y,PV1f.z); -R10f.w = R0f.w; -// 17 -R9f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R9f.w = R1f.w; -// 18 -R8f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R8f.w = R2f.w; -// 19 -R7f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R7f.w = R6f.w; -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor1 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor3 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor5 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/b5b53042daaad65c_00000001e1e21c49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/b5b53042daaad65c_00000001e1e21c49_ps.txt deleted file mode 100644 index e0502c82..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/b5b53042daaad65c_00000001e1e21c49_ps.txt +++ /dev/null @@ -1,212 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b5b53042daaad65c -// Shrine - elements -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem3; -R2f = passParameterSem4; -R3f = passParameterSem5; -R4f = passParameterSem7; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R4f.x = (texture(textureUnitPS7, R4f.xy).x); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R6f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R127f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R1f.y, R2f.z); -PV0f.z = mul_nonIEEE(R1f.x, R2f.y); -PV0f.w = mul_nonIEEE(R1f.z, R2f.x); -R127f.y = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.y; -// 1 -R123f.x = (mul_nonIEEE(-(R2f.z),R1f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R2f.x),R1f.y) + PV0f.z); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(-(R2f.y),R1f.z) + PV0f.y); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -PS1f = mul_nonIEEE(R2f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.z, PS1f); -PV0f.y = mul_nonIEEE(PV1f.x, PS1f); -R123f.z = (mul_nonIEEE(R127f.y,R127f.y) + PV1f.w); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(PV1f.y, PS1f); -R127f.y = R5f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.z) + 1.0; -R125f.y = (mul_nonIEEE(R2f.z,backupReg0f) + PV0f.w)/2.0; -R126f.z = (mul_nonIEEE(R2f.y,backupReg0f) + PV0f.y)/2.0; -R127f.w = (mul_nonIEEE(R2f.x,backupReg0f) + PV0f.x)/2.0; -R126f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -PS1f = R126f.y; -// 4 -backupReg0f = R127f.y; -backupReg1f = R0f.w; -PV0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -R127f.y = floor(backupReg0f); -R127f.y *= 4.0; -R127f.z = mul_nonIEEE(R3f.x, R4f.x); -PV0f.z = R127f.z; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), backupReg1f); -R4f.w = R6f.w; -PS0f = R4f.w; -// 5 -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R126f.y); -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.x); -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -R0f.w = 1.0; -R3f.x = mul_nonIEEE(R6f.x, PV0f.z); -PS1f = R3f.x; -// 6 -R4f.x = intBitsToFloat(0x3c808081); -R3f.y = mul_nonIEEE(R6f.y, R127f.z); -R3f.z = mul_nonIEEE(R6f.z, R127f.z); -R3f.w = intBitsToFloat(0x3b808081); -R4f.y = intBitsToFloat(uf_remappedPS[2].z); -PS0f = R4f.y; -// 7 -R6f.w = (R127f.y * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = sqrt(R127f.x); -PS1f /= 2.0; -// 8 -R123f.y = (mul_nonIEEE(R1f.x,PS1f) + R127f.w); -PV0f.y = R123f.y; -R123f.z = (mul_nonIEEE(R1f.z,PS1f) + R125f.y); -PV0f.z = R123f.z; -R123f.w = (mul_nonIEEE(R1f.y,PS1f) + R126f.z); -PV0f.w = R123f.w; -// 9 -R6f.xyz = vec3(PV0f.y,PV0f.w,PV0f.z) + vec3(0.5,0.5,0.5); -// 10 -R10f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R10f.w = R0f.w; -// 11 -R9f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R9f.w = R6f.w; -// 12 -R8f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R8f.w = R3f.w; -// 13 -R7f.xyz = vec3(R4f.x,R4f.y,R4f.z); -R7f.w = R4f.w; -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor1 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor3 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor5 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/bc9529a682410603_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/bc9529a682410603_00000001e1e1fe49_ps.txt deleted file mode 100644 index 18f7a754..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/bc9529a682410603_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,197 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader bc9529a682410603 -// Divine Beasts + Stones near Castle -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.z, R3f.x); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.x, PS1f); -PV0f.w = mul_nonIEEE(PV1f.w, PS1f); -R127f.y = R4f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -R126f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV0f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV0f.x)/2.0; -R127f.w = (mul_nonIEEE(R3f.z,backupReg0f) + PV0f.w)/2.0; -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R0f.w; -R126f.x = floor(R127f.y); -R126f.x *= 4.0; -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R0f.w); -R3f.z = mul_nonIEEE(R1f.x, R0f.z); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), backupReg0f); -R3f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R3f.x; -// 5 -backupReg0f = R0f.y; -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.y); -R1f.w = 1.0; -R3f.y = mul_nonIEEE(R1f.x, backupReg0f); -PS1f = R3f.y; -// 6 -R1f.x = intBitsToFloat(0x3c808081); -R1f.y = 0.0; -R0f.w = 1.0; -PS0f = sqrt(R127f.x); -PS0f /= 2.0; -// 7 -R123f.x = (mul_nonIEEE(R2f.z,PS0f) + R127f.w); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(R2f.y,PS0f) + R126f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.x,PS0f) + R126f.z); -PV1f.w = R123f.w; -R3f.w = intBitsToFloat(0x3b808081); -PS1f = R3f.w; -// 8 -R2f.xyz = vec3(PV1f.w,PV1f.z,PV1f.x) + vec3(0.5,0.5,0.5); -R2f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 9 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 10 -R6f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R6f.w = R2f.w; -// 11 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// 12 -R4f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R4f.w = R1f.w; -// export -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor1 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor3 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor5 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/beb15cab79e5ca5d_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/beb15cab79e5ca5d_000000000000001c_ps.txt deleted file mode 100644 index d513c53b..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/beb15cab79e5ca5d_000000000000001c_ps.txt +++ /dev/null @@ -1,118 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader beb15cab79e5ca5d -// Shrine - ending Sheikah logo + Hateno fire flare -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R3f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -// 0 -backupReg0f = R0f.x; -R127f.x = mul_nonIEEE(R3f.z, R3f.z); -PV0f.y = -(R0f.w) + R3f.w; -R127f.z = mul_nonIEEE(R3f.y, R3f.y); -PV0f.w = mul_nonIEEE(R3f.x, R3f.x); -PS0f = backupReg0f + -(R1f.x); -// 1 -backupReg0f = R0f.z; -PV1f.x = mul_nonIEEE(R1f.w, PV0f.y); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -PV1f.z = backupReg0f + -(R1f.z); -PV1f.w = R0f.y + -(R1f.y); -R0f.x = (mul_nonIEEE(PS0f,PV0f.w) + R1f.x); -PS1f = R0f.x; -// 2 -R0f.y = (mul_nonIEEE(PV1f.w,R127f.z) + R1f.y); -R0f.z = (mul_nonIEEE(PV1f.z,R127f.x) + R1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV1f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/bee298edc2f7e315_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/bee298edc2f7e315_00000001e1e1fe49_ps.txt deleted file mode 100644 index 4f6ef5c2..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/bee298edc2f7e315_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,205 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader bee298edc2f7e315 -// Sheikah Tower - control panel -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R5f.xw = (texture(textureUnitPS5, R0f.xy).xw); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.z, R3f.x); -PV0f.z = mul_nonIEEE(R2f.y, R3f.z); -PV0f.w = mul_nonIEEE(R2f.x, R3f.y); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.y); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.w); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.z); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.w, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.x, PS1f); -PV0f.w = mul_nonIEEE(PV1f.y, PS1f); -R126f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R5f.w); -PS0f = R126f.w; -// 3 -PV1f.x = -(PV0f.y) + 1.0; -R127f.y = (mul_nonIEEE(R3f.y,R127f.x) + PV0f.z)/2.0; -R127f.z = (mul_nonIEEE(R3f.x,R127f.x) + PV0f.x)/2.0; -R127f.w = (mul_nonIEEE(R3f.z,R127f.x) + PV0f.w)/2.0; -R126f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R5f.w); -PS1f = R126f.y; -// 4 -R127f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R5f.w); -R125f.y = R4f.z * intBitsToFloat(0x427f0000); -R126f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R5f.x); -R125f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R5f.x); -PS0f = sqrt(PV1f.x); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.y; -backupReg1f = R127f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS0f) + R127f.w); -R127f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R5f.x); -R127f.z = (mul_nonIEEE(R2f.y,PS0f) + backupReg0f); -R127f.w = (mul_nonIEEE(R2f.x,PS0f) + backupReg1f); -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y), R126f.w); -// 6 -backupReg0f = R127f.x; -R127f.x = floor(R125f.y); -R127f.x *= 4.0; -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y), backupReg0f); -R5f.z = mul_nonIEEE(R1f.x, R0f.z); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y), R126f.y); -R2f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x),R126f.z) + PS1f); -PS0f = R2f.x; -// 7 -R5f.x = mul_nonIEEE(R1f.x, R0f.x); -R2f.y = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x),R125f.w) + PV0f.w); -R2f.z = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x),R127f.y) + PV0f.y); -R1f.w = 1.0; -R5f.y = mul_nonIEEE(R1f.x, R0f.y); -PS1f = R5f.y; -// 8 -R1f.x = intBitsToFloat(0x3c808081); -R1f.y = intBitsToFloat(uf_remappedPS[3].z); -R0f.z = R126f.x + 0.5; -R2f.w = 1.0; -R0f.x = R127f.w + 0.5; -PS0f = R0f.x; -// 9 -R0f.y = R127f.z + 0.5; -R5f.w = intBitsToFloat(0x3b808081); -R0f.w = (R127f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R0f.w; -// 10 -R9f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R9f.w = R2f.w; -// 11 -R8f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R8f.w = R0f.w; -// 12 -R7f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R7f.w = R5f.w; -// 13 -R6f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R6f.w = R1f.w; -// export -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor1 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor3 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor5 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/bf72a1fd35401be2_0000079749255249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/bf72a1fd35401be2_0000079749255249_ps.txt deleted file mode 100644 index 106bf15f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/bf72a1fd35401be2_0000079749255249_ps.txt +++ /dev/null @@ -1,1254 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader bf72a1fd35401be2 -// Shrine - lower elements -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -UNIFORM_BUFFER_LAYOUT(33, 1, 14) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(36, 1, 15) uniform uniformBlockPS4 -{ -vec4 uf_blockPS4[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 16) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(40, 1, 17) uniform uniformBlockPS8 -{ -vec4 uf_blockPS8[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 18) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform samplerCubeArray textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2DArrayShadow textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 7) uniform sampler3D textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 8) uniform sampler2DArray textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(14, 1, 12) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 5) in vec4 passParameterSem7; -layout(location = 6) in vec4 passParameterSem8; -layout(location = 7) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -#ifdef VULKAN -layout(set = 1, binding = 13) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex1 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem4); -R3i = floatBitsToInt(passParameterSem5); -R4i = floatBitsToInt(passParameterSem6); -R5i = floatBitsToInt(passParameterSem7); -R6i = floatBitsToInt(passParameterSem8); -R7i = floatBitsToInt(passParameterSem9); -if( activeMaskStackC[1] == true ) { -R10i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R0i.xy)).xyz); -R4i.y = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R6i.xy)).x); -R6i.z = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); -R9i.xyzw = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R0i.xy)).xyzw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R3i.z))); -R125i.y = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.z = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -R127i.w = ((-(intBitsToFloat(R5i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R7i.w)); -// 1 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PV1i.y = PV0i.z & int(1); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R3i.x))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R3i.y))); -PS1i = R126i.w; -// 2 -R123i.x = floatBitsToInt((intBitsToFloat(R10i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R125i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R2i.z)) + intBitsToFloat(R127i.x))); -R5i.w = PV1i.y - R127i.w; -PV0i.w = R5i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(R2i.x)) + intBitsToFloat(PV1i.w))); -PS0i = R127i.y; -// 3 -PV1i.x = PV0i.w << 0x00000002; -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(R2i.y)) + intBitsToFloat(R126i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.y))); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[44].x)); -PS1i = R127i.x; -// 4 -R6i.x = PV1i.x + 0x0000002d; -R7i.y = PV1i.x + 0x0000002a; -R4i.z = PV1i.x + 0x0000002b; -R7i.w = PV1i.x + 0x0000002c; -R8i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = R8i.y; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R126i.w))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[43].x)); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PS1i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockPS6[45].x)); -PS0i = R6i.y; -// 7 -backupReg0i = R3i.y; -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.z))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.y))); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[44].y) + intBitsToFloat(R127i.x))); -R4i.w = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3d4ccccd)); -PS1i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -R8i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R7i.xz)).y); -R15i.xyzw = floatBitsToInt(uf_blockPS1[R7i.w].xyzw); -R17i.xyzw = floatBitsToInt(uf_blockPS1[R4i.z].xyzw); -R11i.xyzw = floatBitsToInt(uf_blockPS1[R7i.y].xyzw); -R12i.xyzw = floatBitsToInt(uf_blockPS1[R6i.x].xyzw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockPS6[45].y) + intBitsToFloat(R6i.y))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y))); -PV0i.y = R125i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[44].z) + intBitsToFloat(R3i.w))); -PV0i.z = R123i.z; -R3i.w = floatBitsToInt((-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R3i.w = clampFI32(R3i.w); -R13i.y = floatBitsToInt((-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3c23d70a) + -(0.5))); -R13i.y = clampFI32(R13i.y); -PS0i = R13i.y; -// 1 -R16i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV0i.y))); -R18i.y = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(PV0i.z)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[43].z) + intBitsToFloat(R3i.x))); -R13i.w = R10i.z; -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV0i.y))); -PS1i = R16i.y; -// 2 -backupReg0i = R127i.x; -vec3 lowLightsColor = uf_blockPS8[23].rgb; -vec3 colhsv = rgb2hsv(lowLightsColor.rgb); -lowLightsColor.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -R127i.x = floatBitsToInt(mul_nonIEEE(lowLightsColor.x, intBitsToFloat(R6i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(lowLightsColor.y, intBitsToFloat(R6i.z))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockPS6[45].z) + intBitsToFloat(backupReg0i))); -R16i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(R125i.y))); -PS0i = R16i.z; -// 3 -R4i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R127i.z)); -R9i.y = R18i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(lowLightsColor.z, intBitsToFloat(R6i.z))); -R127i.z = floatBitsToInt(sqrt(intBitsToFloat(R2i.w))); -PS1i = R127i.z; -// 4 -R6i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R126i.w)); -R7i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R4i.w))); -R7i.w = clampFI32(R7i.w); -R4i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R4i.w))); -R4i.z = clampFI32(R4i.z); -PS0i = R4i.z; -// 5 -R14i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x, intBitsToFloat(R127i.x))); -R14i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x, intBitsToFloat(R126i.z))); -R14i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS8[31].x, intBitsToFloat(R127i.w))); -R0i.w = floatBitsToInt(fract(uf_blockPS8[36].w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 6 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R8i.y))); -// 7 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R6i.w))); -PV1i.x = R127i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R3i.z))); -PV1i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R3i.y))); -PV1i.z = R127i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 9 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 10 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R7i.x; -R19i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -PV0i.y = R19i.y; -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.z = R8i.z; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.z = tempi.x; -PS1i = PV0i.x; -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 12 -R13i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R6i.x))); -PV0i.y = R19i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = R8i.z; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -// 13 -R3i.x = floatBitsToInt(uf_blockPS8[37].x); -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(PV0i.y)) + intBitsToFloat(R6i.y))); -R18i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(PV0i.z)) + intBitsToFloat(R7i.z))); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R6i.x) + uf_blockPS6[4].x); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R6i.y) + uf_blockPS6[4].y); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R7i.z) + uf_blockPS6[4].z); -PV0i.z = R127i.z; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R8i.x = floatBitsToInt(uf_blockPS1[0].y); -PS1i = R8i.x; -// 2 -R7i.y = floatBitsToInt(uf_blockPS1[1].y); -R9i.z = floatBitsToInt(uf_blockPS1[2].y); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), uf_blockPS1[11].z)); -// 4 -R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R19i.y),intBitsToFloat(PS1i),-0.0),vec4(uf_blockPS1[11].x,uf_blockPS1[11].y,1.0,0.0))); -PV0i.x = R9i.x; -PV0i.y = R9i.x; -PV0i.z = R9i.x; -PV0i.w = R9i.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), uf_blockPS1[12].z)); -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R19i.y),intBitsToFloat(PS0i),-0.0),vec4(uf_blockPS1[12].x,uf_blockPS1[12].y,1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.y = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), uf_blockPS1[13].z)); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R19i.y),intBitsToFloat(PS1i),-0.0),vec4(uf_blockPS1[13].x,uf_blockPS1[13].y,1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.z = tempi.x; -} -if( activeMaskStackC[1] == true ) { -// 0 -R10i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -R20i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R18i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), uf_blockPS10[2].w)); -PS0i = R18i.x; -// 1 -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockPS10[2].w)); -R19i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R1i.w = 0; -R20i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockPS10[2].w)); -PS1i = R20i.z; -// 2 -R4i.w = 0; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R13i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS4[6].x, intBitsToFloat(R3i.x))); -// 1 -predResult = (intBitsToFloat(R0i.w) > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.z = floatBitsToInt(floor(uf_blockPS8[36].w)); -PV0i.z = R0i.z; -// 1 -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[2] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitPS9, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R16i.y)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R16i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R16i.z)) + intBitsToFloat(R0i.z)); -// 1 -backupReg0i = R16i.x; -backupReg1i = R16i.y; -backupReg2i = R16i.z; -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(backupReg0i))); -R16i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R0i.w)) + intBitsToFloat(backupReg1i))); -R16i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R0i.w)) + intBitsToFloat(backupReg2i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (uf_blockPS8[33].w > 0.0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.y = 0; -} -if( activeMaskStackC[2] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R0i.y),intBitsToFloat(R0i.y),intBitsToFloat(R0i.y))).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -R127i.y = floatBitsToInt(intBitsToFloat(R3i.z) + 1.0); -R127i.y = clampFI32(R127i.y); -R127i.z = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(0x3f666666)); -PS0i = floatBitsToInt(intBitsToFloat(R16i.z) * intBitsToFloat(0x3dea4a8c)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R16i.x),intBitsToFloat(R16i.y),intBitsToFloat(PS0i),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt((0.5 * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3dcccccd))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(PV1i.x) + intBitsToFloat(0x3e4ccccd))); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fa66666)); -R13i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),uf_blockPS8[33].w) + intBitsToFloat(R10i.z))); -tempResultf = log2(intBitsToFloat(backupReg0i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -R126i.x = floatBitsToInt((intBitsToFloat(0x3f266666) * intBitsToFloat(R127i.w) + intBitsToFloat(0x3eb33333))); -PV1i.x = R126i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40200000)); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3e23d70a)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 0.25); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(0x3e851eb8)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.x)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R126i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.y)); -PV0i.x = clampFI32(PV0i.x); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.y)); -R127i.z = clampFI32(R127i.z); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = clampFI32(PV0i.w); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R16i.y)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R16i.x)) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R14i.x)) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R16i.z)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(PV0i.w)); -PS1i = R127i.x; -// 8 -backupReg0i = R16i.x; -backupReg1i = R16i.y; -backupReg2i = R16i.z; -backupReg3i = R14i.x; -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R16i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -R16i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg2i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R14i.z)) + intBitsToFloat(R127i.z)); -R14i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),uf_blockPS8[33].w) + intBitsToFloat(backupReg3i))); -PS0i = R14i.x; -// 9 -backupReg0i = R14i.y; -backupReg1i = R14i.z; -R14i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),uf_blockPS8[33].w) + intBitsToFloat(backupReg0i))); -R14i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS8[33].w) + intBitsToFloat(backupReg1i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),uf_blockPS6[39].z) + -(uf_blockPS6[39].x))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),uf_blockPS6[39].z) + -(uf_blockPS6[39].y))); -R0i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + uf_blockPS6[39].w); -R2i.w = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -} -if( activeMaskStackC[1] == true ) { -R0i.w = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R0i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[39].w, intBitsToFloat(R0i.w))); -R126i.z = floatBitsToInt(intBitsToFloat(R3i.w) + uf_blockPS10[3].y); -R127i.w = floatBitsToInt(intBitsToFloat(R0i.z) + -(intBitsToFloat(R2i.w))); -// 1 -PV1i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(0x3fa66666)); -// 2 -backupReg0i = R7i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R127i.w)); -R7i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x)); -R7i.w = clampFI32(R7i.w); -// 3 -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * 0.25); -R127i.z = clampFI32(R127i.z); -PV1i.z = R127i.z; -// 4 -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -// 5 -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -// 6 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R127i.x; -// 7 -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -// 8 -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R126i.z)) + intBitsToFloat(R127i.x))); -R10i.z = clampFI32(R10i.z); -PV0i.z = R10i.z; -// 9 -R10i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f400000) + 0.25)); -// 10 -predResult = (1.0 > intBitsToFloat(R4i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R11i.x))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R12i.x))); -PV0i.z = R0i.z; -R2i.w = floatBitsToInt(float(R5i.w)); -PS0i = R2i.w; -// 1 -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R12i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R0i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R15i.x))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R17i.x))); -PS1i = R2i.y; -// 2 -backupReg0i = R12i.z; -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R17i.y)) + intBitsToFloat(PS1i))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R11i.y)) + intBitsToFloat(R0i.x))); -PV0i.z = R12i.z; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -PV0i.w = R0i.w; -// 3 -backupReg0i = R0i.z; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R11i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R0i.x; -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R15i.y)) + intBitsToFloat(backupReg0i))); -PV1i.z = R0i.z; -R0i.w = floatBitsToInt(intBitsToFloat(R12i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = R0i.w; -// 4 -backupReg0i = R0i.y; -R0i.x = floatBitsToInt(intBitsToFloat(R11i.w) + intBitsToFloat(PV1i.x)); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R17i.z)) + intBitsToFloat(backupReg0i))); -PV0i.y = R0i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R15i.z)) + intBitsToFloat(PV1i.z))); -PV0i.z = R0i.z; -R2i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R2i.y; -// 5 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -R0i.y = floatBitsToInt(intBitsToFloat(R17i.w) + intBitsToFloat(PV0i.y)); -PV1i.y = R0i.y; -R0i.z = floatBitsToInt(intBitsToFloat(R15i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = R0i.z; -// 6 -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.y))); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R2i.y))); -PV0i.z = R11i.z; -R0i.z = floatBitsToInt(roundEven(intBitsToFloat(R2i.w))); -PS0i = R0i.z; -// 7 -R0i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbb03126f)); -R0i.w = clampFI32(R0i.w); -} -if( activeMaskStackC[2] == true ) { -R0i.z = floatBitsToInt(texture(textureUnitPS2, vec4(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z),intBitsToFloat(R0i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R0i.z)) + 1.0); -// 1 -R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R4i.z)) + intBitsToFloat(R0i.z))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R11i.z = 0x3f800000; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R6i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R0i.z = floatBitsToInt(-(intBitsToFloat(R2i.z))); -PV0i.z = R0i.z; -R2i.w = 0x40400000; -R0i.w = 0x3f800000; -PS0i = R0i.w; -// 1 -redcCUBE(vec4(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z),intBitsToFloat(R9i.x),intBitsToFloat(R3i.y)),vec4(intBitsToFloat(R3i.y),intBitsToFloat(R9i.x),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R3i.w = floatBitsToInt(-(intBitsToFloat(R5i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = R3i.w; -// 2 -R123i.x = floatBitsToInt((-(intBitsToFloat(R3i.y)) * 0.5 + 0.5)); -PV0i.x = R123i.x; -R4i.y = 0; -R2i.z = PV1i.w; -R6i.w = floatBitsToInt((-(intBitsToFloat(R13i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 3 -backupReg0i = R3i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0x40200000)); -R3i.z = floatBitsToInt((intBitsToFloat(R10i.z) * intBitsToFloat(0xbdcccccd) + intBitsToFloat(0x3dcccccd))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(-(intBitsToFloat(backupReg0i)), 0.0)); -// 4 -R2i.x = PV1i.w; -R2i.y = PV1i.x; -R4i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3daaaaab)); -R127i.w = floatBitsToInt(-(intBitsToFloat(R13i.w)) + 1.0); -PV0i.w = R127i.w; -R125i.w = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); -PS0i = R125i.w; -// 5 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R13i.w)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PS1i = R127i.y; -// 6 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 7 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R6i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R3i.x; -// 8 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x3c23d70a)); -PV0i.x = clampFI32(PV0i.x); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R127i.z = clampFI32(R127i.z); -R127i.w = floatBitsToInt(-(intBitsToFloat(R125i.w)) + 1.0); -R127i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * 0.5 + 0.5)); -PS0i = R127i.y; -// 9 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R10i.x)),-(intBitsToFloat(R20i.y)),-(intBitsToFloat(R19i.z)),-0.0),vec4(-(intBitsToFloat(R18i.x)),-(intBitsToFloat(R8i.y)),-(intBitsToFloat(R20i.z)),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = tempi.x; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PS1i = R124i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R18i.x)),-(intBitsToFloat(R8i.y)),-(intBitsToFloat(R20i.z)),-(intBitsToFloat(R4i.w))),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R19i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.z)))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R126i.w; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R7i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 12 -R127i.x = R1i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.z)) + 1.0); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R127i.y))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) / 2.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R126i.w)) + intBitsToFloat(R126i.w))); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS0i))); -tempResultf = log2(intBitsToFloat(PV0i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R125i.y = floatBitsToInt(tempResultf); -PS1i = R125i.y; -// 14 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.y))); -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt((intBitsToFloat(R10i.z) * 0.5 + 0.5)); -R126i.w = floatBitsToInt((-(intBitsToFloat(R13i.w)) * intBitsToFloat(0x40400000) + 4.0)); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.w) + 1.0); -PS0i = R127i.y; -// 15 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R10i.x)),-(intBitsToFloat(R20i.y)),-(intBitsToFloat(R19i.z)),-(intBitsToFloat(R1i.w))),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R19i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.z)))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.z = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),-(intBitsToFloat(R126i.x))) + intBitsToFloat(R125i.w))); -PS1i = R122i.x; -// 16 -backupReg0i = R126i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R126i.z)) + intBitsToFloat(R126i.z))); -PV0i.y = R123i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PS1i)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), uf_blockPS6[1].w)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -// 17 -backupReg0i = R127i.x; -backupReg1i = R125i.y; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.y))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(backupReg1i))); -R1i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(R127i.z)); -R1i.w = clampFI32(R1i.w); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R124i.w))); -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),-(intBitsToFloat(R126i.x))) + intBitsToFloat(R7i.z))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(uf_blockPS6[1].y + -(1.0)); -R127i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -R127i.w = floatBitsToInt(uf_blockPS6[1].x + -(1.0)); -R124i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -PS0i = R124i.w; -// 19 -R123i.x = floatBitsToInt((-(intBitsToFloat(R127i.x)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(uf_blockPS6[1].z + -(1.0)); -R123i.z = floatBitsToInt((-(intBitsToFloat(R125i.y)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.x)); -// 20 -R5i.x = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV1i.z)); -R7i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -// 21 -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R126i.w)) + 1.0)); -R5i.y = floatBitsToInt(0.25 * intBitsToFloat(PS0i)); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R126i.w)) + 1.0)); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.w)) + 1.0)); -R5i.z = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -PS1i = R5i.z; -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(uf_blockPS1[13].x,uf_blockPS1[13].y,uf_blockPS1[13].z,-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R10i.y),intBitsToFloat(R18i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(backupReg0i))); -PS0i = R9i.y; -// 1 -R127i.x = floatBitsToInt(dot(vec4(uf_blockPS1[11].x,uf_blockPS1[11].y,uf_blockPS1[11].z,-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R10i.y),intBitsToFloat(R18i.z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 2 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(uf_blockPS1[12].x,uf_blockPS1[12].y,uf_blockPS1[12].z,-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R10i.y),intBitsToFloat(R18i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.y))); -PS0i = R5i.w; -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg1i = R127i.z; -backupReg1i = R127i.z; -redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R7i.x = floatBitsToInt(-(intBitsToFloat(R18i.y)) + uf_blockPS6[52].x); -PS1i = R7i.x; -// 4 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R8i.w) + 1.0)); -R5i.y = floatBitsToInt((intBitsToFloat(R16i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R5i.y = clampFI32(R5i.y); -R6i.z = PV1i.w; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.w), intBitsToFloat(backupReg0i))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 5 -R9i.x = floatBitsToInt((intBitsToFloat(R16i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R9i.x = clampFI32(R9i.x); -R10i.y = floatBitsToInt((intBitsToFloat(R16i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); -R10i.y = clampFI32(R10i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -R11i.y = ((1.0 > intBitsToFloat(R13i.z))?int(0xFFFFFFFF):int(0x0)); -PS1i = R11i.y; -// 6 -R6i.x = PV1i.w; -R6i.y = PV1i.z; -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R9i.w))); -} -if( activeMaskStackC[1] == true ) { -R2i.xyz = floatBitsToInt(textureLod(textureUnitPS1, vec4(redcCUBEReverse(intBitsToFloat(R2i.xy),R2i.z),cubeMapArrayIndex1),intBitsToFloat(R2i.w)).xyz); -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS6, intBitsToFloat(R0i.xy),0.0).xyz); -R3i.y = floatBitsToInt(textureLod(textureUnitPS0, intBitsToFloat(R3i.xy),intBitsToFloat(R3i.w)).x); -R4i.xyz = floatBitsToInt(texture(textureUnitPS7, intBitsToFloat(R4i.zy)).xyz); -R6i.xyz = floatBitsToInt(textureLod(textureUnitPS1, vec4(redcCUBEReverse(intBitsToFloat(R6i.xy),R6i.z),cubeMapArrayIndex1),intBitsToFloat(R6i.w)).xyz); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.w; -R124i.x = floatBitsToInt(intBitsToFloat(R3i.y) + uf_blockPS10[1].z); -R124i.x = clampFI32(R124i.x); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.y), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), uf_blockPS6[30].w)); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.y), intBitsToFloat(R2i.z))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i))); -PS0i = R5i.z; -// 1 -R126i.x = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.y))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS10[2].w, uf_blockPS10[2].w)); -R127i.z = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R5i.x))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R0i.w))); -PS1i = R3i.y; -// 2 -R125i.x = floatBitsToInt(intBitsToFloat(R2i.y) + -(intBitsToFloat(PV1i.z))); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.x) + -(intBitsToFloat(PV1i.z))); -R125i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x2edbe6ff)); -R126i.w = floatBitsToInt(intBitsToFloat(R2i.z) + -(intBitsToFloat(PV1i.z))); -PS0i = R126i.w; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 4 -backupReg0i = R6i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.y = R123i.y; -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.w))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R127i.y))); -R6i.x = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); -PS0i = R6i.x; -// 5 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0x2edbe6ff)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R3i.z)); -PV1i.y = clampFI32(PV1i.y); -R0i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[30].y, intBitsToFloat(R6i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -R3i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[30].x, intBitsToFloat(R6i.w))); -PS1i = R3i.z; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R11i.z) + -(intBitsToFloat(PV1i.w))); -R6i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[30].z, intBitsToFloat(R6i.w))); -tempResultf = log2(intBitsToFloat(PV1i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 7 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(R127i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -PS1i = R127i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS10[3].z,intBitsToFloat(PV1i.z)) + uf_blockPS10[1].y)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -// 10 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R127i.w))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV1i.x))); -// 11 -backupReg0i = R1i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS10[1].x, intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R125i.z)) + intBitsToFloat(R126i.x))); -PV1i.y = R123i.y; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(backupReg0i))); -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R125i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 13 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.w))); -PV1i.x = R125i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.x))); -PV1i.y = R126i.y; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R9i.y))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.z))); -PV1i.w = R126i.w; -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.z) + -(intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.y) + -(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -// 15 -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R13i.y)) + intBitsToFloat(R126i.w))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R13i.y)) + intBitsToFloat(R125i.x))); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R13i.y)) + intBitsToFloat(R126i.y))); -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R126i.w = clampFI32(R126i.w); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].x, intBitsToFloat(R1i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].z, intBitsToFloat(R1i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].y, intBitsToFloat(R1i.w))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R8i.x)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), uf_blockPS6[13].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -// 3 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R9i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R5i.x))); -PV1i.y = R126i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R10i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R5i.y))); -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].x, intBitsToFloat(R5i.w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].z, intBitsToFloat(R5i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[5].y, intBitsToFloat(R5i.w))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R6i.w))) + intBitsToFloat(PV1i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(R7i.z)) + intBitsToFloat(R5i.z))); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PS0i = R122i.x; -// 5 -R123i.x = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.z)) + intBitsToFloat(R6i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R7i.z)) + intBitsToFloat(R3i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); -PV1i.w = R123i.w; -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(PS0i)); -PS1i = R127i.y; -// 6 -backupReg0i = R125i.z; -backupReg0i = R125i.z; -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PV1i.w)); -R125i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[13].y,intBitsToFloat(R125i.z)) + intBitsToFloat(R0i.z))); -R125i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.x)); -R126i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[13].x,intBitsToFloat(backupReg0i)) + intBitsToFloat(R3i.z))); -R124i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[13].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(R6i.y))); -PS0i = R124i.y; -// 7 -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R6i.x)) + intBitsToFloat(R6i.x))); -PV1i.z = R123i.z; -// 8 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.y)) + intBitsToFloat(R126i.w))); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(R124i.y))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(R125i.y))); -PV0i.w = R126i.w; -// 9 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) * 0.25); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) * 0.25); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.x), intBitsToFloat(PV0i.y))); -PV1i.z = R124i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) * 0.25); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.y), intBitsToFloat(PV0i.y))); -PS1i = R127i.x; -// 10 -backupReg0i = R127i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3fb8aa3b)); -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3fb8aa3b)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3fb8aa3b)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(backupReg0i))); -PV0i.w = R125i.w; -R125i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) * intBitsToFloat(0x3fb8aa3b)); -PS0i = R125i.z; -// 11 -R124i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) * intBitsToFloat(0x3fb8aa3b)); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3fb8aa3b)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 12 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R125i.x))); -// 13 -backupReg0i = R126i.x; -R126i.x = ((R11i.y == 0)?(backupReg0i):(PV0i.x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); -// 14 -backupReg0i = R126i.w; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -R126i.w = ((R11i.y == 0)?(backupReg0i):(PV1i.w)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R125i.z))); -// 15 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R127i.z = ((R11i.y == 0)?(backupReg0i):(PV0i.z)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -// 16 -R123i.y = ((R11i.y == 0)?(R124i.z):(PV1i.x)); -PV0i.y = R123i.y; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -// 17 -R123i.x = ((R11i.y == 0)?(R127i.x):(PV0i.w)); -PV1i.x = R123i.x; -PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R12i.x = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV0i.y)); -PS1i = R12i.x; -// 18 -R12i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.x)); -R123i.w = ((R11i.y == 0)?(R125i.w):(PV1i.z)); -PV0i.w = R123i.w; -// 19 -R12i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.w)); -} -// export -passPixelColor0 = vec4(intBitsToFloat(R12i.x), intBitsToFloat(R12i.y), intBitsToFloat(R12i.z), intBitsToFloat(R12i.w)); -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/c36b10f0e410def8_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/c36b10f0e410def8_00000000000000e1_ps.txt deleted file mode 100644 index 7a404694..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/c36b10f0e410def8_00000000000000e1_ps.txt +++ /dev/null @@ -1,129 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader c36b10f0e410def8 -// Guardian scout fire 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R3f.xyz = (texture(textureUnitPS1, R3f.zw).xyz); -// 0 -PV0f.x = mul_nonIEEE(R4f.x, R4f.x); -R127f.y = mul_nonIEEE(R4f.z, R4f.z); -PV0f.z = mul_nonIEEE(R3f.x, R3f.x); -PV0f.w = mul_nonIEEE(R4f.y, R4f.y); -PS0f = mul_nonIEEE(R3f.y, R3f.y); -// 1 -backupReg0f = R0f.x; -PV1f.x = mul_nonIEEE(R3f.z, R3f.z); -PV1f.y = R4f.w * 1.0; -R127f.z = mul_nonIEEE(PV0f.w, PS0f); -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.z); -PS1f = backupReg0f + -(R1f.x); -// 2 -backupReg0f = R0f.y; -backupReg1f = R0f.z; -PV0f.x = mul_nonIEEE(R0f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.y = mul_nonIEEE(R127f.y, PV1f.x); -PV0f.z = backupReg0f + -(R1f.y); -PV0f.w = backupReg1f + -(R1f.z); -R0f.x = (mul_nonIEEE(PS1f,PV1f.w) + R1f.x); -PS0f = R0f.x; -// 3 -R0f.y = (mul_nonIEEE(PV0f.z,R127f.z) + R1f.y); -R0f.z = (mul_nonIEEE(PV0f.w,PV0f.y) + R1f.z); -R0f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/cb27783c5e10df0e_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/cb27783c5e10df0e_000000000000001c_ps.txt deleted file mode 100644 index b1d72113..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/cb27783c5e10df0e_000000000000001c_ps.txt +++ /dev/null @@ -1,210 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cb27783c5e10df0e -// Shrine - elevator field 2 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem11; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem5; -R4f = passParameterSem8; -R5f = passParameterSem11; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -tempf.x = dot(vec4(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(uf_remappedPS[0].y),intBitsToFloat(uf_remappedPS[0].z),-0.0),vec4(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(uf_remappedPS[0].y),intBitsToFloat(uf_remappedPS[0].z),0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R127f.w = -(R2f.y) + R3f.y; -PS0f = R127f.w; -// 1 -tempf.x = dot(vec4(R5f.x,R5f.y,R5f.z,-0.0),vec4(R5f.x,R5f.y,R5f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -tempResultf = 1.0 / sqrt(PV0f.x); -PS1f = tempResultf; -// 2 -R127f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), PS1f); -PV0f.x = R127f.x; -R127f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), PS1f); -PV0f.y = R127f.y; -R126f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), PS1f); -PV0f.z = R126f.z; -R126f.w = -(R3f.y) + R3f.z; -tempResultf = 1.0 / sqrt(PV1f.x); -R127f.z = tempResultf; -PS0f = R127f.z; -// 3 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.y = mul_nonIEEE(R5f.y, PS0f); -PS1f = R126f.y; -// 4 -backupReg0f = R127f.z; -R126f.x = mul_nonIEEE(R5f.x, R127f.z); -R125f.y = mul_nonIEEE(R4f.x, R4f.x); -R127f.z = mul_nonIEEE(R5f.z, backupReg0f); -R125f.w = mul_nonIEEE(R4f.y, R4f.y); -tempResultf = 1.0 / sqrt(PV1f.x); -PS0f = tempResultf; -// 5 -backupReg0f = R127f.w; -PV1f.x = mul_nonIEEE(R127f.x, PS0f); -PV1f.y = mul_nonIEEE(R127f.y, PS0f); -PV1f.z = mul_nonIEEE(R126f.z, PS0f); -R127f.w = mul_nonIEEE(R4f.z, R4f.z); -R126f.z = 1.0 / backupReg0f; -PS1f = R126f.z; -// 6 -backupReg0f = R126f.w; -tempf.x = dot(vec4(R126f.x,R126f.y,R127f.z,-0.0),vec4(PV1f.x,PV1f.y,PV1f.z,0.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.w = 1.0 / backupReg0f; -PS0f = R126f.w; -// 7 -backupReg0f = R0f.x; -backupReg1f = R0f.y; -PV1f.x = backupReg0f + -(R1f.x); -PV1f.y = max(PV0f.x, -(PV0f.x)); -R127f.z = backupReg1f + -(R1f.y); -PV1f.w = R0f.z + -(R1f.z); -// 8 -PV0f.x = -(R2f.y) + PV1f.y; -PV0f.y = -(R3f.y) + PV1f.y; -R3f.z = (mul_nonIEEE(PV1f.w,R127f.w) + R1f.z); -R3f.x = (mul_nonIEEE(PV1f.x,R125f.y) + R1f.x); -PS0f = R3f.x; -// 9 -PV1f.y = PV0f.x * R126f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -PV1f.z = PV0f.y * R126f.w; -PV1f.z = clamp(PV1f.z, 0.0, 1.0); -R3f.y = (mul_nonIEEE(R127f.z,R125f.w) + R1f.y); -PS1f = R3f.y; -// 10 -PV0f.x = mul_nonIEEE(PV1f.y, PV1f.y); -PV0f.y = mul_nonIEEE(PV1f.z, PV1f.z); -R123f.z = (intBitsToFloat(0xc0000000) * PV1f.z + intBitsToFloat(0x40400000)); -PV0f.z = R123f.z; -R123f.w = (intBitsToFloat(0xc0000000) * PV1f.y + intBitsToFloat(0x40400000)); -PV0f.w = R123f.w; -// 11 -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.w); -PV1f.w = mul_nonIEEE(PV0f.y, PV0f.z); -// 12 -PV0f.z = mul_nonIEEE(PV1f.z, PV1f.w); -// 13 -PV1f.y = mul_nonIEEE(R0f.w, PV0f.z); -// 14 -PV0f.x = mul_nonIEEE(R4f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 15 -R3f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R3f.x, R3f.y, R3f.z, R3f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/cc9529ae1a492d03_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/cc9529ae1a492d03_00000001e1e1fe49_ps.txt deleted file mode 100644 index e404eae0..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/cc9529ae1a492d03_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,197 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cc9529ae1a492d03 -// Shrine - chests -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.z, R3f.x); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.x, PS1f); -PV0f.w = mul_nonIEEE(PV1f.w, PS1f); -R127f.y = R4f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -R126f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV0f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV0f.x)/2.0; -R127f.w = (mul_nonIEEE(R3f.z,backupReg0f) + PV0f.w)/2.0; -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R0f.w; -R126f.x = floor(R127f.y); -R126f.x *= 4.0; -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R0f.w); -R3f.z = mul_nonIEEE(R1f.x, R0f.z); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), backupReg0f); -R3f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R3f.x; -// 5 -backupReg0f = R0f.y; -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.y); -R1f.w = 1.0; -R3f.y = mul_nonIEEE(R1f.x, backupReg0f); -PS1f = R3f.y; -// 6 -R1f.x = intBitsToFloat(0x3c808081); -R1f.y = intBitsToFloat(uf_remappedPS[2].z); -R0f.w = 1.0; -PS0f = sqrt(R127f.x); -PS0f /= 2.0; -// 7 -R123f.x = (mul_nonIEEE(R2f.z,PS0f) + R127f.w); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(R2f.y,PS0f) + R126f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.x,PS0f) + R126f.z); -PV1f.w = R123f.w; -R3f.w = intBitsToFloat(0x3b808081); -PS1f = R3f.w; -// 8 -R2f.xyz = vec3(PV1f.w,PV1f.z,PV1f.x) + vec3(0.5,0.5,0.5); -R2f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 9 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 10 -R6f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R6f.w = R2f.w; -// 11 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// 12 -R4f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R4f.w = R1f.w; -// export -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor1 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor3 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor5 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/cd1eba6802df67f7_0000000f0f0ff249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/cd1eba6802df67f7_0000000f0f0ff249_ps.txt deleted file mode 100644 index 483d4015..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/cd1eba6802df67f7_0000000f0f0ff249_ps.txt +++ /dev/null @@ -1,202 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cd1eba6802df67f7 -// Shrine - ceiling -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem3; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem5; -layout(location = 4) in vec4 passParameterSem7; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem3; -R2f = passParameterSem4; -R3f = passParameterSem5; -R4f = passParameterSem7; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R4f.x = (texture(textureUnitPS7, R4f.xy).x); -R6f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -// 0 -R127f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R1f.z, R2f.x); -PV0f.z = mul_nonIEEE(R1f.y, R2f.z); -PV0f.w = mul_nonIEEE(R1f.x, R2f.y); -R127f.y = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.y; -// 1 -R123f.x = (mul_nonIEEE(-(R2f.y),R1f.z) + PV0f.z); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R2f.x),R1f.y) + PV0f.w); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(-(R2f.z),R1f.x) + PV0f.y); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.x, PV0f.x); -PS1f = mul_nonIEEE(R2f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.x, PS1f); -PV0f.y = mul_nonIEEE(PV1f.z, PS1f); -R123f.z = (mul_nonIEEE(R127f.y,R127f.y) + PV1f.w); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(PV1f.y, PS1f); -PS0f = R5f.z * intBitsToFloat(0x427f0000); -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.z) + 1.0; -R127f.y = (mul_nonIEEE(R2f.z,backupReg0f) + PV0f.w)/2.0; -R127f.z = (mul_nonIEEE(R2f.y,backupReg0f) + PV0f.y)/2.0; -R127f.w = (mul_nonIEEE(R2f.x,backupReg0f) + PV0f.x)/2.0; -R126f.x = floor(PS0f); -R126f.x *= 4.0; -PS1f = R126f.x; -// 4 -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R0f.w); -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -PV0f.z = mul_nonIEEE(R3f.x, R4f.x); -R3f.w = 1.0; -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R0f.w); -PS0f = R0f.z; -// 5 -backupReg0f = R6f.x; -backupReg1f = R6f.y; -backupReg2f = R6f.z; -R6f.x = mul_nonIEEE(backupReg0f, PV0f.z); -R6f.y = mul_nonIEEE(backupReg1f, PV0f.z); -R6f.z = mul_nonIEEE(backupReg2f, PV0f.z); -R0f.w = 1.0; -R3f.x = intBitsToFloat(0x3c808081); -PS1f = R3f.x; -// 6 -R3f.y = intBitsToFloat(uf_remappedPS[1].z); -R6f.w = intBitsToFloat(0x3b808081); -PS0f = sqrt(R127f.x); -PS0f /= 2.0; -// 7 -R123f.y = (mul_nonIEEE(R1f.x,PS0f) + R127f.w); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(R1f.z,PS0f) + R127f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R1f.y,PS0f) + R127f.z); -PV1f.w = R123f.w; -R1f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R1f.w; -// 8 -R1f.xyz = vec3(PV1f.y,PV1f.w,PV1f.z) + vec3(0.5,0.5,0.5); -// 9 -R10f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R10f.w = R0f.w; -// 10 -R9f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R9f.w = R1f.w; -// 11 -R8f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R8f.w = R6f.w; -// 12 -R7f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R7f.w = R3f.w; -// export -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor1 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor3 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor5 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/ce76f7a67517c0b2_000000003c3c4389_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/ce76f7a67517c0b2_000000003c3c4389_ps.txt deleted file mode 100644 index 0fbaaac7..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/ce76f7a67517c0b2_000000003c3c4389_ps.txt +++ /dev/null @@ -1,217 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ce76f7a67517c0b2 -// Shrine - top part -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem6; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R6f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R126f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R126f.x; -PV0f.y = mul_nonIEEE(R2f.z, R3f.x); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.y, R3f.z); -R127f.w = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R127f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.w); -R127f.y = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R126f.w = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.y); -R122f.x = (mul_nonIEEE(-(R4f.z),intBitsToFloat(uf_remappedPS[0].x)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS1f = R122f.x; -// 2 -R125f.x = R5f.z * intBitsToFloat(0x427f0000); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.w, R127f.w); -R127f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z),PS1f) + 1.0); -PV0f.w = R127f.w; -R5f.x = mul_nonIEEE(R1f.x, R6f.x); -PS0f = R5f.x; -// 3 -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -PV1f.y = mul_nonIEEE(backupReg0f, PV0f.z); -PV1f.z = mul_nonIEEE(R126f.w, PV0f.z); -PV1f.w = mul_nonIEEE(R127f.y, PV0f.z); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R126f.x; -backupReg0f = R126f.x; -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(R3f.z,backupReg0f) + PV1f.w)/2.0; -R127f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV1f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV1f.y)/2.0; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R127f.w); -PS0f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R127f.w); -// 5 -backupReg0f = R0f.w; -backupReg1f = R127f.x; -R127f.x = floor(R125f.x); -R127f.x *= 4.0; -R126f.y = mul_nonIEEE(R0f.w, PS0f); -PV1f.z = mul_nonIEEE(R0f.w, R127f.z); -PV1f.w = mul_nonIEEE(backupReg0f, PV0f.w); -PS1f = sqrt(backupReg1f); -PS1f /= 2.0; -// 6 -backupReg0f = R126f.x; -backupReg1f = R2f.y; -backupReg2f = R126f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS1f) + backupReg0f); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.w); -R126f.z = (mul_nonIEEE(backupReg1f,PS1f) + R127f.y); -R127f.w = (mul_nonIEEE(R2f.x,PS1f) + backupReg2f); -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.z); -PS0f = R2f.x; -// 7 -R6f.x = intBitsToFloat(0x3c808081); -R5f.y = mul_nonIEEE(R1f.x, R6f.y); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), R126f.y); -R5f.z = mul_nonIEEE(R1f.x, R6f.z); -PS1f = R5f.z; -// 8 -R1f.x = R127f.w + 0.5; -R6f.y = 0.0; -R1f.z = R126f.x + 0.5; -R2f.w = 1.0; -R1f.y = R126f.z + 0.5; -PS0f = R1f.y; -// 9 -R5f.w = intBitsToFloat(0x3b808081); -R1f.w = (R127f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R1f.w; -// 10 -R10f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R10f.w = R2f.w; -// 11 -R9f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R9f.w = R1f.w; -// 12 -R8f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R8f.w = R5f.w; -// 13 -R7f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R7f.w = R6f.w; -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor1 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor3 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor5 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/cf2e9b7aab93e342_000000000001fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/cf2e9b7aab93e342_000000000001fe49_ps.txt deleted file mode 100644 index 69aa2650..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/cf2e9b7aab93e342_000000000001fe49_ps.txt +++ /dev/null @@ -1,549 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cf2e9b7aab93e342 -// Sheikah Tower - inactive, reflection pass -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[10]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[10]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV0i.x = R123i.x; -R6i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(uf_remappedPS[0].y)); -R0i.z = 0; -R2i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(uf_remappedPS[0].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(PS0i)); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].y)); -// 2 -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -R13i.w = 0; -R1i.w = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[2].w)); -PS0i = R1i.w; -R3i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.xy)).xyzw); -R2i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y),intBitsToFloat(R2i.x)) + intBitsToFloat(uf_remappedPS[3].x))); -PV0i.w = R127i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.w)); -R126i.w = floatBitsToInt(tempResultf); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV0i.w))); -PS1i = R126i.y; -// 2 -backupReg0i = R127i.w; -R125i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedPS[4].z)); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R126i.w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R127i.w)))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(backupReg0i)))); -PV0i.w = R127i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R124i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + intBitsToFloat(uf_remappedPS[4].x)); -PV1i.w = R124i.w; -R125i.y = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + intBitsToFloat(uf_remappedPS[4].y)); -PS1i = R125i.y; -// 4 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV1i.w)),-(intBitsToFloat(PS1i)),-(intBitsToFloat(R125i.x)),-0.0),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R126i.w))); -PS0i = R10i.y; -// 5 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R126i.w))); -PV1i.x = R0i.x; -R3i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + 1.0); -PV1i.y = R3i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(R1i.w)); -R127i.z = clampFI32(R127i.z); -PV1i.z = R127i.z; -R0i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[5].x)); -R5i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[5].y)); -PS1i = R5i.y; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[4].x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(PV1i.z)) + intBitsToFloat(uf_remappedPS[4].y))); -PV0i.y = R123i.y; -R125i.z = floatBitsToInt((intBitsToFloat(PV1i.y) * 0.5 + 0.5)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3d4ccccd))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV1i.x))); -// 7 -R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.w) + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(R127i.z)) + intBitsToFloat(uf_remappedPS[4].z))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R10i.y)) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 8 -backupReg0i = R125i.z; -backupReg0i = R125i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y)) + intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R12i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(1.0)); -R125i.z = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(PV1i.w))); -PV0i.z = R125i.z; -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg0i))); -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -R8i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ea2f983)); -PS0i = R8i.z; -// 9 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.z = tempi.x; -PS1i = PV0i.x; -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 10 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PS1i)) + -(intBitsToFloat(R9i.y)))); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(PS1i)) + -(intBitsToFloat(R10i.y)))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(R0i.x)))); -R127i.w = R127i.x; -R127i.w = clampFI32(R127i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.y)), intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.z)), intBitsToFloat(PS0i))); -PV1i.z = R5i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(PS0i))); -PV1i.w = R125i.w; -R2i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + 1.0); -PS1i = R2i.x; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R11i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.w = tempi.x; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R126i.y; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R2i.x)) + intBitsToFloat(R4i.w))); -PS1i = R122i.x; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R125i.y),intBitsToFloat(R125i.x),-0.0),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -R7i.z = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R7i.z; -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R125i.y),intBitsToFloat(R125i.x),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.z = tempi.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.y))); -PS1i = R126i.x; -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R125i.y),intBitsToFloat(R125i.x),-0.0),vec4(intBitsToFloat(R124i.w),intBitsToFloat(R125i.y),intBitsToFloat(R125i.x),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -// 17 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(max(intBitsToFloat(R126i.w), -(1.0))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[2].w)),intBitsToFloat(R125i.z)) + intBitsToFloat(backupReg0i))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.y)) + intBitsToFloat(PS0i))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x40400000)); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R125i.w))); -PS1i = R5i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R0i.z),-0.0),vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R5i.y),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 19 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(min(intBitsToFloat(backupReg0i), 1.0)); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(uf_remappedPS[7].y))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(uf_remappedPS[8].x)) + intBitsToFloat(uf_remappedPS[8].y))); -PV1i.w = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS0i)); -PV1i.w = clampFI32(PV1i.w); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 20 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R124i.w))); -PV0i.x = R3i.x; -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(PV1i.w)) + intBitsToFloat(R125i.y))); -PV0i.y = R8i.y; -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R125i.x))); -PV0i.z = R2i.z; -R3i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PS1i)); -R3i.w = clampFI32(R3i.w); -R2i.y = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -PS0i = R2i.y; -// 21 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = tempi.x; -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(uf_remappedPS[8].z)) + intBitsToFloat(uf_remappedPS[8].w))); -PS1i = R4i.y; -R7i.y = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zy)).x); -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.w)) + -(intBitsToFloat(R3i.x)))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.w)) + -(intBitsToFloat(R8i.y)))); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)) + -(intBitsToFloat(R2i.z)))); -PV0i.z = R127i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(uf_remappedPS[9].y))); -R124i.w = clampFI32(R124i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R3i.w)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = floatBitsToInt(intBitsToFloat(R3i.y) * intBitsToFloat(PS0i)); -PS1i = R126i.w; -// 2 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R2i.w)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(R6i.y)),-0.0),vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(backupReg0i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 3 -backupReg0i = R0i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(R2i.y)); -R125i.x = clampFI32(R125i.x); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(backupReg0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(R124i.w)) + 1.0)); -PV1i.z = R123i.z; -PV1i.w = ((intBitsToFloat(R4i.z) > intBitsToFloat(uf_remappedPS[7].x))?int(0xFFFFFFFF):int(0x0)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R2i.w))); -PV0i.x = R123i.x; -R126i.y = ((PV1i.w == 0)?(R7i.y):(PV1i.y)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R6i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[6].w) * intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -PS0i = R5i.y; -// 5 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + intBitsToFloat(R3i.x))); -PV1i.x = R126i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.w)) + intBitsToFloat(R8i.y))); -PV1i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)) + intBitsToFloat(R2i.z))); -PV1i.z = R127i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[5].z)); -// 6 -backupReg0i = R125i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[0].z))); -PS0i = R125i.x; -// 7 -R127i.x = floatBitsToInt(max(-(intBitsToFloat(R5i.z)), 0.0)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].y), intBitsToFloat(R126i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(R124i.w))); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].x), intBitsToFloat(R126i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.z; -backupReg2i = R126i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV1i.z)) + 1.0)); -R125i.w = clampFI32(R125i.w); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].z), intBitsToFloat(backupReg2i))); -PS0i = R124i.y; -// 9 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PV0i.x)); -PV1i.x = R127i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(PV0i.y)); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.z)); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(min(intBitsToFloat(backupReg0i), 1.0)); -PS1i = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R5i.y))); -PS0i = R8i.y; -// 11 -backupReg0i = R126i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R11i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R127i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 12 -backupReg0i = R127i.x; -backupReg1i = R125i.y; -backupReg2i = R125i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PS1i))); -PV0i.z = R125i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(R4i.w))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x3ea2f983)); -PS0i = R125i.x; -// 13 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.y),intBitsToFloat(R10i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R126i.x; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R11i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R125i.z; -// 15 -backupReg0i = R127i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3ea2f983)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(0x3ea2f983)); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R125i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(PV1i.x)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV1i.z))); -// 17 -R13i.x = floatBitsToInt(min(intBitsToFloat(PV0i.z), intBitsToFloat(0x42000000))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -R13i.z = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.x))); -R13i.y = floatBitsToInt(min(intBitsToFloat(PS0i), intBitsToFloat(0x42000000))); -PS1i = R13i.y; -// 18 -R125i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 19 -PV1i.w = floatBitsToInt(intBitsToFloat(R8i.z) * intBitsToFloat(PS0i)); -// 20 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R125i.z))); -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.y))); -// 22 -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * 0.25); -// 23 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -// 24 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.z))); -// 25 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -// 26 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].z), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].y), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].x), intBitsToFloat(PV1i.x))); -// 27 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.z))); -// 28 -backupReg0i = R8i.y; -backupReg0i = R8i.y; -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV1i.w))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -// 0 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt(min(intBitsToFloat(R8i.y), intBitsToFloat(0x42000000))); -R4i.y = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(0x42000000))); -R4i.z = floatBitsToInt(min(intBitsToFloat(R5i.w), intBitsToFloat(0x42000000))); -// 1 -R0i.xyz = ivec3(R13i.x,R13i.y,R13i.z); -R0i.w = R13i.w; -// 2 -R1i.xyz = ivec3(R4i.x,R4i.y,R4i.z); -R1i.w = R4i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -colhsv = rgb2hsv(passPixelColor1.rgb); -colhsv = rgb2hsv(passPixelColor1.rgb); -passPixelColor1.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor1.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/d178de668517df1e_000000003c3c4389_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/d178de668517df1e_000000003c3c4389_ps.txt deleted file mode 100644 index ada57679..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/d178de668517df1e_000000003c3c4389_ps.txt +++ /dev/null @@ -1,217 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d178de668517df1e -// Shrine - entrance top -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R8f = vec4(0.0); -vec4 R9f = vec4(0.0); -vec4 R10f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem6; -R5f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R6f.xyzw = (texture(textureUnitPS3, R0f.xy).xyzw); -// 0 -R126f.x = (R5f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R126f.x; -PV0f.y = mul_nonIEEE(R2f.z, R3f.x); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.y, R3f.z); -R127f.w = (R5f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R127f.x = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.w); -R127f.y = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R126f.w = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.y); -R122f.x = (mul_nonIEEE(-(R4f.z),intBitsToFloat(uf_remappedPS[0].x)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R122f.x = clamp(R122f.x, 0.0, 1.0); -PS1f = R122f.x; -// 2 -R125f.x = R5f.z * intBitsToFloat(0x427f0000); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(R3f.w, R127f.w); -R127f.w = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z),PS1f) + 1.0); -PV0f.w = R127f.w; -R5f.x = mul_nonIEEE(R1f.x, R6f.x); -PS0f = R5f.x; -// 3 -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -PV1f.y = mul_nonIEEE(backupReg0f, PV0f.z); -PV1f.z = mul_nonIEEE(R126f.w, PV0f.z); -PV1f.w = mul_nonIEEE(R127f.y, PV0f.z); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -PS1f = R127f.z; -// 4 -backupReg0f = R126f.x; -backupReg0f = R126f.x; -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(R3f.z,backupReg0f) + PV1f.w)/2.0; -R127f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV1f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV1f.y)/2.0; -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].y), R127f.w); -PS0f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), R127f.w); -// 5 -backupReg0f = R0f.w; -backupReg1f = R127f.x; -R127f.x = floor(R125f.x); -R127f.x *= 4.0; -R126f.y = mul_nonIEEE(R0f.w, PS0f); -PV1f.z = mul_nonIEEE(R0f.w, R127f.z); -PV1f.w = mul_nonIEEE(backupReg0f, PV0f.w); -PS1f = sqrt(backupReg1f); -PS1f /= 2.0; -// 6 -backupReg0f = R126f.x; -backupReg1f = R2f.y; -backupReg2f = R126f.z; -R126f.x = (mul_nonIEEE(R2f.z,PS1f) + backupReg0f); -R2f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.w); -R126f.z = (mul_nonIEEE(backupReg1f,PS1f) + R127f.y); -R127f.w = (mul_nonIEEE(R2f.x,PS1f) + backupReg2f); -R2f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), PV1f.z); -PS0f = R2f.x; -// 7 -R6f.x = intBitsToFloat(0x3c808081); -R5f.y = mul_nonIEEE(R1f.x, R6f.y); -R2f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w), R126f.y); -R5f.z = mul_nonIEEE(R1f.x, R6f.z); -PS1f = R5f.z; -// 8 -R1f.x = R127f.w + 0.5; -R6f.y = intBitsToFloat(uf_remappedPS[2].z); -R1f.z = R126f.x + 0.5; -R2f.w = 1.0; -R1f.y = R126f.z + 0.5; -PS0f = R1f.y; -// 9 -R5f.w = intBitsToFloat(0x3b808081); -R1f.w = (R127f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -PS1f = R1f.w; -// 10 -R10f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R10f.w = R2f.w; -// 11 -R9f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R9f.w = R1f.w; -// 12 -R8f.xyz = vec3(R5f.x,R5f.y,R5f.z); -R8f.w = R5f.w; -// 13 -R7f.xyz = vec3(R6f.x,R6f.y,R6f.z); -R7f.w = R6f.w; -// export -if( ((vec4(R7f.x, R7f.y, R7f.z, R7f.w)).a >= uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -passPixelColor1 = vec4(R8f.x, R8f.y, R8f.z, R8f.w); -passPixelColor3 = vec4(R9f.x, R9f.y, R9f.z, R9f.w); -passPixelColor5 = vec4(R10f.x, R10f.y, R10f.z, R10f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/d3ac3a61f7749326_000000000000001c_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/d3ac3a61f7749326_000000000000001c_ps.txt deleted file mode 100644 index f2f64410..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/d3ac3a61f7749326_000000000000001c_ps.txt +++ /dev/null @@ -1,114 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d3ac3a61f7749326 -// Hateno fire particles -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem8; -R3f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -// 0 -backupReg0f = R0f.y; -backupReg1f = R0f.x; -PV0f.x = mul_nonIEEE(R0f.w, R3f.w); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -PV0f.y = R0f.z + -(R1f.z); -PV0f.z = backupReg0f + -(R1f.y); -PV0f.w = backupReg1f + -(R1f.x); -// 1 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -backupReg2f = R1f.z; -R1f.x = (mul_nonIEEE(PV0f.w,R3f.x) + backupReg0f); -R1f.y = (mul_nonIEEE(PV0f.z,R3f.y) + backupReg1f); -R1f.z = (mul_nonIEEE(PV0f.y,R3f.z) + backupReg2f); -R1f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R1f.x, R1f.y, R1f.z, R1f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/d48de6ada1e9ad03_00000001e1e1fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/d48de6ada1e9ad03_00000001e1e1fe49_ps.txt deleted file mode 100644 index 8d416ffa..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/d48de6ada1e9ad03_00000001e1e1fe49_ps.txt +++ /dev/null @@ -1,196 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d48de6ada1e9ad03 -// Sheikah Towers - active - top part -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem5; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R1f.w = (texture(textureUnitPS5, R0f.zw).x); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -R127f.x = (R4f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.x = R127f.x; -PV0f.y = mul_nonIEEE(R2f.y, R3f.z); -PV0f.z = mul_nonIEEE(R2f.x, R3f.y); -PV0f.w = mul_nonIEEE(R2f.z, R3f.x); -R127f.w = (R4f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.w; -// 1 -R123f.x = (mul_nonIEEE(-(R3f.z),R2f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R3f.y),R2f.z) + PV0f.y); -PV1f.y = R123f.y; -PV1f.z = mul_nonIEEE(PV0f.x, PV0f.x); -R123f.w = (mul_nonIEEE(-(R3f.x),R2f.y) + PV0f.z); -PV1f.w = R123f.w; -PS1f = mul_nonIEEE(R3f.w, PS0f); -// 2 -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -R123f.y = (mul_nonIEEE(R127f.w,R127f.w) + PV1f.z); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -PV0f.z = mul_nonIEEE(PV1f.x, PS1f); -PV0f.w = mul_nonIEEE(PV1f.w, PS1f); -R127f.y = R4f.z * intBitsToFloat(0x427f0000); -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -backupReg0f = R127f.x; -backupReg0f = R127f.x; -R127f.x = -(PV0f.y) + 1.0; -R126f.y = (mul_nonIEEE(R3f.y,backupReg0f) + PV0f.z)/2.0; -R126f.z = (mul_nonIEEE(R3f.x,backupReg0f) + PV0f.x)/2.0; -R127f.w = (mul_nonIEEE(R3f.z,backupReg0f) + PV0f.w)/2.0; -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), R1f.w); -PS1f = R127f.z; -// 4 -R126f.x = floor(R127f.y); -R126f.x *= 4.0; -PV0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), R1f.w); -R3f.z = mul_nonIEEE(R1f.x, R0f.z); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R1f.w); -R3f.x = mul_nonIEEE(R1f.x, R0f.x); -PS0f = R3f.x; -// 5 -backupReg0f = R0f.y; -R0f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R0f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -R0f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.y); -R1f.w = 1.0; -R3f.y = mul_nonIEEE(R1f.x, backupReg0f); -PS1f = R3f.y; -// 6 -R1f.x = intBitsToFloat(0x3c808081); -R1f.y = intBitsToFloat(uf_remappedPS[2].z); -R0f.w = 1.0; -PS0f = sqrt(R127f.x); -PS0f /= 2.0; -// 7 -R123f.x = (mul_nonIEEE(R2f.z,PS0f) + R127f.w); -PV1f.x = R123f.x; -R123f.z = (mul_nonIEEE(R2f.y,PS0f) + R126f.y); -PV1f.z = R123f.z; -R123f.w = (mul_nonIEEE(R2f.x,PS0f) + R126f.z); -PV1f.w = R123f.w; -R3f.w = intBitsToFloat(0x3b808081); -PS1f = R3f.w; -// 8 -R2f.xyz = vec3(PV1f.w,PV1f.z,PV1f.x) + vec3(0.5,0.5,0.5); -R2f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 9 -R7f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R7f.w = R0f.w; -// 10 -R6f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R6f.w = R2f.w; -// 11 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// 12 -R4f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R4f.w = R1f.w; -// export -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor1 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor3 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor5 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/db8bc69330c08206_0000000000003849_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/db8bc69330c08206_0000000000003849_ps.txt deleted file mode 100644 index 8d27c435..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/db8bc69330c08206_0000000000003849_ps.txt +++ /dev/null @@ -1,148 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader db8bc69330c08206 -// Shrine - elevator particles 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R5f = passParameterSem9; -R3f.w = (texture(textureUnitPS0, R4f.xy).w); -R4f.z = (texture(textureUnitPS1, R4f.zw).w); -R5f.y = (texture(textureUnitPS2, R5f.xy).w); -// 0 -PV0f.w = mul_nonIEEE(R3f.w, R4f.z); -PS0f = 1.0 / R2f.w; -// 1 -PV1f.y = R2f.z * PS0f; -R123f.z = (mul_nonIEEE(PV0f.w,R5f.y) + -(R0f.w)); -PV1f.z = R123f.z; -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -backupReg2f = R1f.w; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = mul_nonIEEE(backupReg1f, PS1f); -R2f.z = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R1f.w = mul_nonIEEE(backupReg2f, PV1f.z); -R1f.w = clamp(R1f.w, 0.0, 1.0); -R2f.x = (texture(textureUnitPS4, R2f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R2f.x) + intBitsToFloat(uf_remappedPS[0].x)); -PS0f = 1.0 / R2f.z; -// 1 -PV1f.y = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.y) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -// 5 -R0f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R0f.x, R0f.y, R0f.z, R0f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/e53233e53de8434f_0000000000000709_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/e53233e53de8434f_0000000000000709_ps.txt deleted file mode 100644 index 41c5f66a..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/e53233e53de8434f_0000000000000709_ps.txt +++ /dev/null @@ -1,129 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader e53233e53de8434f -// Bomb - debris -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem4; -layout(location = 3) in vec4 passParameterSem7; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 5) in vec4 passParameterSem9; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R123f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem4; -R3f = passParameterSem7; -R4f = passParameterSem8; -R5f = passParameterSem9; -R1f.z = (texture(textureUnitPS1, R4f.zw).w); -R4f.w = (texture(textureUnitPS0, R4f.xy).w); -R5f.y = (texture(textureUnitPS2, R5f.xy).w); -// 0 -backupReg0f = R0f.x; -PV0f.x = -(R1f.z) + 1.0; -R6f.y = mul_nonIEEE(R0f.y, R3f.y); -R6f.z = mul_nonIEEE(R0f.z, R3f.z); -R6f.x = mul_nonIEEE(backupReg0f, R3f.x); -PS0f = R6f.x; -// 1 -PV1f.w = R4f.w + -(PV0f.x); -// 2 -PV0f.z = mul_nonIEEE(PV1f.w, R5f.y); -// 3 -R123f.y = (mul_nonIEEE(R3f.w,PV0f.z) + -(R0f.w)); -PV1f.y = R123f.y; -// 4 -PV0f.x = mul_nonIEEE(R1f.w, PV1f.y); -PV0f.x = clamp(PV0f.x, 0.0, 1.0); -// 5 -R6f.w = mul_nonIEEE(R2f.x, PV0f.x); -// export -if( ((vec4(R6f.x, R6f.y, R6f.z, R6f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/e95d54571be1c0a9_000000000001fe49_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/e95d54571be1c0a9_000000000001fe49_ps.txt deleted file mode 100644 index 2212138f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/e95d54571be1c0a9_000000000001fe49_ps.txt +++ /dev/null @@ -1,452 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader e95d54571be1c0a9 -// Shrine - balls, reflection pass -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[8]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[8]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedPS[0].x))); -R127i.y = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(uf_remappedPS[0].y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R5i.w = floatBitsToInt((0.0 * intBitsToFloat(uf_remappedPS[2].w) + 1.0)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].y)); -// 2 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.y))); -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -R8i.w = 0; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.z)); -R0i.y = floatBitsToInt(tempResultf); -PS0i = R0i.y; -R3i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.xy)).xyzw); -R2i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y),intBitsToFloat(R2i.x)) + intBitsToFloat(uf_remappedPS[3].x))); -PV0i.w = R127i.w; -R126i.w = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),-(intBitsToFloat(PV0i.w))) + -(intBitsToFloat(uf_remappedPS[4].x)))); -PS1i = R124i.x; -// 2 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R127i.w))) + -(intBitsToFloat(uf_remappedPS[4].y)))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),-(intBitsToFloat(R127i.w))) + -(intBitsToFloat(uf_remappedPS[4].z)))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R0i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R0i.y))); -PS1i = int(intBitsToFloat(R126i.w)); -// 4 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R125i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.x = PS1i & 0x00000002; -PS0i = R1i.x; -// 5 -R125i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3a83126f))); -PV1i.x = R125i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + 1.0); -R7i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].z)),intBitsToFloat(R0i.x)) + 1.0)); -R7i.z = clampFI32(R7i.z); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R1i.w))); -// 6 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R1i.y),intBitsToFloat(PS1i),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R0i.w),1.0,0.0))); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R124i.x)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R2i.y)), intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.z)), intBitsToFloat(PS0i))); -PV1i.z = R5i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].w), intBitsToFloat(PS0i))); -R126i.w = PV0i.x; -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) * 2.0); -PS1i = R126i.w; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R1i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R124i.y = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = R124i.y; -// 9 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R126i.w)) + -(intBitsToFloat(R4i.x)))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R126i.w)) + -(intBitsToFloat(R0i.w)))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R126i.w)) + -(intBitsToFloat(R1i.w)))); -PV1i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(0x3d4ccccd))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt((intBitsToFloat(R0i.y) * 0.5 + 0.5)); -PS1i = R126i.y; -// 10 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PS0i = R125i.y; -// 11 -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R124i.x))); -PV1i.x = R127i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.y))); -PV1i.y = R3i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.z))); -PV1i.z = R127i.z; -R2i.w = floatBitsToInt(intBitsToFloat(PS0i) + -(1.0)); -R127i.y = floatBitsToInt(max(intBitsToFloat(R126i.z), -(1.0))); -PS1i = R127i.y; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.y))); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.x) / 2.0); -PS0i = R2i.x; -// 13 -R3i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.x = R3i.x; -PV1i.y = R126i.x; -PV1i.y = clampFI32(PV1i.y); -R6i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(0x3ea2f983)); -PV1i.w = floatBitsToInt(min(intBitsToFloat(R127i.y), 1.0)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 14 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R2i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[2].y))); -R127i.y = clampFI32(R127i.y); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(uf_remappedPS[6].w))); -PV0i.z = R126i.z; -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R124i.y))); -PV0i.w = R4i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 15 -backupReg0i = R124i.y; -R0i.x = ((intBitsToFloat(PV0i.z) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[7].y))); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) * intBitsToFloat(PS0i)); -PV1i.w = clampFI32(PV1i.w); -R126i.x = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS1i = R126i.x; -// 16 -backupReg0i = R127i.x; -backupReg1i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R124i.x)))); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R2i.y)))); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R125i.z)))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x40400000)); -R3i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.x)); -PS0i = R3i.y; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R124i.y))); -R6i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R127i.y)) + 1.0)); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(uf_remappedPS[6].x)) + intBitsToFloat(uf_remappedPS[6].y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 19 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R0i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PV1i.y = R2i.y; -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -PV1i.z = R1i.z; -R123i.w = ((backupReg0i == 0)?(0):(PV0i.x)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 20 -backupReg0i = R1i.x; -backupReg1i = R0i.y; -R1i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV1i.x)); -R0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -R0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.z)); -R3i.w = ((backupReg0i == 0)?(R126i.z):(PV1i.w)); -R4i.y = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(PS1i)); -PS0i = R4i.y; -R5i.y = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).x); -// 0 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = ((intBitsToFloat(R3i.z) > intBitsToFloat(uf_remappedPS[7].x))?int(0xFFFFFFFF):int(0x0)); -PS0i = R127i.y; -// 1 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R1i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R0i.x),intBitsToFloat(R2i.y),intBitsToFloat(R1i.z),0.0))); -R125i.x = clampFI32(R125i.x); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R3i.x)) + intBitsToFloat(R2i.x))); -PV0i.w = R123i.w; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R2i.z))); -PS0i = R127i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R0i.w),intBitsToFloat(R1i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R126i.w; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R1i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R125i.y; -// 5 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R4i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R126i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(max(-(intBitsToFloat(R5i.z)), 0.0)); -// 6 -R126i.x = ((R127i.y == 0)?(R5i.y):(R127i.w)); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.w)) + 1.0)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R6i.y))); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(PV0i.x))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(PV0i.x))); -PS1i = R127i.x; -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R125i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3ea2f983)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(R126i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 9 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R124i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3ea2f983)); -PV1i.z = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3ea2f983)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.z))); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R125i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS1i))); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.x))); -R8i.x = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(0x42000000))); -PS1i = R8i.x; -// 12 -R8i.y = floatBitsToInt(min(intBitsToFloat(PV1i.x), intBitsToFloat(0x42000000))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * 0.25); -R8i.z = floatBitsToInt(min(intBitsToFloat(PV1i.z), intBitsToFloat(0x42000000))); -PS0i = R8i.z; -// 13 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.z))); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV1i.y))); -// 15 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.x))); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(PV1i.w))); -// 17 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV0i.z))); -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.z))); -// 19 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.z))); -// 20 -R7i.x = floatBitsToInt(min(intBitsToFloat(PV1i.y), intBitsToFloat(0x42000000))); -R7i.y = floatBitsToInt(min(intBitsToFloat(PV1i.x), intBitsToFloat(0x42000000))); -R7i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), intBitsToFloat(0x42000000))); -// 21 -R0i.xyz = ivec3(R8i.x,R8i.y,R8i.z); -R0i.w = R8i.w; -// 22 -R1i.xyz = ivec3(R7i.x,R7i.y,R7i.z); -R1i.w = R7i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -colhsv = rgb2hsv(passPixelColor1.rgb); -passPixelColor1.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor1.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/f62be0d03546ec39_00000000000000e1_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/f62be0d03546ec39_00000000000000e1_ps.txt deleted file mode 100644 index 1accab5e..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/f62be0d03546ec39_00000000000000e1_ps.txt +++ /dev/null @@ -1,147 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader f62be0d03546ec39 -// Guardian scout fire 1 -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform float uf_alphaTestRef; -uniform vec2 uf_fragCoordScale; -#endif -// uf_alphaTestRef was moved to the ufBlock -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem3; -layout(location = 3) in vec4 passParameterSem4; -layout(location = 4) in vec4 passParameterSem8; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem3; -R3f = passParameterSem4; -R4f = passParameterSem8; -R4f.xyzw = (texture(textureUnitPS0, R4f.xy).xyzw); -// 0 -backupReg0f = R0f.x; -backupReg1f = R0f.z; -R0f.x = R0f.y + -(R1f.y); -R127f.y = backupReg0f + -(R1f.x); -PV0f.z = mul_nonIEEE(R0f.w, R4f.w); -PV0f.w = backupReg1f + -(R1f.z); -PS0f = 1.0 / R2f.w; -// 1 -PV1f.x = R2f.z * PS0f; -R0f.y = mul_nonIEEE(R1f.w, PV0f.z); -R0f.y = clamp(R0f.y, 0.0, 1.0); -R5f.z = (mul_nonIEEE(PV0f.w,R4f.z) + R1f.z); -PS1f = 1.0 / R2f.w; -// 2 -backupReg0f = R2f.x; -backupReg1f = R2f.y; -R2f.x = mul_nonIEEE(backupReg0f, PS1f); -R2f.y = mul_nonIEEE(backupReg1f, PS1f); -R2f.z = (mul_nonIEEE(PV1f.x,intBitsToFloat(uf_remappedPS[0].w)) + -(intBitsToFloat(uf_remappedPS[0].y))); -R5f.x = (mul_nonIEEE(R127f.y,R4f.x) + R1f.x); -PS0f = R5f.x; -R2f.y = (texture(textureUnitPS4, R2f.xy).x); -// 0 -R127f.x = (mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].w),R2f.y) + intBitsToFloat(uf_remappedPS[0].x)); -R5f.y = (mul_nonIEEE(R0f.x,R4f.y) + R1f.y); -PS0f = 1.0 / R2f.z; -// 1 -PV1f.w = -(intBitsToFloat(uf_remappedPS[0].z)) * PS0f; -R127f.z = 1.0 / intBitsToFloat(uf_remappedPS[1].y); -PS1f = R127f.z; -// 2 -PV0f.w = -(PV1f.w) + R127f.x; -// 3 -PV1f.y = PV0f.w * R127f.z; -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -// 4 -PV0f.x = mul_nonIEEE(R0f.y, PV1f.y); -// 5 -R5f.w = mul_nonIEEE(R3f.x, PV0f.x); -// export -if( ((vec4(R5f.x, R5f.y, R5f.z, R5f.w)).a > uf_alphaTestRef) == false) discard; -passPixelColor0 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -vec3 colhsv = rgb2hsv(passPixelColor0.rgb); -passPixelColor0.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor0.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/fb135efcb4540fb1_00000078787f9249_ps.txt b/Mods/BreathOfTheWild_GlowLightsColors/fb135efcb4540fb1_00000078787f9249_ps.txt deleted file mode 100644 index 8c48f08f..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/fb135efcb4540fb1_00000078787f9249_ps.txt +++ /dev/null @@ -1,210 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader fb135efcb4540fb1 -// Shrine - wall decoration -// Glow Lights Color Mod -// Credit for hsv functions http://lolengine.net/blog/2013/07/27/rgb-to-hsv-in-glsl - -#define HUE_ROTATION 134 //[0, 360] where 0 and 360 is unchanged Hue and 180 is completely opposite Hue. Check http://dba.med.sc.edu/price/irf/Adobe_tg/models/images/hsl_top.JPG -#define SATURATION_FACTOR 0.9 //[0.0, 1.0] 1.0 means unchanged Saturation, 0.0 means completely desaturated. Values above 1.0 are accepted, but they may cause clipping -#define VALUE_FACTOR 0.65 //same as above; applies to Value -#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency - -const float hueRotation = HUE_ROTATION / 360.0; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem7; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R5f = vec4(0.0); -vec4 R6f = vec4(0.0); -vec4 R7f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f = passParameterSem7; -R3f = passParameterSem3; -R4f = passParameterSem4; -R5f = passParameterSem5; -R6f.xyz = (texture(textureUnitPS4, R0f.xy).xyz); -R0f.w = (texture(textureUnitPS5, R0f.xy).x); -R2f.y = (texture(textureUnitPS7, R2f.xy).x); -R1f.x = (texture(textureUnitPS6, R1f.xy).w); -R0f.xyz = (texture(textureUnitPS3, R0f.xy).xyz); -// 0 -PV0f.x = mul_nonIEEE(R3f.y, R4f.z); -R127f.y = (R6f.x * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PV0f.y = R127f.y; -PV0f.z = mul_nonIEEE(R3f.x, R4f.y); -PV0f.w = mul_nonIEEE(R3f.z, R4f.x); -R127f.x = (R6f.y * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204)); -PS0f = R127f.x; -// 1 -R123f.x = (mul_nonIEEE(-(R4f.z),R3f.x) + PV0f.w); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(R4f.y),R3f.z) + PV0f.x); -PV1f.y = R123f.y; -R123f.z = (mul_nonIEEE(-(R4f.x),R3f.y) + PV0f.z); -PV1f.z = R123f.z; -PV1f.w = mul_nonIEEE(PV0f.y, PV0f.y); -PS1f = mul_nonIEEE(R4f.w, PS0f); -// 2 -backupReg0f = R0f.w; -PV0f.x = mul_nonIEEE(PV1f.y, PS1f); -PV0f.y = mul_nonIEEE(PV1f.x, PS1f); -R123f.z = (mul_nonIEEE(R127f.x,R127f.x) + PV1f.w); -R123f.z = clamp(R123f.z, 0.0, 1.0); -PV0f.z = R123f.z; -PV0f.w = mul_nonIEEE(PV1f.z, PS1f); -R127f.z = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), backupReg0f); -PS0f = R127f.z; -// 3 -R127f.x = (mul_nonIEEE(R4f.z,R127f.y) + PV0f.w)/2.0; -PV1f.y = -(PV0f.z) + 1.0; -R126f.z = (mul_nonIEEE(R4f.y,R127f.y) + PV0f.y)/2.0; -R127f.w = (mul_nonIEEE(R4f.x,R127f.y) + PV0f.x)/2.0; -R127f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].y), R0f.w); -PS1f = R127f.y; -// 4 -backupReg0f = R0f.w; -R126f.x = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.z); -R126f.y = R6f.z * intBitsToFloat(0x427f0000); -R127f.z = mul_nonIEEE(R5f.x, R2f.y); -PV0f.w = mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].z), backupReg0f); -PS0f = sqrt(PV1f.y); -PS0f /= 2.0; -// 5 -backupReg0f = R127f.x; -backupReg1f = R126f.z; -R127f.x = (mul_nonIEEE(R3f.x,PS0f) + R127f.w); -PV1f.y = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), R127f.y); -R126f.z = (mul_nonIEEE(R3f.z,PS0f) + backupReg0f); -R127f.w = (mul_nonIEEE(R3f.y,PS0f) + backupReg1f); -PS1f = mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].x), PV0f.w); -// 6 -backupReg0f = R1f.x; -backupReg1f = R126f.x; -R126f.x = floor(R126f.y); -R126f.x *= 4.0; -R1f.y = mul_nonIEEE(R1f.x, PV1f.y); -R1f.z = mul_nonIEEE(R1f.x, PS1f); -R2f.w = 1.0; -R1f.x = mul_nonIEEE(backupReg0f, backupReg1f); -PS0f = R1f.x; -// 7 -R3f.x = mul_nonIEEE(R0f.x, R127f.z); -R3f.y = mul_nonIEEE(R0f.y, R127f.z); -R3f.z = mul_nonIEEE(R0f.z, R127f.z); -R1f.w = 1.0; -R2f.x = intBitsToFloat(0x3c808081); -PS1f = R2f.x; -// 8 -R0f.x = R127f.x + 0.5; -R2f.y = intBitsToFloat(uf_remappedPS[2].z); -R0f.z = R126f.z + 0.5; -R3f.w = intBitsToFloat(0x3b808081); -R0f.y = R127f.w + 0.5; -PS0f = R0f.y; -// 9 -R0f.w = (R126f.x * intBitsToFloat(0x3b808081) + intBitsToFloat(0x3b808081)); -// 10 -R7f.xyz = vec3(R1f.x,R1f.y,R1f.z); -R7f.w = R1f.w; -// 11 -R6f.xyz = vec3(R0f.x,R0f.y,R0f.z); -R6f.w = R0f.w; -// 12 -R5f.xyz = vec3(R3f.x,R3f.y,R3f.z); -R5f.w = R3f.w; -// 13 -R4f.xyz = vec3(R2f.x,R2f.y,R2f.z); -R4f.w = R2f.w; -// export -passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); -passPixelColor1 = vec4(R5f.x, R5f.y, R5f.z, R5f.w); -passPixelColor3 = vec4(R6f.x, R6f.y, R6f.z, R6f.w); -passPixelColor5 = vec4(R7f.x, R7f.y, R7f.z, R7f.w); -vec3 colhsv = rgb2hsv(passPixelColor5.rgb); -passPixelColor5.rgb = hsv2rgb(vec3(mod(colhsv.x + hueRotation, 1.0), colhsv.y*SATURATION_FACTOR, colhsv.z*VALUE_FACTOR)); -passPixelColor5.a *= ALPHA_FACTOR; -} diff --git a/Mods/BreathOfTheWild_GlowLightsColors/rules.txt b/Mods/BreathOfTheWild_GlowLightsColors/rules.txt deleted file mode 100644 index 34d32d6d..00000000 --- a/Mods/BreathOfTheWild_GlowLightsColors/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Glow Lights Colors" -path = "The Legend of Zelda: Breath of the Wild/Mods/Glow Lights Colors" -description = Changes the color of objects that glow in game, view the readme for more info. -version = 4 diff --git a/Mods/BreathOfTheWild_HUDRemover/37b9100c1310d3bb_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/37b9100c1310d3bb_0000000000000000_vs.txt deleted file mode 100644 index 226813a1..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/37b9100c1310d3bb_0000000000000000_vs.txt +++ /dev/null @@ -1,1030 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 37b9100c1310d3bb -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_uniformRegisterVS[15]).xy); - return (result <= 0.01); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[14]; -bool activeMaskStackC[15]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStack[3] = false; -activeMaskStack[4] = false; -activeMaskStack[5] = false; -activeMaskStack[6] = false; -activeMaskStack[7] = false; -activeMaskStack[8] = false; -activeMaskStack[9] = false; -activeMaskStack[10] = false; -activeMaskStack[11] = false; -activeMaskStack[12] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStackC[4] = false; -activeMaskStackC[5] = false; -activeMaskStackC[6] = false; -activeMaskStackC[7] = false; -activeMaskStackC[8] = false; -activeMaskStackC[9] = false; -activeMaskStackC[10] = false; -activeMaskStackC[11] = false; -activeMaskStackC[12] = false; -activeMaskStackC[13] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[15].x))); -R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); -PV0i.y = R0i.y; -R4i.z = 0; -R0i.w = 0x3f800000; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[15].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[15].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[15].w)); -PV0i.y = R0i.y; -R1i.w = uf_uniformRegisterVS[2].x & 0x40000000; -// 3 -backupReg0i = R0i.w; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg0i)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -backupReg1i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R4i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); -PV0i.x = R6i.x; -PV0i.y = R6i.x; -PV0i.z = R6i.x; -PV0i.w = R6i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.w = tempi.x; -// 10 -predResult = (0 != R1i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.y = backupReg0i; -PV0i.y = R1i.y; -R0i.z = 0; -PV0i.z = R0i.z; -R1i.w = 0x3f800000; -PV0i.w = R1i.w; -// 1 -R2i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -R2i.w = PV0i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R126i.z = PV1i.x + PS1i; -PV0i.z = R126i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R127i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[23].y):(uf_uniformRegisterVS[22].y)); -R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[23].x):(uf_uniformRegisterVS[22].x)); -// 5 -R123i.x = ((R127i.x == 0)?(uf_uniformRegisterVS[23].w):(uf_uniformRegisterVS[22].w)); -PV1i.x = R123i.x; -R123i.y = ((R127i.x == 0)?(uf_uniformRegisterVS[23].z):(uf_uniformRegisterVS[22].z)); -PV1i.y = R123i.y; -// 6 -R123i.x = ((R127i.y == 0)?(PV1i.x):(uf_uniformRegisterVS[21].w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(PV1i.y):(uf_uniformRegisterVS[21].z)); -PV0i.y = R123i.y; -R123i.z = ((R127i.y == 0)?(R127i.z):(uf_uniformRegisterVS[21].y)); -PV0i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R127i.w):(uf_uniformRegisterVS[21].x)); -PV0i.w = R123i.w; -// 7 -R2i.x = ((R126i.z == 0)?(uf_uniformRegisterVS[20].x):(PV0i.w)); -R2i.y = ((R126i.z == 0)?(uf_uniformRegisterVS[20].y):(PV0i.z)); -R2i.z = ((R126i.z == 0)?(uf_uniformRegisterVS[20].z):(PV0i.y)); -R2i.w = ((R126i.z == 0)?(uf_uniformRegisterVS[20].w):(PV0i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); -R3i.w = 0x437f0000; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.x = uf_uniformRegisterVS[2].x >> 0x00000008; -R2i.y = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -R1i.z = PV0i.x & 0x0000000f; -// 2 -predResult = (0 != R2i.y); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R4i.y = R1i.y; -R2i.z = 0; -R1i.w = 0x3f800000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV1i.x = R2i.x; -R2i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 2 -R3i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); -PV0i.x = R3i.x; -R3i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); -R4i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R4i.x; -// 3 -R5i.x = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(PS0i)); -R0i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.z = R0i.z; -R7i.x = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -PS1i = R7i.x; -// 4 -R3i.z = floatBitsToInt(-(intBitsToFloat(R3i.y)) + 1.0); -R2i.w = floatBitsToInt(-(intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z)); -// 5 -predResult = (R1i.z == 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); -R2i.y = R3i.x; -PV0i.y = R2i.y; -// 1 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -activeMaskStack[4] = activeMaskStack[3]; -activeMaskStackC[5] = activeMaskStackC[4]; -// 0 -predResult = (R1i.z == int(1)); -activeMaskStack[4] = predResult; -activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; -} -else { -activeMaskStack[4] = false; -activeMaskStackC[5] = false; -} -if( activeMaskStackC[5] == true ) { -// 0 -backupReg0i = R2i.y; -R2i.y = 0; -PV0i.y = R2i.y; -PV0i.z = R3i.x; -PV0i.w = backupReg0i; -// 1 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R7i.x))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[4] = activeMaskStack[4] == false; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -if( activeMaskStackC[5] == true ) { -activeMaskStack[5] = activeMaskStack[4]; -activeMaskStackC[6] = activeMaskStackC[5]; -// 0 -predResult = (R1i.z == 0x00000002); -activeMaskStack[5] = predResult; -activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; -} -else { -activeMaskStack[5] = false; -activeMaskStackC[6] = false; -} -if( activeMaskStackC[6] == true ) { -// 0 -backupReg0i = R3i.y; -R3i.y = backupReg0i; -PV0i.y = R3i.y; -PV0i.z = R3i.z; -PV0i.w = 0; -// 1 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[5] = activeMaskStack[5] == false; -activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; -if( activeMaskStackC[6] == true ) { -activeMaskStack[6] = activeMaskStack[5]; -activeMaskStackC[7] = activeMaskStackC[6]; -// 0 -predResult = (R1i.z == 0x00000003); -activeMaskStack[6] = predResult; -activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; -} -else { -activeMaskStack[6] = false; -activeMaskStackC[7] = false; -} -if( activeMaskStackC[7] == true ) { -// 0 -backupReg0i = R2i.y; -R2i.y = R3i.z; -PV0i.y = R2i.y; -PV0i.z = R3i.y; -PV0i.w = backupReg0i; -// 1 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R7i.x))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[6] = activeMaskStack[6] == false; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -if( activeMaskStackC[7] == true ) { -activeMaskStack[7] = activeMaskStack[6]; -activeMaskStackC[8] = activeMaskStackC[7]; -// 0 -predResult = (R1i.z == 0x00000004); -activeMaskStack[7] = predResult; -activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; -} -else { -activeMaskStack[7] = false; -activeMaskStackC[8] = false; -} -if( activeMaskStackC[8] == true ) { -// 0 -R2i.y = R2i.w; -PV0i.y = R2i.y; -PV0i.z = R3i.x; -PV0i.w = 0; -// 1 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[7] = activeMaskStack[7] == false; -activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; -if( activeMaskStackC[8] == true ) { -activeMaskStack[8] = activeMaskStack[7]; -activeMaskStackC[9] = activeMaskStackC[8]; -// 0 -predResult = (R1i.z == 0x00000005); -activeMaskStack[8] = predResult; -activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; -} -else { -activeMaskStack[8] = false; -activeMaskStackC[9] = false; -} -if( activeMaskStackC[9] == true ) { -// 0 -backupReg0i = R2i.y; -R2i.y = R3i.x; -PV0i.y = R2i.y; -PV0i.z = R2i.w; -PV0i.w = backupReg0i; -// 1 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R7i.x))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[8] = activeMaskStack[8] == false; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -if( activeMaskStackC[9] == true ) { -activeMaskStack[9] = activeMaskStack[8]; -activeMaskStackC[10] = activeMaskStackC[9]; -// 0 -predResult = (R1i.z == 0x00000006); -activeMaskStack[9] = predResult; -activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; -} -else { -activeMaskStack[9] = false; -activeMaskStackC[10] = false; -} -if( activeMaskStackC[10] == true ) { -// 0 -R2i.y = R3i.x; -PV0i.y = R2i.y; -R3i.y = 0; -PS0i = R3i.y; -// 1 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(backupReg0i))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[9] = activeMaskStack[9] == false; -activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; -if( activeMaskStackC[10] == true ) { -activeMaskStack[10] = activeMaskStack[9]; -activeMaskStackC[11] = activeMaskStackC[10]; -// 0 -predResult = (R1i.z == 0x00000007); -activeMaskStack[10] = predResult; -activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; -} -else { -activeMaskStack[10] = false; -activeMaskStackC[11] = false; -} -if( activeMaskStackC[11] == true ) { -// 0 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(backupReg0i))); -R2i.y = R3i.y; -PV0i.y = R2i.y; -R3i.y = R3i.z; -PS0i = R3i.y; -// 1 -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[10] = activeMaskStack[10] == false; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -if( activeMaskStackC[11] == true ) { -activeMaskStack[11] = activeMaskStack[10]; -activeMaskStackC[12] = activeMaskStackC[11]; -// 0 -predResult = (R1i.z == 0x00000008); -activeMaskStack[11] = predResult; -activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; -} -else { -activeMaskStack[11] = false; -activeMaskStackC[12] = false; -} -if( activeMaskStackC[12] == true ) { -// 0 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R7i.x))); -R2i.y = R3i.x; -PV0i.y = R2i.y; -// 1 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[11] = activeMaskStack[11] == false; -activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; -if( activeMaskStackC[12] == true ) { -activeMaskStack[12] = activeMaskStack[11]; -activeMaskStackC[13] = activeMaskStackC[12]; -// 0 -predResult = (R1i.z == 0x00000009); -activeMaskStack[12] = predResult; -activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; -} -else { -activeMaskStack[12] = false; -activeMaskStackC[13] = false; -} -if( activeMaskStackC[13] == true ) { -// 0 -backupReg0i = R2i.y; -R2i.y = 0; -PV0i.y = R2i.y; -PV0i.z = R3i.z; -PV0i.w = backupReg0i; -// 1 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R7i.x))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[12] = activeMaskStack[12] == false; -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -if( activeMaskStackC[13] == true ) { -activeMaskStack[13] = activeMaskStack[12]; -activeMaskStackC[14] = activeMaskStackC[13]; -// 0 -predResult = (R1i.z == 0x0000000a); -activeMaskStack[13] = predResult; -activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; -} -else { -activeMaskStack[13] = false; -activeMaskStackC[14] = false; -} -if( activeMaskStackC[14] == true ) { -// 0 -R2i.y = R0i.z; -PV0i.y = R2i.y; -PV0i.z = R3i.x; -PV0i.w = 0; -// 1 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[13] = activeMaskStack[13] == false; -activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; -if( activeMaskStackC[14] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R7i.x))); -R2i.y = R2i.w; -PV0i.y = R2i.y; -R127i.z = (R1i.z == 0x0000000c)?int(0xFFFFFFFF):int(0x0); -PV0i.z = R127i.z; -R127i.w = (R1i.z == 0x0000000b)?int(0xFFFFFFFF):int(0x0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -R2i.y = R3i.z; -PV1i.y = R2i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R4i.x)) + intBitsToFloat(R2i.x))); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); -PV1i.w = R123i.w; -// 2 -R2i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); -R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R2i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); -} -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R2i.x)) + 1.0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].x))); -// 2 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[18].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[18].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[18].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[18].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 4 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[19].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[19].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[19].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(uf_uniformRegisterVS[19].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); -PS0i = R126i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R3i.x; -// 6 -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -// 7 -backupReg0i = R2i.z; -R2i.xyz = ivec3(R1i.x,R4i.y,backupReg0i); -R2i.w = R1i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R0i.z = PV1i.z + PS1i; -PV0i.z = R0i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R127i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[23].y):(uf_uniformRegisterVS[22].y)); -R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[23].x):(uf_uniformRegisterVS[22].x)); -// 5 -R123i.x = ((R127i.x == 0)?(uf_uniformRegisterVS[23].w):(uf_uniformRegisterVS[22].w)); -PV1i.x = R123i.x; -R123i.y = ((R127i.x == 0)?(uf_uniformRegisterVS[23].z):(uf_uniformRegisterVS[22].z)); -PV1i.y = R123i.y; -// 6 -R123i.x = ((R127i.y == 0)?(PV1i.x):(uf_uniformRegisterVS[21].w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(PV1i.y):(uf_uniformRegisterVS[21].z)); -PV0i.y = R123i.y; -R123i.z = ((R127i.y == 0)?(R127i.z):(uf_uniformRegisterVS[21].y)); -PV0i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R127i.w):(uf_uniformRegisterVS[21].x)); -PV0i.w = R123i.w; -// 7 -R2i.x = ((R0i.z == 0)?(uf_uniformRegisterVS[20].x):(PV0i.w)); -R2i.y = ((R0i.z == 0)?(uf_uniformRegisterVS[20].y):(PV0i.z)); -R2i.z = ((R0i.z == 0)?(uf_uniformRegisterVS[20].z):(PV0i.y)); -R2i.w = ((R0i.z == 0)?(uf_uniformRegisterVS[20].w):(PV0i.x)); -// 8 -predResult = (R1i.z == 0x0000000d); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 2 -R127i.x = PV1i.z; -R127i.y = PV1i.w; -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -// 3 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R127i.z; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); -PV1i.w = R126i.w; -// 6 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[16].x))); -// 8 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[18].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[18].z)) + intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[18].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[18].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[17].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 10 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -backupReg1i = R126i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[19].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[19].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[19].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[19].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); -PS0i = R126i.z; -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R3i.x; -// 12 -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = floatBitsToInt(float(R0i.z)); -PS0i = R127i.x; -// 1 -tempResultf = intBitsToFloat(PS0i); -tempResultf = floor(tempResultf); -tempResultf = clamp(tempResultf, -256.0, 255.0); -ARi.x = int(tempResultf); -PV1i.x = floatBitsToInt(tempResultf); -// 2 -R3i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+16].x,uf_uniformRegisterVS[ARi.x+16].y,uf_uniformRegisterVS[ARi.x+16].z); -R3i.w = uf_uniformRegisterVS[ARi.x+16].w; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_uniformRegisterVS[3].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.w; -R2i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R4i.z),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_uniformRegisterVS[20].x),intBitsToFloat(uf_uniformRegisterVS[20].y),intBitsToFloat(uf_uniformRegisterVS[20].z),intBitsToFloat(uf_uniformRegisterVS[20].w)))); -PV0i.x = R2i.x; -PV0i.y = R2i.x; -PV0i.z = R2i.x; -PV0i.w = R2i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_uniformRegisterVS[21].x),intBitsToFloat(uf_uniformRegisterVS[21].y),intBitsToFloat(uf_uniformRegisterVS[21].z),intBitsToFloat(uf_uniformRegisterVS[21].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R4i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[22].x),intBitsToFloat(uf_uniformRegisterVS[22].y),intBitsToFloat(uf_uniformRegisterVS[22].z),intBitsToFloat(uf_uniformRegisterVS[22].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R4i.z),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[23].x),intBitsToFloat(uf_uniformRegisterVS[23].y),intBitsToFloat(uf_uniformRegisterVS[23].z),intBitsToFloat(uf_uniformRegisterVS[23].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & int(1); -// 1 -predResult = (0 != R0i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.y = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.y); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[15].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[15].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[15].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[15].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); -R127i.z = ((PV0i.y == 0)?(R2i.y):(R2i.y)); -PS1i = R127i.z; -// 2 -R123i.x = ((R127i.y == 0)?(R2i.w):(R2i.w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(R2i.z):(R2i.z)); -PV0i.y = R123i.y; -R126i.z = ((R127i.x == 0)?(PV1i.x):(PV1i.z)); -PV0i.z = R126i.z; -R123i.w = ((R127i.x == 0)?(PV1i.y):(PV1i.w)); -PV0i.w = R123i.w; -R124i.y = uf_uniformRegisterVS[2].x & 0x00000008; -PS0i = R124i.y; -// 3 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.w))); -PV1i.x = R0i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); -R123i.w = ((R127i.w == 0)?(PV0i.y):(PV0i.y)); -PV1i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV0i.x):(PV0i.x)); -PS1i = R122i.x; -// 4 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV1i.z)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV1i.w):(PV1i.w)); -R123i.w = ((backupReg0i == 0)?(R2i.x):(PV1i.x)); -PV0i.w = R123i.w; -R126i.z = ((R125i.z == 0)?(PS1i):(PS1i)); -PS0i = R126i.z; -// 5 -R127i.x = ((R125i.z == 0)?(PV0i.x):(PV0i.x)); -PV1i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV0i.w):(PV0i.w)); -PV1i.y = R125i.y; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R127i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.y)); -// 7 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV0i.z)); -PV1i.y = R123i.y; -// 8 -R2i.x = ((R124i.y == 0)?(PV1i.y):(PV1i.y)); -R2i.y = ((R124i.y == 0)?(R127i.x):(R126i.x)); -R2i.z = ((R124i.y == 0)?(R127i.z):(R127i.z)); -R2i.w = ((R124i.y == 0)?(R126i.z):(R126i.z)); -PS0i = R2i.w; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R2i.x)) + 1.0); -PV0i.x = R0i.x; -R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.z):(R2i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R2i.y):(R2i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R2i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R2i.w):(R2i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R2i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R2i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R2i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R2i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); -R1i.w = PV0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); -PS1i = R0i.x; -// 2 -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R1i.y; -// 3 -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); -} -// export -SET_POSITION(vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w))); -if (isCurrentSizeEqualTo(vec2(84, 84)) || - isCurrentSizeEqualTo(vec2(36, 40)) || //master mode logo shadow - isCurrentSizeEqualTo(vec2(90, 90)) || - isCurrentSizeEqualTo(vec2(110, 110)) || - isCurrentSizeEqualTo(vec2(109, 109)) - ) { - gl_Position.y -= 9000.0; -} -if ((uf_uniformRegisterVS[5].w == 1134559232 || - uf_uniformRegisterVS[5].w == 1133903872) && - (isCurrentSizeEqualTo(vec2(64, 64)) || //empty heart shadows, but also glowing orbs in inventory - isCurrentSizeEqualTo(vec2(32, 32))) // empty hearts, hearts in inventory transition, but also inventory icons - ) { - gl_Position.y -= 9000.0; -} -if (isCurrentSizeEqualTo(vec2(80, 80)) && - (uf_uniformRegisterVS[4].x == 1060320051 || - uf_uniformRegisterVS[4].x == 1060320050)) { - //some hearts, stamina fade, but also glowing powers in inventory - gl_Position.y -= 9000.0; -} -if (isCurrentSizeEqualTo(vec2(96, 96)) && - (uf_uniformRegisterVS[7].x == 1069928833)) { - // stamina 3-full blur; also, all inventory items - gl_Position.y -= 9000.0; -} - - -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/4d58e6f0906ff5cf_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/4d58e6f0906ff5cf_0000000000000000_vs.txt deleted file mode 100644 index 7368c578..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/4d58e6f0906ff5cf_0000000000000000_vs.txt +++ /dev/null @@ -1,952 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 4d58e6f0906ff5cf -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[29]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[29]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem2; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_remappedVS[0]).xy); - return (result <= 0.001); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_remappedVS[0].x))); -R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); -PV0i.y = R0i.y; -R0i.z = 0; -R2i.w = 0x3f800000; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[0].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedVS[0].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_remappedVS[0].w)); -PV0i.y = R0i.y; -R0i.w = uf_remappedVS[1].x & 0x40000000; -// 3 -backupReg0i = R0i.z; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[5].x),intBitsToFloat(uf_remappedVS[5].y),intBitsToFloat(uf_remappedVS[5].z),intBitsToFloat(uf_remappedVS[5].w)))); -PV0i.x = R5i.x; -PV0i.y = R5i.x; -PV0i.z = R5i.x; -PV0i.w = R5i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[6].x),intBitsToFloat(uf_remappedVS[6].y),intBitsToFloat(uf_remappedVS[6].z),intBitsToFloat(uf_remappedVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z),intBitsToFloat(uf_remappedVS[7].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[8].x),intBitsToFloat(uf_remappedVS[8].y),intBitsToFloat(uf_remappedVS[8].z),intBitsToFloat(uf_remappedVS[8].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -// 10 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[9].x))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[9].y))); -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[9].y))); -PS0i = R6i.x; -// 11 -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[9].x))); -// 12 -predResult = (0 != R0i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.z = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R1i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -PV0i.y = R1i.y; -PV0i.z = R1i.z; -PV0i.w = R1i.w; -// 1 -R3i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -PV1i.x = R3i.x; -PV1i.y = R3i.y; -PV1i.z = R3i.z; -R3i.w = PV0i.w; -PV1i.w = R3i.w; -// 2 -R4i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -R4i.w = PV1i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R124i.z = PV1i.x + PS1i; -PV0i.z = R124i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PS1i = R124i.w; -// 4 -R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R126i.z = ((PV1i.x == 0)?(uf_remappedVS[10].y):(uf_remappedVS[11].y)); -R127i.w = ((PV1i.x == 0)?(uf_remappedVS[10].x):(uf_remappedVS[11].x)); -// 5 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_remappedVS[10].w):(uf_remappedVS[11].w)); -R126i.y = ((backupReg0i == 0)?(uf_remappedVS[10].z):(uf_remappedVS[11].z)); -// 6 -R126i.x = ((R127i.z == 0)?(uf_remappedVS[12].y):(uf_remappedVS[13].y)); -R125i.y = ((R127i.z == 0)?(uf_remappedVS[12].x):(uf_remappedVS[13].x)); -// 7 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_remappedVS[12].w):(uf_remappedVS[13].w)); -R125i.w = ((backupReg0i == 0)?(uf_remappedVS[12].z):(uf_remappedVS[13].z)); -// 8 -R125i.z = ((R127i.y == 0)?(uf_remappedVS[14].y):(uf_remappedVS[15].y)); -R0i.w = ((R127i.y == 0)?(uf_remappedVS[14].x):(uf_remappedVS[15].x)); -// 9 -backupReg0i = R127i.y; -R125i.x = ((R127i.y == 0)?(uf_remappedVS[14].w):(uf_remappedVS[15].w)); -R127i.y = ((backupReg0i == 0)?(uf_remappedVS[14].z):(uf_remappedVS[15].z)); -// 10 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_remappedVS[16].w)); -R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_remappedVS[16].z)); -R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_remappedVS[16].y)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_remappedVS[16].x)); -// 11 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -backupReg3i = R125i.w; -R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_remappedVS[17].y)); -R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_remappedVS[17].x)); -R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_remappedVS[17].w)); -R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_remappedVS[17].z)); -// 12 -backupReg0i = R125i.x; -backupReg1i = R127i.y; -backupReg2i = R125i.z; -R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_remappedVS[18].w)); -R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_remappedVS[18].z)); -R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_remappedVS[18].y)); -R124i.w = ((R124i.y == 0)?(R0i.w):(uf_remappedVS[18].x)); -// 13 -R1i.x = ((R124i.z == 0)?(uf_remappedVS[19].x):(R127i.w)); -R1i.y = ((R124i.z == 0)?(uf_remappedVS[19].y):(R126i.z)); -R1i.z = ((R124i.z == 0)?(uf_remappedVS[19].z):(R126i.y)); -R1i.w = ((R124i.z == 0)?(uf_remappedVS[19].w):(R127i.x)); -// 14 -R3i.x = ((R124i.z == 0)?(uf_remappedVS[20].x):(R125i.y)); -R3i.y = ((R124i.z == 0)?(uf_remappedVS[20].y):(R126i.x)); -R3i.z = ((R124i.z == 0)?(uf_remappedVS[20].z):(R125i.w)); -R3i.w = ((R124i.z == 0)?(uf_remappedVS[20].w):(R127i.z)); -// 15 -R4i.x = ((R124i.z == 0)?(uf_remappedVS[21].x):(R124i.w)); -R4i.y = ((R124i.z == 0)?(uf_remappedVS[21].y):(R125i.z)); -R4i.z = ((R124i.z == 0)?(uf_remappedVS[21].z):(R127i.y)); -R4i.w = ((R124i.z == 0)?(uf_remappedVS[21].w):(R125i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.w = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R0i.w); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -PV0i.y = R1i.y; -PV0i.z = R1i.z; -PV0i.w = R1i.w; -// 1 -R3i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -PV1i.x = R3i.x; -PV1i.y = R3i.y; -PV1i.z = R3i.z; -R3i.w = PV0i.w; -PV1i.w = R3i.w; -// 2 -R4i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -R4i.w = PV1i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R124i.z = PV1i.x + PS1i; -PV0i.z = R124i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PS1i = R124i.w; -// 4 -R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R126i.z = ((PV1i.x == 0)?(uf_remappedVS[10].y):(uf_remappedVS[11].y)); -R127i.w = ((PV1i.x == 0)?(uf_remappedVS[10].x):(uf_remappedVS[11].x)); -// 5 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_remappedVS[10].w):(uf_remappedVS[11].w)); -R126i.y = ((backupReg0i == 0)?(uf_remappedVS[10].z):(uf_remappedVS[11].z)); -// 6 -R126i.x = ((R127i.z == 0)?(uf_remappedVS[12].y):(uf_remappedVS[13].y)); -R125i.y = ((R127i.z == 0)?(uf_remappedVS[12].x):(uf_remappedVS[13].x)); -// 7 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_remappedVS[12].w):(uf_remappedVS[13].w)); -R125i.w = ((backupReg0i == 0)?(uf_remappedVS[12].z):(uf_remappedVS[13].z)); -// 8 -R125i.z = ((R127i.y == 0)?(uf_remappedVS[14].y):(uf_remappedVS[15].y)); -R0i.w = ((R127i.y == 0)?(uf_remappedVS[14].x):(uf_remappedVS[15].x)); -// 9 -backupReg0i = R127i.y; -R125i.x = ((R127i.y == 0)?(uf_remappedVS[14].w):(uf_remappedVS[15].w)); -R127i.y = ((backupReg0i == 0)?(uf_remappedVS[14].z):(uf_remappedVS[15].z)); -// 10 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_remappedVS[16].w)); -R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_remappedVS[16].z)); -R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_remappedVS[16].y)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_remappedVS[16].x)); -// 11 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -backupReg3i = R125i.w; -R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_remappedVS[17].y)); -R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_remappedVS[17].x)); -R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_remappedVS[17].w)); -R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_remappedVS[17].z)); -// 12 -backupReg0i = R125i.x; -backupReg1i = R127i.y; -backupReg2i = R125i.z; -R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_remappedVS[18].w)); -R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_remappedVS[18].z)); -R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_remappedVS[18].y)); -R124i.w = ((R124i.y == 0)?(R0i.w):(uf_remappedVS[18].x)); -// 13 -R1i.x = ((R124i.z == 0)?(uf_remappedVS[19].x):(R127i.w)); -R1i.y = ((R124i.z == 0)?(uf_remappedVS[19].y):(R126i.z)); -R1i.z = ((R124i.z == 0)?(uf_remappedVS[19].z):(R126i.y)); -R1i.w = ((R124i.z == 0)?(uf_remappedVS[19].w):(R127i.x)); -// 14 -R3i.x = ((R124i.z == 0)?(uf_remappedVS[20].x):(R125i.y)); -R3i.y = ((R124i.z == 0)?(uf_remappedVS[20].y):(R126i.x)); -R3i.z = ((R124i.z == 0)?(uf_remappedVS[20].z):(R125i.w)); -R3i.w = ((R124i.z == 0)?(uf_remappedVS[20].w):(R127i.z)); -// 15 -R4i.x = ((R124i.z == 0)?(uf_remappedVS[21].x):(R124i.w)); -R4i.y = ((R124i.z == 0)?(uf_remappedVS[21].y):(R125i.z)); -R4i.z = ((R124i.z == 0)?(uf_remappedVS[21].z):(R127i.y)); -R4i.w = ((R124i.z == 0)?(uf_remappedVS[21].w):(R125i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_remappedVS[22].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[19].x),intBitsToFloat(uf_remappedVS[19].y),intBitsToFloat(uf_remappedVS[19].z),intBitsToFloat(uf_remappedVS[19].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[16].x),intBitsToFloat(uf_remappedVS[16].y),intBitsToFloat(uf_remappedVS[16].z),intBitsToFloat(uf_remappedVS[16].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[11].x),intBitsToFloat(uf_remappedVS[11].y),intBitsToFloat(uf_remappedVS[11].z),intBitsToFloat(uf_remappedVS[11].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[10].x),intBitsToFloat(uf_remappedVS[10].y),intBitsToFloat(uf_remappedVS[10].z),intBitsToFloat(uf_remappedVS[10].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R7i.x = uf_remappedVS[1].x & int(1); -// 1 -predResult = (0 != R7i.x); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.w = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R0i.w); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_remappedVS[1].x & 0x00010000; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -R127i.w = uf_remappedVS[1].x & 0x00000020; -// 1 -R123i.x = ((PV0i.y == 0)?(R1i.w):(R1i.w)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.y == 0)?(R1i.z):(R1i.z)); -PV1i.y = R123i.y; -R126i.z = ((PV0i.x == 0)?(R2i.y):(R6i.y)); -PV1i.z = R126i.z; -R123i.w = ((PV0i.x == 0)?(R2i.x):(R6i.x)); -PV1i.w = R123i.w; -R127i.z = ((PV0i.y == 0)?(R1i.y):(R1i.y)); -PS1i = R127i.z; -// 2 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV1i.w))); -PV0i.x = R7i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); -R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); -PV0i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); -PS0i = R122i.x; -// 3 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); -R123i.w = ((backupReg0i == 0)?(R1i.x):(PV0i.x)); -PV1i.w = R123i.w; -R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); -PS1i = R124i.z; -// 4 -R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); -PV0i.y = R125i.y; -R126i.z = uf_remappedVS[1].x & 0x00000008; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -// 6 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R1i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); -R1i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); -R1i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); -// 8 -R1i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R7i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) + 1.0); -PV0i.x = R7i.x; -R126i.y = uf_remappedVS[1].x & 0x00010000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -PV0i.w = uf_remappedVS[1].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R1i.z):(R1i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R1i.y):(R1i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R1i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R1i.w):(R1i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R1i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R1i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R1i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R1i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[23].x),intBitsToFloat(uf_remappedVS[23].y),intBitsToFloat(uf_remappedVS[23].z),intBitsToFloat(uf_remappedVS[23].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[24].x),intBitsToFloat(uf_remappedVS[24].y),intBitsToFloat(uf_remappedVS[24].z),intBitsToFloat(uf_remappedVS[24].w)))); -PV1i.x = R1i.x; -PV1i.y = R1i.x; -PV1i.z = R1i.x; -PV1i.w = R1i.x; -R1i.y = PV0i.x; -PS1i = R1i.y; -// 2 -R1i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R1i.w = R127i.x; -// 3 -predResult = (0 != uf_remappedVS[22].y); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -R3i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[20].x),intBitsToFloat(uf_remappedVS[20].y),intBitsToFloat(uf_remappedVS[20].z),intBitsToFloat(uf_remappedVS[20].w)))); -PV0i.x = R3i.x; -PV0i.y = R3i.x; -PV0i.z = R3i.x; -PV0i.w = R3i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[17].x),intBitsToFloat(uf_remappedVS[17].y),intBitsToFloat(uf_remappedVS[17].z),intBitsToFloat(uf_remappedVS[17].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[13].x),intBitsToFloat(uf_remappedVS[13].y),intBitsToFloat(uf_remappedVS[13].z),intBitsToFloat(uf_remappedVS[13].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[12].x),intBitsToFloat(uf_remappedVS[12].y),intBitsToFloat(uf_remappedVS[12].z),intBitsToFloat(uf_remappedVS[12].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R7i.y = uf_remappedVS[1].x & int(1); -// 1 -predResult = (0 != R7i.y); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R7i.x = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R7i.x); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_remappedVS[1].x & 0x00000020; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -PV0i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R6i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R6i.x)); -PV1i.z = R123i.z; -R125i.w = uf_remappedVS[1].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R3i.y):(R3i.y)); -PS1i = R127i.z; -// 2 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R7i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R3i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R3i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R3i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R7i.x = floatBitsToInt(-(intBitsToFloat(R3i.x)) + 1.0); -PV0i.x = R7i.x; -PV0i.y = uf_remappedVS[1].x & 0x00020000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -R126i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R3i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R3i.y):(R3i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R3i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R3i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(uf_remappedVS[25].x),intBitsToFloat(uf_remappedVS[25].y),intBitsToFloat(uf_remappedVS[25].z),intBitsToFloat(uf_remappedVS[25].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R3i.x; -R3i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(uf_remappedVS[26].x),intBitsToFloat(uf_remappedVS[26].y),intBitsToFloat(uf_remappedVS[26].z),intBitsToFloat(uf_remappedVS[26].w)))); -PV1i.x = R3i.x; -PV1i.y = R3i.x; -PV1i.z = R3i.x; -PV1i.w = R3i.x; -R3i.y = PV0i.x; -PS1i = R3i.y; -// 2 -R3i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R3i.w = R127i.x; -// 3 -predResult = (0 != uf_remappedVS[22].z); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[21].x),intBitsToFloat(uf_remappedVS[21].y),intBitsToFloat(uf_remappedVS[21].z),intBitsToFloat(uf_remappedVS[21].w)))); -PV0i.x = R4i.x; -PV0i.y = R4i.x; -PV0i.z = R4i.x; -PV0i.w = R4i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[18].x),intBitsToFloat(uf_remappedVS[18].y),intBitsToFloat(uf_remappedVS[18].z),intBitsToFloat(uf_remappedVS[18].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[15].x),intBitsToFloat(uf_remappedVS[15].y),intBitsToFloat(uf_remappedVS[15].z),intBitsToFloat(uf_remappedVS[15].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(uf_remappedVS[14].x),intBitsToFloat(uf_remappedVS[14].y),intBitsToFloat(uf_remappedVS[14].z),intBitsToFloat(uf_remappedVS[14].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.z = uf_remappedVS[1].x & int(1); -// 1 -predResult = (0 != R0i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.y = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R0i.y); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_remappedVS[1].x & 0x00000020; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -PV0i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R6i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R6i.x)); -PV1i.z = R123i.z; -R125i.w = uf_remappedVS[1].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R4i.y):(R4i.y)); -PS1i = R127i.z; -// 2 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R4i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R4i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R4i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R4i.x)) + 1.0); -PV0i.x = R0i.x; -PV0i.y = uf_remappedVS[1].x & 0x00020000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -R126i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R4i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R4i.y):(R4i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R4i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R4i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)),vec4(intBitsToFloat(uf_remappedVS[27].x),intBitsToFloat(uf_remappedVS[27].y),intBitsToFloat(uf_remappedVS[27].z),intBitsToFloat(uf_remappedVS[27].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.w = PV0i.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(uf_remappedVS[28].w))); -// 2 -R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(PS1i)),vec4(intBitsToFloat(uf_remappedVS[28].x),intBitsToFloat(uf_remappedVS[28].y),intBitsToFloat(uf_remappedVS[28].z),1.0))); -PV0i.x = R0i.x; -PV0i.y = R0i.x; -PV0i.z = R0i.x; -PV0i.w = R0i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R0i.y; -} -// export -SET_POSITION(vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w))); -if (isCurrentSizeEqualTo(vec2(32, 32))) { - gl_Position.y -= 9000.0; -} -// export -passParameterSem0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.x), intBitsToFloat(R3i.w)); -// export -passParameterSem2 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.x), intBitsToFloat(R0i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/75faf095372864b1_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/75faf095372864b1_0000000000000000_vs.txt deleted file mode 100644 index 5302aefc..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/75faf095372864b1_0000000000000000_vs.txt +++ /dev/null @@ -1,1455 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 75faf095372864b1 -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem2; -layout(location = 3) out vec4 passParameterSem3; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_uniformRegisterVS[19]).xy); - return (result <= 0.001); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[14]; -bool activeMaskStackC[15]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStack[3] = false; -activeMaskStack[4] = false; -activeMaskStack[5] = false; -activeMaskStack[6] = false; -activeMaskStack[7] = false; -activeMaskStack[8] = false; -activeMaskStack[9] = false; -activeMaskStack[10] = false; -activeMaskStack[11] = false; -activeMaskStack[12] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStackC[4] = false; -activeMaskStackC[5] = false; -activeMaskStackC[6] = false; -activeMaskStackC[7] = false; -activeMaskStackC[8] = false; -activeMaskStackC[9] = false; -activeMaskStackC[10] = false; -activeMaskStackC[11] = false; -activeMaskStackC[12] = false; -activeMaskStackC[13] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); -R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); -PV0i.y = R0i.y; -R1i.z = 0; -R1i.w = 0x3f800000; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[19].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[19].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[19].w)); -PV0i.y = R0i.y; -R0i.w = uf_uniformRegisterVS[2].x & 0x40000000; -// 3 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); -PV0i.x = R4i.x; -PV0i.y = R4i.x; -PV0i.z = R4i.x; -PV0i.w = R4i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.w = tempi.x; -// 10 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); -PS0i = R3i.x; -// 11 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); -// 12 -predResult = (0 != R0i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.y = backupReg0i; -PV0i.y = R1i.y; -R0i.z = 0; -PV0i.z = R0i.z; -R0i.w = 0x3f800000; -PV0i.w = R0i.w; -// 1 -R6i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -PV1i.x = R6i.x; -PV1i.y = R6i.y; -PV1i.z = R6i.z; -R6i.w = PV0i.w; -PV1i.w = R6i.w; -// 2 -R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -PV0i.x = R7i.x; -PV0i.y = R7i.y; -PV0i.z = R7i.z; -R7i.w = PV1i.w; -PV0i.w = R7i.w; -// 3 -R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R5i.w = PV0i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R124i.z = PV1i.x + PS1i; -PV0i.z = R124i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PS1i = R124i.w; -// 4 -R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); -R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); -// 5 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); -R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); -// 6 -R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); -R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); -// 7 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); -R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); -// 8 -R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); -R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); -// 9 -backupReg0i = R127i.y; -R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); -R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); -// 10 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); -R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); -R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); -// 11 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -backupReg3i = R125i.w; -R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); -R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); -R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); -R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); -// 12 -backupReg0i = R125i.x; -backupReg1i = R127i.y; -backupReg2i = R125i.z; -R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); -R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); -R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); -R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); -// 13 -R6i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); -R6i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); -R6i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); -R6i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); -// 14 -R7i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); -R7i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); -R7i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); -R7i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); -// 15 -R5i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); -R5i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); -R5i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); -R5i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R8i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); -R8i.w = 0x437f0000; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.x = uf_uniformRegisterVS[2].x >> 0x00000008; -R5i.y = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -R0i.z = PV0i.x & 0x0000000f; -// 2 -predResult = (0 != R5i.y); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R6i.y = R1i.y; -R3i.z = 0; -R0i.w = 0x3f800000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 1 -R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV1i.x = R5i.x; -R5i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 2 -R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); -PV0i.x = R6i.x; -R7i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); -R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R7i.x; -// 3 -R8i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PS0i)); -R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.z = R2i.z; -R9i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); -PS1i = R9i.x; -// 4 -R5i.z = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); -R2i.w = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.z)); -// 5 -predResult = (R0i.z == 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); -R5i.y = R6i.x; -PV0i.y = R5i.y; -// 1 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -activeMaskStack[4] = activeMaskStack[3]; -activeMaskStackC[5] = activeMaskStackC[4]; -// 0 -predResult = (R0i.z == int(1)); -activeMaskStack[4] = predResult; -activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; -} -else { -activeMaskStack[4] = false; -activeMaskStackC[5] = false; -} -if( activeMaskStackC[5] == true ) { -// 0 -backupReg0i = R5i.y; -R5i.y = 0; -PV0i.y = R5i.y; -PV0i.z = R6i.x; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[4] = activeMaskStack[4] == false; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -if( activeMaskStackC[5] == true ) { -activeMaskStack[5] = activeMaskStack[4]; -activeMaskStackC[6] = activeMaskStackC[5]; -// 0 -predResult = (R0i.z == 0x00000002); -activeMaskStack[5] = predResult; -activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; -} -else { -activeMaskStack[5] = false; -activeMaskStackC[6] = false; -} -if( activeMaskStackC[6] == true ) { -// 0 -backupReg0i = R7i.y; -R7i.y = backupReg0i; -PV0i.y = R7i.y; -PV0i.z = R5i.z; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[5] = activeMaskStack[5] == false; -activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; -if( activeMaskStackC[6] == true ) { -activeMaskStack[6] = activeMaskStack[5]; -activeMaskStackC[7] = activeMaskStackC[6]; -// 0 -predResult = (R0i.z == 0x00000003); -activeMaskStack[6] = predResult; -activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; -} -else { -activeMaskStack[6] = false; -activeMaskStackC[7] = false; -} -if( activeMaskStackC[7] == true ) { -// 0 -backupReg0i = R5i.y; -R5i.y = R5i.z; -PV0i.y = R5i.y; -PV0i.z = R7i.y; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[6] = activeMaskStack[6] == false; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -if( activeMaskStackC[7] == true ) { -activeMaskStack[7] = activeMaskStack[6]; -activeMaskStackC[8] = activeMaskStackC[7]; -// 0 -predResult = (R0i.z == 0x00000004); -activeMaskStack[7] = predResult; -activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; -} -else { -activeMaskStack[7] = false; -activeMaskStackC[8] = false; -} -if( activeMaskStackC[8] == true ) { -// 0 -R5i.y = R2i.w; -PV0i.y = R5i.y; -PV0i.z = R6i.x; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[7] = activeMaskStack[7] == false; -activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; -if( activeMaskStackC[8] == true ) { -activeMaskStack[8] = activeMaskStack[7]; -activeMaskStackC[9] = activeMaskStackC[8]; -// 0 -predResult = (R0i.z == 0x00000005); -activeMaskStack[8] = predResult; -activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; -} -else { -activeMaskStack[8] = false; -activeMaskStackC[9] = false; -} -if( activeMaskStackC[9] == true ) { -// 0 -backupReg0i = R5i.y; -R5i.y = R6i.x; -PV0i.y = R5i.y; -PV0i.z = R2i.w; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[8] = activeMaskStack[8] == false; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -if( activeMaskStackC[9] == true ) { -activeMaskStack[9] = activeMaskStack[8]; -activeMaskStackC[10] = activeMaskStackC[9]; -// 0 -predResult = (R0i.z == 0x00000006); -activeMaskStack[9] = predResult; -activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; -} -else { -activeMaskStack[9] = false; -activeMaskStackC[10] = false; -} -if( activeMaskStackC[10] == true ) { -// 0 -R5i.y = R6i.x; -PV0i.y = R5i.y; -R7i.y = 0; -PS0i = R7i.y; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[9] = activeMaskStack[9] == false; -activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; -if( activeMaskStackC[10] == true ) { -activeMaskStack[10] = activeMaskStack[9]; -activeMaskStackC[11] = activeMaskStackC[10]; -// 0 -predResult = (R0i.z == 0x00000007); -activeMaskStack[10] = predResult; -activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; -} -else { -activeMaskStack[10] = false; -activeMaskStackC[11] = false; -} -if( activeMaskStackC[11] == true ) { -// 0 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); -R5i.y = R7i.y; -PV0i.y = R5i.y; -R7i.y = R5i.z; -PS0i = R7i.y; -// 1 -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[10] = activeMaskStack[10] == false; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -if( activeMaskStackC[11] == true ) { -activeMaskStack[11] = activeMaskStack[10]; -activeMaskStackC[12] = activeMaskStackC[11]; -// 0 -predResult = (R0i.z == 0x00000008); -activeMaskStack[11] = predResult; -activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; -} -else { -activeMaskStack[11] = false; -activeMaskStackC[12] = false; -} -if( activeMaskStackC[12] == true ) { -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); -R5i.y = R6i.x; -PV0i.y = R5i.y; -// 1 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[11] = activeMaskStack[11] == false; -activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; -if( activeMaskStackC[12] == true ) { -activeMaskStack[12] = activeMaskStack[11]; -activeMaskStackC[13] = activeMaskStackC[12]; -// 0 -predResult = (R0i.z == 0x00000009); -activeMaskStack[12] = predResult; -activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; -} -else { -activeMaskStack[12] = false; -activeMaskStackC[13] = false; -} -if( activeMaskStackC[13] == true ) { -// 0 -backupReg0i = R5i.y; -R5i.y = 0; -PV0i.y = R5i.y; -PV0i.z = R5i.z; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[12] = activeMaskStack[12] == false; -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -if( activeMaskStackC[13] == true ) { -activeMaskStack[13] = activeMaskStack[12]; -activeMaskStackC[14] = activeMaskStackC[13]; -// 0 -predResult = (R0i.z == 0x0000000a); -activeMaskStack[13] = predResult; -activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; -} -else { -activeMaskStack[13] = false; -activeMaskStackC[14] = false; -} -if( activeMaskStackC[14] == true ) { -// 0 -R5i.y = R2i.z; -PV0i.y = R5i.y; -PV0i.z = R6i.x; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[13] = activeMaskStack[13] == false; -activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; -if( activeMaskStackC[14] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); -R5i.y = R2i.w; -PV0i.y = R5i.y; -R127i.z = (R0i.z == 0x0000000c)?int(0xFFFFFFFF):int(0x0); -PV0i.z = R127i.z; -R127i.w = (R0i.z == 0x0000000b)?int(0xFFFFFFFF):int(0x0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -R5i.y = R5i.z; -PV1i.y = R5i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); -PV1i.w = R123i.w; -// 2 -R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); -R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); -} -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); -// 2 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 4 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); -PS0i = R126i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R8i.x; -// 6 -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -// 7 -backupReg0i = R6i.y; -R6i.xyz = ivec3(R1i.x,backupReg0i,R3i.z); -PV1i.x = R6i.x; -PV1i.y = R6i.y; -PV1i.z = R6i.z; -R6i.w = R0i.w; -PV1i.w = R6i.w; -// 8 -R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -PV0i.x = R7i.x; -PV0i.y = R7i.y; -PV0i.z = R7i.z; -R7i.w = PV1i.w; -PV0i.w = R7i.w; -// 9 -R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R5i.w = PV0i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R2i.z = PV1i.z + PS1i; -PV0i.z = R2i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PS1i = R124i.w; -// 4 -R124i.y = (R2i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); -R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); -// 5 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); -R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); -// 6 -R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); -R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); -// 7 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); -R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); -// 8 -R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); -R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); -// 9 -backupReg0i = R127i.y; -R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); -R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); -// 10 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); -R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); -R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); -// 11 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -backupReg3i = R125i.w; -R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); -R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); -R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); -R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); -// 12 -backupReg0i = R125i.x; -backupReg1i = R127i.y; -backupReg2i = R125i.z; -R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); -R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); -R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); -R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); -// 13 -R6i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); -R6i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); -R6i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); -R6i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); -// 14 -R7i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); -R7i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); -R7i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); -R7i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); -// 15 -R5i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); -R5i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); -R5i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); -R5i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); -// 16 -predResult = (R0i.z == 0x0000000d); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 2 -R127i.x = PV1i.z; -R127i.y = PV1i.w; -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -// 3 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R127i.z; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); -PV1i.w = R126i.w; -// 6 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); -// 8 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 10 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -backupReg1i = R126i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); -PS0i = R126i.z; -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R8i.x; -// 12 -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = floatBitsToInt(float(R2i.z)); -PS0i = R127i.x; -// 1 -tempResultf = intBitsToFloat(PS0i); -tempResultf = floor(tempResultf); -tempResultf = clamp(tempResultf, -256.0, 255.0); -ARi.x = int(tempResultf); -PV1i.x = floatBitsToInt(tempResultf); -// 2 -R8i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+20].x,uf_uniformRegisterVS[ARi.x+20].y,uf_uniformRegisterVS[ARi.x+20].z); -R8i.w = uf_uniformRegisterVS[ARi.x+20].w; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_uniformRegisterVS[3].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); -PV0i.x = R6i.x; -PV0i.y = R6i.x; -PV0i.z = R6i.x; -PV0i.w = R6i.x; -// 1 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & int(1); -// 1 -predResult = (0 != R0i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R1i.y); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; -// 1 -R123i.x = ((PV0i.y == 0)?(R6i.w):(R6i.w)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.y == 0)?(R6i.z):(R6i.z)); -PV1i.y = R123i.y; -R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); -PV1i.z = R126i.z; -R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); -PV1i.w = R123i.w; -R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); -PS1i = R127i.z; -// 2 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.w))); -PV0i.x = R1i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); -R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); -PV0i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); -PS0i = R122i.x; -// 3 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); -R123i.w = ((backupReg0i == 0)?(R6i.x):(PV0i.x)); -PV1i.w = R123i.w; -R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); -PS1i = R124i.z; -// 4 -R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); -PV0i.y = R125i.y; -R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -// 6 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R6i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); -R6i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); -R6i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); -// 8 -R6i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R1i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); -PV0i.x = R1i.x; -R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R6i.z):(R6i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R6i.y):(R6i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R6i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R6i.w):(R6i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R6i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R6i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R6i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R6i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R6i.x; -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); -PV1i.x = R6i.x; -PV1i.y = R6i.x; -PV1i.z = R6i.x; -PV1i.w = R6i.x; -R1i.y = PV0i.x; -PS1i = R1i.y; -// 2 -R6i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R6i.w = R127i.x; -// 3 -predResult = (0 != uf_uniformRegisterVS[3].y); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); -PV0i.x = R7i.x; -PV0i.y = R7i.x; -PV0i.z = R7i.x; -PV0i.w = R7i.x; -// 1 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[30].x),intBitsToFloat(uf_uniformRegisterVS[30].y),intBitsToFloat(uf_uniformRegisterVS[30].z),intBitsToFloat(uf_uniformRegisterVS[30].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R7i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[31].x),intBitsToFloat(uf_uniformRegisterVS[31].y),intBitsToFloat(uf_uniformRegisterVS[31].z),intBitsToFloat(uf_uniformRegisterVS[31].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.w = uf_uniformRegisterVS[2].x & int(1); -// 1 -predResult = (0 != R0i.w); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.z); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); -PV1i.z = R123i.z; -R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R7i.y):(R7i.y)); -PS1i = R127i.z; -// 2 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R1i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R7i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R7i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R7i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R1i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + 1.0); -PV0i.x = R1i.x; -PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R7i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R7i.y):(R7i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R7i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R7i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); -PV1i.x = R7i.x; -PV1i.y = R7i.x; -PV1i.z = R7i.x; -PV1i.w = R7i.x; -R1i.y = PV0i.x; -PS1i = R1i.y; -// 2 -R7i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R7i.w = R127i.x; -// 3 -predResult = (0 != uf_uniformRegisterVS[3].z); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[32].x),intBitsToFloat(uf_uniformRegisterVS[32].y),intBitsToFloat(uf_uniformRegisterVS[32].z),intBitsToFloat(uf_uniformRegisterVS[32].w)))); -PV0i.x = R5i.x; -PV0i.y = R5i.x; -PV0i.z = R5i.x; -PV0i.w = R5i.x; -// 1 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[33].x),intBitsToFloat(uf_uniformRegisterVS[33].y),intBitsToFloat(uf_uniformRegisterVS[33].z),intBitsToFloat(uf_uniformRegisterVS[33].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[34].x),intBitsToFloat(uf_uniformRegisterVS[34].y),intBitsToFloat(uf_uniformRegisterVS[34].z),intBitsToFloat(uf_uniformRegisterVS[34].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[35].x),intBitsToFloat(uf_uniformRegisterVS[35].y),intBitsToFloat(uf_uniformRegisterVS[35].z),intBitsToFloat(uf_uniformRegisterVS[35].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.x = uf_uniformRegisterVS[2].x & int(1); -// 1 -backupReg0i = R0i.x; -predResult = (0 != backupReg0i); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.w = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.w); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); -PV1i.z = R123i.z; -R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); -PS1i = R127i.z; -// 2 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R5i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R5i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R5i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -PV0i.x = R0i.x; -PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R5i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R5i.y):(R5i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R5i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R5i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[18].x),intBitsToFloat(uf_uniformRegisterVS[18].y),intBitsToFloat(uf_uniformRegisterVS[18].z),intBitsToFloat(uf_uniformRegisterVS[18].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); -R1i.w = PV0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); -PS1i = R0i.x; -// 2 -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[17].x),intBitsToFloat(uf_uniformRegisterVS[17].y),intBitsToFloat(uf_uniformRegisterVS[17].z),intBitsToFloat(uf_uniformRegisterVS[17].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R1i.y; -// 3 -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); -} -// export -SET_POSITION(vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w))); -if (isCurrentSizeEqualTo(vec2(32, 32)) || - isCurrentSizeEqualTo(vec2(64, 64)) // hearts while taking damage - ) { - gl_Position.y -= 9000.0; -} -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.x), intBitsToFloat(R6i.w)); -// export -passParameterSem2 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.y), intBitsToFloat(R7i.x), intBitsToFloat(R7i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/b88c6020a8b17332_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/b88c6020a8b17332_0000000000000000_vs.txt deleted file mode 100644 index 2368aa24..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/b88c6020a8b17332_0000000000000000_vs.txt +++ /dev/null @@ -1,505 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b88c6020a8b17332 -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[17]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[17]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_remappedVS[0]).xy); - return (result <= 0.001); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_remappedVS[0].x))); -R0i.yzw = ivec3(floatBitsToInt(-(intBitsToFloat(R1i.y))),0,0x3f800000); -PV0i.y = R0i.y; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[0].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedVS[0].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_remappedVS[0].w)); -PV0i.y = R0i.y; -R1i.w = uf_remappedVS[1].x & 0x40000000; -// 3 -backupReg0i = R0i.z; -backupReg1i = R0i.w; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R2i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[5].x),intBitsToFloat(uf_remappedVS[5].y),intBitsToFloat(uf_remappedVS[5].z),intBitsToFloat(uf_remappedVS[5].w)))); -PV0i.x = R2i.x; -PV0i.y = R2i.x; -PV0i.z = R2i.x; -PV0i.w = R2i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[6].x),intBitsToFloat(uf_remappedVS[6].y),intBitsToFloat(uf_remappedVS[6].z),intBitsToFloat(uf_remappedVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z),intBitsToFloat(uf_remappedVS[7].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[8].x),intBitsToFloat(uf_remappedVS[8].y),intBitsToFloat(uf_remappedVS[8].z),intBitsToFloat(uf_remappedVS[8].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = tempi.x; -// 10 -predResult = (0 != R1i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.z = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R1i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R126i.z = PV1i.x + PS1i; -PV0i.z = R126i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R127i.z = ((PV1i.x == 0)?(uf_remappedVS[9].y):(uf_remappedVS[10].y)); -R127i.w = ((PV1i.x == 0)?(uf_remappedVS[9].x):(uf_remappedVS[10].x)); -// 5 -R123i.x = ((R127i.x == 0)?(uf_remappedVS[9].w):(uf_remappedVS[10].w)); -PV1i.x = R123i.x; -R123i.y = ((R127i.x == 0)?(uf_remappedVS[9].z):(uf_remappedVS[10].z)); -PV1i.y = R123i.y; -// 6 -R123i.x = ((R127i.y == 0)?(PV1i.x):(uf_remappedVS[11].w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(PV1i.y):(uf_remappedVS[11].z)); -PV0i.y = R123i.y; -R123i.z = ((R127i.y == 0)?(R127i.z):(uf_remappedVS[11].y)); -PV0i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R127i.w):(uf_remappedVS[11].x)); -PV0i.w = R123i.w; -// 7 -R1i.x = ((R126i.z == 0)?(uf_remappedVS[12].x):(PV0i.w)); -R1i.y = ((R126i.z == 0)?(uf_remappedVS[12].y):(PV0i.z)); -R1i.z = ((R126i.z == 0)?(uf_remappedVS[12].z):(PV0i.y)); -R1i.w = ((R126i.z == 0)?(uf_remappedVS[12].w):(PV0i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.w = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R1i.w); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.x = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R126i.z = PV1i.x + PS1i; -PV0i.z = R126i.z; -// 3 -R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.x = R127i.x; -R127i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R127i.z = ((PV1i.x == 0)?(uf_remappedVS[9].y):(uf_remappedVS[10].y)); -R127i.w = ((PV1i.x == 0)?(uf_remappedVS[9].x):(uf_remappedVS[10].x)); -// 5 -R123i.x = ((R127i.x == 0)?(uf_remappedVS[9].w):(uf_remappedVS[10].w)); -PV1i.x = R123i.x; -R123i.y = ((R127i.x == 0)?(uf_remappedVS[9].z):(uf_remappedVS[10].z)); -PV1i.y = R123i.y; -// 6 -R123i.x = ((R127i.y == 0)?(PV1i.x):(uf_remappedVS[11].w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(PV1i.y):(uf_remappedVS[11].z)); -PV0i.y = R123i.y; -R123i.z = ((R127i.y == 0)?(R127i.z):(uf_remappedVS[11].y)); -PV0i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R127i.w):(uf_remappedVS[11].x)); -PV0i.w = R123i.w; -// 7 -R1i.x = ((R126i.z == 0)?(uf_remappedVS[12].x):(PV0i.w)); -R1i.y = ((R126i.z == 0)?(uf_remappedVS[12].y):(PV0i.z)); -R1i.z = ((R126i.z == 0)?(uf_remappedVS[12].z):(PV0i.y)); -R1i.w = ((R126i.z == 0)?(uf_remappedVS[12].w):(PV0i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_remappedVS[13].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[12].x),intBitsToFloat(uf_remappedVS[12].y),intBitsToFloat(uf_remappedVS[12].z),intBitsToFloat(uf_remappedVS[12].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[11].x),intBitsToFloat(uf_remappedVS[11].y),intBitsToFloat(uf_remappedVS[11].z),intBitsToFloat(uf_remappedVS[11].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[10].x),intBitsToFloat(uf_remappedVS[10].y),intBitsToFloat(uf_remappedVS[10].z),intBitsToFloat(uf_remappedVS[10].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_remappedVS[9].x),intBitsToFloat(uf_remappedVS[9].y),intBitsToFloat(uf_remappedVS[9].z),intBitsToFloat(uf_remappedVS[9].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.x = uf_remappedVS[1].x & int(1); -// 1 -backupReg0i = R0i.x; -predResult = (0 != backupReg0i); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.w = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R0i.w); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_remappedVS[1].x & 0x00010000; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -R127i.w = uf_remappedVS[1].x & 0x00000020; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[14].y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[14].x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[14].x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[14].y))); -R127i.z = ((PV0i.y == 0)?(R1i.y):(R1i.y)); -PS1i = R127i.z; -// 2 -R123i.x = ((R127i.y == 0)?(R1i.w):(R1i.w)); -PV0i.x = R123i.x; -R123i.y = ((R127i.y == 0)?(R1i.z):(R1i.z)); -PV0i.y = R123i.y; -R126i.z = ((R127i.x == 0)?(PV1i.x):(PV1i.z)); -PV0i.z = R126i.z; -R123i.w = ((R127i.x == 0)?(PV1i.y):(PV1i.w)); -PV0i.w = R123i.w; -R124i.y = uf_remappedVS[1].x & 0x00000008; -PS0i = R124i.y; -// 3 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.w))); -PV1i.x = R0i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); -R123i.w = ((R127i.w == 0)?(PV0i.y):(PV0i.y)); -PV1i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV0i.x):(PV0i.x)); -PS1i = R122i.x; -// 4 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV1i.z)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV1i.w):(PV1i.w)); -R123i.w = ((backupReg0i == 0)?(R1i.x):(PV1i.x)); -PV0i.w = R123i.w; -R126i.z = ((R125i.z == 0)?(PS1i):(PS1i)); -PS0i = R126i.z; -// 5 -R127i.x = ((R125i.z == 0)?(PV0i.x):(PV0i.x)); -PV1i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV0i.w):(PV0i.w)); -PV1i.y = R125i.y; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R127i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.y)); -// 7 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV0i.z)); -PV1i.y = R123i.y; -// 8 -R1i.x = ((R124i.y == 0)?(PV1i.y):(PV1i.y)); -R1i.y = ((R124i.y == 0)?(R127i.x):(R126i.x)); -R1i.z = ((R124i.y == 0)?(R127i.z):(R127i.z)); -R1i.w = ((R124i.y == 0)?(R126i.z):(R126i.z)); -PS0i = R1i.w; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) + 1.0); -PV0i.x = R0i.x; -R126i.y = uf_remappedVS[1].x & 0x00010000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -PV0i.w = uf_remappedVS[1].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R1i.z):(R1i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R1i.y):(R1i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R1i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R1i.w):(R1i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R1i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R1i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R1i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R1i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[15].x),intBitsToFloat(uf_remappedVS[15].y),intBitsToFloat(uf_remappedVS[15].z),intBitsToFloat(uf_remappedVS[15].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.w = PV0i.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedVS[16].w))); -// 2 -R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(PS1i)),vec4(intBitsToFloat(uf_remappedVS[16].x),intBitsToFloat(uf_remappedVS[16].y),intBitsToFloat(uf_remappedVS[16].z),1.0))); -PV0i.x = R0i.x; -PV0i.y = R0i.x; -PV0i.z = R0i.x; -PV0i.w = R0i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R0i.y; -} -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -if (//isCurrentSizeEqualTo(vec2(36, 36)) || //master mode logo - isCurrentSizeEqualTo(vec2(80, 80)) || - isCurrentSizeEqualTo(vec2(84, 84)) || - isCurrentSizeEqualTo(vec2(90, 90)) //stamina red with weapon - ) { - gl_Position.y -= 9000.0; -} -if (isCurrentSizeEqualTo(vec2(32, 32)) && // hearts but also inventory icons - (uf_remappedVS[3].w == 1133903872 || uf_remappedVS[3].w == 1134559232)) { - gl_Position.y -= 9000.0; -} -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.x), intBitsToFloat(R0i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/f56fcbd319ceba00_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/f56fcbd319ceba00_0000000000000000_vs.txt deleted file mode 100644 index 88e267a9..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/f56fcbd319ceba00_0000000000000000_vs.txt +++ /dev/null @@ -1,740 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader f56fcbd319ceba00 -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[23]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[23]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_remappedVS[0]).xy); - return (result <= 0.001); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_remappedVS[0].x))); -R0i.yzw = ivec3(floatBitsToInt(-(intBitsToFloat(R1i.y))),0,0x3f800000); -PV0i.y = R0i.y; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[0].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedVS[0].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_remappedVS[0].w)); -PV0i.y = R0i.y; -R1i.w = uf_remappedVS[1].x & 0x40000000; -// 3 -backupReg0i = R0i.z; -backupReg1i = R0i.w; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[5].x),intBitsToFloat(uf_remappedVS[5].y),intBitsToFloat(uf_remappedVS[5].z),intBitsToFloat(uf_remappedVS[5].w)))); -PV0i.x = R5i.x; -PV0i.y = R5i.x; -PV0i.z = R5i.x; -PV0i.w = R5i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[6].x),intBitsToFloat(uf_remappedVS[6].y),intBitsToFloat(uf_remappedVS[6].z),intBitsToFloat(uf_remappedVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z),intBitsToFloat(uf_remappedVS[7].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[8].x),intBitsToFloat(uf_remappedVS[8].y),intBitsToFloat(uf_remappedVS[8].z),intBitsToFloat(uf_remappedVS[8].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -// 10 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[9].x))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[9].y))); -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[9].y))); -PS0i = R3i.x; -// 11 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].y), intBitsToFloat(uf_remappedVS[9].x))); -// 12 -predResult = (0 != R1i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.z = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R1i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -PV0i.y = R1i.y; -PV0i.z = R1i.z; -PV0i.w = R1i.w; -// 1 -R4i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -R4i.w = PV0i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R125i.x = PV1i.z + PS1i; -PV0i.x = R125i.x; -// 3 -R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.z = R127i.z; -R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R126i.x = ((PV1i.z == 0)?(uf_remappedVS[10].y):(uf_remappedVS[11].y)); -R127i.y = ((PV1i.z == 0)?(uf_remappedVS[10].x):(uf_remappedVS[11].x)); -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_remappedVS[10].w):(uf_remappedVS[11].w)); -R127i.w = ((backupReg0i == 0)?(uf_remappedVS[10].z):(uf_remappedVS[11].z)); -// 6 -R126i.z = ((R127i.x == 0)?(uf_remappedVS[12].y):(uf_remappedVS[13].y)); -R125i.w = ((R127i.x == 0)?(uf_remappedVS[12].x):(uf_remappedVS[13].x)); -// 7 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_remappedVS[12].w):(uf_remappedVS[13].w)); -R126i.y = ((backupReg0i == 0)?(uf_remappedVS[12].z):(uf_remappedVS[13].z)); -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R127i.z; -backupReg3i = R127i.w; -R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_remappedVS[14].y)); -R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_remappedVS[14].x)); -R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_remappedVS[14].w)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_remappedVS[14].z)); -// 9 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.w; -R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_remappedVS[15].w)); -R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_remappedVS[15].z)); -R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_remappedVS[15].y)); -R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_remappedVS[15].x)); -// 10 -R1i.x = ((R125i.x == 0)?(uf_remappedVS[16].x):(R127i.y)); -R1i.y = ((R125i.x == 0)?(uf_remappedVS[16].y):(R126i.x)); -R1i.z = ((R125i.x == 0)?(uf_remappedVS[16].z):(R127i.w)); -R1i.w = ((R125i.x == 0)?(uf_remappedVS[16].w):(R127i.z)); -// 11 -R4i.x = ((R125i.x == 0)?(uf_remappedVS[17].x):(R125i.w)); -R4i.y = ((R125i.x == 0)?(uf_remappedVS[17].y):(R126i.z)); -R4i.z = ((R125i.x == 0)?(uf_remappedVS[17].z):(R126i.y)); -R4i.w = ((R125i.x == 0)?(uf_remappedVS[17].w):(R127i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R4i.y = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R4i.y); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -PV0i.y = R1i.y; -PV0i.z = R1i.z; -PV0i.w = R1i.w; -// 1 -R4i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -R4i.w = PV0i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R125i.x = PV1i.z + PS1i; -PV0i.x = R125i.x; -// 3 -R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.z = R127i.z; -R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R126i.x = ((PV1i.z == 0)?(uf_remappedVS[10].y):(uf_remappedVS[11].y)); -R127i.y = ((PV1i.z == 0)?(uf_remappedVS[10].x):(uf_remappedVS[11].x)); -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_remappedVS[10].w):(uf_remappedVS[11].w)); -R127i.w = ((backupReg0i == 0)?(uf_remappedVS[10].z):(uf_remappedVS[11].z)); -// 6 -R126i.z = ((R127i.x == 0)?(uf_remappedVS[12].y):(uf_remappedVS[13].y)); -R125i.w = ((R127i.x == 0)?(uf_remappedVS[12].x):(uf_remappedVS[13].x)); -// 7 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_remappedVS[12].w):(uf_remappedVS[13].w)); -R126i.y = ((backupReg0i == 0)?(uf_remappedVS[12].z):(uf_remappedVS[13].z)); -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R127i.z; -backupReg3i = R127i.w; -R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_remappedVS[14].y)); -R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_remappedVS[14].x)); -R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_remappedVS[14].w)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_remappedVS[14].z)); -// 9 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.w; -R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_remappedVS[15].w)); -R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_remappedVS[15].z)); -R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_remappedVS[15].y)); -R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_remappedVS[15].x)); -// 10 -R1i.x = ((R125i.x == 0)?(uf_remappedVS[16].x):(R127i.y)); -R1i.y = ((R125i.x == 0)?(uf_remappedVS[16].y):(R126i.x)); -R1i.z = ((R125i.x == 0)?(uf_remappedVS[16].z):(R127i.w)); -R1i.w = ((R125i.x == 0)?(uf_remappedVS[16].w):(R127i.z)); -// 11 -R4i.x = ((R125i.x == 0)?(uf_remappedVS[17].x):(R125i.w)); -R4i.y = ((R125i.x == 0)?(uf_remappedVS[17].y):(R126i.z)); -R4i.z = ((R125i.x == 0)?(uf_remappedVS[17].z):(R126i.y)); -R4i.w = ((R125i.x == 0)?(uf_remappedVS[17].w):(R127i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_remappedVS[18].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[16].x),intBitsToFloat(uf_remappedVS[16].y),intBitsToFloat(uf_remappedVS[16].z),intBitsToFloat(uf_remappedVS[16].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[14].x),intBitsToFloat(uf_remappedVS[14].y),intBitsToFloat(uf_remappedVS[14].z),intBitsToFloat(uf_remappedVS[14].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[11].x),intBitsToFloat(uf_remappedVS[11].y),intBitsToFloat(uf_remappedVS[11].z),intBitsToFloat(uf_remappedVS[11].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_remappedVS[10].x),intBitsToFloat(uf_remappedVS[10].y),intBitsToFloat(uf_remappedVS[10].z),intBitsToFloat(uf_remappedVS[10].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R6i.x = uf_remappedVS[1].x & int(1); -// 1 -predResult = (0 != R6i.x); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R2i.w = uf_remappedVS[1].x & 0x00000002; -// 1 -predResult = (0 != R2i.w); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_remappedVS[1].x & 0x00010000; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -R127i.w = uf_remappedVS[1].x & 0x00000020; -// 1 -R123i.x = ((PV0i.y == 0)?(R1i.w):(R1i.w)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.y == 0)?(R1i.z):(R1i.z)); -PV1i.y = R123i.y; -R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); -PV1i.z = R126i.z; -R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); -PV1i.w = R123i.w; -R127i.z = ((PV0i.y == 0)?(R1i.y):(R1i.y)); -PS1i = R127i.z; -// 2 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV1i.w))); -PV0i.x = R6i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); -R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); -PV0i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); -PS0i = R122i.x; -// 3 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); -R123i.w = ((backupReg0i == 0)?(R1i.x):(PV0i.x)); -PV1i.w = R123i.w; -R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); -PS1i = R124i.z; -// 4 -R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); -PV0i.y = R125i.y; -R126i.z = uf_remappedVS[1].x & 0x00000008; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -// 6 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R1i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); -R1i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); -R1i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); -// 8 -R1i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R6i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) + 1.0); -PV0i.x = R6i.x; -R126i.y = uf_remappedVS[1].x & 0x00010000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -PV0i.w = uf_remappedVS[1].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R1i.z):(R1i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R1i.y):(R1i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R1i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R1i.w):(R1i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R1i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R1i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R1i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R1i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[19].x),intBitsToFloat(uf_remappedVS[19].y),intBitsToFloat(uf_remappedVS[19].z),intBitsToFloat(uf_remappedVS[19].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[20].x),intBitsToFloat(uf_remappedVS[20].y),intBitsToFloat(uf_remappedVS[20].z),intBitsToFloat(uf_remappedVS[20].w)))); -PV1i.x = R1i.x; -PV1i.y = R1i.x; -PV1i.z = R1i.x; -PV1i.w = R1i.x; -R1i.y = PV0i.x; -PS1i = R1i.y; -// 2 -R1i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R1i.w = R127i.x; -// 3 -predResult = (0 != uf_remappedVS[18].y); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[17].x),intBitsToFloat(uf_remappedVS[17].y),intBitsToFloat(uf_remappedVS[17].z),intBitsToFloat(uf_remappedVS[17].w)))); -PV0i.x = R4i.x; -PV0i.y = R4i.x; -PV0i.z = R4i.x; -PV0i.w = R4i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[15].x),intBitsToFloat(uf_remappedVS[15].y),intBitsToFloat(uf_remappedVS[15].z),intBitsToFloat(uf_remappedVS[15].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_remappedVS[13].x),intBitsToFloat(uf_remappedVS[13].y),intBitsToFloat(uf_remappedVS[13].z),intBitsToFloat(uf_remappedVS[13].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_remappedVS[12].x),intBitsToFloat(uf_remappedVS[12].y),intBitsToFloat(uf_remappedVS[12].z),intBitsToFloat(uf_remappedVS[12].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.y = uf_remappedVS[1].x & int(1); -// 1 -predResult = (0 != R0i.y); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.x = uf_remappedVS[1].x & 0x00000002; -// 1 -backupReg0i = R0i.x; -predResult = (0 != backupReg0i); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_remappedVS[1].x & 0x00000020; -R127i.y = uf_remappedVS[1].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_remappedVS[1].x & 0x00000004; -PV0i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); -PV1i.z = R123i.z; -R125i.w = uf_remappedVS[1].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R4i.y):(R4i.y)); -PS1i = R127i.z; -// 2 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R4i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R4i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R4i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R4i.x)) + 1.0); -PV0i.x = R0i.x; -PV0i.y = uf_remappedVS[1].x & 0x00020000; -R127i.z = uf_remappedVS[1].x & 0x00040000; -R126i.w = uf_remappedVS[1].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R4i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R4i.y):(R4i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R4i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R4i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)),vec4(intBitsToFloat(uf_remappedVS[21].x),intBitsToFloat(uf_remappedVS[21].y),intBitsToFloat(uf_remappedVS[21].z),intBitsToFloat(uf_remappedVS[21].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.w = PV0i.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(uf_remappedVS[22].w))); -// 2 -R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(PS1i)),vec4(intBitsToFloat(uf_remappedVS[22].x),intBitsToFloat(uf_remappedVS[22].y),intBitsToFloat(uf_remappedVS[22].z),1.0))); -PV0i.x = R0i.x; -PV0i.y = R0i.x; -PV0i.z = R0i.x; -PV0i.w = R0i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R0i.y; -} -// export -SET_POSITION(vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w))); -if (isCurrentSizeEqualTo(vec2(70, 70)) || - isCurrentSizeEqualTo(vec2(80, 80)) //stamina 3rd red flash - ) { - gl_Position.y -= 9000.0; -} - -if (isCurrentSizeEqualTo(vec2(56, 56)) && - uf_remappedVS[9].x == 1016219941) { - // stamina 1st red flash but also shrine map marker glow - gl_Position.y -= 9000.0; -} -// export -passParameterSem0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.x), intBitsToFloat(R0i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/f7ba548c1fefe24a_0000000000000000_vs.txt b/Mods/BreathOfTheWild_HUDRemover/f7ba548c1fefe24a_0000000000000000_vs.txt deleted file mode 100644 index 027c44eb..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/f7ba548c1fefe24a_0000000000000000_vs.txt +++ /dev/null @@ -1,1247 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader f7ba548c1fefe24a -// PRO+ hud v2 -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_uniformRegisterVS[256]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem2; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -bool isCurrentSizeEqualTo(vec2 param) { - float result = distance(param, intBitsToFloat(uf_uniformRegisterVS[17]).xy); - return (result <= 0.001); -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[14]; -bool activeMaskStackC[15]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStack[3] = false; -activeMaskStack[4] = false; -activeMaskStack[5] = false; -activeMaskStack[6] = false; -activeMaskStack[7] = false; -activeMaskStack[8] = false; -activeMaskStack[9] = false; -activeMaskStack[10] = false; -activeMaskStack[11] = false; -activeMaskStack[12] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStackC[4] = false; -activeMaskStackC[5] = false; -activeMaskStackC[6] = false; -activeMaskStackC[7] = false; -activeMaskStackC[8] = false; -activeMaskStackC[9] = false; -activeMaskStackC[10] = false; -activeMaskStackC[11] = false; -activeMaskStackC[12] = false; -activeMaskStackC[13] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xy = attrDataSem0.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[17].x))); -R0i.yzw = ivec3(floatBitsToInt(-(intBitsToFloat(R1i.y))),0,0x3f800000); -PV0i.y = R0i.y; -R127i.w = floatBitsToInt(1.0); -PS0i = R127i.w; -// 1 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[17].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[17].y))); -// 2 -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[17].w)); -PV0i.y = R0i.y; -R1i.w = uf_uniformRegisterVS[2].x & 0x40000000; -// 3 -backupReg0i = R0i.z; -backupReg1i = R0i.w; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -// 4 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -// 6 -R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); -PV0i.x = R9i.x; -PV0i.y = R9i.x; -PV0i.z = R9i.x; -PV0i.w = R9i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.y = tempi.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.w = tempi.x; -// 10 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); -PS0i = R3i.x; -// 11 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); -// 12 -predResult = (0 != R1i.w); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.z = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R1i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.y; -R1i.yzw = ivec3(backupReg0i,0,0x3f800000); -PV0i.y = R1i.y; -PV0i.z = R1i.z; -PV0i.w = R1i.w; -// 1 -R5i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); -PV1i.x = R5i.x; -PV1i.y = R5i.y; -PV1i.z = R5i.z; -R5i.w = PV0i.w; -PV1i.w = R5i.w; -// 2 -R6i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -R6i.w = PV1i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R125i.x = PV1i.z + PS1i; -PV0i.x = R125i.x; -// 3 -R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.z = R127i.z; -R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R126i.x = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].y):(uf_uniformRegisterVS[24].y)); -R127i.y = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].x):(uf_uniformRegisterVS[24].x)); -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].w):(uf_uniformRegisterVS[24].w)); -R127i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].z):(uf_uniformRegisterVS[24].z)); -// 6 -R126i.z = ((R127i.x == 0)?(uf_uniformRegisterVS[29].y):(uf_uniformRegisterVS[28].y)); -R125i.w = ((R127i.x == 0)?(uf_uniformRegisterVS[29].x):(uf_uniformRegisterVS[28].x)); -// 7 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].w):(uf_uniformRegisterVS[28].w)); -R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].z):(uf_uniformRegisterVS[28].z)); -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R127i.z; -backupReg3i = R127i.w; -R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[23].y)); -R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[23].x)); -R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[23].w)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[23].z)); -// 9 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.w; -R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[27].w)); -R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[27].z)); -R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[27].y)); -R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_uniformRegisterVS[27].x)); -// 10 -R5i.x = ((R125i.x == 0)?(uf_uniformRegisterVS[22].x):(R127i.y)); -R5i.y = ((R125i.x == 0)?(uf_uniformRegisterVS[22].y):(R126i.x)); -R5i.z = ((R125i.x == 0)?(uf_uniformRegisterVS[22].z):(R127i.w)); -R5i.w = ((R125i.x == 0)?(uf_uniformRegisterVS[22].w):(R127i.z)); -// 11 -R6i.x = ((R125i.x == 0)?(uf_uniformRegisterVS[26].x):(R125i.w)); -R6i.y = ((R125i.x == 0)?(uf_uniformRegisterVS[26].y):(R126i.z)); -R6i.z = ((R125i.x == 0)?(uf_uniformRegisterVS[26].z):(R126i.y)); -R6i.w = ((R125i.x == 0)?(uf_uniformRegisterVS[26].w):(R127i.x)); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R4i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); -R4i.w = 0x437f0000; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.y = uf_uniformRegisterVS[2].x >> 0x00000008; -R1i.w = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -R4i.x = PV0i.y & 0x0000000f; -// 2 -predResult = (0 != R1i.w); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R6i.y = R1i.y; -R2i.z = 0; -R1i.w = 0x3f800000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 1 -R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV1i.x = R5i.x; -R4i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 2 -R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); -PV0i.x = R6i.x; -R5i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); -R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R7i.x; -// 3 -R8i.x = floatBitsToInt(-(intBitsToFloat(R4i.y)) + intBitsToFloat(PS0i)); -R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.z = R1i.z; -R10i.x = floatBitsToInt(-(intBitsToFloat(R4i.y)) + 1.0); -PS1i = R10i.x; -// 4 -R3i.z = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); -R2i.w = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.z)); -// 5 -predResult = (R4i.x == 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); -R4i.y = R6i.x; -PV0i.y = R4i.y; -// 1 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -activeMaskStack[4] = activeMaskStack[3]; -activeMaskStackC[5] = activeMaskStackC[4]; -// 0 -predResult = (R4i.x == int(1)); -activeMaskStack[4] = predResult; -activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; -} -else { -activeMaskStack[4] = false; -activeMaskStackC[5] = false; -} -if( activeMaskStackC[5] == true ) { -// 0 -backupReg0i = R4i.y; -R4i.y = 0; -PV0i.y = R4i.y; -PV0i.z = R6i.x; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[4] = activeMaskStack[4] == false; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -if( activeMaskStackC[5] == true ) { -activeMaskStack[5] = activeMaskStack[4]; -activeMaskStackC[6] = activeMaskStackC[5]; -// 0 -predResult = (R4i.x == 0x00000002); -activeMaskStack[5] = predResult; -activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; -} -else { -activeMaskStack[5] = false; -activeMaskStackC[6] = false; -} -if( activeMaskStackC[6] == true ) { -// 0 -backupReg0i = R5i.y; -R5i.y = backupReg0i; -PV0i.y = R5i.y; -PV0i.z = R3i.z; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[5] = activeMaskStack[5] == false; -activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; -if( activeMaskStackC[6] == true ) { -activeMaskStack[6] = activeMaskStack[5]; -activeMaskStackC[7] = activeMaskStackC[6]; -// 0 -predResult = (R4i.x == 0x00000003); -activeMaskStack[6] = predResult; -activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; -} -else { -activeMaskStack[6] = false; -activeMaskStackC[7] = false; -} -if( activeMaskStackC[7] == true ) { -// 0 -backupReg0i = R4i.y; -R4i.y = R3i.z; -PV0i.y = R4i.y; -PV0i.z = R5i.y; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[6] = activeMaskStack[6] == false; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -if( activeMaskStackC[7] == true ) { -activeMaskStack[7] = activeMaskStack[6]; -activeMaskStackC[8] = activeMaskStackC[7]; -// 0 -predResult = (R4i.x == 0x00000004); -activeMaskStack[7] = predResult; -activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; -} -else { -activeMaskStack[7] = false; -activeMaskStackC[8] = false; -} -if( activeMaskStackC[8] == true ) { -// 0 -R4i.y = R2i.w; -PV0i.y = R4i.y; -PV0i.z = R6i.x; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[7] = activeMaskStack[7] == false; -activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; -if( activeMaskStackC[8] == true ) { -activeMaskStack[8] = activeMaskStack[7]; -activeMaskStackC[9] = activeMaskStackC[8]; -// 0 -predResult = (R4i.x == 0x00000005); -activeMaskStack[8] = predResult; -activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; -} -else { -activeMaskStack[8] = false; -activeMaskStackC[9] = false; -} -if( activeMaskStackC[9] == true ) { -// 0 -backupReg0i = R4i.y; -R4i.y = R6i.x; -PV0i.y = R4i.y; -PV0i.z = R2i.w; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[8] = activeMaskStack[8] == false; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -if( activeMaskStackC[9] == true ) { -activeMaskStack[9] = activeMaskStack[8]; -activeMaskStackC[10] = activeMaskStackC[9]; -// 0 -predResult = (R4i.x == 0x00000006); -activeMaskStack[9] = predResult; -activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; -} -else { -activeMaskStack[9] = false; -activeMaskStackC[10] = false; -} -if( activeMaskStackC[10] == true ) { -// 0 -R4i.y = R6i.x; -PV0i.y = R4i.y; -R5i.y = 0; -PS0i = R5i.y; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[9] = activeMaskStack[9] == false; -activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; -if( activeMaskStackC[10] == true ) { -activeMaskStack[10] = activeMaskStack[9]; -activeMaskStackC[11] = activeMaskStackC[10]; -// 0 -predResult = (R4i.x == 0x00000007); -activeMaskStack[10] = predResult; -activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; -} -else { -activeMaskStack[10] = false; -activeMaskStackC[11] = false; -} -if( activeMaskStackC[11] == true ) { -// 0 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); -R4i.y = R5i.y; -PV0i.y = R4i.y; -R5i.y = R3i.z; -PS0i = R5i.y; -// 1 -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); -} -activeMaskStack[10] = activeMaskStack[10] == false; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -if( activeMaskStackC[11] == true ) { -activeMaskStack[11] = activeMaskStack[10]; -activeMaskStackC[12] = activeMaskStackC[11]; -// 0 -predResult = (R4i.x == 0x00000008); -activeMaskStack[11] = predResult; -activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; -} -else { -activeMaskStack[11] = false; -activeMaskStackC[12] = false; -} -if( activeMaskStackC[12] == true ) { -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R10i.x))); -R4i.y = R6i.x; -PV0i.y = R4i.y; -// 1 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -} -activeMaskStack[11] = activeMaskStack[11] == false; -activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; -if( activeMaskStackC[12] == true ) { -activeMaskStack[12] = activeMaskStack[11]; -activeMaskStackC[13] = activeMaskStackC[12]; -// 0 -predResult = (R4i.x == 0x00000009); -activeMaskStack[12] = predResult; -activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; -} -else { -activeMaskStack[12] = false; -activeMaskStackC[13] = false; -} -if( activeMaskStackC[13] == true ) { -// 0 -backupReg0i = R4i.y; -R4i.y = 0; -PV0i.y = R4i.y; -PV0i.z = R3i.z; -PV0i.w = backupReg0i; -// 1 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); -} -activeMaskStack[12] = activeMaskStack[12] == false; -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -if( activeMaskStackC[13] == true ) { -activeMaskStack[13] = activeMaskStack[12]; -activeMaskStackC[14] = activeMaskStackC[13]; -// 0 -predResult = (R4i.x == 0x0000000a); -activeMaskStack[13] = predResult; -activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; -} -else { -activeMaskStack[13] = false; -activeMaskStackC[14] = false; -} -if( activeMaskStackC[14] == true ) { -// 0 -R4i.y = R1i.z; -PV0i.y = R4i.y; -PV0i.z = R6i.x; -PV0i.w = 0; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); -} -activeMaskStack[13] = activeMaskStack[13] == false; -activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; -if( activeMaskStackC[14] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R10i.x))); -R4i.y = R2i.w; -PV0i.y = R4i.y; -R127i.z = (R4i.x == 0x0000000c)?int(0xFFFFFFFF):int(0x0); -PV0i.z = R127i.z; -R127i.w = (R4i.x == 0x0000000b)?int(0xFFFFFFFF):int(0x0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); -R4i.y = R3i.z; -PV1i.y = R4i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); -PV1i.w = R123i.w; -// 2 -R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); -R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); -} -activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; -activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; -activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; -activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; -activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].x))); -// 2 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 4 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); -PS0i = R126i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R4i.x; -// 6 -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -// 7 -R5i.xyz = ivec3(R1i.x,R6i.y,R2i.z); -PV1i.x = R5i.x; -PV1i.y = R5i.y; -PV1i.z = R5i.z; -R5i.w = R1i.w; -PV1i.w = R5i.w; -// 8 -R6i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); -R6i.w = PV1i.w; -} -activeMaskStack[2] = activeMaskStack[2] == false; -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PS0i = int(intBitsToFloat(R1i.y)); -// 1 -PV1i.z = PS0i << int(1); -PS1i = int(intBitsToFloat(R1i.x)); -// 2 -R7i.x = PV1i.z + PS1i; -PV0i.x = R7i.x; -// 3 -R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV1i.z = R127i.z; -R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); -// 4 -R126i.x = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].y):(uf_uniformRegisterVS[24].y)); -R127i.y = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].x):(uf_uniformRegisterVS[24].x)); -// 5 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].w):(uf_uniformRegisterVS[24].w)); -R127i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].z):(uf_uniformRegisterVS[24].z)); -// 6 -R126i.z = ((R127i.x == 0)?(uf_uniformRegisterVS[29].y):(uf_uniformRegisterVS[28].y)); -R125i.w = ((R127i.x == 0)?(uf_uniformRegisterVS[29].x):(uf_uniformRegisterVS[28].x)); -// 7 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].w):(uf_uniformRegisterVS[28].w)); -R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].z):(uf_uniformRegisterVS[28].z)); -// 8 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R127i.z; -backupReg3i = R127i.w; -R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[23].y)); -R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[23].x)); -R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[23].w)); -R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[23].z)); -// 9 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.w; -R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[27].w)); -R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[27].z)); -R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[27].y)); -R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_uniformRegisterVS[27].x)); -// 10 -R5i.x = ((R7i.x == 0)?(uf_uniformRegisterVS[22].x):(R127i.y)); -R5i.y = ((R7i.x == 0)?(uf_uniformRegisterVS[22].y):(R126i.x)); -R5i.z = ((R7i.x == 0)?(uf_uniformRegisterVS[22].z):(R127i.w)); -R5i.w = ((R7i.x == 0)?(uf_uniformRegisterVS[22].w):(R127i.z)); -// 11 -R6i.x = ((R7i.x == 0)?(uf_uniformRegisterVS[26].x):(R125i.w)); -R6i.y = ((R7i.x == 0)?(uf_uniformRegisterVS[26].y):(R126i.z)); -R6i.z = ((R7i.x == 0)?(uf_uniformRegisterVS[26].z):(R126i.y)); -R6i.w = ((R7i.x == 0)?(uf_uniformRegisterVS[26].w):(R127i.x)); -// 12 -predResult = (R4i.x == 0x0000000d); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); -// 2 -R127i.x = PV1i.z; -R127i.y = PV1i.w; -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); -PV0i.z = R127i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); -// 3 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -// 4 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R127i.z; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); -PV1i.w = R126i.w; -// 6 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].x))); -// 8 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].w)) + intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].z)) + intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); -PS1i = R127i.w; -// 10 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -backupReg1i = R126i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[21].w)) + intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[21].z)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[21].y)) + intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[21].x)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); -PS0i = R126i.z; -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); -PS1i = R4i.x; -// 12 -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = floatBitsToInt(float(R7i.x)); -PS0i = R127i.x; -// 1 -tempResultf = intBitsToFloat(PS0i); -tempResultf = floor(tempResultf); -tempResultf = clamp(tempResultf, -256.0, 255.0); -ARi.x = int(tempResultf); -PV1i.x = floatBitsToInt(tempResultf); -// 2 -R4i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+18].x,uf_uniformRegisterVS[ARi.x+18].y,uf_uniformRegisterVS[ARi.x+18].z); -R4i.w = uf_uniformRegisterVS[ARi.x+18].w; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (0 != uf_uniformRegisterVS[3].x); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[22].x),intBitsToFloat(uf_uniformRegisterVS[22].y),intBitsToFloat(uf_uniformRegisterVS[22].z),intBitsToFloat(uf_uniformRegisterVS[22].w)))); -PV0i.x = R5i.x; -PV0i.y = R5i.x; -PV0i.z = R5i.x; -PV0i.w = R5i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[23].x),intBitsToFloat(uf_uniformRegisterVS[23].y),intBitsToFloat(uf_uniformRegisterVS[23].z),intBitsToFloat(uf_uniformRegisterVS[23].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R1i.z = uf_uniformRegisterVS[2].x & int(1); -// 1 -predResult = (0 != R1i.z); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R1i.y); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; -// 1 -R123i.x = ((PV0i.y == 0)?(R5i.w):(R5i.w)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.y == 0)?(R5i.z):(R5i.z)); -PV1i.y = R123i.y; -R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); -PV1i.z = R126i.z; -R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); -PV1i.w = R123i.w; -R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); -PS1i = R127i.z; -// 2 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.x = R1i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); -R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); -PV0i.w = R123i.w; -R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); -PS0i = R122i.x; -// 3 -backupReg0i = R127i.y; -R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); -R123i.w = ((backupReg0i == 0)?(R5i.x):(PV0i.x)); -PV1i.w = R123i.w; -R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); -PS1i = R124i.z; -// 4 -R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.x = R127i.x; -R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); -PV0i.y = R125i.y; -R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -// 6 -R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R5i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); -R5i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); -R5i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); -// 8 -R5i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R1i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -PV0i.x = R1i.x; -R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; -// 1 -R123i.x = ((PV0i.w == 0)?(R5i.z):(R5i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.w == 0)?(R5i.y):(R5i.y)); -PV1i.y = R127i.y; -R123i.z = ((PV0i.w == 0)?(R5i.x):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R5i.w):(R5i.w)); -PV1i.w = R123i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R5i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); -R5i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); -R5i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); -R5i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -// 1 -backupReg0i = R5i.x; -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); -PV1i.x = R5i.x; -PV1i.y = R5i.x; -PV1i.z = R5i.x; -PV1i.w = R5i.x; -R1i.y = PV0i.x; -PS1i = R1i.y; -// 2 -R5i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R5i.w = R127i.x; -// 3 -predResult = (0 != uf_uniformRegisterVS[3].y); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); -PV0i.x = R6i.x; -PV0i.y = R6i.x; -PV0i.z = R6i.x; -PV0i.w = R6i.x; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.w = tempi.x; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -R0i.w = uf_uniformRegisterVS[2].x & int(1); -// 1 -predResult = (0 != R0i.w); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; -// 1 -predResult = (0 != R0i.z); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; -R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; -PV0i.y = R127i.y; -R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; -PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); -PV1i.x = R123i.x; -R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); -PV1i.z = R123i.z; -R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; -R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); -PS1i = R127i.z; -// 2 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 3 -R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); -PV1i.z = R123i.z; -R123i.w = ((R127i.y == 0)?(R6i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); -PV0i.x = R127i.x; -R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); -PV0i.w = R126i.w; -// 5 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); -// 6 -R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); -PV0i.y = R123i.y; -// 7 -R6i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); -R6i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); -PV0i.x = R0i.x; -PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; -R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; -R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; -// 1 -R123i.x = ((PV0i.y == 0)?(R6i.x):(PV0i.x)); -PV1i.x = R123i.x; -R127i.w = ((PV0i.y == 0)?(R6i.y):(R6i.y)); -PV1i.w = R127i.w; -// 2 -R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 3 -R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); -PV1i.w = R123i.w; -// 4 -R6i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); -R6i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = PV0i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); -R1i.w = PV0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); -PS1i = R0i.x; -// 2 -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R1i.y; -// 3 -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); -} -// export -SET_POSITION(vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w))); -if (isCurrentSizeEqualTo(vec2(56, 56)) - || isCurrentSizeEqualTo(vec2(70, 70))) { - gl_Position.y -= 9000.0; -} -if (isCurrentSizeEqualTo(vec2(80, 80)) && - (uf_uniformRegisterVS[7].x == 1069928833)) { - //stamina 3rd circle, but also inventory orb glow - gl_Position.y -= 9000.0; -} -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.x), intBitsToFloat(R5i.w)); -// export -passParameterSem2 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); -} diff --git a/Mods/BreathOfTheWild_HUDRemover/rules.txt b/Mods/BreathOfTheWild_HUDRemover/rules.txt deleted file mode 100644 index 3940b18a..00000000 --- a/Mods/BreathOfTheWild_HUDRemover/rules.txt +++ /dev/null @@ -1,27 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "Remove all HUD elements" -path = "The Legend of Zelda: Breath of the Wild/Mods/HUD Remover (Pro HUD+)" -description = Hides the rest of the HUD that isn't removed by the Pro mod for e.g. screenshots. -version = 4 - -[TextureRedefine] # Disable Hearts -width = 48 -height = 48 -formats = 0x7 -tilemodes = 4 -overwriteFormat = 0x5 - -[TextureRedefine] # Disable text from subtitles, corrupts some text. -width = 1024 -height = 1024 -formats = 0x34 -# Remove the hash sign ('#') from the line below to enable. -#overwriteFormat = 0x235 - -[TextureRedefine] # Disable text from subtitles, corrupts some text. -width = 512 -height = 1024 -formats = 0x34 -# Remove the hash sign ('#') from the line below to enable. -#overwriteFormat = 0x235 diff --git a/Mods/BreathOfTheWild_NoMMTriforce/rules.txt b/Mods/BreathOfTheWild_NoMMTriforce/rules.txt deleted file mode 100644 index 73d00087..00000000 --- a/Mods/BreathOfTheWild_NoMMTriforce/rules.txt +++ /dev/null @@ -1,12 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = No Master Mode Triforce -path = "The Legend of Zelda: Breath of the Wild/Mods/No Master Mode Triforce" -description = Removes the on-screen triforce icon in Master Mode -version = 4 - -[TextureRedefine] -width = 36 -height = 36 -formats = 0x034 -overwriteFormat = 0x001 diff --git a/Mods/BreathOfTheWild_ReshadeCompatibility/patches.txt b/Mods/BreathOfTheWild_ReshadeCompatibility/patches.txt deleted file mode 100644 index a96bd3dc..00000000 --- a/Mods/BreathOfTheWild_ReshadeCompatibility/patches.txt +++ /dev/null @@ -1,4 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -0x038A48BC = li r0, 0; diff --git a/Mods/BreathOfTheWild_ReshadeCompatibility/rules.txt b/Mods/BreathOfTheWild_ReshadeCompatibility/rules.txt deleted file mode 100644 index 04e839d8..00000000 --- a/Mods/BreathOfTheWild_ReshadeCompatibility/rules.txt +++ /dev/null @@ -1,6 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Fixes Reshade depth buffer compatibility -path = "The Legend of Zelda: Breath of the Wild/Mods/Reshade compatibility" -description = DON'T ENABLE THIS IF YOU'RE NOT USING RESHADE. Makes some reshade effects like e.g. MXAO and ray tracing not have issues. Will make distant mountains and geometry have flickering textures. -version = 4 diff --git a/Mods/BreathOfTheWild_StaticFPS/patches.txt b/Mods/BreathOfTheWild_StaticFPS/patches.txt deleted file mode 100644 index cec0172b..00000000 --- a/Mods/BreathOfTheWild_StaticFPS/patches.txt +++ /dev/null @@ -1,144 +0,0 @@ -[BotwFPSV208] #i.e. v1.5.0 -moduleMatches = 0x6267BFD0 - -#Cave -codeCaveSize = 0x30 - -_divisor = 0x0 # the divisor is set at the next line -0x0 = .float (30 / $targetFPS) # e.g. 30FPS / 18FPS = 1.66667 -_targetfps = 0x18 # the target fps is set at the next line -0x18 = .float $targetFPS - -#Arrow projectiles fix by Epigramx: - -0x1001CCAC = .float (30 * (30 / $targetFPS)) # = 30 * divisor -0x1001CB18 = .float (0.5 / (30 / $targetFPS)) # = 0.5 / divisor - -#"Best fence" by Rajkosto: - -_fenceNeg1 = 0x00000004 -0x00000004 = add r6, r12, r0 #orig instruction we are replacing -0x00000008 = cmpwi r6, 500 #check if less than 500 (full sync on those first frames to prevent milk water) -0x0000000C = blt .+0x08 #skip subtract if less than -0x00000010 = subi r6, r6, 1 #do the subtract -0x00000014 = blr #return - -#Simplification of FPS++ by Xalphenos: - -_arrowTimeDrain = 0x1C -0x1C = lfs f1, 0xFC(r11) -0x20 = lis r12, _divisor@ha -0x24 = lfs f0, _divisor@l(r12) -0x28 = fmuls f1, f1, f0 -0x2C = blr - -0x031FA97C = nop -0x03793328 = nop -0x03793334 = nop -0x03793378 = lis r29, _divisor@ha -0x03793380 = lfs f0, _divisor@L(r29) -0x0379338C = nop -0x03415C1C = lis r12, _divisor@ha -0x03415C24 = lfs f0, _divisor@l(r12) -0x03415C2C = nop -0x02D90D2C = lis r10, _targetfps@ha -0x02D90D30 = lfs f11, _targetfps@l(r10) -0x02D90D88 = lis r10, _targetfps@ha -0x02D90D8C = lfs f11, _targetfps@l(r10) -0x02D5F760 = bla _arrowTimeDrain -0x037DC35C = lis r12, _divisor@ha #Audio fix -0x037DC360 = lfs f13, _divisor@l(r12) -0x02F62B3C = lis r12, _divisor@ha #map scroll fix -0x02F62B40 = lfs f0, _divisor@l(r12) - -#Break all forms of frame limiting -#0x031FAAFC = bla _fenceNeg1 #Best fence (make sure GPU is never more than 1 frame ahead) -0x031FAAE8 = li r0, 1 #Better fence (make sure GPU is never more than 1 second? ahead) -#0x031FAB00 = nop #skip fence (no waiting on GPU) -0x031FACD0 = nop #disable vsync -0x031FACF4 = nop #disable vsync loop - -#Additional vsync dropping -0x0309D030 = nop #disable vsync -0x0309D054 = nop #disable vsync loop - -#For testing, the original static mod lines (commented out by default): -#0x031FB0C0 = li r0, 1 -#0x031FB104 = li r0, 1 - -#Cheats -#0x02D90CC0 = fmr f29, f1 #inf stamina -#0x02D452A4 = nop #inf hearts -#0x02EB6758 = nop #inf arrows - -[BotwFPSv176V192] #i.e. v1.4.0 and v1.4.1 -moduleMatches = 0xFD091F9F,0xD472D8A5 - -#Cave -codeCaveSize = 0x30 - -_divisor = 0x0 # the divisor is set at the next line -0x0 = .float (30 / $targetFPS) # e.g. 30FPS / 18FPS = 1.66667 -_targetfps = 0x18 # the target fps is set at the next line -0x18 = .float $targetFPS - -#Arrow projectiles fix by Epigramx: - -0x1001CCAC = .float (30 * (30 / $targetFPS)) # = 30 * divisor -0x1001CB18 = .float (0.5 / (30 / $targetFPS)) # = 0.5 / divisor - -#"Best fence" by Rajkosto: - -_fenceNeg1 = 0x00000004 -0x00000004 = add r6, r12, r0 #orig instruction we are replacing -0x00000008 = cmpwi r6, 500 #check if less than 500 (full sync on those first frames to prevent milk water) -0x0000000C = blt .+0x08 #skip subtract if less than -0x00000010 = subi r6, r6, 1 #do the subtract -0x00000014 = blr #return - -#Simplification of FPS++ by Xalphenos: - -_arrowTimeDrain = 0x1C -0x1C = lfs f1, 0xFC(r11) -0x20 = lis r12, _divisor@ha -0x24 = lfs f0, _divisor@l(r12) -0x28 = fmuls f1, f1, f0 -0x2C = blr - -#codeChanges -0x031F9E80 = nop -0x03792620 = nop -0x0379262C = nop -0x03792670 = lis r29, _divisor@ha -0x03792678 = lfs f0, _divisor@L(r29) -0x03792684 = nop -0x03414EF8 = lis r12, _divisor@ha -0x03414F00 = lfs f0, _divisor@l(r12) -0x03414F08 = nop -0x02D90790 = lis r10, _targetfps@ha -0x02D90794 = lfs f11, _targetfps@l(r10) -0x02D907EC = lis r10, _targetfps@ha -0x02D907F0 = lfs f11, _targetfps@l(r10) -0x02D5F200 = bla _arrowTimeDrain -0x037DB654 = lis r12, _divisor@ha -0x037DB658 = lfs f13, _divisor@l(r12) - -#Break all forms of frame limiting -#0x031FA000 = bla _fenceNeg1 #Best fence (make sure GPU is never more than 1 frame ahead) -0x031F9FEC = li r0, 1 #Better fence (make sure GPU is never more than 1 second? ahead) -#0x031FA004 = nop #skip fence (no waiting on GPU) -0x031FA1D4 = nop #disable vsync -0x031FA1F8 = nop #disable vsync loop - -#Additional vsync dropping -0x0309C9A4 = nop #disable vsync -0x0309C9C8 = nop #disable vsync loop - -#For testing, the original static mod lines (commented out by default): -#0x031FA5C4 = li r0, 1 -#0x031FA608 = li r0, 1 - -#Cheats -#0x02D90724 = fmr f29, f1 #inf stamina -#0x02D44D44 = nop #inf hearts -#0x02EB61BC = nop #inf arrows diff --git a/Mods/BreathOfTheWild_StaticFPS/readme.txt b/Mods/BreathOfTheWild_StaticFPS/readme.txt deleted file mode 100644 index 9679ab2c..00000000 --- a/Mods/BreathOfTheWild_StaticFPS/readme.txt +++ /dev/null @@ -1,14 +0,0 @@ -This mod is based on a simplification of the fps++ mod by Xalphenos; it drops -dynamic FPS to keep behavior closer to the default game. The Rajkosto "best - fence" method is also included for performance and stability. - -It improves over previous static mods in that it allows ANY positive integer -as a static fps target and it includes the stamina fix. I've also figured out -a fix for the physics of arrow projectiles. - -To use it enable the graphic pack and choose a preset fps target, or edit -the rules.txt file to add a new preset. - -Original forum thread at https://forum.cemu.info/showthread.php/421 - - epigramx diff --git a/Mods/BreathOfTheWild_StaticFPS/rules.txt b/Mods/BreathOfTheWild_StaticFPS/rules.txt deleted file mode 100644 index b4608155..00000000 --- a/Mods/BreathOfTheWild_StaticFPS/rules.txt +++ /dev/null @@ -1,109 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Static FPS Mod -path = "The Legend of Zelda: Breath of the Wild/Mods/Static FPS Mod" -description = "Do not mix this with FPS++ as it is a simplified version of it. It removes the dynamic-timestep part in order to provide more accurate emulation because it does not estimate the current fps while it keeps the performance boosts. For the most accurate and bug free emulation use it on 30FPS mode." -version = 4 - -[Preset] -name = Static 45FPS -$targetFPS:int = 45 - -[Preset] -name = Static 60FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 60 - -[Preset] -name = Static 30FPS (most stable; ideal for 240/120/60Hz displays) -$targetFPS:int = 30 - -[Preset] -name= Static 165FPS (ideal for 165hz displays) -$targetFPS:int = 165 - -[Preset] -name = Static 144FPS (ideal for 144Hz displays) -$targetFPS:int = 144 - -[Preset] -name = Static 120FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 120 - -[Preset] -name = Static 100FPS (ideal for 200/100Hz displays) -$targetFPS:int = 100 - -[Preset] -name = Static 85FPS (ideal for 85Hz displays) -$targetFPS:int = 85 - -[Preset] -name = Static 75FPS (ideal for 75Hz displays) -$targetFPS:int = 75 - -[Preset] -name = Static 72FPS (ideal for 144Hz displays) -$targetFPS:int = 72 - -[Preset] -name = Static 55FPS (ideal for 165hz displays) -$targetFPS:int = 55 - -[Preset] -name = Static 50FPS (ideal for 200/100Hz displays) -$targetFPS:int = 50 - -[Preset] -name = Static 48FPS (ideal for 144Hz displays) -$targetFPS:int = 48 - -[Preset] -name = Static 40FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 40 - -[Preset] -name = Static 36FPS (ideal for 144Hz displays) -$targetFPS:int = 36 - -[Preset] -name = Static 33FPS (ideal for 165HZ displays) -$targetFPS:int = 33 - -[Preset] -name = Static 25FPS (ideal for 75Hz displays) -$targetFPS:int = 25 - -[Preset] -name = Static 24FPS (ideal for 144Hz displays) -$targetFPS:int = 24 - -[Preset] -name = Static 20FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 20 - -[Preset] -name = Static 18FPS (ideal for 144Hz displays) -$targetFPS:int = 18 - -[Preset] -name = Static 17FPS (ideal for 85Hz displays) -$targetFPS:int = 17 - -[Preset] -name = Static 16FPS (ideal for 144Hz displays) -$targetFPS:int = 16 - -[Preset] -name = Static 15FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 15 - -[Preset] -name = Static 12FPS (ideal for 144Hz displays) -$targetFPS:int = 12 - -[Preset] -name = Static 10FPS (ideal for 240/120/60Hz displays) -$targetFPS:int = 10 - -[Control] -vsyncFrequency = $targetFPS diff --git a/Mods/BreathOfTheWild_Weather/patches.txt b/Mods/BreathOfTheWild_Weather/patches.txt deleted file mode 100644 index ee318019..00000000 --- a/Mods/BreathOfTheWild_Weather/patches.txt +++ /dev/null @@ -1,34 +0,0 @@ -[BotwV208] -moduleMatches = 0x6267BFD0 - -codeCaveSize = 0x20 - -# Constants -0x0000000 = .byte $weatherByte ; This address holds the value set by the presets -_weatherConst = 0x0000000 ; Makes a symbol of the value above -_weatherAddress = 0x1000DB24 ; This symbol points to the weather address - -# Code that changes the weather address value. -# This code is executed each frame since there's too many addresses that mess with the original one, and changing those caused crashes. Shouldn't affect performance regardless. -_changeWeather = 0x00000004 -0x0000004 = lis r6, _weatherConst@ha ; Load first half of the address to the "weather value" -0x0000008 = lbz r6, _weatherConst@l(r6) ; Use the first half of the "weather value" address to load the full value set by the current preset -0x000000C = lis r5, 0x3FF7 ; Load first half of the actual "weather address" -0x0000010 = stb r6, _weatherAddress@l(r5) ; Store the "weather value" byte into the "weather address", using the first half of that address -0x0000014 = addi r6, r1, 0x18 ; Do the original instruction that got replaced by the code jump -0x0000018 = blr ; Return to the code before the code jump - -0x31FACD4 = bla _changeWeather - -# Disable original instructions that write the weather value, just because -0x3668FE8 = nop -0x3668FEC = nop - - -# How to find the memory address where the weather is stored (if it needs to be updated): -# 1. Make 1 breakpoint on one of the following instructions using Cemu's PPC debugger: -# .text:03668FE8 stb r0, 0x19(r30) -# .text:03668FEC stb r26, 0x18(r30) -# 2. Fast travel into an area where the weather isn't constant -# 3. After it hits the breakpoint, look at the register view and find the value after R30. -# 4. Use a hex calculator to add 0x18 to that address and you'll have the address. diff --git a/Mods/BreathOfTheWild_Weather/rules.txt b/Mods/BreathOfTheWild_Weather/rules.txt deleted file mode 100644 index b2782ba7..00000000 --- a/Mods/BreathOfTheWild_Weather/rules.txt +++ /dev/null @@ -1,43 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Weather -path = "The Legend of Zelda: Breath of the Wild/Mods/Weather" -description = Changes the weather -version = 4 - -[Preset] -name = Clear weather -$weatherByte:int = 0 - -[Preset] -name = Raining -$weatherByte:int = 2 - -[Preset] -name = Raining (dark clouds and winds blowing) -$weatherByte:int = 3 - -[Preset] -name = Gray weather (no rain and dark clouds) -$weatherByte:int = 6 - -[Preset] -name = Storm with thunder -$weatherByte:int = 7 - -[Preset] -name = Fog and rain -$weatherByte:int = 8 - -# If anyone finds accurate names for these, feel free to fill them in. -[Preset] -name = MISC 1 -$weatherByte:int = 1 - -[Preset] -name = MISC 2 -$weatherByte:int = 4 - -[Preset] -name = MISC 3 -$weatherByte:int = 5 \ No newline at end of file diff --git a/Resolutions/BreathOfTheWild_Resolution/01ba1a725afa0b96_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/01ba1a725afa0b96_0000000000000000_vs.txt deleted file mode 100644 index 2784469b..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/01ba1a725afa0b96_0000000000000000_vs.txt +++ /dev/null @@ -1,138 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#else -#define SET_POSITION(_v) gl_Position = _v -#endif -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - - -const float resScale = $height/720.0; - -// Night star (size) - -// shader 01ba1a725afa0b96 -UNIFORM_BUFFER_LAYOUT(1, 0, 0) uniform uniformBlockVS1 -{ -vec4 uf_blockVS1[1024]; -}; - - -UNIFORM_BUFFER_LAYOUT(2, 0, 1) uniform uniformBlockVS2 -{ -vec4 uf_blockVS2[1024]; -}; - - -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem1; -layout(location = 1) out vec4 passParameterSem2; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -// 0 -R1i.x = floatBitsToInt(uf_blockVS2[7].z); -R0i.z = R0i.x << int(1); -PV0i.z = R0i.z; -R0i.w = 0x3f800000; -// 1 -R0i.y = PV0i.z + int(1); -R3i.xyzw = floatBitsToInt(uf_blockVS1[R0i.z].xyzw); -R2i.xyzw = floatBitsToInt(uf_blockVS1[R0i.y].xyzw); -// export -gl_PointSize = intBitsToFloat(R1i.x) * resScale; -// 0 -backupReg0i = R0i.w; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS2[0].x,uf_blockVS2[0].y,uf_blockVS2[0].z,uf_blockVS2[0].w))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(backupReg1i))); -PS0i = R2i.w; -// 1 -backupReg0i = R0i.w; -backupReg1i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS2[1].x,uf_blockVS2[1].y,uf_blockVS2[1].z,uf_blockVS2[1].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -R3i.w = floatBitsToInt(float(backupReg1i)); -PS1i = R3i.w; -// 2 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS2[2].x,uf_blockVS2[2].y,uf_blockVS2[2].z,uf_blockVS2[2].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R0i.w)),vec4(uf_blockVS2[3].x,uf_blockVS2[3].y,uf_blockVS2[3].z,uf_blockVS2[3].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.w = tempi.x; -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w))); -// export -passParameterSem1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -// export -passParameterSem2 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/01bef64ec0cccd53_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/01bef64ec0cccd53_0000000000000000_vs.txt deleted file mode 100644 index b5c9765b..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/01bef64ec0cccd53_0000000000000000_vs.txt +++ /dev/null @@ -1,124 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 01bef64ec0cccd53 -// Used for: Fixing clouds in non-updated versions -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); -// 0 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = backupReg0i; -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); -R1i.y = backupReg1i; -R1i.y = floatBitsToInt(intBitsToFloat(R1i.y) * 2.0); -R1i.z = 0x3f800000; -R0i.w = 0; -R0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[0].z)/resXScale)); -R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) / 2.0); -PS0i = R0i.y; -R3i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy; -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[0].w)/resYScale)); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -R0i.z = R0i.y; -R127i.w = floatBitsToInt(float(R3i.x)); -PS0i = R127i.w; -// 1 -R0i.w = PV0i.x; -R127i.z = floatBitsToInt(float(R3i.y)); -PS1i = R127i.z; -// 2 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.w)); -// 3 -R3i.x = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.x))); -PV1i.x = R3i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 4 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedVS[0].x)*resXScale) + 0.5)); -R3i.y = floatBitsToInt((-(intBitsToFloat(PS1i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.y))); -PV0i.y = R3i.y; -// 5 -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedVS[0].y)*resYScale) + 0.5)); -// export -passParameterSem1 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.z)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 7ff090c4..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,135 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0b9b8f5dfa16ad58 -// Used For: Horizontal Menu Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -R127f.x = (R1f.x > 0.0)?1.0:0.0; -R127f.x /= 2.0; -R127f.y = -(R1f.y); -PV0f.y = R127f.y; -R127f.z = (0.0 > R1f.x)?1.0:0.0; -R127f.z /= 2.0; -R127f.w = 1.0; -PV0f.w = R127f.w; -R126f.x = intBitsToFloat(uf_remappedVS[0].z) * (intBitsToFloat(0x3fae8a72)/resXScale); -PS0f = R126f.x; -// 1 -R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))); -PV1f.x = R0f.x; -PV1f.y = R0f.x; -PV1f.z = R0f.x; -PV1f.w = R0f.x; -R126f.w = (PV0f.y > 0.0)?1.0:0.0; -R126f.w /= 2.0; -PS1f = R126f.w; -// 2 -backupReg0f = R127f.y; -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.y = tempf.x; -R127f.y = (0.0 > backupReg0f)?1.0:0.0; -R127f.y /= 2.0; -PS0f = R127f.y; -// 3 -backupReg0f = R127f.x; -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R0f.z = tempf.x; -R127f.x = backupReg0f + -(R127f.z); -PS1f = R127f.x; -// 4 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.w = tempf.x; -PS0f = R126f.w + -(R127f.y); -// 5 -PV1f.y = PS0f + 0.5; -PV1f.z = R127f.x + 0.5; -// 6 -R1f.x = PV1f.y; -R1f.y = PV1f.z + -(R126f.x); -R1f.z = PV1f.z + R126f.x; -R1f.w = PV1f.z; -// export -SET_POSITION(vec4(R0f.x, R0f.y, R0f.z, R0f.w)); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/0bcd653c18367d59_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index e3480698..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,239 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0bcd653c18367d59 -// Used for: Restoring the native BotW Anti-Aliasing implementation -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.y = 0x3f800000; -PV0i.z = 0x3f800000; -PV0i.w = 0x40400000; -R127i.z = 0xbf800000; -PS0i = R127i.z; -// 1 -R123i.x = ((PV0i.x == 0)?(PV0i.z):(0xc0400000)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.x == 0)?(PV0i.w):(0xbf800000)); -PV1i.y = R123i.y; -R0i.z = 0; -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x3b808081)); -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 2 -R2i.x = ((R0i.x == 0)?(R127i.z):(PV1i.y)); -PV0i.x = R2i.x; -R2i.y = ((R0i.x == 0)?(R127i.y):(PV1i.x)); -PV0i.y = R2i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = 0x3d2aaaab; -R0i.x = 0x3e000000; -PS0i = R0i.x; -// 3 -R5i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PV1i.x = R5i.x; -R0i.y = 0; -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R4i.w = uf_remappedVS[1].z; -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -R3i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -PS1i = R3i.x; -// 4 -R6i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) * 2.0); -R5i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + 0.5)); -R7i.z = PV1i.x; -R3i.w = R2i.x; -R3i.w = floatBitsToInt(intBitsToFloat(R3i.w) / 2.0); -R6i.y = uf_remappedVS[3].y; -R6i.y = floatBitsToInt(intBitsToFloat(R6i.y) * 2.0); -PS0i = R6i.y; -R1i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wz)).x); -R1i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.xy)).xyz); -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -// export -// skipped export to semanticId 255 -// 0 -R126i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(0.5)); -R125i.y = floatBitsToInt(intBitsToFloat(R4i.w) + -(0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R7i.w = R5i.y; -PV0i.w = R7i.w; -R127i.y = floatBitsToInt(-(intBitsToFloat(R6i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) / 2.0); -PS0i = R127i.y; -// 1 -R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y))); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x)); -R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale); -PS1i = R127i.w; -// 2 -backupReg0i = R127i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); -R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i))); -R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale); -PS0i = R125i.w; -// 3 -backupReg0i = R126i.y; -backupReg1i = R127i.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i))); -R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0); -R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); -PS1i = R125i.z; -// 4 -backupReg0i = R126i.x; -backupReg1i = R127i.w; -backupReg2i = R127i.y; -R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg2i))); -PS0i = R4i.w; -// 5 -backupReg0i = R127i.z; -R2i.x = floatBitsToInt(intBitsToFloat(R125i.w) * 1.5); -R2i.y = floatBitsToInt(intBitsToFloat(R127i.x) * 1.5); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R125i.x))); -R6i.w = backupReg0i; -R6i.z = R126i.w; -PS1i = R6i.z; -// 6 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R124i.w)) + 0.5)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R125i.z)) + 0.5)); -R5i.z = R126i.y; -R5i.w = R126i.z; -R3i.z = R127i.y; -PS0i = R3i.z; -// 7 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(R127i.w))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R124i.z))); -R4i.z = R4i.w; -R3i.w = R126i.x; -R4i.w = R127i.z; -PS1i = R4i.w; -// export -passParameterSem4 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -// export -// skipped export to semanticId 255 -// export -passParameterSem0 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.z)); -// export -passParameterSem6 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.x), intBitsToFloat(R7i.z), intBitsToFloat(R7i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/0d6127fbed646d2b_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index a6a0074e..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,203 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0d6127fbed646d2b -// Used for: Fixing Ambient-Occlusion -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem5; -layout(location = 2) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = 0x3f800000; -PV0i.y = 0x40400000; -PV0i.z = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.w = 0x3f800000; -R127i.x = 0xbf800000; -PS0i = R127i.x; -// 1 -R3i.x = uf_remappedVS[0].z; -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].z) * intBitsToFloat(0x3b808081)); -R123i.z = ((PV0i.z == 0)?(PV0i.x):(0xc0400000)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(PV0i.y):(0xbf800000)); -PV1i.w = R123i.w; -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 2 -R2i.x = ((R0i.x == 0)?(R127i.x):(PV1i.w)); -PV0i.x = R2i.x; -R2i.y = ((R0i.x == 0)?(R127i.w):(PV1i.z)); -PV0i.y = R2i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = 0x3d2aaaab; -R0i.y = 0; -PS0i = R0i.y; -// 3 -R1i.xyz = ivec3(0x3e000000,0,floatBitsToInt(-(intBitsToFloat(PV0i.y)))); -R1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R1i.w = floatBitsToInt(intBitsToFloat(R1i.w) / 2.0); -R4i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PS1i = R4i.x; -R0i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wy)).x); -R0i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R1i.xy)).xyz); -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -// export -// skipped export to semanticId 255 -// 0 -R126i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(0.5)); -R4i.y = floatBitsToInt((intBitsToFloat(R1i.z) * 0.5 + 0.5)); -PV0i.y = R4i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R2i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R125i.z = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); -PS0i = R125i.z; -// 1 -R123i.x = floatBitsToInt((intBitsToFloat(uf_remappedVS[3].w) * 2.0 / resYScale + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].x))); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -R1i.z = uf_remappedVS[4].y; -R1i.z = floatBitsToInt(intBitsToFloat(R1i.z) * 2.0); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R3i.x)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R1i.w)); -PS1i = R127i.z; -// 2 -R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[3].y) * resYScale); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[3].x) * resXScale); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R126i.z = floatBitsToInt((intBitsToFloat(uf_remappedVS[3].z) * 2.0 / resXScale + intBitsToFloat(R4i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(R126i.x)); -R124i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R125i.z)); -PS0i = R124i.z; -// 3 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R127i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.w))); -R127i.z = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[3].w)/resYScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R4i.y))); -R123i.w = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[3].z)/resXScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R4i.x))); -PV1i.w = R123i.w; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV0i.y))); -PS1i = R127i.w; -// 4 -backupReg0i = R126i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R125i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(R126i.x)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R127i.x))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); -R3i.z = PV1i.w; -PS0i = R3i.z; -// 5 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.y))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R124i.z))); -R3i.w = R127i.z; -R4i.z = R127i.y; -PS1i = R4i.z; -// 6 -R3i.x = floatBitsToInt(intBitsToFloat(R127i.w) * 0.25); -R3i.y = floatBitsToInt(intBitsToFloat(R126i.z) * 0.25); -R1i.z = R126i.w; -R4i.w = R125i.x; -R1i.w = PV1i.z; -PS0i = R1i.w; -// export -passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -// export -passParameterSem5 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -// export -passParameterSem6 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/0f2b9ee517917425_00000000000003c9_ps.txt b/Resolutions/BreathOfTheWild_Resolution/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 84c6a64b..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,681 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 0f2b9ee517917425 - dumped cemu 1.15 -// Used for: Restoring the native BotW Anti-Aliasing implementation in inventory screen - -const float resX = float($width)/float($gameWidth); -const float resY = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[2]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[2]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock - -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); // These variables make the difference -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem2); -if( activeMaskStackC[1] == true ) { -R2i.xzw = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.xy)).xzw); -R1i.xz = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.zw)).xz); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw); -R0i.w = floatBitsToInt(textureOffset(textureUnitPS1, intBitsToFloat(R0i.xy),ivec2(1,-1)).x); -R1i.y = floatBitsToInt(textureOffset(textureUnitPS1, intBitsToFloat(R0i.xy),ivec2(-1,1)).x); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 --- Point of Interest 1 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z)) / resX ); // Divide looks better for minimum - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z)) * resY ); // Multiply looks beeter for max - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z)) * resX ); // Multiply looks better for max - Must place the varaibles in that location of the round brackets to use floats correctly -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 ---Point of Interest 2 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.w))); -// 2 -PV0i.z = floatBitsToInt(min(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.x))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[0].x))); -R1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R2i.y = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[0].y))); -// 5 -predResult = (intBitsToFloat(R1i.w) >= intBitsToFloat(R2i.y)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.xyz = floatBitsToInt(vec3(intBitsToFloat(R2i.z),intBitsToFloat(R1i.x),intBitsToFloat(R2i.z)) + vec3(intBitsToFloat(R0i.w),intBitsToFloat(R1i.y),intBitsToFloat(R1i.x))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(R1i.z)); -PV0i.w = R127i.w; -R127i.y = R1i.z; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -PS0i = R127i.y; -// 1 -PV1i.x = R2i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R0i.w)); -R127i.z = floatBitsToInt((-(intBitsToFloat(R2i.w)) * 2.0 + intBitsToFloat(PV0i.z))); -PV1i.w = PV0i.w; -PS1i = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(R1i.y)); -// 2 -R127i.x = floatBitsToInt((-(intBitsToFloat(R2i.w)) * 2.0 + intBitsToFloat(PV1i.w))); -R1i.y = R2i.z; -PV0i.y = R1i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) + -(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(R127i.y))); -PS0i = R126i.x; -// 3 -backupReg0i = R127i.z; -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((-(intBitsToFloat(R1i.x)) * 2.0 + intBitsToFloat(R126i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -R123i.w = floatBitsToInt((-(intBitsToFloat(PV0i.y)) * 2.0 + intBitsToFloat(PS0i))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 4 -backupReg0i = R126i.y; -PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); -R126i.y = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R127i.x), -(intBitsToFloat(R127i.x)))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PS1i)); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(backupReg0i)); -PS0i = R126i.w; -// 5 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R126i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R1i.w)); // Rli.w * 2 has the same affect as line 85------------------------------------------------------ -PS1i = R127i.y; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.y)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.x)); -// 7 -PV1i.x = ((intBitsToFloat(PV0i.y) >= intBitsToFloat(R127i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3daaaaab)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.y))); -R4i.z = ((PV1i.x == 0)?(0x3f800000):(0)); -PV0i.z = R4i.z; -R5i.w = ((PV1i.x == 0)?(0):(0x3f800000)); -PV0i.w = R5i.w; -// 9 --- Point fo Interest -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[1].x))); // Default implmentation division took place here -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[1].x) / resX)); // Default implmentation division took place here -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[1].y) / resY)); // Default implmentation division took place here -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 --- Point of Interest -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); // Divide looks good same as below line ---------------------------------------------------------------------- -R127i.x = clampFI32(R127i.x); // Divide looks good same as above line---------------------------------------------------------------------------------------------------- -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(uf_remappedPS[1].y)) + intBitsToFloat(PV1i.y))); // Default implmentation division took place here -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R5i.w)) + intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R4i.z))); -// 11 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.w))); -PV1i.x = R124i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z)); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c00000) + intBitsToFloat(0xc1700000))); -PV1i.w = R123i.w; -// 12 -R125i.x = floatBitsToInt(max(intBitsToFloat(PV1i.y), -(intBitsToFloat(PV1i.y)))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.x)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(0x41200000))); -PV0i.z = R123i.z; -// 13 -R126i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.z))); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -R126i.w = ((intBitsToFloat(R125i.x) >= intBitsToFloat(PV1i.x))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R126i.w; -// 15 -R6i.x = floatBitsToInt(((PV0i.w == 0)?(intBitsToFloat(R127i.y)):(-(intBitsToFloat(R127i.y))))); -PV1i.x = R6i.x; -R123i.z = ((PV0i.w == 0)?(R126i.x):(R125i.x)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -// 16 --- Point of Interest -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); // Important Doubling improves curves and clarity -R123i.y = ((R126i.w == 0)?(R124i.x):(R127i.z)); -PV0i.y = R123i.y; -R3i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f400000)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * 0.25); -PS0i = R4i.x; -// 17 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.w)); -R4i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -PV1i.w = R4i.w; -// 18 -R3i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(PV1i.x)); -R3i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(PV1i.z)); -R1i.z = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.x)); -R1i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.z)); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.w))); -PS0i = R2i.x; -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R2i.x; -R2i.x = ((0.0 > intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R3i.x))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R3i.y))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -// 3 -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -// 4 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg1i))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R2i.z))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R2i.w))); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R1i.x))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R1i.y))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -// 1 -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -// 3 -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R123i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -// 4 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg1i))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R1i.w))); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * 1.5 + intBitsToFloat(R3i.x))); -R1i.y = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * 1.5 + intBitsToFloat(R3i.y))); -R2i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * 1.5 + intBitsToFloat(backupReg0i))); -R2i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * 1.5 + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.z)) + vec3(-(intBitsToFloat(PV0i.w)),-(intBitsToFloat(PV0i.z)),intBitsToFloat(PV0i.x))); -R1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R3i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(PV0i.x))); -R3i.y = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(PV0i.w))); -R1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R1i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -R3i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.w))); -R3i.y = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(PV0i.z))); -R2i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -R2i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -backupReg0i = R2i.z; -backupReg1i = R2i.w; -R1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.x))); -R1i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R2i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R3i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R3i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R3i.x)); -// 1 -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.z))); -// 3 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); -// 5 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R2i.z)) + vec3(-(intBitsToFloat(PV0i.w)),-(intBitsToFloat(PV0i.z)),intBitsToFloat(PV0i.x))); -R1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.y)); -} -if( activeMaskStackC[2] == true ) { -R2i.w = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.xy)).x); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R2i.w)); -// 1 -PV1i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.x) + -(intBitsToFloat(PV1i.x))); -// 3 -R123i.z = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R123i.z; -R123i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); -// 5 -backupReg0i = R1i.z; -backupReg1i = R1i.w; -R5i.x = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * intBitsToFloat(0x41000000) + intBitsToFloat(R1i.x))); -R5i.y = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x41000000) + intBitsToFloat(R1i.y))); -R1i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x41000000) + intBitsToFloat(backupReg0i))); -R1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x41000000) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R1i.y = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R5i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R1i.zw)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R5i.x))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y)); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(R5i.y))); -PS0i = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R1i.z)); -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS0i))); -PV1i.z = ((0.0 > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.y))); -PS1i = ((0.0 > intBitsToFloat(PV0i.x))?int(0xFFFFFFFF):int(0x0)); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = (PV1i.z != R2i.x)?int(0xFFFFFFFF):int(0x0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R126i.w = (PS1i != R2i.x)?int(0xFFFFFFFF):int(0x0); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x)); -R126i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); -PV1i.z = ((intBitsToFloat(PV0i.x) > intBitsToFloat(PV0i.z))?int(0xFFFFFFFF):int(0x0)); -// 4 -backupReg0i = R127i.y; -R127i.y = ((PV1i.z == 0)?(R126i.w):(backupReg0i)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -// 6 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 0.5); -// 7 -R123i.x = ((R127i.y == 0)?(0):(PV0i.y)); -PV1i.x = R123i.x; -// 8 -PV0i.w = floatBitsToInt(max(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.x))); -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV0i.w))); -// 10 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -passPixelColor0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/141f484aff9b9f5a_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/141f484aff9b9f5a_0000000000000000_vs.txt deleted file mode 100644 index 51330e7d..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/141f484aff9b9f5a_0000000000000000_vs.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 141f484aff9b9f5a -// Used for: Anti-Aliasing Color Mix - -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[3]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[3]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem2; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R123f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = intBitsToFloat(uf_remappedVS[0].x); -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[1].x) + 0.5; -// 1 -R123f.x = (mul_nonIEEE(-(PS0f),intBitsToFloat(uf_remappedVS[2].y)/resYScale) + R2f.y); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(-(PS0f),intBitsToFloat(uf_remappedVS[2].x)/resXScale) + R2f.x); -PV1f.y = R123f.y; -// 2 -R2f.z = PV1f.y; -R2f.w = PV1f.x; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem2 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/15afdae4307b9a3d_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/15afdae4307b9a3d_0000000000000000_vs.txt deleted file mode 100644 index 2d3032d0..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/15afdae4307b9a3d_0000000000000000_vs.txt +++ /dev/null @@ -1,103 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 15afdae4307b9a3d -// Used for: Vertical Ambient-Occlusion Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = -(1.0); -R1f.w = 1.0; -R0f.x = R2f.x; -PS0f = R0f.x; -// 1 -backupReg0f = R2f.y; -R0f.y = R2f.y; -R2f.z = R2f.y + intBitsToFloat(uf_remappedVS[0].y)/resYScale; -R2f.w = R2f.y; -R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].y))/resYScale; -PS1f = R2f.y; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Resolutions/BreathOfTheWild_Resolution/1a14de8e58d5b30a_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 936e95f8..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,248 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 1a14de8e58d5b30a -// Used for: Restoring the native BotW Anti-Aliasing implementation -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 2) out vec4 passParameterSem2; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 4) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.y = 0x3f800000; -PV0i.z = 0x3f800000; -PV0i.w = 0x40400000; -R127i.z = 0xbf800000; -PS0i = R127i.z; -// 1 -R123i.x = ((PV0i.x == 0)?(PV0i.z):(0xc0400000)); -PV1i.x = R123i.x; -R123i.y = ((PV0i.x == 0)?(PV0i.w):(0xbf800000)); -PV1i.y = R123i.y; -R0i.z = 0; -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x3b808081)); -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 2 -R2i.x = ((R0i.x == 0)?(R127i.z):(PV1i.y)); -PV0i.x = R2i.x; -R2i.y = ((R0i.x == 0)?(R127i.y):(PV1i.x)); -PV0i.y = R2i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = 0x3ec00000; -R0i.x = 0x3eeaaaab; -PS0i = R0i.x; -// 3 -R1i.x = 0x3d2aaaab; -R0i.y = 0; -R1i.z = 0; -R1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R5i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PS1i = R5i.x; -R3i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wz)).xyz); -R0i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.xy)).xyz); -R4i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R1i.xz)).y); -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -// 0 -R127i.x = uf_remappedVS[1].z; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -PV0i.x = R127i.x; -R5i.y = floatBitsToInt((intBitsToFloat(R1i.w) * 0.5 + 0.5)); -PV0i.y = R5i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0); -R127i.w = R2i.x; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0); -R1i.z = R5i.x; -PS0i = R1i.z; -// 1 -backupReg0i = R2i.y; -R2i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.x) * 2.0); -PV1i.x = R2i.x; -R2i.y = uf_remappedVS[3].y; -R2i.y = floatBitsToInt(intBitsToFloat(R2i.y) * 2.0); -PV1i.y = R2i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -R1i.w = PV0i.y; -PV1i.w = R1i.w; -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); -PS1i = R126i.y; -// 2 -backupReg0i = R127i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x)); -PS0i = R127i.y; -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z)); -R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x)); -R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y))); -PS1i = R125i.w; -// 4 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale); -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0); -R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); -PS0i = R125i.z; -// 5 -backupReg0i = R126i.x; -backupReg1i = R126i.w; -backupReg2i = R126i.y; -R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i)); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R125i.y))); -PS1i = R124i.w; -// 6 -backupReg0i = R0i.y; -backupReg1i = R0i.x; -backupReg2i = R125i.w; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R3i.z)) + intBitsToFloat(R0i.z)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R3i.y)) + intBitsToFloat(backupReg0i)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R127i.z))); -R2i.z = backupReg2i; -PS0i = R2i.z; -// 7 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R5i.y)) + intBitsToFloat(R3i.x))); -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R3i.y))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R5i.y)) + intBitsToFloat(R3i.z))); -R2i.w = R126i.z; -R5i.z = R127i.y; -PS1i = R5i.z; -// 8 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.w)) + 0.5)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R125i.z)) + 0.5)); -R3i.z = R126i.y; -R5i.w = R127i.x; -R3i.w = R126i.x; -PS0i = R3i.w; -// 9 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R126i.w))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R124i.z))); -R0i.z = R124i.w; -R0i.w = R125i.w; -// export -passParameterSem2 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -// export -// skipped export to semanticId 255 -// export -passParameterSem0 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -// export -passParameterSem6 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.x), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/381d034349896360_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 46243c13..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,132 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 381d034349896360 -// Used for: Horizontal Volumetric Light Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -R127f.x = -(R1f.y); -PV0f.x = R127f.x; -R127f.y = (R1f.x > 0.0)?1.0:0.0; -R127f.y /= 2.0; -R127f.z = (0.0 > R1f.x)?1.0:0.0; -R127f.z /= 2.0; -R127f.w = 1.0; -PV0f.w = R127f.w; -// 1 -R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w))); -PV1f.x = R0f.x; -PV1f.y = R0f.x; -PV1f.z = R0f.x; -PV1f.w = R0f.x; -R126f.z = (PV0f.x > 0.0)?1.0:0.0; -R126f.z /= 2.0; -PS1f = R126f.z; -// 2 -backupReg0f = R127f.x; -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.y = tempf.x; -R127f.x = (0.0 > backupReg0f)?1.0:0.0; -R127f.x /= 2.0; -PS0f = R127f.x; -// 3 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R0f.z = tempf.x; -R126f.w = R127f.y + -(R127f.z); -PS1f = R126f.w; -// 4 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.w = tempf.x; -PS0f = R126f.z + -(R127f.x); -// 5 -PV1f.x = PS0f + 0.5; -PV1f.y = R126f.w + 0.5; -// 6 -R1f.x = PV1f.x; -R1f.y = (-(intBitsToFloat(uf_remappedVS[4].z)) * 0.5 / resXScale + PV1f.y); -R1f.z = (intBitsToFloat(uf_remappedVS[4].z) * 0.5 / resXScale + PV1f.y); -R1f.w = PV1f.y; -// export -SET_POSITION(vec4(R0f.x, R0f.y, R0f.z, R0f.w)); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/44b73ce02e05c2e6_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/44b73ce02e05c2e6_0000000000000000_vs.txt deleted file mode 100644 index 5f699df3..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/44b73ce02e05c2e6_0000000000000000_vs.txt +++ /dev/null @@ -1,123 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 44b73ce02e05c2e6 -// Used for: Vertical Self-Shadowing Mask Fix Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = intBitsToFloat(0xbf5fdfe0); -R1f.w = 1.0; -R127f.x = intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x3fb13a93) / resYScale; -PS0f = R127f.x; -// 1 -R126f.x = intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x404ec4f0) / resYScale; -PV1f.x = R126f.x; -R3f.y = R2f.y; -R3f.z = R2f.x; -R2f.w = R2f.y; -PV1f.w = R2f.w; -R2f.z = R2f.y + PS0f; -PS1f = R2f.z; -// 2 -R0f.x = R2f.x; -R0f.y = R2f.y + -(R127f.x); -R0f.z = PS1f; -R0f.w = PV1f.w; -R2f.z = R2f.y + PV1f.x; -PS0f = R2f.z; -// 3 -backupReg0f = R2f.y; -backupReg0f = R2f.y; -R2f.y = backupReg0f + -(R126f.x); -R2f.w = backupReg0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Resolutions/BreathOfTheWild_Resolution/4721609a424e9a1f_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 70679d81..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,214 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 4721609a424e9a1f -// Used for: Restoring the native BotW Anti-Aliasing implementation -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem4; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 2) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.y = 0x3f800000; -PV0i.z = 0x3f800000; -PV0i.w = 0x40400000; -R127i.z = 0xbf800000; -PS0i = R127i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x3b808081)); -R123i.y = ((PV0i.x == 0)?(PV0i.w):(0xbf800000)); -PV1i.y = R123i.y; -R0i.z = 0; -R123i.w = ((PV0i.x == 0)?(PV0i.z):(0xc0400000)); -PV1i.w = R123i.w; -R1i.w = 0x3f800000; -PS1i = R1i.w; -// 2 -R1i.x = ((R0i.x == 0)?(R127i.z):(PV1i.y)); -PV0i.x = R1i.x; -R1i.y = ((R0i.x == 0)?(R127i.y):(PV1i.w)); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); -R1i.z = floatBitsToInt(intBitsToFloat(R1i.z) * 2.0); -R0i.w = 0x3d2aaaab; -R0i.x = 0x3e000000; -PS0i = R0i.x; -// 3 -R5i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PV1i.x = R5i.x; -R0i.y = 0; -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R4i.w = uf_remappedVS[1].z; -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -PV1i.w = R4i.w; -R4i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R4i.x = floatBitsToInt(intBitsToFloat(R4i.x) / 2.0); -PS1i = R4i.x; -// 4 -R3i.x = floatBitsToInt(-(intBitsToFloat(R1i.y))); -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -R5i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + 0.5)); -R6i.z = PV1i.x; -R3i.w = R1i.x; -R3i.w = floatBitsToInt(intBitsToFloat(R3i.w) / 2.0); -R3i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(0.5)); -PS0i = R3i.y; -R2i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wz)).x); -R2i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.xy)).xyz); -// export -SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w))); -// export -// skipped export to semanticId 255 -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(0.5)); -R2i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R2i.y = floatBitsToInt(intBitsToFloat(R2i.y) * 2.0); -PV0i.y = R2i.y; -R127i.z = uf_remappedVS[3].y; -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -R6i.w = R5i.y; -PV0i.w = R6i.w; -PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x)); -R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale); -R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i))); -PS1i = R127i.y; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0); -R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0); -R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale); -R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0); -PS0i = R124i.y; -// 3 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -backupReg2i = R127i.y; -R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R3i.y)); -R5i.z = backupReg2i; -PS1i = R5i.z; -// 4 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R126i.w)) + 0.5)); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R126i.y))); -R5i.w = R125i.y; -PS0i = R5i.w; -// 5 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R127i.w))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R126i.z)) + 0.5)); -R3i.z = R124i.y; -R3i.w = R127i.x; -R4i.z = PV0i.w; -PS1i = R4i.z; -// 6 -R4i.w = R127i.y; -// export -passParameterSem4 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -// export -// skipped export to semanticId 255 -// export -passParameterSem0 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -// export -passParameterSem6 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.x), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/5c1761d13feccdff_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 37624435..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,103 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5c1761d13feccdff -// Used for: Vertical+Horizontal Fullscreen Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem3; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = intBitsToFloat(0xbf800000); -R1f.w = 1.0; -PS0f = R2f.x + -(intBitsToFloat(uf_remappedVS[0].x)/resXScale); -// 1 -backupReg0f = R2f.y; -backupReg1f = R2f.x; -PV1f.x = R2f.y + -(intBitsToFloat(uf_remappedVS[0].y)/resYScale); -R2f.y = backupReg0f + intBitsToFloat(uf_remappedVS[0].y)/resYScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/5c975b0e3dac0562_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 46e3afef..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 5c975b0e3dac0562 -// Used for: Horizontal Bloom Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 0.0; -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[0].x) / resXScale * intBitsToFloat(0x3fb13a93); -// 1 -PV1f.x = intBitsToFloat(uf_remappedVS[0].x) / resXScale * intBitsToFloat(0x404ec4f0); -R0f.y = R2f.x + -(PS0f); -R0f.z = R2f.x + PS0f; -R0f.w = R2f.x; -R0f.x = R2f.y; -PS1f = R0f.x; -// 2 -backupReg0f = R2f.x; -backupReg0f = R2f.x; -backupReg0f = R2f.x; -R2f.x = PS1f; -R2f.y = backupReg0f + -(PV1f.x); -R2f.z = backupReg0f + PV1f.x; -R2f.w = backupReg0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/75a85b0cbcab764b_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 8689b6e9..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 75a85b0cbcab764b -// Used for: Horizontal Reflection Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 0.0; -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[0].x) / resXScale * intBitsToFloat(0x3fb13a93); -// 1 -PV1f.x = intBitsToFloat(uf_remappedVS[0].x) / resXScale * intBitsToFloat(0x404ec4f0); -R0f.y = R2f.x + -(PS0f); -R0f.z = R2f.x + PS0f; -R0f.w = R2f.x; -R0f.x = R2f.y; -PS1f = R0f.x; -// 2 -backupReg0f = R2f.x; -backupReg0f = R2f.x; -backupReg0f = R2f.x; -R2f.x = PS1f; -R2f.y = backupReg0f + -(PV1f.x); -R2f.z = backupReg0f + PV1f.x; -R2f.w = backupReg0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/771e24915acbb074_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 8156781c..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,117 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 771e24915acbb074 -// Used for: Vertical Reflection Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 0.0; -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[0].y) / resYScale * intBitsToFloat(0x3fb13a93); -// 1 -R127f.x = intBitsToFloat(uf_remappedVS[0].y) / resYScale * intBitsToFloat(0x404ec4f0); -PV1f.x = R127f.x; -R0f.y = R2f.y + -(PS0f); -R2f.z = R2f.y + PS0f; -PV1f.z = R2f.z; -R2f.w = R2f.y; -PV1f.w = R2f.w; -R0f.x = R2f.x; -PS1f = R0f.x; -// 2 -R0f.z = PV1f.z; -R0f.w = PV1f.w; -R2f.z = R2f.y + PV1f.x; -PS0f = R2f.z; -// 3 -backupReg0f = R2f.y; -backupReg0f = R2f.y; -R2f.y = backupReg0f + -(R127f.x); -R2f.w = backupReg0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/81eb264a750163d9_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index b3bf62d9..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,132 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 81eb264a750163d9 -// Used for: Vertical Volumetric Light Blur -// volumetric light blur v -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -R127f.x = -(R1f.y); -PV0f.x = R127f.x; -R126f.y = (0.0 > R1f.x)?1.0:0.0; -R126f.y /= 2.0; -R127f.z = (R1f.x > 0.0)?1.0:0.0; -R127f.z /= 2.0; -R127f.w = 1.0; -PV0f.w = R127f.w; -// 1 -R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w))); -PV1f.x = R0f.x; -PV1f.y = R0f.x; -PV1f.z = R0f.x; -PV1f.w = R0f.x; -R127f.y = (PV0f.x > 0.0)?1.0:0.0; -R127f.y /= 2.0; -PS1f = R127f.y; -// 2 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.y = tempf.x; -PS0f = (0.0 > R127f.x)?1.0:0.0; -PS0f /= 2.0; -// 3 -backupReg0f = R127f.y; -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R0f.z = tempf.x; -R127f.y = backupReg0f + -(PS0f); -PS1f = R127f.y; -// 4 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.w = tempf.x; -PS0f = R127f.z + -(R126f.y); -// 5 -PV1f.x = R127f.y + 0.5; -R1f.x = PS0f + 0.5; -PS1f = R1f.x; -// 6 -R1f.y = (-(intBitsToFloat(uf_remappedVS[4].w)) * 0.5 / resYScale + PV1f.x); -R1f.z = (intBitsToFloat(uf_remappedVS[4].w) * 0.5 / resYScale + PV1f.x); -R1f.w = PV1f.x; -// export -SET_POSITION(vec4(R0f.x, R0f.y, R0f.z, R0f.w)); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/8cab2ed476b991ea_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 8df4cfb1..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,109 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8cab2ed476b991ea -// Used for: Restoring the native BotW Anti-Aliasing implementation -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 1.0; -R0f.w = R2f.x; -PV0f.w = R0f.w; -R0f.y = R2f.y; -PS0f = R0f.y; -// 1 -PV1f.x = -(intBitsToFloat(uf_remappedVS[0].w)/resYScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resXScale); -PV1f.y /= 2.0; -R2f.x = (mul_nonIEEE(PV0f.w,intBitsToFloat(uf_remappedVS[0].x)*resXScale) + 0.5); -PS1f = R2f.x; -// 2 -R2f.y = (mul_nonIEEE(R0f.y,intBitsToFloat(uf_remappedVS[0].y)*resYScale) + 0.5); -R2f.z = PV1f.y; -R2f.w = PV1f.x; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.z)); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -passParameterSem0 = vec4(R0f.w, R0f.y, R0f.z, R0f.z); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/93f16bf1d083933b_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/93f16bf1d083933b_0000000000000000_vs.txt deleted file mode 100644 index 2210e49d..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/93f16bf1d083933b_0000000000000000_vs.txt +++ /dev/null @@ -1,120 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 93f16bf1d083933b -// Used for: Horizontal Self-Shadowing Mask Fix Blur -// Self shadowing mask fix - h blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R4f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = intBitsToFloat(0xbf5fdfe0); -R1f.w = 1.0; -R127f.y = intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x3fb13a93) / resXScale; -PS0f = R127f.y; -// 1 -R127f.x = intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x404ec4f0) / resXScale; -PV1f.x = R127f.x; -R4f.y = R2f.y; -R4f.z = R2f.x; -R3f.w = R2f.x; -R3f.x = R2f.y; -PS1f = R3f.x; -// 2 -R0f.x = PS1f; -R3f.y = R2f.x + -(R127f.y); -R3f.z = R2f.x + R127f.y; -R0f.w = R2f.x; -R0f.y = R2f.x + -(PV1f.x); -PS0f = R0f.y; -// 3 -R0f.z = R2f.x + R127f.x; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R3f.x, R3f.y, R3f.z, R3f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Resolutions/BreathOfTheWild_Resolution/a1cb9f79d093badb_0000f0f0ff34db6d_ps.txt b/Resolutions/BreathOfTheWild_Resolution/a1cb9f79d093badb_0000f0f0ff34db6d_ps.txt deleted file mode 100644 index 112cfc0c..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/a1cb9f79d093badb_0000f0f0ff34db6d_ps.txt +++ /dev/null @@ -1,562 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a1cb9f79d093badb -// Used for: Restoring the native BotW Anti-Aliasing implementation from water edges -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 8) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[20]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[20]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(9, 1, 5) uniform sampler2DArray textureUnitPS9; -TEXTURE_LAYOUT(10, 1, 6) uniform sampler2DArray textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2DArray textureUnitPS11; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 2) in vec4 passParameterSem2; -layout(location = 3) in vec4 passParameterSem3; -layout(location = 4) in vec4 passParameterSem4; -layout(location = 5) in vec4 passParameterSem5; -layout(location = 6) in vec4 passParameterSem11; -layout(location = 7) in vec4 passParameterSem7; -layout(location = 8) in vec4 passParameterSem8; -layout(location = 9) in vec4 passParameterSem9; -layout(location = 10) in vec4 passParameterSem10; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 3) out vec4 passPixelColor3; -layout(location = 5) out vec4 passPixelColor5; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem1); -R2i = floatBitsToInt(passParameterSem2); -R3i = floatBitsToInt(passParameterSem3); -R4i = floatBitsToInt(passParameterSem4); -R5i = floatBitsToInt(passParameterSem5); -R6i = floatBitsToInt(passParameterSem11); -R7i = floatBitsToInt(passParameterSem7); -R8i = floatBitsToInt(passParameterSem8); -R9i = floatBitsToInt(passParameterSem9); -R10i = floatBitsToInt(passParameterSem10); -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_remappedPS[0].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_remappedPS[1].x))); -R127i.z = R9i.z; -R127i.w = R9i.w; -R126i.z = 0; -PS0i = R126i.z; -// 1 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(uf_remappedPS[1].y)) + intBitsToFloat(PV0i.y))); -R127i.y = R9i.y; -R15i.z = floatBitsToInt(roundEven(1.0)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R126i.x = floatBitsToInt(1.0 / intBitsToFloat(R6i.w)); -PS1i = R126i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.w),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.w),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(PV1i.w))); -PS0i = R122i.x; -// 3 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].w) + intBitsToFloat(PS0i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(uf_remappedPS[1].z)) + intBitsToFloat(R127i.x))); -PV1i.z = R123i.z; -R12i.w = floatBitsToInt(roundEven(intBitsToFloat(R127i.y))); -PV1i.w = R12i.w; -R19i.z = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R19i.z; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3cdd67c9)); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[1].w) + intBitsToFloat(PV1i.z)); -R11i.z = PV1i.w; -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3fb6db6e)); -PV0i.w = clampFI32(PV0i.w); -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R127i.x; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R8i.z)), intBitsToFloat(uf_remappedPS[2].y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f333333)); -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3cbe82fa) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R6i.w = R4i.z; -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R126i.x))); -PS1i = R14i.y; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_remappedPS[3].z)); -R6i.y = R4i.w; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_remappedPS[3].y)); -R12i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R12i.z; -// 7 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.z))); -R6i.z = R12i.w; -PS1i = R6i.z; -// 8 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.x))); -PV0i.y = R0i.y; -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.z))); -PV0i.z = R9i.z; -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -PV0i.w = R9i.w; -R122i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * 2.0 + -(1.0))); -PS0i = R122i.x; -// 9 -R12i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV0i.w)); -R12i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.y)); -R14i.z = floatBitsToInt(max(intBitsToFloat(PS0i), -(intBitsToFloat(PS0i)))); -R11i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV0i.x)); -R11i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.z)); -PS1i = R11i.y; -R11i.xy = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R11i.w),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z))).xy); -R9i.xy = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R12i.x),intBitsToFloat(R12i.y),intBitsToFloat(R12i.w))).xy); -R11i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R14i.xy)).x); -R6i.xy = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z))).xy); -R16i.x = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R14i.xy)).y); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.w),intBitsToFloat(uf_remappedPS[4].x)) + intBitsToFloat(uf_remappedPS[5].x))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(R11i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(uf_remappedPS[5].x)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(R11i.x)); -R11i.x = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(R9i.w)); -PS0i = R11i.x; -// 1 -backupReg0i = R0i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R14i.z)) + intBitsToFloat(R9i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(R8i.z)) + -(intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R14i.z)) + intBitsToFloat(R9i.y))); -PV1i.z = R123i.z; -R11i.w = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(backupReg0i)); -R11i.z = R12i.w; -PS1i = R11i.z; -// 2 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(max(-(intBitsToFloat(PV1i.y)), 0.0)); -R16i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.y = R16i.y; -R13i.z = R12i.w; -R6i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.w = R6i.w; -R13i.x = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(backupReg0i)); -PS0i = R13i.x; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), 1.0)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PV0i.y))); -R13i.w = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(R9i.z)); -R11i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.z)), intBitsToFloat(uf_remappedPS[6].x))); -PS1i = R11i.y; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(PV1i.z)) + intBitsToFloat(R14i.y))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(uf_remappedPS[8].y)) + intBitsToFloat(R1i.w))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(uf_remappedPS[8].x)) + intBitsToFloat(R1i.z))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R14i.x))); -PV0i.w = R123i.w; -R4i.z = R12i.w; -PS0i = R4i.z; -// 5 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R14i.x)) + intBitsToFloat(PV0i.w)); -R0i.z = R12i.w; -R0i.w = floatBitsToInt(intBitsToFloat(R9i.w) + intBitsToFloat(PV0i.z)); -R0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PS1i = R0i.y; -// 6 -backupReg0i = R9i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(R14i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(R14i.x))); -PV0i.y = R123i.y; -R9i.z = R12i.w; -R9i.w = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R127i.z)); -R9i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R126i.y)); -PS0i = R9i.y; -// 7 -R0i.x = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x)*resXScale, intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y)*resYScale, intBitsToFloat(PV0i.x))); -R12i.w = floatBitsToInt(-(intBitsToFloat(R14i.x)) + intBitsToFloat(PV0i.y)); -R12i.x = uf_remappedPS[10].x; -PS1i = R12i.x; -// 8 -PV0i.x = floatBitsToInt(floor(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(floor(intBitsToFloat(PV1i.z))); -R1i.z = uf_remappedPS[10].y; -R1i.w = uf_remappedPS[10].z; -R2i.w = 0x3f800000; -PS0i = R2i.w; -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -R12i.y = 0x3f800000; -R16i.z = R2i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R18i.z = R10i.x; -PS1i = R18i.z; -// 10 -backupReg0i = R2i.y; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z)/resXScale, intBitsToFloat(PV1i.w))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].w)/resYScale, intBitsToFloat(PV1i.x))); -R17i.z = R2i.z; -R5i.w = backupReg0i; -R8i.w = R10i.y; -PS0i = R8i.w; -R2i.z = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -R2i.xy = floatBitsToInt(texture(textureUnitPS7, vec3(intBitsToFloat(R11i.x),intBitsToFloat(R11i.w),intBitsToFloat(R11i.z))).xy); -R13i.xy = floatBitsToInt(texture(textureUnitPS7, vec3(intBitsToFloat(R13i.x),intBitsToFloat(R13i.w),intBitsToFloat(R13i.z))).xy); -R4i.xy = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xy); -R6i.xyz = floatBitsToInt(texture(textureUnitPS9, vec3(intBitsToFloat(R0i.w),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); -R9i.xyz = floatBitsToInt(texture(textureUnitPS9, vec3(intBitsToFloat(R9i.w),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z))).xyz); -// 0 -backupReg0i = R11i.y; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(R13i.x)); -R11i.y = R10i.z; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(R13i.y)); -PV0i.w = ((intBitsToFloat(backupReg0i) > intBitsToFloat(R2i.z))?int(0xFFFFFFFF):int(0x0)); -R9i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(uf_remappedPS[11].x)) + intBitsToFloat(uf_remappedPS[12].x))); -R9i.w = clampFI32(R9i.w); -PS0i = R9i.w; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R14i.z)) + intBitsToFloat(R2i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R14i.z)) + intBitsToFloat(R2i.y))); -PV1i.y = R123i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(uf_remappedPS[11].x)) + intBitsToFloat(uf_remappedPS[12].y))); -R0i.z = clampFI32(R0i.z); -R123i.w = ((PV0i.w == 0)?(0x3f800000):(0)); -PV1i.w = R123i.w; -R2i.x = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PS1i = R2i.x; -// 2 -R15i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R14i.x))); -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R14i.y))); -R2i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV0i.z = R2i.z; -R12i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(uf_remappedPS[11].x)) + intBitsToFloat(uf_remappedPS[12].z))); -R4i.z = clampFI32(R4i.z); -PS0i = R4i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R12i.z = tempi.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -PS1i = R2i.y; -R14i.y = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R15i.xy)).x); -R15i.xyz = floatBitsToInt(texture(textureUnitPS2, vec3(intBitsToFloat(R15i.x),intBitsToFloat(R15i.y),intBitsToFloat(R15i.z))).xyz); -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),intBitsToFloat(R12i.w)) + intBitsToFloat(R2i.y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(R2i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(R14i.y)) + intBitsToFloat(uf_remappedPS[5].x))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R16i.y) + intBitsToFloat(R12i.w)); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R12i.z))); -// 1 -R127i.x = floatBitsToInt(-(intBitsToFloat(R8i.z)) + -(intBitsToFloat(PV0i.z))); -R125i.y = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x40008102) + intBitsToFloat(0xbf810204))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(R9i.x)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS1i))); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R14i.z)) + intBitsToFloat(R6i.x))); -R127i.z = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -PS0i = R127i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),intBitsToFloat(R12i.y)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),intBitsToFloat(R2i.w)))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.x = uf_remappedPS[13].w; -PS1i = R126i.x; -// 4 -R125i.x = uf_remappedPS[14].w; -PV0i.y = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(R9i.y)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R6i.z)) + intBitsToFloat(R9i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].z),-(intBitsToFloat(PV1i.x))) + intBitsToFloat(uf_remappedPS[15].z))); -PV0i.w = R123i.w; -R124i.w = floatBitsToInt(-(intBitsToFloat(R7i.w)) + intBitsToFloat(R10i.w)); -PS0i = R124i.w; -// 5 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R14i.z)) + intBitsToFloat(R6i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(backupReg0i)))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R14i.z)) + intBitsToFloat(R6i.z))); -PV1i.w = floatBitsToInt(intBitsToFloat(R16i.x) * intBitsToFloat(0x437f0000)); -R10i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[16].z) * intBitsToFloat(0x437f0000)); -PS1i = R10i.w; -// 6 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV1i.y)); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(R16i.z) + intBitsToFloat(PV1i.y)); -R127i.w = floatBitsToInt(intBitsToFloat(R17i.z) + intBitsToFloat(PV1i.y)); -R124i.y = int(uint(intBitsToFloat(PV1i.w))); -PS0i = R124i.y; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.y),intBitsToFloat(R126i.w),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R126i.w),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(PV0i.z))); -R126i.z = clampFI32(R126i.z); -PS1i = R126i.z; -// 8 -backupReg0i = R126i.x; -backupReg1i = R11i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(backupReg0i))); -R126i.x = clampFI32(R126i.x); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R127i.y))); -R11i.y = clampFI32(R11i.y); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[17].z), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R127i.w))); -PV0i.w = clampFI32(PV0i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R123i.y = floatBitsToInt((intBitsToFloat(R19i.z) * intBitsToFloat(0x41200000) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R3i.w))); -PS1i = R126i.y; -// 10 -backupReg0i = R0i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.y))); -PV0i.x = clampFI32(PV0i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(-(intBitsToFloat(R126i.x)) + 1.0); -// 11 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.y))); -PV1i.x = R126i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[18].x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R126i.y; -R127i.z = PV0i.z; -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -R127i.w = clampFI32(R127i.w); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PS0i)); -PS1i = R126i.w; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = log2(intBitsToFloat(R126i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -backupReg0i = R125i.z; -backupReg1i = R127i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[15].w), intBitsToFloat(PS0i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(R127i.w))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.w)) + intBitsToFloat(R127i.w))); -R125i.z = clampFI32(R125i.z); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.w)) + intBitsToFloat(backupReg1i))); -R127i.w = clampFI32(R127i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -R126i.z = floatBitsToInt(tempResultf); -PS1i = R126i.z; -// 14 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R7i.w))); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R125i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -R125i.w = clampFI32(R125i.w); -PS0i = R125i.w; -// 15 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PS0i))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].y), intBitsToFloat(PV0i.x))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV0i.y))); -R124i.z = clampFI32(R124i.z); -PS1i = R124i.z; -// 16 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R125i.z))); -R125i.y = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV1i.w)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV1i.y))); -PS0i = int(uint(intBitsToFloat(R10i.w))); -// 17 -PV1i.x = R124i.y | PS0i; -R124i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(R125i.x))); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].x), intBitsToFloat(R126i.x))); -R124i.w = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(R7i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[19].z), intBitsToFloat(R126i.x))); -PS1i = R126i.w; -// 18 -R126i.x = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(0x427f0000)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R126i.z))); -PV0i.y = R127i.y; -R5i.z = 0x3db0b0b1; -R5i.w = 0x3f800000; -R127i.z = floatBitsToInt(float(uint(PV1i.x))); -PS0i = R127i.z; -// 19 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(R7i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].y),intBitsToFloat(PV0i.y)) + intBitsToFloat(R125i.y))/2.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R0i.z)) + intBitsToFloat(backupReg0i))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(R125i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R126i.w))/2.0); -PS1i = R125i.y; -// 20 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 4.0); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[10].x),intBitsToFloat(R127i.y)) + intBitsToFloat(R3i.z))/2.0); -R3i.w = 0x3f800000; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV1i.z))); -PS0i = R0i.x; -// 21 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.x),-(intBitsToFloat(R125i.w))) + intBitsToFloat(R15i.x))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.y),-(intBitsToFloat(R125i.w))) + intBitsToFloat(R15i.y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(R127i.w))); -R0i.w = 0x3b808081; -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),-(intBitsToFloat(R125i.w))) + intBitsToFloat(R15i.z))); -PS1i = R3i.z; -// 22 -R11i.x = floatBitsToInt(intBitsToFloat(R125i.z) + 0.5); -R5i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(0x3b808081)); -R11i.z = floatBitsToInt(intBitsToFloat(R125i.y) + 0.5); -R11i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3b808081)); -R11i.y = floatBitsToInt(intBitsToFloat(R126i.y) + 0.5); -PS0i = R11i.y; -// 0 -R4i.xyz = ivec3(R3i.x,R3i.y,R3i.z); -R4i.w = R3i.w; -// 1 -R3i.xyz = ivec3(R11i.x,R11i.y,R11i.z); -R3i.w = R11i.w; -// 2 -R2i.xyz = ivec3(R0i.x,R0i.y,R0i.z); -R2i.w = R0i.w; -// 3 -R1i.xyz = ivec3(R5i.z,R5i.y,R5i.z); -R1i.w = R5i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -passPixelColor1 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -passPixelColor3 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)); -passPixelColor5 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Resolutions/BreathOfTheWild_Resolution/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index 9396ac46..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,127 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a5b3a5e5ab2938bc -// Used for: Restoring the native BotW Anti-Aliasing implementation -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f = passParameterSem1; -R2f.w = (texture(textureUnitPS1, R0f.xy).x); -R0f.xyzw = (textureGather(textureUnitPS2, R0f.xy).xyzw); -// 0 -backupReg0f = R0f.y; -backupReg1f = R0f.x; -PV0f.x = -(R2f.w) + R0f.w; -PV0f.y = -(R2f.w) + R0f.z; -PV0f.z = -(R2f.w) + backupReg0f; -PV0f.w = -(R2f.w) + backupReg1f; -PS0f = R2f.w + intBitsToFloat(uf_remappedPS[0].x); -// 1 -R127f.x = max(PV0f.w, -(PV0f.w)); -PV1f.y = max(PV0f.z, -(PV0f.z)); -R127f.z = max(PV0f.y, -(PV0f.y)); -R127f.w = max(PV0f.x, -(PV0f.x)); -PS1f = 1.0 / PS0f; -// 2 -R126f.x = intBitsToFloat(uf_remappedPS[1].w) * PS1f; -R127f.y = PV1f.y * -(1.0); -R126f.z = floor(R1f.y); -R125f.w = floor(R1f.x); -PV0f.w = R125f.w; -PS0f = PV1f.y * -(1.0); -// 3 -tempf.x = dot(vec4(R127f.w,R127f.z,R127f.x,PS0f),vec4(1.0,-(1.0),1.0,1.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R126f.w = tempf.x; -R126f.y = R1f.x + -(PV0f.w); -PS1f = R126f.y; -// 4 -tempf.x = dot(vec4(R127f.w,R127f.x,R127f.z,R127f.y),vec4(1.0,-(1.0),1.0,1.0)); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -PS0f = R1f.y + -(R126f.z); -// 5 -R123f.x = (mul_nonIEEE(R126f.x,PV0f.x) + PS0f); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV1f.x = R123f.x; -R123f.y = (mul_nonIEEE(R126f.x,R126f.w) + R126f.y); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV1f.y = R123f.y; -// 6 -PV0f.z = R126f.z + PV1f.x; -PV0f.w = R125f.w + PV1f.y; -// 7 -R1f.x = (mul_nonIEEE(PV0f.w,intBitsToFloat(uf_remappedPS[2].z)/resXScale) + R1f.z); -R1f.y = (mul_nonIEEE(PV0f.z,intBitsToFloat(uf_remappedPS[2].w)/resYScale) + R1f.w); -R1f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw); -// export -passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/b4a729584b6188ea_0000000000001e49_ps.txt b/Resolutions/BreathOfTheWild_Resolution/b4a729584b6188ea_0000000000001e49_ps.txt deleted file mode 100644 index ac3967ed..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/b4a729584b6188ea_0000000000001e49_ps.txt +++ /dev/null @@ -1,110 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b4a729584b6188ea -// Used for: Restoring the native BotW Anti-Aliasing implementation for distant trees -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[3]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[3]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R2f.w = (texture(textureUnitPS1, R0f.xy).x); -R1f.xyzw = (textureGather(textureUnitPS2, R0f.xy).xyzw); -// 0 -PV0f.x = -(R2f.w) + R1f.y; -PV0f.y = -(R2f.w) + R1f.x; -PV0f.z = -(R2f.w) + R1f.w; -PV0f.w = -(R2f.w) + R1f.z; -PS0f = R2f.w + intBitsToFloat(uf_remappedPS[0].x); -// 1 -PV1f.x = max(PV0f.x, -(PV0f.x)); -PV1f.y = max(PV0f.y, -(PV0f.y)); -PV1f.z = max(PV0f.z, -(PV0f.z)); -PV1f.w = max(PV0f.w, -(PV0f.w)); -PS1f = 1.0 / PS0f; -// 2 -PV0f.x = PV1f.y + -(PV1f.w); -PV0f.y = -(PV1f.x) + PV1f.z; -R127f.z = intBitsToFloat(uf_remappedPS[1].w) * PS1f; -R127f.w = fract(R0f.z); -R127f.y = fract(R0f.w); -PS0f = R127f.y; -// 3 -PV1f.z = PV0f.y + -(PV0f.x); -PV1f.w = PV0f.y + PV0f.x; -// 4 -R123f.x = (mul_nonIEEE(R127f.z,PV1f.z) + R127f.y); -R123f.x = clamp(R123f.x, 0.0, 1.0); -PV0f.x = R123f.x; -R123f.y = (mul_nonIEEE(R127f.z,PV1f.w) + R127f.w); -R123f.y = clamp(R123f.y, 0.0, 1.0); -PV0f.y = R123f.y; -// 5 -PV1f.z = -(R127f.y) + PV0f.x; -PV1f.w = -(R127f.w) + PV0f.y; -// 6 -backupReg0f = R0f.x; -backupReg1f = R0f.y; -R0f.x = (mul_nonIEEE(PV1f.w,intBitsToFloat(uf_remappedPS[2].z) / resXScale) + backupReg0f); -R0f.y = (mul_nonIEEE(PV1f.z,intBitsToFloat(uf_remappedPS[2].w) / resYScale) + backupReg1f); -R0f.xyzw = (texture(textureUnitPS0, R0f.xy).xyzw); -// export -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 46c31d03..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,196 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader bb50d2ee4fa87bc2 -// Used for: Horizontal+Vertical Combat Targeting Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 1) out vec4 passParameterSem2; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 2) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = 0x3f800000; -PV0i.y = 0x40400000; -PV0i.z = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.w = 0x3f800000; -R127i.x = 0xbf800000; -PS0i = R127i.x; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].z) * intBitsToFloat(0x3b808081)); -R0i.y = 0; -R123i.z = ((PV0i.z == 0)?(PV0i.x):(0xc0400000)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(PV0i.y):(0xbf800000)); -PV1i.w = R123i.w; -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 2 -R2i.x = ((R0i.x == 0)?(R127i.x):(PV1i.w)); -PV0i.x = R2i.x; -R2i.y = ((R0i.x == 0)?(R127i.w):(PV1i.z)); -PV0i.y = R2i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = 0x3d2aaaab; -R1i.x = 0x3e000000; -PS0i = R1i.x; -// 3 -R3i.x = uf_remappedVS[1].z; -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -R1i.y = 0; -R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R1i.w = floatBitsToInt(intBitsToFloat(R1i.w) / 2.0); -R4i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * 0.5 + 0.5)); -PS1i = R4i.x; -R0i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wy)).x); -R0i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R1i.xy)).xyz); -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -// export -passParameterSem2 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(0.5)); -R4i.y = floatBitsToInt((intBitsToFloat(R1i.z) * 0.5 + 0.5)); -PV0i.y = R4i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R2i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R126i.x = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); -PS0i = R126i.x; -// 1 -R125i.x = uf_remappedVS[3].y; -R125i.x = floatBitsToInt(intBitsToFloat(R125i.x) * 2.0); -R126i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -PV1i.y = R126i.y; -R123i.z = floatBitsToInt((intBitsToFloat(uf_remappedVS[4].w) / resYScale * 2.0 + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R3i.x)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R1i.w)); -PS1i = R127i.z; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(R127i.x)); -R126i.z = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[4].w) / resYScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R4i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(uf_remappedVS[4].z) / resXScale * 2.0 + intBitsToFloat(R4i.x))); -PV0i.w = R123i.w; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.w))); -PS0i = R127i.y; -// 3 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R127i.z))); -R123i.y = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[4].z) / resXScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R4i.x))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(backupReg0i)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.x))); -PS1i = R125i.z; -// 4 -R3i.x = PV1i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R126i.x)); -R3i.w = R126i.z; -R4i.z = R127i.y; -PS0i = R4i.z; -// 5 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.w))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.z))); -R1i.z = R127i.z; -R4i.w = R127i.x; -R1i.w = R125i.z; -PS1i = R1i.w; -// export -passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -// export -// skipped export to semanticId 255 -// export -passParameterSem6 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.x), intBitsToFloat(R3i.x), intBitsToFloat(R3i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Resolutions/BreathOfTheWild_Resolution/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 370dda64..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,182 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader c92c1c4c0a2fb839 -// Used for: Camera Depth of Field Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 3) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[5]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[5]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem2); -if( activeMaskStackC[1] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -R1i.z = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R0i.xy)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -// 1 -R0i.z = floatBitsToInt(max(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.x))); -PV1i.z = R0i.z; -// 2 -R1i.y = ((intBitsToFloat(PV1i.z) != 0.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = R1i.y; -// 3 -if( (PV0i.y == 0)) discard; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R1i.y != 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].y) + -(1.0)); -// 1 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R0i.z)) + 1.0)); -PV1i.z = R123i.z; -// 2 -tempResultf = log2(intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(PS0i) + -(1.0)); -PV1i.x = R127i.x; -// 4 -R2i.z = PV1i.x; -R1i.w = PV1i.x; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(uf_remappedPS[3].w)); -R3i.w = R127i.x; -R4i.w = R127i.x; -PS1i = R4i.w; -// 6 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(uf_remappedPS[4].y))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(uf_remappedPS[4].x) / resXScale)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(uf_remappedPS[4].w) / resYScale)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(uf_remappedPS[4].z))); -PV0i.w = R127i.w; -R2i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + 1.0); -R2i.w = clampFI32(R2i.w); -PS0i = R2i.w; -// 7 -R1i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.y)); -R1i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.x)); -R3i.z = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.w)); -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(PV0i.y))); -PS1i = R2i.x; -// 8 -R3i.x = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R127i.z)); -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R127i.x))); -R4i.z = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R127i.w))); -R4i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R127i.z))); -PS0i = R4i.y; -} -if( activeMaskStackC[2] == true ) { -R1i.xyz = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),intBitsToFloat(R1i.w)).xyz); -R2i.xyz = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R2i.xy),intBitsToFloat(R2i.z)).xyz); -R3i.xyz = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R3i.zx),intBitsToFloat(R3i.w)).xyz); -R4i.xyz = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R4i.zy),intBitsToFloat(R4i.w)).xyz); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(R2i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R2i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R2i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 1 -R123i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(R3i.y) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 2 -R2i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 0.5 + intBitsToFloat(PV1i.x))/2.0); -R2i.y = floatBitsToInt((intBitsToFloat(R4i.y) * 0.5 + intBitsToFloat(PV1i.w))/2.0); -R2i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -passPixelColor0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 2bf0f513..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,223 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader c9f2fd37115b0ee1 -// Used for: Horizontal+Vertical Combat Targeting Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem2; -layout(location = 2) out vec4 passParameterSem6; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder.xyzw = attrDataSem0.xyzw; -attrDecoder = ((attrDecoder>>8)&0xFF)|((attrDecoder<<8)&0xFF00); -attrDecoder.xyzw = floatBitsToInt(vec4(unpackHalf2x16(attrDecoder.x|(attrDecoder.y<<16)),unpackHalf2x16(attrDecoder.z|(attrDecoder.w<<16)))); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.x = attrDataSem1.x; -attrDecoder.x = (attrDecoder.x>>24)|((attrDecoder.x>>8)&0xFF00)|((attrDecoder.x<<8)&0xFF0000)|((attrDecoder.x<<24)); -attrDecoder.y = 0; -attrDecoder.z = 0; -attrDecoder.w = 0; -attrDecoder.xyzw = uvec4((attrDecoder.x>>0)&0x3FF,(attrDecoder.x>>10)&0x3FF,(attrDecoder.x>>20)&0x3FF,(attrDecoder.x>>30)&0x3); -if( (attrDecoder.x&0x200) != 0 ) attrDecoder.x |= 0xFFFFFC00; -if( (attrDecoder.y&0x200) != 0 ) attrDecoder.y |= 0xFFFFFC00; -if( (attrDecoder.z&0x200) != 0 ) attrDecoder.z |= 0xFFFFFC00; -attrDecoder.x = floatBitsToUint(max(float(int(attrDecoder.x))/511.0,-1.0)); -attrDecoder.y = floatBitsToUint(max(float(int(attrDecoder.y))/511.0,-1.0)); -attrDecoder.z = floatBitsToUint(max(float(int(attrDecoder.z))/511.0,-1.0)); -attrDecoder.w = floatBitsToUint(float(attrDecoder.w)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -// 0 -backupReg0i = R0i.x; -PV0i.x = 0x3f800000; -PV0i.y = 0x40400000; -PV0i.z = (backupReg0i == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.w = 0x3f800000; -R127i.x = 0xbf800000; -PS0i = R127i.x; -// 1 -R3i.x = uf_remappedVS[0].z; -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) / 2.0); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].z) * intBitsToFloat(0x3b808081)); -R123i.z = ((PV0i.z == 0)?(PV0i.x):(0xc0400000)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.z == 0)?(PV0i.y):(0xbf800000)); -PV1i.w = R123i.w; -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 2 -R2i.x = ((R0i.x == 0)?(R127i.x):(PV1i.w)); -R2i.y = ((R0i.x == 0)?(R127i.w):(PV1i.z)); -PV0i.y = R2i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = 0x3ec00000; -R0i.y = 0; -PS0i = R0i.y; -// 3 -R1i.xyz = ivec3(0x3eeaaaab,0,0x3d2aaaab); -R1i.w = 0; -R0i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -PS1i = R0i.x; -R5i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R0i.wy)).xyz); -R4i.xyz = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R1i.xy)).xyz); -R1i.w = floatBitsToInt(texture(textureUnitVS0, intBitsToFloat(R1i.zw)).y); -// export -SET_POSITION(vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -// 0 -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[2].z))); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); -PV0i.x = R127i.x; -R0i.y = floatBitsToInt((intBitsToFloat(R0i.x) * 0.5 + 0.5)); -PV0i.y = R0i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.y))); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -R127i.w = R2i.x; -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0); -R0i.x = floatBitsToInt((intBitsToFloat(R2i.x) * 0.5 + 0.5)); -PS0i = R0i.x; -// 1 -R2i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[3].x))); -R2i.x = floatBitsToInt(intBitsToFloat(R2i.x) * 2.0); -PV1i.x = R2i.x; -R2i.y = uf_remappedVS[3].y; -R2i.y = floatBitsToInt(intBitsToFloat(R2i.y) * 2.0); -PV1i.y = R2i.y; -R123i.z = floatBitsToInt((intBitsToFloat(uf_remappedVS[4].w) / resYScale * 2.0 + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(0.5)); -R125i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); -PS1i = R125i.x; -// 2 -backupReg0i = R127i.z; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) / 2.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R3i.x)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(PS1i)); -PS0i = R126i.z; -// 3 -R124i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R126i.w)); -R127i.y = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[4].z)/resXScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R0i.x))); -R125i.z = floatBitsToInt((-(intBitsToFloat(uf_remappedVS[4].w)/resYScale) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R0i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(uf_remappedVS[4].z)/ resXScale * 2.0 + intBitsToFloat(R0i.x))); -PV1i.w = R123i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.y))); -PS1i = R125i.w; -// 4 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R127i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(R126i.x))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R126i.w)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R126i.z))); -PS0i = R124i.w; -// 5 -backupReg0i = R0i.y; -backupReg1i = R125i.z; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R5i.z)) + intBitsToFloat(R4i.z)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(R4i.y)); -R125i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R125i.x)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R124i.x))); -R3i.w = backupReg1i; -PS1i = R3i.w; -// 6 -R3i.x = R127i.y; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R5i.y))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(R4i.x)); -R2i.w = R127i.z; -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R0i.y)) + intBitsToFloat(R5i.z))); -PS0i = R1i.z; -// 7 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R0i.y)) + intBitsToFloat(R5i.x))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R125i.z))); -R2i.z = R125i.w; -R0i.w = R127i.x; -R0i.z = R126i.y; -PS1i = R0i.z; -// 8 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R127i.w))); -R5i.z = R126i.w; -R5i.w = R124i.w; -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem2 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -// export -// skipped export to semanticId 255 -// export -// skipped export to semanticId 255 -// export -passParameterSem6 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.x), intBitsToFloat(R3i.x), intBitsToFloat(R3i.w)); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/cb0e6e8cbec4502a_0000000000000079_ps.txt b/Resolutions/BreathOfTheWild_Resolution/cb0e6e8cbec4502a_0000000000000079_ps.txt deleted file mode 100644 index 50b528f5..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/cb0e6e8cbec4502a_0000000000000079_ps.txt +++ /dev/null @@ -1,53 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - - -// shader cb0e6e8cbec4502a -// Used for: 1 pass Battle, Camera and Scope Depth of Field Blur - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) in vec4 passParameterSem3; -layout(location = 0) out vec4 passPixelColor0; -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif - -int radius = int( roundEven(2.0/uf_fragCoordScale.y) ); -vec2 resolution = vec2( textureSize(textureUnitPS0,0) ); - -void main() { - vec2 center = ( passParameterSem3.xy + passParameterSem3.zw ) / 2.0 ; - vec3 result = vec3(0.0); - float count = 0.0; - for ( int x = 1-radius; x <= radius-1; x+=2 ) { - for ( int y = 1-radius; y <= radius-1; y+=2 ) { - if ( length(vec2(x, y)) <= radius ) { - result += texture( textureUnitPS0, center + vec2(x, y)/resolution ).xyz ; - count += 1.0; - } - } - } - passPixelColor0 = vec4( result / count, 0.0 ); -} \ No newline at end of file diff --git a/Resolutions/BreathOfTheWild_Resolution/d1cf6920c3d5b194_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/d1cf6920c3d5b194_0000000000000000_vs.txt deleted file mode 100644 index 54f968fa..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/d1cf6920c3d5b194_0000000000000000_vs.txt +++ /dev/null @@ -1,98 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d1cf6920c3d5b194 -// Used for: Restoring the native BotW Anti-Aliasing implementation for distant trees -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R122f = vec4(0.0); -vec4 R123f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 1.0; -R123f.w = (mul_nonIEEE(R2f.x,intBitsToFloat(uf_remappedVS[0].x) * resXScale) + 0.5); -PV0f.w = R123f.w; -R122f.x = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedVS[0].y) * resYScale) + 0.5); -PS0f = R122f.x; -// 1 -R2f.z = PV0f.w; -R2f.w = PS0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.z)); -// export -passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/e06e20b2efe87a84_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/e06e20b2efe87a84_0000000000000000_vs.txt deleted file mode 100644 index 0fb21902..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/e06e20b2efe87a84_0000000000000000_vs.txt +++ /dev/null @@ -1,106 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader e06e20b2efe87a84 -// Used for: Horizontal Ambient-Occlusion Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = -(1.0); -R1f.w = 1.0; -R0f.x = R2f.x; -PS0f = R0f.x; -// 1 -backupReg0f = R2f.x; -backupReg0f = R2f.x; -backupReg0f = R2f.x; -R2f.x = R2f.y; -R0f.y = R2f.y; -R2f.z = backupReg0f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -R2f.w = backupReg0f; -R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].x))/resXScale; -PS1f = R2f.y; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -// export -// skipped export to semanticId 255 -} diff --git a/Resolutions/BreathOfTheWild_Resolution/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 15df4da6..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,131 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ea9a49a6185cf1e5 -// Used for: Fix Reflection -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[2]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[2]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) noperspective out vec4 passParameterSem0; -layout(location = 1) noperspective out vec4 passParameterSem1; -layout(location = 2) noperspective out vec4 passParameterSem2; -layout(location = 3) noperspective out vec4 passParameterSem3; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -PV0f.x = (0.0 > R1f.y)?1.0:0.0; -PV0f.y = (0.0 > R1f.x)?1.0:0.0; -PV0f.z = (R1f.y > 0.0)?1.0:0.0; -PV0f.w = (R1f.x > 0.0)?1.0:0.0; -R1f.z = 0.0; -PS0f = R1f.z; -// 1 -R1f.x = PV0f.w + -(PV0f.y); -PV1f.x = R1f.x; -R1f.y = PV0f.z + -(PV0f.x); -PV1f.y = R1f.y; -R1f.w = 1.0; -// 2 -PV0f.x = PV1f.x; -PV0f.x /= 2.0; -R127f.y = PV1f.x * 1.0; -PV0f.y = R127f.y; -PV0f.z = -(PV1f.y); -PV0f.z /= 2.0; -R127f.w = PV1f.y * -(1.0); -PV0f.w = R127f.w; -R127f.x = PV1f.x * 1.0; -PS0f = R127f.x; -// 3 -R126f.x = (intBitsToFloat(uf_remappedVS[0].y) * 2.0 / resYScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resXScale + PV0f.y); -PV1f.z = R123f.z; -PV1f.w = PV0f.w; -R0f.x = PV0f.x + 0.5; -PS1f = R0f.x; -// 4 -R2f.x = (mul_nonIEEE(R127f.x,-(intBitsToFloat(uf_remappedVS[1].x))) + -(intBitsToFloat(uf_remappedVS[1].z))); -R2f.y = (mul_nonIEEE(R127f.w,-(intBitsToFloat(uf_remappedVS[1].y))) + -(intBitsToFloat(uf_remappedVS[1].w))); -R0f.z = (mul_nonIEEE(-(intBitsToFloat(uf_remappedVS[1].x)),PV1f.z) + -(intBitsToFloat(uf_remappedVS[1].z))); -R0f.w = (mul_nonIEEE(-(intBitsToFloat(uf_remappedVS[1].y)),PV1f.w) + -(intBitsToFloat(uf_remappedVS[1].w))); -R3f.x = (mul_nonIEEE(R127f.y,-(intBitsToFloat(uf_remappedVS[1].x))) + -(intBitsToFloat(uf_remappedVS[1].z))); -PS0f = R3f.x; -// 5 -R3f.y = (mul_nonIEEE(R126f.x,-(intBitsToFloat(uf_remappedVS[1].y))) + -(intBitsToFloat(uf_remappedVS[1].w))); -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.z); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.z); -// export -passParameterSem2 = vec4(R0f.z, R0f.w, R0f.z, R0f.z); -// export -passParameterSem3 = vec4(R3f.x, R3f.y, R3f.z, R3f.z); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Resolutions/BreathOfTheWild_Resolution/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index 745aac15..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,182 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - - -// shader f14bb57cd5c9cb77 - dumped 1.15 -// Used for: Removing/Restoring the native BotW World Anti-Aliasing implementation - -const float resX = float($width)/float($gameWidth); -const float resY = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 1, binding = 2) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[4]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[4]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -// uf_fragCoordScale was moved to the ufBlock - -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));} -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); // Important variable -vec4 R2f = vec4(0.0); -vec4 R3f = vec4(0.0); // Important variable -vec4 R123f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem2; -if( activeMaskStackC[1] == true ) { -R1f.xyzw = (textureGather(textureUnitPS1, R0f.xy).wzxy); -R2f.xyzw = (texture(textureUnitPS0, R0f.xy).xyzw); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0f.x = R1f.w + -(R1f.x); -PV0f.y = R1f.z + -(R1f.y); -PV0f.z = mul_nonIEEE(R2f.x, intBitsToFloat(uf_remappedPS[0].x)); -R127f.w = min(R1f.z, R1f.x); -R127f.x = min(R1f.w, R1f.y); -PS0f = R127f.x; -// 1 -R123f.x = (mul_nonIEEE(R2f.y,intBitsToFloat(uf_remappedPS[0].y) * resX ) + PV0f.z); //Important line -PV1f.x = R123f.x; -PV1f.y = max(R1f.z, R1f.x); -R127f.z = PV0f.y + -(PV0f.x); -PV1f.z = R127f.z; -R126f.w = PV0f.y + PV0f.x; -PV1f.w = R126f.w; -PS1f = max(R1f.w, R1f.y); -// 2 -PV0f.x = max(PV1f.z, -(PV1f.z)); -PV0f.y = max(PV1f.w, -(PV1f.w)); -R123f.z = (mul_nonIEEE(R2f.z,intBitsToFloat(uf_remappedPS[0].z)) + PV1f.x); -PV0f.z = R123f.z; -PV0f.w = min(R127f.w, R127f.x); -PS0f = max(PV1f.y, PS1f); -// 3 -PV1f.x = mul_nonIEEE(PS0f, intBitsToFloat(uf_remappedPS[1].x)); -PV1f.y = max(PV0f.z, PS0f); -PV1f.z = min(PV0f.z, PV0f.w); -PV1f.w = min(PV0f.y, PV0f.x); -// 4 -R1f.x = -(PV1f.z) + PV1f.y; -R0f.z = max(PV1f.x, intBitsToFloat(uf_remappedPS[1].y)); // Important - Divide looks blurrier/fuzzy and multiply looks sharper good -PS0f = 1.0 / PV1f.w; // Important line affects aliasing strongly, increasing it is blurier and decreasing sharpens -// 5 -PV1f.x = mul_nonIEEE(R127f.z, PS0f); -PV1f.y = mul_nonIEEE(R126f.w, PS0f); -// 6 -PV0f.z = max(PV1f.x, -(intBitsToFloat(uf_remappedPS[2].y))); -PV0f.w = max(PV1f.y, -(intBitsToFloat(uf_remappedPS[2].y))); -// 7 - another way to do it other than the original implmentation -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); // Important - Divide looks sharper and better and multiply looks blurier fuzzy -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); // Important - Divide looks sharper and better and multiply looks blurier fuzzy -// 8 -predResult = (R1f.x > R0f.z); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -backupReg0f = R3f.x; -backupReg0f = R3f.x; -R3f.x = (mul_nonIEEE(backupReg0f,intBitsToFloat(uf_remappedPS[3].x) / resX) + R0f.x); // Original Implementation -R3f.y = (mul_nonIEEE(R1f.y,intBitsToFloat(uf_remappedPS[3].y) / resY) + R0f.y); // Original Implementation -R1f.x = (mul_nonIEEE(backupReg0f,-(intBitsToFloat(uf_remappedPS[3].x) / resX)) + R0f.x); // Original Implementation -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-(intBitsToFloat(uf_remappedPS[3].y) / resY)) + R0f.y); // Original Implementation -} -if( activeMaskStackC[2] == true ) { -R0f.xyzw = (texture(textureUnitPS0, R3f.xy).xyzw); -R1f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127f.x = R0f.w + R1f.w; -R127f.x /= 2.0; -PV0f.x = R127f.x; -R127f.y = R0f.z + R1f.z; -R127f.y /= 2.0; -PV0f.y = R127f.y; -R127f.z = R0f.y + R1f.y; -R127f.z /= 2.0; -PV0f.z = R127f.z; -R127f.w = R0f.x + R1f.x; -R127f.w /= 2.0; -PV0f.w = R127f.w; -// 1 -PV1f.x = R2f.w + -(PV0f.x); -PV1f.y = R2f.z + -(PV0f.y); -PV1f.z = R2f.y + -(PV0f.z); -PV1f.w = R2f.x + -(PV0f.w); -// 2 -R2f.x = (PV1f.w * intBitsToFloat(0x3eb33333) + R127f.w); -R2f.y = (PV1f.z * intBitsToFloat(0x3eb33333) + R127f.z); -R2f.z = (PV1f.y * intBitsToFloat(0x3eb33333) + R127f.y); -R2f.w = (PV1f.x * intBitsToFloat(0x3eb33333) + R127f.x); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/f69e84515ae56e70_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 6925a2eb..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,118 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader f69e84515ae56e70 -// Used for: Vertical Bloom Blur -// bloom blur v -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[1]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R2f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -attrDecoder.xy = attrDataSem1.xy; -attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); -attrDecoder.z = 0; -attrDecoder.w = 0; -R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -backupReg0f = R1f.x; -backupReg1f = R1f.y; -R1f.x = backupReg0f; -R1f.x *= 2.0; -R1f.y = backupReg1f; -R1f.y *= 2.0; -R1f.z = 0.0; -R1f.w = 1.0; -PS0f = intBitsToFloat(uf_remappedVS[0].y) / resYScale * intBitsToFloat(0x3fb13a93); -// 1 -R127f.x = intBitsToFloat(uf_remappedVS[0].y) / resYScale * intBitsToFloat(0x404ec4f0); -PV1f.x = R127f.x; -R0f.y = R2f.y + -(PS0f); -R2f.z = R2f.y + PS0f; -PV1f.z = R2f.z; -R2f.w = R2f.y; -PV1f.w = R2f.w; -R0f.x = R2f.x; -PS1f = R0f.x; -// 2 -R0f.z = PV1f.z; -R0f.w = PV1f.w; -R2f.z = R2f.y + PV1f.x; -PS0f = R2f.z; -// 3 -backupReg0f = R2f.y; -backupReg0f = R2f.y; -R2f.y = backupReg0f + -(R127f.x); -R2f.w = backupReg0f; -// export -SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w)); -// export -passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem1 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Resolutions/BreathOfTheWild_Resolution/fc3e63a2007625f8_0000000000000000_vs.txt b/Resolutions/BreathOfTheWild_Resolution/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index c6193f16..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,132 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader fc3e63a2007625f8 -// Used For: Vertical Menu Blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - -#ifdef VULKAN -layout(set = 0, binding = 0) uniform ufBlock -{ -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -}; -#else -uniform ivec4 uf_remappedVS[5]; -// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7 -#endif -// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -uvec4 attrDecoder; -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID)); -attrDecoder.xyz = attrDataSem0.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0))); -// 0 -R127f.x = -(R1f.y); -PV0f.x = R127f.x; -R127f.y = (R1f.x > 0.0)?1.0:0.0; -R127f.y /= 2.0; -R126f.z = (0.0 > R1f.x)?1.0:0.0; -R126f.z /= 2.0; -R127f.w = 1.0; -PV0f.w = R127f.w; -R126f.x = intBitsToFloat(uf_remappedVS[0].w) * (intBitsToFloat(0x3fae8a72)/resYScale); -PS0f = R126f.x; -// 1 -R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))); -PV1f.x = R0f.x; -PV1f.y = R0f.x; -PV1f.z = R0f.x; -PV1f.w = R0f.x; -R127f.z = (PV0f.x > 0.0)?1.0:0.0; -R127f.z /= 2.0; -PS1f = R127f.z; -// 2 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.y = tempf.x; -PS0f = (0.0 > R127f.x)?1.0:0.0; -PS0f /= 2.0; -// 3 -backupReg0f = R127f.z; -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w))); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -R0f.z = tempf.x; -R127f.z = backupReg0f + -(PS0f); -PS1f = R127f.z; -// 4 -tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R0f.w = tempf.x; -PS0f = R127f.y + -(R126f.z); -// 5 -R1f.x = PS0f + 0.5; -PV1f.y = R127f.z + 0.5; -// 6 -R1f.y = PV1f.y + -(R126f.x); -R1f.z = PV1f.y + R126f.x; -R1f.w = PV1f.y; -// export -SET_POSITION(vec4(R0f.x, R0f.y, R0f.z, R0f.w)); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} \ No newline at end of file diff --git a/Resolutions/BreathOfTheWild_Resolution/patches.txt b/Resolutions/BreathOfTheWild_Resolution/patches.txt deleted file mode 100644 index 082900ea..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/patches.txt +++ /dev/null @@ -1,159 +0,0 @@ -[BotwAspectsV33] -moduleMatches = 0xD91A406D -# rodata constants -0x10197FC0 = .float $width/$height -0x102CCFC0 = .float $width/$height -0x10331374 = .float $width/$height -_aspectAddr = 0x10197FC0 - -# menu link aspect (calculated every load) -0x02CFC260 = lis r9, _aspectAddr@ha -0x02CFC274 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x036AD410 = lis r28, ha16(_aspectAddr) -0x036AD414 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV48] -moduleMatches = 0x0F748D9C -# rodata constants -0x10197FC0 = .float $width/$height -0x102CCFC8 = .float $width/$height -0x103313A4 = .float $width/$height -_aspectAddr = 0x10197FC0 - -# menu link aspect (calculated every load) -0x02CFC2CC = lis r9, _aspectAddr@ha -0x02CFC2E0 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x036AD81C = lis r28, ha16(_aspectAddr) -0x036AD820 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV64] -moduleMatches = 0x9A61FF4C -# rodata constants -0x10198250 = .float $width/$height -0x102CD450 = .float $width/$height -0x1033182C = .float $width/$height -_aspectAddr = 0x10198250 - -# menu link aspect (calculated every load) -0x02CFD900 = lis r9, _aspectAddr@ha -0x02CFD914 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x036AEF04 = lis r28, ha16(_aspectAddr) -0x036AEF08 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV80] -moduleMatches = 0x8E3324A9 -# rodata constants -0x1019A5A8 = .float $width/$height -0x102D4E30 = .float $width/$height -0x103391B4 = .float $width/$height -_aspectAddr = 0x1019A5A8 - -# menu link aspect (calculated every load) -0x02D056C8 = lis r9, _aspectAddr@ha -0x02D056DC = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x036D0324 = lis r28, ha16(_aspectAddr) -0x036D0328 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV97] -moduleMatches = 0xD71D859D -# rodata constants -0x1019F980 = .float $width/$height -0x102DF8A0 = .float $width/$height -0x1034122C = .float $width/$height -_aspectAddr = 0x1019F980 - -# menu link aspect (calculated every load) -0x02D2E65C = lis r9, _aspectAddr@ha -0x02D2E670 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x03725CE8 = lis r28, ha16(_aspectAddr) -0x03725CEC = lfs f12, _aspectAddr(r28) - -[BotwAspectsV112] -moduleMatches = 0x6FD41A61 -# rodata constants -0x1019F9A8 = .float $width/$height -0x102DFB38 = .float $width/$height -0x103414D4 = .float $width/$height -_aspectAddr = 0x1019F9A8 - -# menu link aspect (calculated every load) -0x02D2F404 = lis r9, _aspectAddr@ha -0x02D2F418 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x03726E18 = lis r28, ha16(_aspectAddr) -0x03726E1C = lfs f12, _aspectAddr(r28) - -[BotwAspectsV144] -moduleMatches = 0x9A2CA0C7 -# rodata constants -0x101A8A70 = .float $width/$height -0x102ECFD0 = .float $width/$height -0x1034F6CC = .float $width/$height -_aspectAddr = 0x101A8A70 - -# menu link aspect (calculated every load) -0x02D53CF4 = lis r9, _aspectAddr@ha -0x02D53D08 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x0375B128 = lis r28, ha16(_aspectAddr) -0x0375B12C = lfs f12, _aspectAddr(r28) - -[BotwAspectsV160] -moduleMatches = 0x29DBB52A -# rodata constants -0x101A8A70 = .float $width/$height -0x102ECF88 = .float $width/$height -0x1034F684 = .float $width/$height -_aspectAddr = 0x101A8A70 - -# menu link aspect (calculated every load) -0x02D53CF4 = lis r9, _aspectAddr@ha -0x02D53D08 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x0375AFF4 = lis r28, ha16(_aspectAddr) -0x0375AFF8 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 -# rodata constants -0x101BF878 = .float $width/$height -0x1030A3F4 = .float $width/$height -0x1036DBDC = .float $width/$height -_aspectAddr = 0x101BF878 - -# menu link aspect (calculated every load) -0x02E2BFC8 = lis r9, _aspectAddr@ha -0x02E2BFDC = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x0386C314 = lis r28, ha16(_aspectAddr) -0x0386C318 = lfs f12, _aspectAddr(r28) - -[BotwAspectsV208] -moduleMatches = 0x6267BFD0 -# rodata constants -0x101BF8E8 = .float $width/$height -0x1030A57C = .float $width/$height -0x1036DD4C = .float $width/$height -_aspectAddr = 0x101BF8E8 - -# menu link aspect (calculated every load) -0x02E2C564 = lis r9, _aspectAddr@ha -0x02E2C578 = lfs f4, _aspectAddr@l(r9) - -# 3d aspect (calculated every frame) -0x0386D01C = lis r28, ha16(_aspectAddr) -0x0386D020 = lfs f12, _aspectAddr(r28) diff --git a/Resolutions/BreathOfTheWild_Resolution/rules.txt b/Resolutions/BreathOfTheWild_Resolution/rules.txt deleted file mode 100644 index 5e32765b..00000000 --- a/Resolutions/BreathOfTheWild_Resolution/rules.txt +++ /dev/null @@ -1,915 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Resolution -path = "The Legend of Zelda: Breath of the Wild/Graphics/Resolution" -description = Changes the resolution of the game. Made by Kiri, Skalfate, rajkosto and NAVras. -version = 4 - -[Preset] -name = 1280x720 (16:9) (Default) -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -# Performance - -[Preset] -name = ----------------------------------- -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 320x180 (16:9) -$width = 320 -$height = 180 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 640x360 (16:9) -$width = 640 -$height = 360 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 960x540 (16:9) -$width = 960 -$height = 540 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -# Common HD Resolutions - -[Preset] -name = ----------------------------------- -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 1600x900 (16:9) -$width = 1600 -$height = 900 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 1920x1080 (16:9) -$width = 1920 -$height = 1080 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 2560x1440 (16:9) -$width = 2560 -$height = 1440 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3200x1800 (16:9) -$width = 3200 -$height = 1800 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3840x2160 (16:9) -$width = 3840 -$height = 2160 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 5120x2880 (16:9) -$width = 5120 -$height = 2880 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 7680x4320 (16:9) -$width = 7680 -$height = 4320 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -# Common Ultrawide Resolutions - -[Preset] -name = ----------------------------------- -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 2560x1080 (21:9) -$width = 2560 -$height = 1080 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3440x1440 (21:9) -$width = 3440 -$height = 1440 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3840x1600 (21:10) -$width = 3840 -$height = 1600 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 4300x1800 (21:9) -$width = 4300 -$height = 1800 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 6880x2880 (21:9) -$width = 6880 -$height = 2880 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 10240x4320 (21:9) -$width = 10240 -$height = 4320 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3840x1080 (32:9) -$width = 3840 -$height = 1080 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 5120x1440 (32:9) -$width = 5120 -$height = 1440 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 7680x2160 (32:9) -$width = 7680 -$height = 2160 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 10240x2880 (32:9) -$width = 10240 -$height = 2880 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 15360x4320 (32:9) -$width = 15360 -$height = 4320 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -# Common 16:10 Resolutions - -[Preset] -name = ----------------------------------- -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 1440x900 (16:10) -$width = 1440 -$height = 900 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 1680x1050 (16:10) -$width = 1680 -$height = 1050 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 1920x1200 (16:10) -$width = 1920 -$height = 1200 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 2560x1600 (16:10) -$width = 2560 -$height = 1600 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 2880x1800 (16:10) -$width = 2880 -$height = 1800 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 3840x2400 (16:10) -$width = 3840 -$height = 2400 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 5120x3200 (16:10) -$width = 5120 -$height = 3200 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -# Other Uncommon Resolutions - -[Preset] -name = ----------------------------------- -$width = 1280 -$height = 720 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 640x480 (4:3) -$width = 640 -$height = 480 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 1280x960 (4:3) -$width = 1280 -$height = 960 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 1920x1440 (4:3) -$width = 1920 -$height = 1440 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 640x512 (5:4) -$width = 640 -$height = 512 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 1280x1024 (5:4) -$width = 1280 -$height = 1024 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 1920x1536 (5:4) -$width = 1920 -$height = 1536 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 1 - -[Preset] -name = 5760x1080 (48:9) -$width = 5760 -$height = 1080 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 8640x1620 (48:9) -$width = 8640 -$height = 1620 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 14400x2700 (48:9) -$width = 14400 -$height = 2700 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -[Preset] -name = 21600x4050 (48:9) -$width = 21600 -$height = 4050 -$gameWidth = 1280 -$gameHeight = 720 -$heightfix = 0 - -# All 720p textures: -# - 0x001=World Lighting Red8 -# - 0x005=Link and Objects Depth -# - 0x007=World Lighting Red-Green Texture -# - 0x019=Menu Interface/GUI -# - 0x01a=Normals -# - 0x41a=Geometry rendering -# - 0x806=Wind/Fog -# - 0x80e=Depth stencil buffer -# - 0x816=Weapon and Objects Bloom -# - 0x820=Field Fog - -# Depth/Geometry/Shading Rendering -[TextureRedefine] -width = 1280 -height = 720 -formats = 0x001,0x005,0x007,0x019,0x01a,0x41a,0x80e,0x806,0x816,0x820 -# formatsExcluded = 0x008 # Game Load Opening Background Image -tileModesExcluded = 0x001 # For Video Playback -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 720 - -# Gamepad - background -[TextureRedefine] -width = 864 -height = 480 -formats = 0x019 -# formatsExcluded = 0x034 # Exclude 0x034 which is used for large album thumbnails -overwriteWidth = ($width/$gameWidth) * 864 -overwriteHeight = ($height/$gameHeight) * 480 - -# Gamepad - game render size -[TextureRedefine] -width = 854 -height = 480 -formats = 0x019 -# formatsExcluded = 0x034 # Exclude 0x034 which is used for large album thumbnails -overwriteWidth = ($width/$gameWidth) * 854 -overwriteHeight = ($height/$gameHeight) * 480 - -# All 1/2, 1/4 textures: -# - 0x001=World Lighting - Red -# - 0x005=Depth for Link and Objects -# - 0x019=GUI -# - 0x01a=Blurs and Normals -# - 0x80e=World and Objects Depth 32bit -# - 0x806=Wind/Fog -# - 0x816=World & Weapon Bloom -# - 0x820=Fog - -# Required 1/2 resolutions -[TextureRedefine] -width = 640 -height = 368 -formats = 0x001,0x005,0x007,0x019,0x01a,0x80e,0x806,0x816,0x820,0x41a -# formatsExcluded = 0x431 # Exclude 0x431 which is used for adventure log images -overwriteWidth = ($width/$gameWidth) * 640 -overwriteHeight = (($height/$gameHeight) * 368) + $heightfix - -# Required 1/2 resolutions -[TextureRedefine] -width = 640 -height = 360 -formats = 0x001,0x005,0x007,0x019,0x01a,0x80e,0x806,0x816,0x820,0x41a -# formatsExcluded = 0x431 -tileModesExcluded = 0x001 # For Video Playback -overwriteWidth = ($width/$gameWidth) * 640 -overwriteHeight = ($height/$gameHeight) * 360 - -# Required 1/3 resolutions -[TextureRedefine] -width = 384 -height = 192 -formats = 0x001 # World lighting - Red -overwriteWidth = ($width/$gameWidth) * 384 -overwriteHeight = ($height/$gameHeight) * 192 - -# Required 1/4 resolutions -[TextureRedefine] -width = 320 -height = 192 -formats = 0x001,0x005,0x007,0x019,0x01a,0x80e,0x816,0x806,0x820,0x41a -overwriteWidth = ($width/$gameWidth) * 320 -overwriteHeight = ($height/$gameHeight) * 192 - -# Required 1/4 resolutions -[TextureRedefine] -width = 320 -height = 180 -formats = 0x001,0x005,0x007,0x019,0x01a,0x80e,0x816,0x806,0x820,0x41a -overwriteWidth = ($width/$gameWidth) * 320 -overwriteHeight = ($height/$gameHeight) * 180 - -# Required 1/6 resolution -[TextureRedefine] -width = 192 -height = 96 -formats = 0x007,0x806 # Used for Fog -overwriteWidth = ($width/$gameWidth) * 192 -overwriteHeight = ($height/$gameHeight) * 96 - -# Required 1/8 resolution -[TextureRedefine] -width = 160 -height = 96 -formats = 0x001,0x005,0x007,0x806,0x80e,0x816 # Used for Fog/Depth/Bloom -overwriteWidth = ($width/$gameWidth) * 160 -overwriteHeight = ($height/$gameHeight) * 96 - -# Required 1/8 resolution -[TextureRedefine] -width = 160 -height = 90 -formats = 0x001,0x005,0x007,0x806,0x80e,0x816 -overwriteWidth = ($width/$gameWidth) * 160 -overwriteHeight = ($height/$gameHeight) * 90 - -# 1/10 resolution; Break 960x540 background: ambient light, bloom -# -# [TextureRedefine] -# width = 128 -# height = 80 -# formats = 0x005,0x007,0x019,0x01a,0x80e,0x816,0x806,0x820,0x41a -# overwriteWidth = ($width/$gameWidth) * 128 -# overwriteHeight = ($height/$gameHeight) * 80 -# -# [TextureRedefine] -# width = 120 -# height = 75 -# formats = 0x005,0x007,0x019,0x01a,0x80e,0x816,0x806,0x820,0x41a -# overwriteWidth = ($width/$gameWidth) * 120 -# overwriteHeight = ($height/$gameHeight) * 75 - -# Required Fogs and Dust -[TextureRedefine] -width = 128 -height = 48 -formats = 0x806,0x816,0x005,0x007,0x820 -overwriteWidth = ($width/$gameWidth) * 128 -overwriteHeight = ($height/$gameHeight) * 48 - -# Required 1/13 resolution -[TextureRedefine] -width = 96 -height = 48 -formats = 0x816,0x80e # Used for bloom/depth -overwriteWidth = ($width/$gameWidth) * 96 -overwriteHeight = ($height/$gameHeight) * 48 - -# Required 1/16 resolution -[TextureRedefine] -width = 80 -height = 45 -formats = 0x816,0x806,0x007 # Used for bloom/fog -overwriteWidth = ($width/$gameWidth) * 80 -overwriteHeight = ($height/$gameHeight) * 45 - -# Required 1/16 resolution -[TextureRedefine] -width = 64 -height = 64 -formats = 0x80e # Used for depth -overwriteWidth = ($width/$gameWidth) * 64 -overwriteHeight = ($height/$gameHeight) * 64 - -# 0x019 - GUI Requirements - -[TextureRedefine] -width = 128 -height = 720 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 128 -overwriteHeight = ($height/$gameHeight) * 720 - -[TextureRedefine] -width = 110 -height = 720 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 110 -overwriteHeight = ($height/$gameHeight) * 720 - -# 0x816 - Blooms & Effects - -# Heat wave effect -[TextureRedefine] -width = 1024 -height = 512 -depth = 1 -formats = 0x816 -overwriteWidth = ($width/$gameWidth) * 1024 -overwriteHeight = ($height/$gameHeight) * 512 - -# Sheikah slate scope -[TextureRedefine] -width = 512 -height = 256 -depth = 1 -formats = 0x816 -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 256 - -# World bloom - -[TextureRedefine] -width = 256 -height = 128 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 256 -overwriteHeight = ($height/$gameHeight) * 128 - -[TextureRedefine] -width = 128 -height = 64 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 128 -overwriteHeight = ($height/$gameHeight) * 64 - -[TextureRedefine] -width = 64 -height = 32 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 64 -overwriteHeight = ($height/$gameHeight) * 32 - -[TextureRedefine] # catches cubemap! 32x32, 16x16 -width = 32 -height = 16 -depth = 1 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 32 -overwriteHeight = ($height/$gameHeight) * 16 - -[TextureRedefine] -width = 24 -height = 16 -depth = 1 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 24 -overwriteHeight = ($height/$gameHeight) * 16 - -[TextureRedefine] -width = 40 -height = 22 -depth = 1 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 40 -overwriteHeight = ($height/$gameHeight) * 22 - -[TextureRedefine] -width = 20 -height = 11 -depth = 1 -formats = 0x816 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 20 -overwriteHeight = ($height/$gameHeight) * 11 - -# Great Fairy / Stable / Stores Viewports - -# Required, Great Fairy Full Resolution Viewports -[TextureRedefine] -width = 960 -height = 540 -formats = 0x816,0x005,0x007,0x019,0x01a,0x41a,0x80e,0x806 -tileModesExcluded = 0x001 # For Video Playback -overwriteWidth = ($width/$gameWidth) * 960 -overwriteHeight = ($height/$gameHeight) * 540 - -# Required, Great Fairy Full Resolution Viewports -[TextureRedefine] -width = 960 -height = 544 -formats = 0x816,0x005,0x007,0x019,0x01a,0x41a,0x80e,0x806 -overwriteWidth = ($width/$gameWidth) * 960 -overwriteHeight = ($height/$gameHeight) * 544 - -# Required Great Fairy Red Viewport and Depth port of the same size -[TextureRedefine] -width = 512 -height = 272 -depth = 1 -formats = 0x001,0x005 # Red Viewport / Depth -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 272 - -# Required, Great Fairy Half Resolution Viewports -[TextureRedefine] -width = 480 -height = 272 -formats = 0x816,0x01a,0x820,0x001,0x80e,0x820 -overwriteWidth = ($width/$gameWidth) * 480 -overwriteHeight = ($height/$gameHeight) * 272 - -# Required, Great Fairy Half Resolution Viewports -[TextureRedefine] -width = 480 -height = 270 -formats = 0x816,0x01a,0x820,0x001,0x80e,0x820 -overwriteWidth = ($width/$gameWidth) * 480 -overwriteHeight = ($height/$gameHeight) * 270 - -# Required - Great Fairy background heatwave effect -[TextureRedefine] -width = 512 -height = 512 -depth = 1 -formats = 0x816 -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 512 - -# Select-Menu Map -[TextureRedefine] -width = 1504 -height = 720 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 1504 -overwriteHeight = ($height/$gameHeight) * 720 - -# Select-Menu Map -[TextureRedefine] -width = 1500 -height = 720 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 1500 -overwriteHeight = ($height/$gameHeight) * 720 - -# Select-Menu Map Overlay -[TextureRedefine] -width = 1280 -height = 608 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 608 - -# Dyeing background: inventory fading border -[TextureRedefine] -width = 1280 -height = 400 -formats = 0x19 -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 400 - -# Mini-map GUI -[TextureRedefine] -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = ($width/$gameWidth) * 192 -overwriteHeight = ($height/$gameHeight) * 192 - -# Red Viewport -[TextureRedefine] -width = 1920 -height = 912 -formats = 0x001 -overwriteWidth = ($width/$gameWidth) * 1920 -overwriteHeight = ($height/$gameHeight) * 912 - -# 3D Map Ganons Castle & Beasts -[TextureRedefine] -width = 512 -height = 288 -formats = 0x01a,0x80e -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 288 - -# Improve Color Banding for GUI Format 0x019 -# 0x019 - R10_G10_B10_A2_UNORM ------> 0x01f - R16_G16_B16_A16_UNORM - -[TextureRedefine] -width = 1280 -height = 720 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 720 - -[TextureRedefine] -width = 640 -height = 368 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 640 -overwriteHeight = (($height/$gameHeight) * 368 ) + $heightfix - -[TextureRedefine] -width = 640 -height = 360 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 640 -overwriteHeight = ($height/$gameHeight) * 360 - -[TextureRedefine] -width = 320 -height = 192 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 320 -overwriteHeight = ($height/$gameHeight) * 192 - -[TextureRedefine] -width = 320 -height = 180 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 320 -overwriteHeight = ($height/$gameHeight) * 180 - -[TextureRedefine] -width = 128 -height = 720 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 128 -overwriteHeight = ($height/$gameHeight) * 720 - -[TextureRedefine] -width = 110 -height = 720 -formats = 0x019 -overwriteFormat = 0x01f -overwriteWidth = ($width/$gameWidth) * 110 -overwriteHeight = ($height/$gameHeight) * 720 - -# Fix texture cache's mismatch warnings - -[TextureRedefine] # 1280x720; Map: travel confirm menu background blur -width = 1280 -height = 288 -depth = 1 -formats = 0x19 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 288 - -[TextureRedefine] # same as above -width = 1280 -height = 278 -depth = 1 -formats = 0x19 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 1280 -overwriteHeight = ($height/$gameHeight) * 278 - -[TextureRedefine] # 640x360 mip 1; Scope dof close-up depth -width = 512 -height = 256 -depth = 1 -formats = 0x1 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 256 - -[TextureRedefine] # 640x360 mip 2; same as above -width = 256 -height = 128 -depth = 1 -formats = 0x1 -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 256 -overwriteHeight = ($height/$gameHeight) * 128 - -# Uncomment if HUD setting is Pro -# [TextureRedefine] # 640x360 mip 3; Designated level for dof processing. breaks sound wave HUD -# width = 128 -# height = 64 -# depth = 1 -# formats = 0x1 -# tilemodes = 4 -# overwriteWidth = ($width/$gameWidth) * 128 -# overwriteHeight = ($height/$gameHeight) * 64 - -[TextureRedefine] # 320x180; Blur on center piece of the map. not used at the moment of the capture -width = 293 -height = 185 -depth = 1 -formats = 0x1a -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 293 -overwriteHeight = ($height/$gameHeight) * 185 - -# [TextureRedefine] # 128x64; Fix sound HUD, breaks icons and teleport strips -# width = 64 -# height = 64 -# depth = 1 -# formats = 0x1 -# tilemodes = 4 -# overwriteWidth = ($width/$gameWidth) * 64 -# overwriteHeight = ($height/$gameHeight) * 64 - -# Uncomment if HUD setting is Pro -# [TextureRedefine] # 128x64; Mini-game count down number fade -# width = 40 -# height = 50 -# depth = 1 -# formats = 0x1 -# tilemodes = 4 -# overwriteWidth = ($width/$gameWidth) * 40 -# overwriteHeight = ($height/$gameHeight) * 50 - -# Resize letters box: Subtitle - -[TextureRedefine] -width = 512 -height = 96 -depth = 1 -formats = 0x1a -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 512 -overwriteHeight = ($height/$gameHeight) * 96 - -[TextureRedefine] -width = 500 -height = 94 -depth = 1 -formats = 0x1a -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 500 -overwriteHeight = ($height/$gameHeight) * 94 - -# Resize letters box: pop up message - -[TextureRedefine] -width = 480 -height = 32 -depth = 1 -formats = 0x1a -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 480 -overwriteHeight = ($height/$gameHeight) * 32 - -[TextureRedefine] -width = 464 -height = 28 -depth = 1 -formats = 0x1a -tilemodes = 4 -overwriteWidth = ($width/$gameWidth) * 464 -overwriteHeight = ($height/$gameHeight) * 28 diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/09085793b5a9f364_00001ffe492e9249_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/09085793b5a9f364_00001ffe492e9249_ps.txt deleted file mode 100644 index 9703bd52..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/09085793b5a9f364_00001ffe492e9249_ps.txt +++ /dev/null @@ -1,1168 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d2cb8f8abc8a00bc -UNIFORM_BUFFER_LAYOUT(33, 1, 12) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 13) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 14) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 4) uniform samplerCubeArray textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 5) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(10, 1, 6) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(14, 1, 8) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 9) uniform sampler2D textureUnitPS15; -TEXTURE_LAYOUT(16, 1, 10) uniform sampler2D textureUnitPS16; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -#ifdef VULKAN -layout(set = 1, binding = 11) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex6 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R13i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R124i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PS0i = R124i.z; -// 1 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R9i.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PS1i = R127i.z; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[45].x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(PS1i)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(PS1i)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[43].x)); -PS0i = int(intBitsToFloat(PV1i.w)); -// 3 -PV1i.x = PS0i & int(1); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[45].y) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R4i.w = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y)); -PS1i = R4i.w; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.z))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R8i.w = ((PV1i.x == 0)?(0):(0x3f800000)); -R3i.x = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV1i.w)); -PS0i = R3i.x; -// 5 -R15i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.z)); -PV1i.x = R15i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R0i.z = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R0i.z = clampFI32(R0i.z); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), uf_blockPS6[44].x)); -R5i.w = 0x3f800000; -PS1i = R5i.w; -// 6 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS6[39].z) + -(uf_blockPS6[39].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R124i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R12i.z))); -R12i.w = R13i.x; -R12i.w = clampFI32(R12i.w); -R13i.w = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3c23d70a) + -(0.5))); -R13i.w = clampFI32(R13i.w); -PS0i = R13i.w; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),intBitsToFloat(PV0i.y),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[44].y) + intBitsToFloat(R127i.w))); -PS1i = R122i.x; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[44].z) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z))); -PV0i.y = R123i.y; -R13i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R13i.z = clampFI32(R13i.z); -R6i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R6i.w = clampFI32(R6i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 9 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R14i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(PV0i.x)); -PS1i = R14i.z; -// 10 -R12i.x = floatBitsToInt(uf_blockPS1[0].y); -R14i.y = PS1i; -PV0i.y = R14i.y; -R15i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R127i.x)); -PV0i.z = R15i.z; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 11 -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),uf_blockPS6[39].z) + -(uf_blockPS6[39].y))); -R3i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + uf_blockPS6[39].w); -R0i.w = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -PS1i = R0i.w; -} -if( activeMaskStackC[1] == true ) { -R0i.y = floatBitsToInt(textureLod(textureUnitPS11, intBitsToFloat(R0i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.w; -R13i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[11].x,uf_blockPS1[11].y,uf_blockPS1[11].z,0.0))); -PV0i.x = R13i.x; -PV0i.y = R13i.x; -PV0i.z = R13i.x; -PV0i.w = R13i.x; -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(backupReg0i))); -PS0i = R14i.x; -// 1 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[12].x,uf_blockPS1[12].y,uf_blockPS1[12].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R15i.y = tempi.x; -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(backupReg0i))); -PS1i = R16i.y; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * 2.0 + -(1.0))); -PV0i.y = R123i.y; -R16i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(PV0i.x)))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(PV0i.x)))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),intBitsToFloat(PV0i.y)) + intBitsToFloat(R3i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.w)); -R4i.y = floatBitsToInt(tempResultf); -PS1i = R4i.y; -// 4 -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x3fa66666)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(PV1i.x)); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV1i.w)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(PV1i.y)); -PV0i.w = R127i.w; -R2i.y = floatBitsToInt(intBitsToFloat(R0i.z) + uf_blockPS10[3].y); -PS0i = R2i.y; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV0i.w))); -R17i.y = floatBitsToInt(uf_blockPS1[1].y); -PS1i = R17i.y; -// 6 -backupReg0i = R3i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV1i.x))); -PV0i.x = R0i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.y))); -PV0i.y = R3i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.z = R0i.z; -R0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R18i.y = floatBitsToInt(-(intBitsToFloat(R6i.w)) + intBitsToFloat(PV1i.z)); -R18i.y = clampFI32(R18i.y); -PS0i = R18i.y; -// 7 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R17i.z = floatBitsToInt(uf_blockPS1[2].y); -PS1i = R17i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[13].x,uf_blockPS1[13].y,uf_blockPS1[13].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R18i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[39].w),intBitsToFloat(R0i.y)) + intBitsToFloat(R2i.x))); -PV0i.w = R123i.w; -// 1 -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R126i.y = clampFI32(R126i.y); -PV1i.y = R126i.y; -// 2 -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -// 4 -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.w = R127i.w; -// 5 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -// 6 -R14i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(R127i.w))); -R14i.w = clampFI32(R14i.w); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R10i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PV0i.x = R10i.x; -R10i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.y = R10i.y; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.x = R123i.x; -R4i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R4i.z; -R9i.w = 0; -R2i.x = PV0i.x; -PS1i = R2i.x; -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PV1i.z))); -R0i.y = PV1i.z; -PV0i.y = R0i.y; -R2i.z = 0; -PV0i.z = R2i.z; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.z),intBitsToFloat(R16i.z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R4i.y))); -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.y),intBitsToFloat(R127i.x),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R15i.w = tempi.x; -R19i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -PS0i = R19i.y; -// 5 -predResult = (1.0 > intBitsToFloat(R13i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.x) * 1.5); -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) * 1.5); -PV0i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R10i.z) * 1.5); -// 1 -backupReg0i = R0i.z; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.z = PV0i.w & int(1); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(R0i.w) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R3i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.y = PV1i.z - R127i.x; -PV0i.y = R4i.y; -R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.w = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(uf_blockPS6[53].y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 3 -R4i.x = PS0i; -R3i.y = floatBitsToInt(uf_blockPS6[53].x); -R3i.y = floatBitsToInt(intBitsToFloat(R3i.y) / 2.0); -R3i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -PV1i.w = PV0i.y << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.y)); -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R8i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R8i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R3i.w),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R3i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = tempi.x; -R9i.z = PS0i; -PS1i = R9i.z; -} -if( activeMaskStackC[2] == true ) { -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z)),vec4(-(intBitsToFloat(R10i.x)),-(intBitsToFloat(R10i.y)),-(intBitsToFloat(R4i.z)),-(intBitsToFloat(R9i.w))))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.w)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.y))); -R10i.z = R8i.z; -PS1i = R10i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R11i.z = R8i.z; -PS0i = R11i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R4i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PV0i.w))); -// 6 -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R9i.x))); -PV0i.x = R16i.x; -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R8i.y))); -R19i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R12i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R5i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R7i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV1i.x)); -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.x)); -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R126i.z; -// 12 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -// 13 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R126i.z))); -PV1i.x = R126i.x; -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R126i.w = clampFI32(R126i.w); -PV1i.w = R126i.w; -R8i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.y))); -PS1i = R8i.x; -// 14 -R9i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R3i.y)); -R8i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.x))); -R8i.w = PV1i.w; -R9i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R3i.z)); -PS0i = R9i.y; -// 15 -R10i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R127i.w)); -R10i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(R4i.x)); -R9i.w = R126i.w; -R10i.w = R126i.w; -PS1i = R10i.w; -// 16 -R11i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.y))); -R11i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R126i.x))); -R11i.w = R126i.w; -} -if( activeMaskStackC[2] == true ) { -R8i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R9i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -R10i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.w)))); -R11i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z),intBitsToFloat(R11i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R9i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R10i.w) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -// 2 -R6i.w = floatBitsToInt((intBitsToFloat(R11i.z) * 0.5 + intBitsToFloat(PV1i.y))/2.0); -PV0i.w = R6i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.w = ((R4i.y > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.w != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R4i.y; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002a; -R0i.z = PV1i.w + 0x0000002b; -R0i.w = PV1i.w + 0x0000002d; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.y = floatBitsToInt(textureShadow_5(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.w; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.y))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R13i.z)) + intBitsToFloat(R6i.w))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R2i.x = floatBitsToInt(intBitsToFloat(R15i.x) * intBitsToFloat(0x3a83126f)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt(-(intBitsToFloat(R18i.z))); -PV0i.z = R0i.z; -R0i.w = 0x40400000; -R2i.y = floatBitsToInt(intBitsToFloat(R15i.z) * intBitsToFloat(0x3a83126f)); -PS0i = R2i.y; -// 1 -redcCUBE(vec4(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z),intBitsToFloat(R13i.x),intBitsToFloat(R15i.y)),vec4(intBitsToFloat(R15i.y),intBitsToFloat(R13i.x),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = R126i.x; -// 2 -R3i.x = floatBitsToInt((intBitsToFloat(R15i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PV0i.y = floatBitsToInt(intBitsToFloat(R15i.w) + -(intBitsToFloat(R19i.y))); -R0i.z = PV1i.w; -R3i.w = floatBitsToInt((intBitsToFloat(R15i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 3 -backupReg0i = R127i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(R19i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R126i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.w = floatBitsToInt(tempResultf); -PS1i = R127i.w; -// 4 -R0i.x = PV1i.w; -R0i.y = PV1i.z; -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), intBitsToFloat(0xbf7d70a4))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.w = 0x3f800000; -PS0i = R2i.w; -// 5 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PV1i.x = R127i.x; -R5i.y = 0; -R6i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3ba3d70a)); -R123i.w = floatBitsToInt((-(intBitsToFloat(R15i.y)) * 0.5 + 0.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 6 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x40200000)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + uf_blockPS6[27].w)/2.0); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3daaaaab)); -R4i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0xbe593484))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.w))); -// 8 -backupReg0i = R127i.w; -R8i.x = floatBitsToInt((intBitsToFloat(R14i.w) * intBitsToFloat(0xbdcccccd) + intBitsToFloat(0x3dcccccd))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(0x3fc90da4))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(backupReg0i))); -tempResultf = log2(intBitsToFloat(PV1i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.y = floatBitsToInt(tempResultf); -PS0i = R127i.y; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),-(intBitsToFloat(PV0i.y))) + 1.0)); -PS1i = R4i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R6i.x; -// 12 -R7i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(R127i.y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -R2i.z = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -R2i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R4i.w = floatBitsToInt(exp2(intBitsToFloat(R127i.w))); -PS0i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS6, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex6),intBitsToFloat(R0i.w)).xyz); -R0i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -R3i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R3i.xw),0.0).xyz); -R4i.xyz = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R4i.xy)).xyz); -R5i.xyz = floatBitsToInt(texture(textureUnitPS16, intBitsToFloat(R5i.xy)).xyz); -R6i.x = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R6i.xy),intBitsToFloat(R6i.z)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -R123i.x = floatBitsToInt((intBitsToFloat(R0i.w) * 2.0 + -(1.0))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R127i.z = clampFI32(R127i.z); -PV0i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.z))); -R126i.w = floatBitsToInt(exp2(intBitsToFloat(R7i.x))); -PS0i = R126i.w; -// 1 -R125i.x = floatBitsToInt(min(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.w) * intBitsToFloat(0x40200001)); -R126i.y = clampFI32(R126i.y); -PV1i.y = R126i.y; -R124i.z = floatBitsToInt(max(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.w))); -PV1i.z = R124i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x41c80000) + intBitsToFloat(R14i.z))); -PV1i.w = R123i.w; -R126i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R4i.w))) + uf_blockPS6[27].z)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3dcccccd)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x2edbe6ff)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + uf_blockPS6[52].x); -R127i.w = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -tempResultf = log2(intBitsToFloat(backupReg0i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R125i.z = floatBitsToInt(tempResultf); -PS0i = R125i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R17i.y),intBitsToFloat(R17i.z),-0.0),vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.y),intBitsToFloat(R16i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 4 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R2i.z))); -PV0i.x = R124i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R127i.y = clampFI32(R127i.y); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R127i.z = clampFI32(R127i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(R125i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0x2edbe6ff)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R8i.x)); -R127i.w = clampFI32(R127i.w); -R125i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R125i.y; -// 6 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 7 -backupReg0i = R126i.y; -backupReg1i = R127i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), uf_blockPS6[13].w)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(R124i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS0i)) + 1.0)); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R127i.z))); -tempResultf = log2(intBitsToFloat(backupReg1i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R2i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.x))); -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS0i = R127i.y; -// 9 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockPS6[30].w)); -R124i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R125i.x))); -R125i.z = R1i.x; -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); -R125i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.x))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 10 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R2i.z))); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt(intBitsToFloat(R0i.z) + -(intBitsToFloat(R125i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -// 11 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.y))); -PV1i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), uf_blockPS6[16].w)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.w),intBitsToFloat(R125i.z)) + intBitsToFloat(R125i.z))); -PS1i = R127i.y; -// 12 -backupReg0i = R126i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R1i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.w))); -PV0i.z = R0i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R124i.z))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.w))); -PS0i = R125i.x; -// 13 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(R126i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 14 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(R126i.y))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(R126i.y))); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(R126i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -PS0i = R125i.z; -// 15 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R18i.y)) + intBitsToFloat(R126i.z))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R125i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R125i.x))); -PS1i = R126i.y; -// 16 -backupReg0i = R127i.x; -backupReg1i = R124i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg0i))); -R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + -(intBitsToFloat(R125i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg1i))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(R0i.x))) + intBitsToFloat(R124i.x))); -PS0i = R127i.z; -// 17 -backupReg0i = R5i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.x) + -(intBitsToFloat(R124i.y))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), uf_blockPS6[1].w)); -R5i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.y))); -R126i.w = floatBitsToInt(uf_blockPS6[1].x + -(1.0)); -R124i.x = floatBitsToInt(uf_blockPS6[1].y + -(1.0)); -PS1i = R124i.x; -// 18 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg0i))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + intBitsToFloat(R127i.w))); -PV0i.w = floatBitsToInt(uf_blockPS6[1].z + -(1.0)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R13i.w)) + intBitsToFloat(R124i.y))); -PS0i = R127i.y; -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R13i.w)) + intBitsToFloat(R125i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R5i.y)) + 1.0)); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R5i.y)) + 1.0)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R13i.w)) + intBitsToFloat(R125i.y))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R5i.y)) + 1.0)); -PS1i = R122i.x; -// 20 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.y))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -R3i.w = 0; -R2i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R0i.x)) + intBitsToFloat(R126i.y))); -PS0i = R2i.x; -// 21 -R2i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R0i.x)) + intBitsToFloat(R127i.x))); -R2i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R0i.x)) + intBitsToFloat(R127i.z))); -R5i.w = 0x3f800000; -R3i.y = R14i.w; -PS1i = R3i.y; -// 22 -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(R1i.x)) + intBitsToFloat(R1i.x))); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS10[3].z,intBitsToFloat(R4i.x)) + uf_blockPS10[1].y)); -R126i.w = clampFI32(R126i.w); -// 1 -PV1i.y = floatBitsToInt(intBitsToFloat(R6i.x) + uf_blockPS10[1].z); -PV1i.y = clampFI32(PV1i.y); -// 2 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R126i.w))); -// 3 -R6i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R6i.w = R5i.w; -// 4 -R5i.xyz = ivec3(R2i.x,R2i.y,R2i.z); -R5i.w = R2i.w; -// 5 -R4i.xyz = ivec3(R3i.x,R3i.y,R3i.z); -R4i.w = R3i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -passPixelColor1 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -passPixelColor2 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/45e72a252caba763_000003c000009269_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/45e72a252caba763_000003c000009269_ps.txt deleted file mode 100644 index 34d87e8c..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/45e72a252caba763_000003c000009269_ps.txt +++ /dev/null @@ -1,581 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cbbcf83b05c6d921 -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(14, 1, 5) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.z = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.zw)).x); -R6i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.z = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).w); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R4i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -R4i.z = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R3i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PS0i = R3i.z; -// 1 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R9i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R9i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(PV1i.z)))); -PS0i = R126i.w; -// 3 -backupReg0i = R127i.z; -backupReg1i = R127i.w; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.w)))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(backupReg0i)))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(backupReg1i)))); -R125i.z = floatBitsToInt(-(intBitsToFloat(backupReg1i))); -PS1i = R125i.z; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.z = tempi.x; -R126i.y = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x437f0000)); -PS0i = R126i.y; -// 5 -R126i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.z)); -R125i.y = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(R126i.w)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(R127i.x)); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R127i.y)); -PV1i.w = R126i.w; -R125i.x = floatBitsToInt(sqrt(intBitsToFloat(R126i.z))); -PS1i = R125i.x; -// 6 -R127i.x = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R125i.z)); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.w)); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockPS6[43].x)); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(R124i.z))); -PS0i = R125i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockPS6[45].x)); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.x))); -R127i.w = int(intBitsToFloat(R126i.y)); -PS1i = R127i.w; -// 8 -backupReg0i = R126i.x; -R126i.x = PS1i & 0x0000001c; -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.z))); -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.w))); -PS0i = R0i.x; -// 9 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),uf_blockPS6[43].z) + intBitsToFloat(R124i.z))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R9i.z)) * intBitsToFloat(0x3d4ccccd)); -PV1i.y = R127i.y; -R127i.z = R127i.w & 0x00000002; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),uf_blockPS6[45].z) + intBitsToFloat(PV0i.w))); -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 10 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),-0.0),vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),0.0))); -PV0i.x = R124i.x; -PV0i.y = R124i.x; -PV0i.z = R124i.x; -PV0i.w = R124i.x; -R1i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.y))); -R1i.x = clampFI32(R1i.x); -PS0i = R1i.x; -// 11 -R9i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R127i.x)); -R10i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R127i.w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.x)); -// 12 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); -PV0i.x = R2i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS1i))); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -R11i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R11i.w = clampFI32(R11i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -// 13 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS0i))); -R125i.w = PV0i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = PV0i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS1i = R124i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(float(R126i.x)); -// 15 -backupReg0i = R127i.y; -R10i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R127i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3d124925)); -R10i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R10i.w = clampFI32(R10i.w); -R9i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(backupReg0i))); -PS1i = R9i.y; -// 16 -PS0i = floatBitsToInt(float(R127i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 17 -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(PS0i))) + intBitsToFloat(R127i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.z = floatBitsToInt(tempResultf); -PS1i = R2i.z; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R7i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -R6i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R8i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R8i.z; -R1i.w = 0; -PV1i.w = R1i.w; -R9i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.z)); -R9i.w = clampFI32(R9i.w); -PS1i = R9i.w; -// 2 -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.z)),vec4(-(intBitsToFloat(R7i.x)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(PV1i.z)),-(intBitsToFloat(PV1i.w))))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -// 3 -predResult = (1.0 > intBitsToFloat(R11i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = ((-(intBitsToFloat(R9i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -R127i.y = ((-(intBitsToFloat(R9i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.x) * 1.5); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R1i.z) * 1.5); -// 1 -backupReg0i = R2i.z; -backupReg1i = R1i.x; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS0i))); -PV1i.w = PV0i.x & int(1); -PS1i = ((intBitsToFloat(0x3eb33333) > intBitsToFloat(backupReg1i))?int(0xFFFFFFFF):int(0x0)); -// 2 -R2i.x = floatBitsToInt((intBitsToFloat(R0i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.z)),uf_blockPS1[17].y) + 1.0)); -PV0i.z = PV1i.w - R127i.y; -R1i.w = ((PS1i == 0)?(0x3f800000):(0)); -R2i.w = 0x3f000000; -PS0i = R2i.w; -// 3 -PV1i.x = PV0i.z << 0x00000002; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R2i.z))); -R127i.w = floatBitsToInt(float(PV0i.z)); -PS1i = R127i.w; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002c; -R0i.z = PV1i.x + 0x0000002b; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.y))); -PS0i = R122i.x; -// 5 -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(PS0i))); -R6i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.w))); -PS1i = R6i.z; -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.y = floatBitsToInt(uf_blockPS6[53].y); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) / 2.0); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(uf_blockPS6[53].x); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.z)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R7i.z = R6i.z; -PS1i = R7i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(R126i.z))); -PS0i = R125i.y; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R8i.z = R6i.z; -PS1i = R8i.z; -// 4 -backupReg0i = R126i.y; -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3b449ba7)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3b449ba7)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3b449ba7)); -R126i.x = backupReg0i; -PS0i = R126i.x; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.y))); -R1i.z = R6i.z; -// 6 -backupReg0i = R127i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R9i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R7i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R6i.x))); -PV0i.w = R127i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R5i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R3i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R5i.z)) + intBitsToFloat(R126i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R0i.z)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -// 13 -R127i.x = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R6i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV0i.y))); -R6i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.z))); -PS1i = R6i.x; -// 14 -R7i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z)); -R7i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R126i.w)); -R6i.w = PV1i.x; -R7i.w = PV1i.x; -PS0i = R7i.w; -// 15 -R8i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R125i.y)); -R8i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R126i.x)); -R8i.w = R127i.x; -R1i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.z))); -PS1i = R1i.x; -// 16 -R1i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R127i.y))); -R1i.w = R127i.x; -} -if( activeMaskStackC[2] == true ) { -R6i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)))); -R7i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -R8i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R1i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(R7i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -// 1 -R123i.z = floatBitsToInt((intBitsToFloat(R8i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -// 2 -R127i.y = floatBitsToInt((intBitsToFloat(R1i.z) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -PV0i.y = R127i.y; -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 4 -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R11i.w)) + intBitsToFloat(R127i.y))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R0i.w = R2i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R10i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R9i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R10i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R2i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS14, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R10i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R9i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + uf_blockPS10[1].y); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/59cba7eb9a9c1df6_00000007f924d249_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/59cba7eb9a9c1df6_00000007f924d249_ps.txt deleted file mode 100644 index 209a9cad..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/59cba7eb9a9c1df6_00000007f924d249_ps.txt +++ /dev/null @@ -1,848 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 9c98a67271f8cc75 -UNIFORM_BUFFER_LAYOUT(33, 1, 10) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 11) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 12) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(10, 1, 5) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 6) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(14, 1, 7) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 8) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R13i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PV0i.y = R127i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R5i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PS0i = R5i.x; -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.z)))); -R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(PV0i.y)))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(PV0i.y)))); -PS1i = R125i.w; -// 2 -R127i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[43].x)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[45].x)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(R127i.w)))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(R127i.w)))); -PS0i = R127i.y; -// 3 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[45].y) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R126i.w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R126i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R125i.w)); -PS1i = R126i.x; -// 4 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(backupReg0i)); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[43].z) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R127i.z = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R127i.y)); -PS0i = R127i.z; -// 5 -R9i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.w)); -PV1i.x = R9i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[44].x)); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(R127i.w)); -PV1i.z = R126i.z; -R4i.w = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -R5i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PS1i = R5i.z; -// 6 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS6[39].z) + -(uf_blockPS6[39].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R125i.z))); -R2i.y = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -PS0i = R2i.y; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[44].y) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.w))); -R4i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -R5i.w = 0x3f800000; -R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y))); -PS1i = R4i.x; -// 8 -R2i.x = floatBitsToInt((-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R2i.x = clampFI32(R2i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -R0i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3d4ccccd)); -PV0i.z = R0i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[44].z) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -R10i.x = floatBitsToInt(uf_blockPS1[0].y); -PS0i = R10i.x; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R5i.z))); -R15i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(PV0i.w)); -PV1i.z = R15i.z; -R0i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV0i.z))); -R0i.w = clampFI32(R0i.w); -R9i.w = R13i.x; -R9i.w = clampFI32(R9i.w); -PS1i = R9i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R12i.y = PV1i.z; -PV0i.y = R12i.y; -R9i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R125i.y)); -PV0i.z = R9i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R1i.z)), uf_blockPS1[17].y)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.y))); -PS0i = R122i.x; -// 11 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),uf_blockPS6[39].z) + -(uf_blockPS6[39].y))); -R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + uf_blockPS6[39].w); -R3i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R4i.z)), -(intBitsToFloat(R4i.z)))); -R2i.w = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -R3i.z = floatBitsToInt(textureLod(textureUnitPS11, intBitsToFloat(R3i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),-(intBitsToFloat(R0i.y))) + intBitsToFloat(R3i.w))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[39].w),intBitsToFloat(R3i.z)) + intBitsToFloat(R2i.z))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R2i.w)); -// 1 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -PV1i.y = R11i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R127i.z = clampFI32(R127i.z); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),-(intBitsToFloat(R4i.x))) + intBitsToFloat(PV0i.x))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PS1i = R10i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.y = R123i.y; -R16i.z = floatBitsToInt(-(intBitsToFloat(R0i.w)) + intBitsToFloat(R125i.y)); -R16i.z = clampFI32(R16i.z); -R11i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R0i.z))); -R11i.z = clampFI32(R11i.z); -PS0i = R11i.z; -// 3 -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R17i.z = floatBitsToInt(intBitsToFloat(R2i.x) + uf_blockPS10[3].y); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -R0i.z = floatBitsToInt(tempResultf); -PS1i = R0i.z; -// 4 -R10i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R10i.w; -PS0i = int(intBitsToFloat(R2i.y)); -// 5 -PV1i.w = PS0i & int(1); -R11i.w = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PS1i = R11i.w; -// 6 -R12i.z = ((PV1i.w == 0)?(0):(0x3f800000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.x)); -PS0i = floatBitsToInt(tempResultf); -// 7 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS0i))); -R4i.w = floatBitsToInt(uf_blockPS10[2].w); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.w)); -R2i.w = floatBitsToInt(tempResultf); -PS1i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, intBitsToFloat(R4i.w))); -PV0i.x = R5i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, intBitsToFloat(R4i.w))); -PV0i.y = R5i.y; -R14i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, intBitsToFloat(R4i.w))); -PV0i.z = R14i.z; -R0i.w = 0; -// 1 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -R2i.y = PV0i.z; -PV1i.y = R2i.y; -R2i.z = 0; -PV1i.z = R2i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PV0i.z))); -R0i.x = PV0i.x; -PS1i = R0i.x; -// 2 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PS1i),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.w))); -PS0i = R122i.x; -// 3 -R10i.y = floatBitsToInt(uf_blockPS1[1].y); -R18i.z = floatBitsToInt(uf_blockPS1[2].y); -R12i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R0i.z))); -// 5 -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R126i.x))); -// 6 -predResult = (1.0 > intBitsToFloat(R11i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.x) * 1.5); -R127i.y = ((-(intBitsToFloat(R1i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = ((-(intBitsToFloat(R1i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R13i.z) * 1.5); -// 1 -backupReg0i = R2i.w; -PV1i.x = PV0i.z & int(1); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.w))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS0i))); -PV1i.w = R2i.w; -R122i.x = floatBitsToInt((intBitsToFloat(R6i.w) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R3i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R5i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.w = PV1i.x - R127i.y; -PV0i.w = R4i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = PV0i.w << 0x00000002; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(R13i.z))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), -(intBitsToFloat(R0i.w)))); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002b; -R0i.z = PV1i.x + 0x0000002c; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R127i.y),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PS0i)); -R3i.w = floatBitsToInt(tempResultf); -PS1i = R3i.w; -} -if( activeMaskStackC[2] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R8i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R3i.w))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R3i.w))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R3i.w))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.x))); -PV0i.w = R123i.w; -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(R4i.y))); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = tempi.x; -R126i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.x))); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R18i.z)),intBitsToFloat(R3i.z)) + intBitsToFloat(R13i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -R127i.y = floatBitsToInt(float(R4i.w)); -PS0i = R127i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R13i.z),intBitsToFloat(R4i.z)),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R5i.y)),-(intBitsToFloat(R14i.z)),1.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.x))); -PS1i = R124i.y; -// 4 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.z))); -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.y))); -PS0i = R5i.z; -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R3i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.z))); -PV1i.w = R123i.w; -// 6 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R126i.z))); -PV0i.x = R1i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R127i.x))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R7i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R124i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV1i.x)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.w; -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R5i.x; -// 13 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.w))); -R5i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[2] == true ) { -R6i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.x = ((1.0 > intBitsToFloat(R6i.y))?int(0xFFFFFFFF):int(0x0)); -// 1 -R0i.w = ((R4i.w > 0)?(PV0i.x):(0)); -// 2 -predResult = (R0i.w != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = int(-1) + R4i.w; -// 1 -PV1i.y = PV0i.z << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.z)); -// 2 -R0i.x = PV1i.y + 0x0000002a; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002c; -R0i.w = PV1i.y + 0x0000002b; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R2i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R3i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R4i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.y)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.z)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.y; -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.x))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R11i.z)) + intBitsToFloat(R6i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R9i.x) * intBitsToFloat(0x3a83126f)); -R0i.y = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(0x3a83126f)); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.w) + -(intBitsToFloat(R9i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R1i.x = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PS0i = R1i.x; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R1i.y = floatBitsToInt((intBitsToFloat(R9i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R126i.z = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R2i.w = 0x3f800000; -R3i.w = floatBitsToInt(-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = R3i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R9i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R0i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), intBitsToFloat(0xbf7d70a4))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) / 2.0); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40200001)); -R127i.y = clampFI32(R127i.y); -PS1i = R127i.y; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd)); -R123i.y = floatBitsToInt((-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R0i.z = clampFI32(R0i.z); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS0i)) + uf_blockPS6[27].w)/2.0); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R127i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -R127i.x = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV1i.w))); -PV0i.x = R127i.x; -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(0xbe593484))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(R10i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -R125i.z = floatBitsToInt(exp2(intBitsToFloat(R126i.w))); -PS1i = R125i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + 1.0)); -PS0i = R2i.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R3i.x; -// 11 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R11i.y)) + intBitsToFloat(R127i.z))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.z))); -R1i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R125i.z))) + uf_blockPS6[27].z)); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R9i.w)) + intBitsToFloat(R127i.x))); -R3i.z = floatBitsToInt(exp2(intBitsToFloat(R125i.w))); -PS1i = R3i.z; -} -if( activeMaskStackC[1] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -R5i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R1i.xy),0.0).xyz); -R2i.xyz = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R2i.xy)).xyz); -R3i.w = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R3i.xy),intBitsToFloat(R3i.w)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R11i.x)) + intBitsToFloat(R4i.x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R1i.w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R0i.w))); -PV0i.z = R126i.z; -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R1i.w))); -tempResultf = log2(intBitsToFloat(R0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R1i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + uf_blockPS10[1].z); -R127i.x = clampFI32(R127i.x); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.w),intBitsToFloat(R17i.z)) + intBitsToFloat(R10i.w))); -R6i.y = clampFI32(R6i.y); -R2i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x41c80000) + intBitsToFloat(R15i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS1i))); -R125i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -PS0i = R125i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -R123i.y = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), uf_blockPS6[16].w)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -R6i.w = 0; -PS0i = R6i.w; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV0i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -R4i.w = 0x3f800000; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[30].w)); -// 7 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R16i.z)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.w))); -PV1i.w = R1i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS10[3].z,intBitsToFloat(PV1i.y)) + uf_blockPS10[1].y)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(R126i.z))); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -// 9 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R2i.z)) + uf_blockPS6[52].x); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -// 2 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[13].w)); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R3i.w)) + intBitsToFloat(R3i.w))); -PV0i.z = R123i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV0i.x))); -R6i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.y)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -PS1i = R6i.z; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -// 8 -R4i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R4i.x; -R4i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.w))); -PV0i.y = R4i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.z = R4i.z; -// 9 -R1i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R1i.w = R4i.w; -// 10 -R0i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R0i.w = R6i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/808ba0411f6f526e_0000007ff9249a49_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/808ba0411f6f526e_0000007ff9249a49_ps.txt deleted file mode 100644 index 9d137fd0..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/808ba0411f6f526e_0000007ff9249a49_ps.txt +++ /dev/null @@ -1,723 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a73d770e3204e2e6 -UNIFORM_BUFFER_LAYOUT(33, 1, 10) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 11) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 12) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2DArray textureUnitPS6; -TEXTURE_LAYOUT(9, 1, 6) uniform sampler2D textureUnitPS9; -TEXTURE_LAYOUT(12, 1, 7) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R3i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.zw)).w); -R7i.xy = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -R5i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); -PS0i = R5i.x; -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R1i.y; -R8i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PV1i.z = R8i.z; -R124i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); -R124i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); -PS1i = R124i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(R127i.w)))); -PS0i = R127i.y; -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(R127i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(R127i.z)))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(R127i.w)))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -backupReg0i = R127i.z; -R125i.x = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x437f0000)); -R125i.y = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R127i.y)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.w)); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R126i.w; -// 5 -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R124i.w),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R124i.w),intBitsToFloat(R124i.z),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(R127i.x)); -PS1i = R127i.y; -// 6 -backupReg0i = R126i.z; -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R126i.y)); -PV0i.x = R127i.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R126i.w))); -PV0i.y = R8i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(R127i.w)); -PV0i.z = R126i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = R125i.w; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R126i.w))); -PS0i = R8i.x; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[44].x)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.w))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PS1i = R2i.w; -// 8 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[44].y) + intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[43].x)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3d4ccccd)); -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.x))); -PS0i = R0i.x; -// 9 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R125i.y)) + intBitsToFloat(R127i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[45].x)); -R5i.w = 0x3f800000; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R125i.z))); -PS1i = R0i.z; -// 10 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), -(intBitsToFloat(PS1i)))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[44].z) + intBitsToFloat(backupReg0i))); -R9i.x = 0; -PS0i = R9i.x; -// 11 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),intBitsToFloat(PV0i.y),-0.0),vec4(-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R0i.w = tempi.x; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[43].z) + intBitsToFloat(R126i.x))); -PS1i = R125i.w; -// 12 -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[45].z) + intBitsToFloat(R127i.x))); -R10i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(R127i.w)); -R9i.w = R7i.x; -R9i.w = clampFI32(R9i.w); -PS0i = int(intBitsToFloat(R125i.x)); -// 13 -backupReg0i = R126i.w; -R10i.x = floatBitsToInt(uf_blockPS1[0].y); -R2i.y = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R126i.w))); -R2i.y = clampFI32(R2i.y); -R127i.z = PS0i & 0x0000001c; -R126i.w = PS0i & 0x00000002; -R7i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(backupReg0i))); -R7i.w = clampFI32(R7i.w); -PS1i = R7i.w; -// 14 -R9i.y = floatBitsToInt(uf_blockPS1[1].y); -R11i.z = floatBitsToInt(uf_blockPS1[2].y); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R124i.x))); -// 15 -R11i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R125i.w)); -R10i.y = R10i.z; -R12i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R125i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.w)); -R3i.z = floatBitsToInt(tempResultf); -PS0i = R3i.z; -// 17 -PS1i = floatBitsToInt(float(R127i.z)); -// 18 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3d124925)); -PS0i = floatBitsToInt(float(R126i.w)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 19 -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PS0i))) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.w)); -R4i.z = floatBitsToInt(tempResultf); -PS1i = R4i.z; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R12i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PV0i.x = R12i.x; -R11i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.y = R11i.y; -R127i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R124i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -R1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R1i.z; -R0i.w = 0; -PV1i.w = R0i.w; -R3i.x = PV0i.x; -PS1i = R3i.x; -// 2 -backupReg0i = R2i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV1i.z))); -R2i.y = PV1i.z; -PV0i.y = R2i.y; -R6i.z = 0; -PV0i.z = R6i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(PV1i.w)))); -R7i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R127i.z)); -R7i.z = clampFI32(R7i.z); -PS0i = R7i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.z),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R11i.y)) + intBitsToFloat(PV0i.x))); -PS1i = R122i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y),intBitsToFloat(R2i.z),intBitsToFloat(R126i.w)),vec4(-(intBitsToFloat(R12i.x)),-(intBitsToFloat(R11i.y)),-(intBitsToFloat(R1i.z)),1.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = tempi.x; -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R12i.x)) + intBitsToFloat(PS1i))); -PS0i = R8i.w; -// 5 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R3i.z))); -// 7 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R124i.w))); -// 8 -predResult = (1.0 > intBitsToFloat(R7i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = ((-(intBitsToFloat(R8i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.x) * 1.5); -R127i.z = ((-(intBitsToFloat(R8i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R2i.z) * 1.5); -// 1 -backupReg0i = R0i.w; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(R4i.z)) + intBitsToFloat(PS0i))); -PV1i.z = R2i.z; -PV1i.w = PV0i.x & int(1); -PS1i = ((intBitsToFloat(0x3eb33333) > intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -// 2 -R3i.x = floatBitsToInt((intBitsToFloat(R5i.z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -R3i.y = PV1i.w - R127i.z; -PV0i.y = R3i.y; -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS1[17].y) + 1.0)); -R3i.w = ((PS1i == 0)?(0x3f800000):(0)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -// 3 -PV1i.x = PV0i.y << 0x00000002; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002b; -R0i.z = PV1i.x + 0x0000002c; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 5 -tempResultf = 1.0 / sqrt(intBitsToFloat(PS0i)); -R2i.w = floatBitsToInt(tempResultf); -PS1i = R2i.w; -} -if( activeMaskStackC[2] == true ) { -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R2i.w))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R2i.w))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -PV0i.z = R127i.z; -PS0i = floatBitsToInt(float(R3i.y)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R11i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.z = floatBitsToInt(roundEven(intBitsToFloat(PS0i))); -PS1i = R2i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R11i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3b449ba7)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.w))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3b449ba7)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3b449ba7)); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.z))); -// 5 -backupReg0i = R127i.z; -backupReg1i = R127i.w; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R8i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.w = R127i.w; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R5i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R6i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R4i.x))); -// 7 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.x)); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R126i.w; -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R2i.x; -// 12 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R126i.w))); -R2i.w = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(PV1i.z)); -R2i.w = clampFI32(R2i.w); -} -if( activeMaskStackC[2] == true ) { -R2i.y = floatBitsToInt(textureShadow_1(textureUnitPS6, vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(R2i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R11i.x) * intBitsToFloat(0x3a83126f)); -R0i.y = floatBitsToInt(intBitsToFloat(R12i.z) * intBitsToFloat(0x3a83126f)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R8i.w) + -(intBitsToFloat(R7i.x))); -R1i.x = floatBitsToInt((intBitsToFloat(R11i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PS0i = R1i.x; -// 1 -R127i.x = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R1i.z = floatBitsToInt((intBitsToFloat(R12i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R0i.w = 0x3f800000; -R3i.w = floatBitsToInt(-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = R3i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R7i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R4i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R7i.y) + 1.0)); -tempResultf = log2(intBitsToFloat(PV1i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(max(-(intBitsToFloat(PV0i.y)), intBitsToFloat(0xbf7d70a4))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) / 2.0); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x40200001)); -R127i.w = clampFI32(R127i.w); -PS1i = R127i.w; -// 4 -R5i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R5i.x = clampFI32(R5i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd)); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + uf_blockPS6[27].w)/2.0); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R127i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(0xbe593484))); -PV0i.y = R123i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.5); -R2i.w = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV1i.y))); -PV0i.w = R2i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(R8i.y))); -R0i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -R126i.x = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -PS1i = R126i.x; -// 8 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + 1.0)); -PS0i = R2i.x; -// 9 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R127i.z; -// 10 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R3i.x; -// 11 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R9i.z)) + intBitsToFloat(R127i.y))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.z))); -R0i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R126i.x))) + uf_blockPS6[27].z)); -R6i.x = floatBitsToInt(exp2(intBitsToFloat(R127i.x))); -PS1i = R6i.x; -} -if( activeMaskStackC[1] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -R1i.xyz = floatBitsToInt(textureLod(textureUnitPS13, intBitsToFloat(R1i.xz),0.0).xyz); -R2i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R2i.xz)).xyz); -R3i.x = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R3i.xy),intBitsToFloat(R3i.w)).x); -} -// export -passPixelColor2 = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.x), intBitsToFloat(R9i.x), intBitsToFloat(R9i.x)); -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R4i.x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R1i.w) * 2.0 + -(1.0))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R4i.w))); -PV0i.z = R126i.z; -R8i.w = 0; -R7i.w = 0x3f800000; -PS0i = R7i.w; -// 1 -backupReg0i = R3i.x; -R3i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x41c80000) + intBitsToFloat(R10i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R9i.w)) + intBitsToFloat(R2i.w))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + uf_blockPS10[1].z); -R127i.w = clampFI32(R127i.w); -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -backupReg0i = R2i.x; -backupReg1i = R2i.y; -backupReg2i = R2i.z; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.y))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS1i))); -tempResultf = log2(intBitsToFloat(R5i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), uf_blockPS10[3].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), uf_blockPS6[42].z)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[42].y) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), uf_blockPS6[16].w)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 6 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockPS6[30].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),uf_blockPS6[42].x) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 7 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R4i.w))); -PV1i.y = R3i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -// 8 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -PV0i.x = R127i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R126i.z))); -PS0i = R2i.w; -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(PV0i.x))); -// 10 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R7i.z)) + intBitsToFloat(R127i.x))); -PV0i.z = R123i.z; -// 11 -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + uf_blockPS10[1].y); -R8i.x = clampFI32(R8i.x); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.w = floatBitsToInt(-(intBitsToFloat(R3i.x)) + uf_blockPS6[52].x); -// 1 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -// 2 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockPS6[13].w)); -// 3 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R4i.w))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R1i.y)) + intBitsToFloat(R1i.y))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.y))); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.x))); -R8i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PS1i = R8i.z; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -// 8 -R7i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R7i.x; -R7i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.y))); -PV0i.y = R7i.y; -R7i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = R7i.z; -// 9 -R1i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R1i.w = R7i.w; -// 10 -R0i.xyz = ivec3(R8i.x,R8i.y,R8i.z); -R0i.w = R8i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/88133ee405eaae28_000003c000009269_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/88133ee405eaae28_000003c000009269_ps.txt deleted file mode 100644 index 3c70ffe8..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/88133ee405eaae28_000003c000009269_ps.txt +++ /dev/null @@ -1,797 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ffe0e8c84f6e8da9 -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.z = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.zw)).x); -R6i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.z)) + uf_blockPS1[14].x)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.x)) + uf_blockPS1[14].x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -PS0i = R127i.x; -// 1 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 2.0 + -(1.0))); -PS1i = R125i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R127i.y)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R127i.y)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.z)))); -PS0i = R126i.z; -// 3 -R125i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R124i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.x)); -R125i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.w)); -PS1i = R126i.y; -// 4 -backupReg0i = R126i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(backupReg0i)); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(R127i.y)); -PS1i = R126i.w; -// 6 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[43].x)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R126i.x))); -R125i.y = floatBitsToInt(sqrt(intBitsToFloat(backupReg0i))); -PS0i = R125i.y; -// 7 -backupReg0i = R127i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[45].x)); -R124i.y = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R125i.z; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS1[18].y, uf_blockPS1[18].z)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R9i.z; -// 9 -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R126i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R125i.x)) + intBitsToFloat(R127i.y))); -R126i.z = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[45].y) + intBitsToFloat(R124i.x))); -PV1i.w = R123i.w; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R127i.z))); -PS1i = R126i.w; -// 10 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(R4i.w))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R125i.w)) + intBitsToFloat(R124i.w))); -PV0i.z = R1i.z; -R125i.w = R8i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = R7i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS0i = R124i.z; -// 11 -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R2i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R2i.x = clampFI32(R2i.x); -PS1i = R2i.x; -// 12 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), -(intBitsToFloat(R126i.z)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0xbb6fe5d7)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3ca30589)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3ca30589)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0xbb6fe5d7)); -PS0i = R126i.z; -// 13 -R10i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R126i.y)); -R3i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R1i.w = 0x3f800000; -R4i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.z))); -PS1i = R4i.x; -// 14 -R3i.x = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R126i.z))); -R2i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R127i.y))); -R11i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R126i.x)); -R10i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R10i.w = clampFI32(R10i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 15 -backupReg0i = R124i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(backupReg0i)); -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = PS1i & int(1); -// 17 -R11i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.x))); -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.y))); -R11i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R11i.w = clampFI32(R11i.w); -R8i.y = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = R8i.y; -// 18 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R9i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R9i.x; -// 1 -R10i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R12i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R12i.w = clampFI32(R12i.w); -R7i.w = 0; -PS1i = R7i.w; -// 2 -predResult = (1.0 > intBitsToFloat(R10i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R12i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R4i.x)); -R12i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R3i.y)); -R13i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R4i.x))); -PS0i = R13i.x; -// 1 -R14i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R3i.x)); -R13i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R3i.y))); -R14i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R2i.y)); -PS1i = R14i.y; -// 2 -R15i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R3i.x))); -R15i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R2i.y))); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R7i.y) * 1.5); -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.x) * 1.5); -PV0i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R9i.z) * 1.5); -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = PV0i.w & int(1); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(R2i.z) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R13i.w = PV1i.y - R127i.x; -PV0i.w = R13i.w; -PS0i = floatBitsToInt(uf_blockPS6[53].y * uf_fragCoordScale.y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 3 -R6i.x = floatBitsToInt(uf_blockPS6[53].x * uf_fragCoordScale.x); -R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); -PV1i.y = PV0i.w << 0x00000002; -R6i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -R2i.w = PS0i; -PS1i = floatBitsToInt(float(PV0i.w)); -// 4 -R0i.x = PV1i.y + 0x0000002b; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002a; -R0i.w = PV1i.y + 0x0000002c; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -R8i.z = PS0i; -PS1i = R8i.z; -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.z)),vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R10i.z)),-(intBitsToFloat(R7i.w))))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R6i.x))); -R1i.z = R7i.z; -PS1i = R1i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = R7i.z; -PS0i = R9i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R2i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R2i.z))); -// 5 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.y))); -// 6 -backupReg0i = R6i.y; -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R7i.x))); -PV0i.x = R16i.x; -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R12i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R4i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R5i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -// 13 -R7i.x = floatBitsToInt((uf_blockPS6[53].x * uf_fragCoordScale.x * 0.5 + intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R127i.y = clampFI32(R127i.y); -PV1i.y = R127i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.z))); -PV1i.w = R127i.w; -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R6i.x)); -PS1i = R8i.x; -// 14 -R1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.w)); -R7i.y = floatBitsToInt((uf_blockPS6[53].y * uf_fragCoordScale.y * 0.5 + intBitsToFloat(PV1i.w))); -R7i.w = PV1i.y; -R8i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R6i.z)); -PS0i = R8i.y; -// 15 -R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * uf_fragCoordScale.x * 0.5 + intBitsToFloat(R127i.z))); -R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R2i.w)); -R8i.w = R127i.y; -R1i.w = R127i.y; -PS1i = R1i.w; -// 16 -R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * uf_fragCoordScale.y * 0.5 + intBitsToFloat(R127i.w))); -R9i.w = R127i.y; -} -if( activeMaskStackC[2] == true ) { -R7i.z = floatBitsToInt(textureShadow_1(textureUnitPS8, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -R8i.y = floatBitsToInt(textureShadow_2(textureUnitPS8, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R1i.x = floatBitsToInt(textureShadow_3(textureUnitPS8, vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)))); -R9i.w = floatBitsToInt(textureShadow_4(textureUnitPS8, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(R8i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 1 -R123i.z = floatBitsToInt((intBitsToFloat(R1i.x) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 2 -R5i.w = floatBitsToInt((intBitsToFloat(R9i.w) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -PV0i.w = R5i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.y = ((R13i.w > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.y != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R13i.w; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R4i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R4i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R2i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R1i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R3i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R4i.y; -// 6 -R4i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R4i.w = clampFI32(R4i.w); -} -if( activeMaskStackC[3] == true ) { -R4i.z = floatBitsToInt(textureShadow_5(textureUnitPS8, vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R5i.w; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R4i.z))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R14i.xy)).x); -R0i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R15i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R12i.xy)).x); -R1i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R13i.xy)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x3f7eb852)); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x41a00000)); -R124i.z = floatBitsToInt(-(intBitsToFloat(R5i.w)) + 1.0); -R127i.w = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x3f555555)); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(R0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f8ba8d6)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fbc4580)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.y)) + 1.0)); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + 0.5)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.y)) + 0.5)); -R125i.z = clampFI32(R125i.z); -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg0i)); -PV0i.w = R126i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.x)) + 1.0)); -R125i.w = clampFI32(R125i.w); -PS0i = R125i.w; -// 3 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.z)) + 0.5)); -R126i.x = clampFI32(R126i.x); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + 0.5)); -R124i.w = clampFI32(R124i.w); -PV1i.w = R124i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R126i.z)) + 1.0)); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 4 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.x))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + 0.5)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R125i.w)) + 0.5)); -PV0i.w = R127i.w; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.w)) + 1.0)); -R125i.y = clampFI32(R125i.y); -PS0i = R125i.y; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PS0i)) + 0.5)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.z) + -(intBitsToFloat(PV0i.w))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R0i.w)) + 0.5)); -PV1i.w = R126i.w; -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R10i.w)) + intBitsToFloat(R5i.w))); -PS1i = R3i.w; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e35e743)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e35e743)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0xbedd476b)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c00000)); -PV1i.x = clampFI32(PV1i.x); -// 12 -R1i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R1i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R11i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R10i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R11i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R1i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R11i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/9c0b7031078fba88_0000007800001269_ps.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/9c0b7031078fba88_0000007800001269_ps.txt deleted file mode 100644 index 647e9e27..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/9c0b7031078fba88_0000007800001269_ps.txt +++ /dev/null @@ -1,590 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b8a18eeb20759bfd -UNIFORM_BUFFER_LAYOUT(33, 1, 6) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 7) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 8) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(12, 1, 4) uniform sampler2D textureUnitPS12; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R4i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R4i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).w); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.x)) + uf_blockPS1[14].x)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.w)) + uf_blockPS1[14].x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.z)) + uf_blockPS1[14].x)); -PV0i.w = R127i.w; -R124i.x = floatBitsToInt((intBitsToFloat(R5i.x) * 2.0 + -(1.0))); -PS0i = R124i.x; -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -R0i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), -(intBitsToFloat(PV0i.w)))); -PS1i = R127i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.x)))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.x)))); -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.w)); -PS0i = R126i.x; -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w)); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R127i.z)); -PV1i.y = R126i.y; -R127i.zwy = floatBitsToInt(vec3(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R0i.z)),-(intBitsToFloat(R0i.z))) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.z))); -PV1i.z = R127i.z; -PV1i.w = R127i.w; -PS1i = R127i.y; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -R125i.y = floatBitsToInt((intBitsToFloat(R5i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R5i.z) * 2.0 + -(1.0))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.x))); -PS0i = R125i.x; -// 5 -backupReg0i = R127i.y; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(0x437f0000)); -R126i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x437f0000)); -PV1i.w = floatBitsToInt(uf_blockPS6[53].z * intBitsToFloat(0x3d4ccccd)); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); -PS1i = R2i.y; -// 6 -R12i.x = floatBitsToInt((-(intBitsToFloat(R0i.z)) * intBitsToFloat(0x3d4ccccd) + -(intBitsToFloat(PV1i.w)))); -R12i.x = clampFI32(R12i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R125i.x))); -R0i.w = 0x3f800000; -R2i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), uf_blockPS1[17].y)); -PS0i = R2i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R125i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -PS1i = int(intBitsToFloat(R127i.y)); -// 8 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R2i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R1i.z)),-0.0),vec4(-(intBitsToFloat(R2i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R1i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = PS1i & int(1); -// 9 -R5i.z = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = int(intBitsToFloat(R126i.z)); -// 10 -R125i.x = PS1i & 0x00000002; -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.w)); -PS0i = floatBitsToInt(tempResultf); -// 11 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.y)); -R1i.w = floatBitsToInt(tempResultf); -PS1i = R1i.w; -// 12 -R4i.w = floatBitsToInt(float(R125i.x)); -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -PS0i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -// 1 -R4i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R9i.w = 0; -// 2 -predResult = (1.0 > intBitsToFloat(R12i.x)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R9i.x) * 1.5); -PV0i.y = floatBitsToInt(intBitsToFloat(R10i.y) * 1.5); -R127i.z = ((-(intBitsToFloat(R0i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = ((-(intBitsToFloat(R0i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R10i.z) * 1.5); -// 1 -backupReg0i = R2i.x; -backupReg1i = R2i.z; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = PV0i.w & int(1); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.y))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),intBitsToFloat(R1i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(backupReg1i) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R4i.x = PV1i.y - R127i.z; -PV0i.x = R4i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x))); -R3i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R3i.w = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -PS0i = R4i.y; -// 3 -backupReg0i = R4i.w; -backupReg1i = R0i.z; -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y))); -R3i.y = floatBitsToInt(uf_blockPS6[53].y); -R3i.y = floatBitsToInt(intBitsToFloat(R3i.y) / 2.0); -PV1i.z = PV0i.x << 0x00000002; -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg1i))); -R127i.y = floatBitsToInt(float(PV0i.x)); -PS1i = R127i.y; -// 4 -R1i.x = PV1i.z + 0x0000002b; -R1i.y = PV1i.z + 0x0000002a; -R1i.z = PV1i.z + 0x0000002d; -R1i.w = PV1i.z + 0x0000002c; -R5i.w = floatBitsToInt(uf_blockPS6[53].x); -R5i.w = floatBitsToInt(intBitsToFloat(R5i.w) / 2.0); -PS0i = R5i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.y = tempi.x; -R9i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.y))); -PS1i = R9i.z; -} -if( activeMaskStackC[2] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockPS1[R1i.z].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R1i.w].xyzw); -R8i.xyzw = floatBitsToInt(uf_blockPS1[R1i.y].xyzw); -R1i.xyzw = floatBitsToInt(uf_blockPS1[R1i.x].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z)),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R4i.z)),-(intBitsToFloat(R9i.w))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.y))); -R2i.z = R9i.z; -PS1i = R2i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(R5i.w))); -PS0i = R125i.y; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R126i.x = R3i.y; -PS1i = R126i.x; -// 4 -backupReg0i = R126i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R4i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(backupReg0i))); -R10i.z = R9i.z; -PS0i = R10i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV0i.w))); -R11i.z = R9i.z; -// 6 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.y))); -PV0i.x = R5i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.x))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R4i.w))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -backupReg0i = R0i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.z)) + intBitsToFloat(R127i.y))); -PV0i.w = R123i.w; -// 11 -backupReg0i = R0i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z)) + intBitsToFloat(R126i.y))); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.w)); -// 13 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R126i.y))); -PV1i.w = R126i.w; -R9i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.y))); -PS1i = R9i.x; -// 14 -R2i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R5i.w)); -R9i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.w))); -R9i.w = PV1i.x; -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.w)); -PS0i = R2i.y; -// 15 -R10i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R125i.y)); -R10i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R126i.x)); -R2i.w = R127i.x; -R10i.w = R127i.x; -PS1i = R10i.w; -// 16 -R11i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.y))); -R11i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R126i.w))); -R11i.w = R127i.x; -} -if( activeMaskStackC[2] == true ) { -R9i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -R2i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)))); -R10i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.w)))); -R11i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z),intBitsToFloat(R11i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(R2i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R10i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -// 2 -R0i.w = floatBitsToInt((intBitsToFloat(R11i.z) * 0.5 + intBitsToFloat(PV1i.y))/2.0); -PV0i.w = R0i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R1i.z = ((R4i.x > 0)?(PV1i.x):(0)); -// 5 -predResult = (R1i.z != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R4i.x; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R1i.x = PV1i.w + 0x0000002c; -R1i.y = PV1i.w + 0x0000002a; -R1i.z = PV1i.w + 0x0000002b; -R1i.w = PV1i.w + 0x0000002d; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R1i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R1i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R1i.y].xyzw); -R1i.xyzw = floatBitsToInt(uf_blockPS1[R1i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.y = floatBitsToInt(textureShadow_5(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.w; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.y))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R0i.w)) + 1.0); -// 1 -backupReg0i = R0i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R12i.x)) + intBitsToFloat(backupReg0i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -R0i.y = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).y); -} -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R0i.x = clampFI32(R0i.x); -R0i.z = 0x3f800000; -} -// export -passPixelColor5 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.z)); -} diff --git a/Workarounds/BreathOfTheWild_!Intel_Shadows/rules.txt b/Workarounds/BreathOfTheWild_!Intel_Shadows/rules.txt deleted file mode 100644 index 18d4bbcc..00000000 --- a/Workarounds/BreathOfTheWild_!Intel_Shadows/rules.txt +++ /dev/null @@ -1,8 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Shadows workaround for Intel iGPUs (Vulkan and Intel) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/Intel GPU Shadows (Vulkan)" -description = Reduces the severity of the bugged shadows on Intel GPUs when using Vulkan. Made by ethrillo, updated by Cypher. -vendorFilter = intel -rendererFilter = vulkan -version = 4 diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/09085793b5a9f364_00001ffe492e9249_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/09085793b5a9f364_00001ffe492e9249_ps.txt deleted file mode 100644 index 9703bd52..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/09085793b5a9f364_00001ffe492e9249_ps.txt +++ /dev/null @@ -1,1168 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader d2cb8f8abc8a00bc -UNIFORM_BUFFER_LAYOUT(33, 1, 12) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 13) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 14) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 4) uniform samplerCubeArray textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 5) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(10, 1, 6) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(14, 1, 8) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 9) uniform sampler2D textureUnitPS15; -TEXTURE_LAYOUT(16, 1, 10) uniform sampler2D textureUnitPS16; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -#ifdef VULKAN -layout(set = 1, binding = 11) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex6 = 0.0; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R13i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R124i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PS0i = R124i.z; -// 1 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -PV1i.x = R9i.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PS1i = R127i.z; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[45].x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(PS1i)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(PS1i)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[43].x)); -PS0i = int(intBitsToFloat(PV1i.w)); -// 3 -PV1i.x = PS0i & int(1); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[45].y) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R4i.w = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y)); -PS1i = R4i.w; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.z))); -R3i.y = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R8i.w = ((PV1i.x == 0)?(0):(0x3f800000)); -R3i.x = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV1i.w)); -PS0i = R3i.x; -// 5 -R15i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.z)); -PV1i.x = R15i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R0i.z = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R0i.z = clampFI32(R0i.z); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), uf_blockPS6[44].x)); -R5i.w = 0x3f800000; -PS1i = R5i.w; -// 6 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS6[39].z) + -(uf_blockPS6[39].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R124i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R12i.z))); -R12i.w = R13i.x; -R12i.w = clampFI32(R12i.w); -R13i.w = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3c23d70a) + -(0.5))); -R13i.w = clampFI32(R13i.w); -PS0i = R13i.w; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),intBitsToFloat(PV0i.y),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockPS6[44].y) + intBitsToFloat(R127i.w))); -PS1i = R122i.x; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[44].z) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z))); -PV0i.y = R123i.y; -R13i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R13i.z = clampFI32(R13i.z); -R6i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R6i.w = clampFI32(R6i.w); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 9 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R14i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(PV0i.x)); -PS1i = R14i.z; -// 10 -R12i.x = floatBitsToInt(uf_blockPS1[0].y); -R14i.y = PS1i; -PV0i.y = R14i.y; -R15i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R127i.x)); -PV0i.z = R15i.z; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 11 -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),uf_blockPS6[39].z) + -(uf_blockPS6[39].y))); -R3i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + uf_blockPS6[39].w); -R0i.w = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -PS1i = R0i.w; -} -if( activeMaskStackC[1] == true ) { -R0i.y = floatBitsToInt(textureLod(textureUnitPS11, intBitsToFloat(R0i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.w; -R13i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[11].x,uf_blockPS1[11].y,uf_blockPS1[11].z,0.0))); -PV0i.x = R13i.x; -PV0i.y = R13i.x; -PV0i.z = R13i.x; -PV0i.w = R13i.x; -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(backupReg0i))); -PS0i = R14i.x; -// 1 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[12].x,uf_blockPS1[12].y,uf_blockPS1[12].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R15i.y = tempi.x; -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(backupReg0i))); -PS1i = R16i.y; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * 2.0 + -(1.0))); -PV0i.y = R123i.y; -R16i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(PV0i.x)))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(PV0i.x)))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),intBitsToFloat(PV0i.y)) + intBitsToFloat(R3i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.w)); -R4i.y = floatBitsToInt(tempResultf); -PS1i = R4i.y; -// 4 -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x3fa66666)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R9i.x)) + intBitsToFloat(PV1i.x)); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV1i.w)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(PV1i.y)); -PV0i.w = R127i.w; -R2i.y = floatBitsToInt(intBitsToFloat(R0i.z) + uf_blockPS10[3].y); -PS0i = R2i.y; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV0i.w))); -R17i.y = floatBitsToInt(uf_blockPS1[1].y); -PS1i = R17i.y; -// 6 -backupReg0i = R3i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(PV1i.x))); -PV0i.x = R0i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.y))); -PV0i.y = R3i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.z = R0i.z; -R0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R18i.y = floatBitsToInt(-(intBitsToFloat(R6i.w)) + intBitsToFloat(PV1i.z)); -R18i.y = clampFI32(R18i.y); -PS0i = R18i.y; -// 7 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R17i.z = floatBitsToInt(uf_blockPS1[2].y); -PS1i = R17i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockPS1[13].x,uf_blockPS1[13].y,uf_blockPS1[13].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R18i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[39].w),intBitsToFloat(R0i.y)) + intBitsToFloat(R2i.x))); -PV0i.w = R123i.w; -// 1 -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R126i.y = clampFI32(R126i.y); -PV1i.y = R126i.y; -// 2 -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -// 4 -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.w = R127i.w; -// 5 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -// 6 -R14i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(R127i.w))); -R14i.w = clampFI32(R14i.w); -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R10i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PV0i.x = R10i.x; -R10i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.y = R10i.y; -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PV1i.x = R123i.x; -R4i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R4i.z; -R9i.w = 0; -R2i.x = PV0i.x; -PS1i = R2i.x; -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PV1i.z))); -R0i.y = PV1i.z; -PV0i.y = R0i.y; -R2i.z = 0; -PV0i.z = R2i.z; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.z),intBitsToFloat(R16i.z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R4i.y))); -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.y),intBitsToFloat(R127i.x),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),1.0,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R15i.w = tempi.x; -R19i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -PS0i = R19i.y; -// 5 -predResult = (1.0 > intBitsToFloat(R13i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.x) * 1.5); -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) * 1.5); -PV0i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R10i.z) * 1.5); -// 1 -backupReg0i = R0i.z; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.z = PV0i.w & int(1); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(R0i.w) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R3i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.y = PV1i.z - R127i.x; -PV0i.y = R4i.y; -R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.w = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(uf_blockPS6[53].y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 3 -R4i.x = PS0i; -R3i.y = floatBitsToInt(uf_blockPS6[53].x); -R3i.y = floatBitsToInt(intBitsToFloat(R3i.y) / 2.0); -R3i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -PV1i.w = PV0i.y << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.y)); -// 4 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R8i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R8i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R3i.w),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R3i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.w = tempi.x; -R9i.z = PS0i; -PS1i = R9i.z; -} -if( activeMaskStackC[2] == true ) { -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z)),vec4(-(intBitsToFloat(R10i.x)),-(intBitsToFloat(R10i.y)),-(intBitsToFloat(R4i.z)),-(intBitsToFloat(R9i.w))))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.w)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.y))); -R10i.z = R8i.z; -PS1i = R10i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R11i.z = R8i.z; -PS0i = R11i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R4i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PV0i.w))); -// 6 -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R9i.x))); -PV0i.x = R16i.x; -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R8i.y))); -R19i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R12i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R5i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R7i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV1i.x)); -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.x)); -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R126i.z; -// 12 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -// 13 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R126i.z))); -PV1i.x = R126i.x; -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R126i.w = clampFI32(R126i.w); -PV1i.w = R126i.w; -R8i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.y))); -PS1i = R8i.x; -// 14 -R9i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R3i.y)); -R8i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.x))); -R8i.w = PV1i.w; -R9i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R3i.z)); -PS0i = R9i.y; -// 15 -R10i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R127i.w)); -R10i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(R4i.x)); -R9i.w = R126i.w; -R10i.w = R126i.w; -PS1i = R10i.w; -// 16 -R11i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.y))); -R11i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R126i.x))); -R11i.w = R126i.w; -} -if( activeMaskStackC[2] == true ) { -R8i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R9i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -R10i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.w)))); -R11i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z),intBitsToFloat(R11i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R9i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R10i.w) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -// 2 -R6i.w = floatBitsToInt((intBitsToFloat(R11i.z) * 0.5 + intBitsToFloat(PV1i.y))/2.0); -PV0i.w = R6i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.w = ((R4i.y > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.w != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R4i.y; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002a; -R0i.z = PV1i.w + 0x0000002b; -R0i.w = PV1i.w + 0x0000002d; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.y = floatBitsToInt(textureShadow_5(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.w; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.y))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R13i.z)) + intBitsToFloat(R6i.w))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R2i.x = floatBitsToInt(intBitsToFloat(R15i.x) * intBitsToFloat(0x3a83126f)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt(-(intBitsToFloat(R18i.z))); -PV0i.z = R0i.z; -R0i.w = 0x40400000; -R2i.y = floatBitsToInt(intBitsToFloat(R15i.z) * intBitsToFloat(0x3a83126f)); -PS0i = R2i.y; -// 1 -redcCUBE(vec4(intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z),intBitsToFloat(R13i.x),intBitsToFloat(R15i.y)),vec4(intBitsToFloat(R15i.y),intBitsToFloat(R13i.x),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.z)),cubeMapSTM,cubeMapFaceId); -R127i.x = floatBitsToInt(cubeMapSTM.x); -R127i.y = floatBitsToInt(cubeMapSTM.y); -R127i.z = floatBitsToInt(cubeMapSTM.z); -R127i.w = cubeMapFaceId; -PV1i.x = R127i.x; -PV1i.y = R127i.y; -PV1i.z = R127i.z; -PV1i.w = R127i.w; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = R126i.x; -// 2 -R3i.x = floatBitsToInt((intBitsToFloat(R15i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PV0i.y = floatBitsToInt(intBitsToFloat(R15i.w) + -(intBitsToFloat(R19i.y))); -R0i.z = PV1i.w; -R3i.w = floatBitsToInt((intBitsToFloat(R15i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 3 -backupReg0i = R127i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(R19i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R126i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.w = floatBitsToInt(tempResultf); -PS1i = R127i.w; -// 4 -R0i.x = PV1i.w; -R0i.y = PV1i.z; -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), intBitsToFloat(0xbf7d70a4))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.w = 0x3f800000; -PS0i = R2i.w; -// 5 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PV1i.x = R127i.x; -R5i.y = 0; -R6i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3ba3d70a)); -R123i.w = floatBitsToInt((-(intBitsToFloat(R15i.y)) * 0.5 + 0.5)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); -// 6 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x40200000)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS1i)) + uf_blockPS6[27].w)/2.0); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3daaaaab)); -R4i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0xbe593484))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.w))); -// 8 -backupReg0i = R127i.w; -R8i.x = floatBitsToInt((intBitsToFloat(R14i.w) * intBitsToFloat(0xbdcccccd) + intBitsToFloat(0x3dcccccd))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(0x3fc90da4))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(backupReg0i))); -tempResultf = log2(intBitsToFloat(PV1i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R127i.y = floatBitsToInt(tempResultf); -PS0i = R127i.y; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),-(intBitsToFloat(PV0i.y))) + 1.0)); -PS1i = R4i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R15i.x),intBitsToFloat(R14i.y),intBitsToFloat(R15i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R6i.x; -// 12 -R7i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(R127i.y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -R2i.z = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -R2i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R4i.w = floatBitsToInt(exp2(intBitsToFloat(R127i.w))); -PS0i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS6, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex6),intBitsToFloat(R0i.w)).xyz); -R0i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -R3i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R3i.xw),0.0).xyz); -R4i.xyz = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R4i.xy)).xyz); -R5i.xyz = floatBitsToInt(texture(textureUnitPS16, intBitsToFloat(R5i.xy)).xyz); -R6i.x = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R6i.xy),intBitsToFloat(R6i.z)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -R123i.x = floatBitsToInt((intBitsToFloat(R0i.w) * 2.0 + -(1.0))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R127i.z = clampFI32(R127i.z); -PV0i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.z))); -R126i.w = floatBitsToInt(exp2(intBitsToFloat(R7i.x))); -PS0i = R126i.w; -// 1 -R125i.x = floatBitsToInt(min(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.w) * intBitsToFloat(0x40200001)); -R126i.y = clampFI32(R126i.y); -PV1i.y = R126i.y; -R124i.z = floatBitsToInt(max(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.w))); -PV1i.z = R124i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x41c80000) + intBitsToFloat(R14i.z))); -PV1i.w = R123i.w; -R126i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R4i.w))) + uf_blockPS6[27].z)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3dcccccd)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x2edbe6ff)); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + uf_blockPS6[52].x); -R127i.w = floatBitsToInt((-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -tempResultf = log2(intBitsToFloat(backupReg0i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R125i.z = floatBitsToInt(tempResultf); -PS0i = R125i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R17i.y),intBitsToFloat(R17i.z),-0.0),vec4(intBitsToFloat(R14i.x),intBitsToFloat(R16i.y),intBitsToFloat(R16i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 4 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R2i.z))); -PV0i.x = R124i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R127i.y = clampFI32(R127i.y); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); -R127i.z = clampFI32(R127i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(R125i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0x2edbe6ff)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R8i.x)); -R127i.w = clampFI32(R127i.w); -R125i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = R125i.y; -// 6 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 7 -backupReg0i = R126i.y; -backupReg1i = R127i.w; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), uf_blockPS6[13].w)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(R124i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS0i)) + 1.0)); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R127i.z))); -tempResultf = log2(intBitsToFloat(backupReg1i)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R2i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.x))); -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS0i = R127i.y; -// 9 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockPS6[30].w)); -R124i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R125i.x))); -R125i.z = R1i.x; -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); -R125i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.x))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 10 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R2i.z))); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt(intBitsToFloat(R0i.z) + -(intBitsToFloat(R125i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -// 11 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.y))); -PV1i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), uf_blockPS6[16].w)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.w),intBitsToFloat(R125i.z)) + intBitsToFloat(R125i.z))); -PS1i = R127i.y; -// 12 -backupReg0i = R126i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R1i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV1i.w))); -PV0i.z = R0i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R124i.z))); -PV0i.w = R123i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.w))); -PS0i = R125i.x; -// 13 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(R126i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); -PS1i = R127i.z; -// 14 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(R126i.y))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(R126i.y))); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(R126i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -PS0i = R125i.z; -// 15 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R18i.y)) + intBitsToFloat(R126i.z))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R125i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R125i.x))); -PS1i = R126i.y; -// 16 -backupReg0i = R127i.x; -backupReg1i = R124i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.w))); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg0i))); -R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + -(intBitsToFloat(R125i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg1i))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(R0i.x))) + intBitsToFloat(R124i.x))); -PS0i = R127i.z; -// 17 -backupReg0i = R5i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.x) + -(intBitsToFloat(R124i.y))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), uf_blockPS6[1].w)); -R5i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(R125i.y))); -R126i.w = floatBitsToInt(uf_blockPS6[1].x + -(1.0)); -R124i.x = floatBitsToInt(uf_blockPS6[1].y + -(1.0)); -PS1i = R124i.x; -// 18 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R127i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(backupReg0i))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + intBitsToFloat(R127i.w))); -PV0i.w = floatBitsToInt(uf_blockPS6[1].z + -(1.0)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R13i.w)) + intBitsToFloat(R124i.y))); -PS0i = R127i.y; -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R13i.w)) + intBitsToFloat(R125i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R5i.y)) + 1.0)); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R5i.y)) + 1.0)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R13i.w)) + intBitsToFloat(R125i.y))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R5i.y)) + 1.0)); -PS1i = R122i.x; -// 20 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.y))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -R3i.w = 0; -R2i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R0i.x)) + intBitsToFloat(R126i.y))); -PS0i = R2i.x; -// 21 -R2i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R0i.x)) + intBitsToFloat(R127i.x))); -R2i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R0i.x)) + intBitsToFloat(R127i.z))); -R5i.w = 0x3f800000; -R3i.y = R14i.w; -PS1i = R3i.y; -// 22 -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(R1i.x)) + intBitsToFloat(R1i.x))); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -// 0 -R126i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS10[3].z,intBitsToFloat(R4i.x)) + uf_blockPS10[1].y)); -R126i.w = clampFI32(R126i.w); -// 1 -PV1i.y = floatBitsToInt(intBitsToFloat(R6i.x) + uf_blockPS10[1].z); -PV1i.y = clampFI32(PV1i.y); -// 2 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R126i.w))); -// 3 -R6i.xyz = ivec3(R5i.x,R5i.y,R5i.z); -R6i.w = R5i.w; -// 4 -R5i.xyz = ivec3(R2i.x,R2i.y,R2i.z); -R5i.w = R2i.w; -// 5 -R4i.xyz = ivec3(R3i.x,R3i.y,R3i.z); -R4i.w = R3i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); -passPixelColor1 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w)); -passPixelColor2 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/45e72a252caba763_000003c000009269_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/45e72a252caba763_000003c000009269_ps.txt deleted file mode 100644 index 34d87e8c..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/45e72a252caba763_000003c000009269_ps.txt +++ /dev/null @@ -1,581 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader cbbcf83b05c6d921 -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(14, 1, 5) uniform sampler2D textureUnitPS14; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.z = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.zw)).x); -R6i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.z = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).w); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R4i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -R4i.z = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R3i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PS0i = R3i.z; -// 1 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R9i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PS1i = R9i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(PV1i.z)))); -PS0i = R126i.w; -// 3 -backupReg0i = R127i.z; -backupReg1i = R127i.w; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.w)))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(backupReg0i)))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(backupReg1i)))); -R125i.z = floatBitsToInt(-(intBitsToFloat(backupReg1i))); -PS1i = R125i.z; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.z = tempi.x; -R126i.y = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x437f0000)); -PS0i = R126i.y; -// 5 -R126i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.z)); -R125i.y = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(R126i.w)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(R127i.x)); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R127i.y)); -PV1i.w = R126i.w; -R125i.x = floatBitsToInt(sqrt(intBitsToFloat(R126i.z))); -PS1i = R125i.x; -// 6 -R127i.x = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R125i.z)); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R127i.w)); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockPS6[43].x)); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(R124i.z))); -PS0i = R125i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockPS6[45].x)); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.x))); -R127i.w = int(intBitsToFloat(R126i.y)); -PS1i = R127i.w; -// 8 -backupReg0i = R126i.x; -R126i.x = PS1i & 0x0000001c; -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.z))); -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.w))); -PS0i = R0i.x; -// 9 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),uf_blockPS6[43].z) + intBitsToFloat(R124i.z))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R9i.z)) * intBitsToFloat(0x3d4ccccd)); -PV1i.y = R127i.y; -R127i.z = R127i.w & 0x00000002; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),uf_blockPS6[45].z) + intBitsToFloat(PV0i.w))); -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 10 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),-0.0),vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),0.0))); -PV0i.x = R124i.x; -PV0i.y = R124i.x; -PV0i.z = R124i.x; -PV0i.w = R124i.x; -R1i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.y))); -R1i.x = clampFI32(R1i.x); -PS0i = R1i.x; -// 11 -R9i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R127i.x)); -R10i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R127i.w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.x)); -// 12 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); -PV0i.x = R2i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS1i))); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -R11i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.y))); -R11i.w = clampFI32(R11i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -// 13 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS0i))); -R125i.w = PV0i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = PV0i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS1i = R124i.z; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(float(R126i.x)); -// 15 -backupReg0i = R127i.y; -R10i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R127i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3d124925)); -R10i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R10i.w = clampFI32(R10i.w); -R9i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(backupReg0i))); -PS1i = R9i.y; -// 16 -PS0i = floatBitsToInt(float(R127i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 17 -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(PS0i))) + intBitsToFloat(R127i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.z = floatBitsToInt(tempResultf); -PS1i = R2i.z; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R7i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -R6i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R8i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R8i.z; -R1i.w = 0; -PV1i.w = R1i.w; -R9i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.z)); -R9i.w = clampFI32(R9i.w); -PS1i = R9i.w; -// 2 -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.z)),vec4(-(intBitsToFloat(R7i.x)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(PV1i.z)),-(intBitsToFloat(PV1i.w))))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -// 3 -predResult = (1.0 > intBitsToFloat(R11i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = ((-(intBitsToFloat(R9i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -R127i.y = ((-(intBitsToFloat(R9i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.x) * 1.5); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R1i.z) * 1.5); -// 1 -backupReg0i = R2i.z; -backupReg1i = R1i.x; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS0i))); -PV1i.w = PV0i.x & int(1); -PS1i = ((intBitsToFloat(0x3eb33333) > intBitsToFloat(backupReg1i))?int(0xFFFFFFFF):int(0x0)); -// 2 -R2i.x = floatBitsToInt((intBitsToFloat(R0i.w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.z)),uf_blockPS1[17].y) + 1.0)); -PV0i.z = PV1i.w - R127i.y; -R1i.w = ((PS1i == 0)?(0x3f800000):(0)); -R2i.w = 0x3f000000; -PS0i = R2i.w; -// 3 -PV1i.x = PV0i.z << 0x00000002; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R2i.z))); -R127i.w = floatBitsToInt(float(PV0i.z)); -PS1i = R127i.w; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002c; -R0i.z = PV1i.x + 0x0000002b; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.y))); -PS0i = R122i.x; -// 5 -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(PS0i))); -R6i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.w))); -PS1i = R6i.z; -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.y = floatBitsToInt(uf_blockPS6[53].y); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) / 2.0); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(uf_blockPS6[53].x); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.z)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y))); -R7i.z = R6i.z; -PS1i = R7i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(R126i.z))); -PS0i = R125i.y; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R8i.z = R6i.z; -PS1i = R8i.z; -// 4 -backupReg0i = R126i.y; -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3b449ba7)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3b449ba7)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3b449ba7)); -R126i.x = backupReg0i; -PS0i = R126i.x; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.y))); -R1i.z = R6i.z; -// 6 -backupReg0i = R127i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R9i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R7i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R6i.x))); -PV0i.w = R127i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R5i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R3i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R5i.z)) + intBitsToFloat(R126i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R0i.z)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -// 13 -R127i.x = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R6i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV0i.y))); -R6i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.z))); -PS1i = R6i.x; -// 14 -R7i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z)); -R7i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R126i.w)); -R6i.w = PV1i.x; -R7i.w = PV1i.x; -PS0i = R7i.w; -// 15 -R8i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R125i.y)); -R8i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R126i.x)); -R8i.w = R127i.x; -R1i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.z))); -PS1i = R1i.x; -// 16 -R1i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R127i.y))); -R1i.w = R127i.x; -} -if( activeMaskStackC[2] == true ) { -R6i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)))); -R7i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -R8i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R1i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(R7i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -// 1 -R123i.z = floatBitsToInt((intBitsToFloat(R8i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -// 2 -R127i.y = floatBitsToInt((intBitsToFloat(R1i.z) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -PV0i.y = R127i.y; -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 4 -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R11i.w)) + intBitsToFloat(R127i.y))); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R0i.w = R2i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R10i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R9i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R10i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R2i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS14, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R10i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R9i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + uf_blockPS10[1].y); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/59cba7eb9a9c1df6_00000007f924d249_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/59cba7eb9a9c1df6_00000007f924d249_ps.txt deleted file mode 100644 index 209a9cad..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/59cba7eb9a9c1df6_00000007f924d249_ps.txt +++ /dev/null @@ -1,848 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 9c98a67271f8cc75 -UNIFORM_BUFFER_LAYOUT(33, 1, 10) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 11) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 12) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 4) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(10, 1, 5) uniform sampler2D textureUnitPS10; -TEXTURE_LAYOUT(11, 1, 6) uniform sampler2D textureUnitPS11; -TEXTURE_LAYOUT(14, 1, 7) uniform sampler2D textureUnitPS14; -TEXTURE_LAYOUT(15, 1, 8) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R3i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R13i.xy = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -PV0i.y = R127i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R5i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PS0i = R5i.x; -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.z)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.z)))); -R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(PV0i.y)))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(PV0i.y)))); -PS1i = R125i.w; -// 2 -R127i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[43].x)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[45].x)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(R127i.w)))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(R127i.w)))); -PS0i = R127i.y; -// 3 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[45].y) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R126i.w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R126i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R125i.w)); -PS1i = R126i.x; -// 4 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(backupReg0i)); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[43].z) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R127i.z = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R127i.y)); -PS0i = R127i.z; -// 5 -R9i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(PV0i.w)); -PV1i.x = R9i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[44].x)); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(R127i.w)); -PV1i.z = R126i.z; -R4i.w = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -R5i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PS1i = R5i.z; -// 6 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockPS6[39].z) + -(uf_blockPS6[39].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R125i.z))); -R2i.y = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -PS0i = R2i.y; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[44].y) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.w))); -R4i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -R5i.w = 0x3f800000; -R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y))); -PS1i = R4i.x; -// 8 -R2i.x = floatBitsToInt((-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0xc0600000))); -R2i.x = clampFI32(R2i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -R0i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3d4ccccd)); -PV0i.z = R0i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),uf_blockPS6[44].z) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -R10i.x = floatBitsToInt(uf_blockPS1[0].y); -PS0i = R10i.x; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R5i.z))); -R15i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(PV0i.w)); -PV1i.z = R15i.z; -R0i.w = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV0i.z))); -R0i.w = clampFI32(R0i.w); -R9i.w = R13i.x; -R9i.w = clampFI32(R9i.w); -PS1i = R9i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R12i.y = PV1i.z; -PV0i.y = R12i.y; -R9i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R125i.y)); -PV0i.z = R9i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R1i.z)), uf_blockPS1[17].y)); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.y))); -PS0i = R122i.x; -// 11 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),uf_blockPS6[39].z) + -(uf_blockPS6[39].y))); -R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + uf_blockPS6[39].w); -R3i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R4i.z)), -(intBitsToFloat(R4i.z)))); -R2i.w = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -R3i.z = floatBitsToInt(textureLod(textureUnitPS11, intBitsToFloat(R3i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),-(intBitsToFloat(R0i.y))) + intBitsToFloat(R3i.w))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[39].w),intBitsToFloat(R3i.z)) + intBitsToFloat(R2i.z))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R2i.w)); -// 1 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -PV1i.y = R11i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R127i.z = clampFI32(R127i.z); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),-(intBitsToFloat(R4i.x))) + intBitsToFloat(PV0i.x))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PS1i = R10i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.y = R123i.y; -R16i.z = floatBitsToInt(-(intBitsToFloat(R0i.w)) + intBitsToFloat(R125i.y)); -R16i.z = clampFI32(R16i.z); -R11i.z = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R0i.z))); -R11i.z = clampFI32(R11i.z); -PS0i = R11i.z; -// 3 -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R17i.z = floatBitsToInt(intBitsToFloat(R2i.x) + uf_blockPS10[3].y); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -R0i.z = floatBitsToInt(tempResultf); -PS1i = R0i.z; -// 4 -R10i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R10i.w; -PS0i = int(intBitsToFloat(R2i.y)); -// 5 -PV1i.w = PS0i & int(1); -R11i.w = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PS1i = R11i.w; -// 6 -R12i.z = ((PV1i.w == 0)?(0):(0x3f800000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.x)); -PS0i = floatBitsToInt(tempResultf); -// 7 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS0i))); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS0i))); -R4i.w = floatBitsToInt(uf_blockPS10[2].w); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.w)); -R2i.w = floatBitsToInt(tempResultf); -PS1i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, intBitsToFloat(R4i.w))); -PV0i.x = R5i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, intBitsToFloat(R4i.w))); -PV0i.y = R5i.y; -R14i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, intBitsToFloat(R4i.w))); -PV0i.z = R14i.z; -R0i.w = 0; -// 1 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -R2i.y = PV0i.z; -PV1i.y = R2i.y; -R2i.z = 0; -PV1i.z = R2i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PV0i.z))); -R0i.x = PV0i.x; -PS1i = R0i.x; -// 2 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PS1i),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.w))); -PS0i = R122i.x; -// 3 -R10i.y = floatBitsToInt(uf_blockPS1[1].y); -R18i.z = floatBitsToInt(uf_blockPS1[2].y); -R12i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.x)); -PS1i = floatBitsToInt(tempResultf); -// 4 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R0i.z))); -// 5 -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R126i.x))); -// 6 -predResult = (1.0 > intBitsToFloat(R11i.z)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.x) * 1.5); -R127i.y = ((-(intBitsToFloat(R1i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = ((-(intBitsToFloat(R1i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R13i.z) * 1.5); -// 1 -backupReg0i = R2i.w; -PV1i.x = PV0i.z & int(1); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.x)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.w))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS0i))); -PV1i.w = R2i.w; -R122i.x = floatBitsToInt((intBitsToFloat(R6i.w) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R3i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R5i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.w = PV1i.x - R127i.y; -PV0i.w = R4i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = PV0i.w << 0x00000002; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(R13i.z))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), -(intBitsToFloat(R0i.w)))); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002b; -R0i.z = PV1i.x + 0x0000002c; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R127i.y),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PS0i)); -R3i.w = floatBitsToInt(tempResultf); -PS1i = R3i.w; -} -if( activeMaskStackC[2] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R8i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R3i.w))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R3i.w))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R3i.w))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(R3i.z)) + intBitsToFloat(R3i.x))); -PV0i.w = R123i.w; -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(R3i.z)) + intBitsToFloat(R4i.y))); -PS0i = R126i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.y = tempi.x; -R126i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.x))); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R18i.z)),intBitsToFloat(R3i.z)) + intBitsToFloat(R13i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -R127i.y = floatBitsToInt(float(R4i.w)); -PS0i = R127i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R4i.y),intBitsToFloat(R13i.z),intBitsToFloat(R4i.z)),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R5i.y)),-(intBitsToFloat(R14i.z)),1.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R2i.x))); -PS1i = R124i.y; -// 4 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.z))); -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.y))); -PS0i = R5i.z; -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R3i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3f19999a) + intBitsToFloat(R1i.z))); -PV1i.w = R123i.w; -// 6 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R126i.z))); -PV0i.x = R1i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R127i.x))); -R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R7i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R124i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV1i.x)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.w; -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R5i.x; -// 13 -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.w))); -R5i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[2] == true ) { -R6i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.x = ((1.0 > intBitsToFloat(R6i.y))?int(0xFFFFFFFF):int(0x0)); -// 1 -R0i.w = ((R4i.w > 0)?(PV0i.x):(0)); -// 2 -predResult = (R0i.w != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = int(-1) + R4i.w; -// 1 -PV1i.y = PV0i.z << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.z)); -// 2 -R0i.x = PV1i.y + 0x0000002a; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002c; -R0i.w = PV1i.y + 0x0000002b; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R2i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R3i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R4i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.y)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.z)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.y; -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.x))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R11i.z)) + intBitsToFloat(R6i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R9i.x) * intBitsToFloat(0x3a83126f)); -R0i.y = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(0x3a83126f)); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.w) + -(intBitsToFloat(R9i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R1i.x = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PS0i = R1i.x; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R1i.y = floatBitsToInt((intBitsToFloat(R9i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R126i.z = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -R2i.w = 0x3f800000; -R3i.w = floatBitsToInt(-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = R3i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R9i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R0i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R13i.y) + 1.0)); -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), intBitsToFloat(0xbf7d70a4))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) / 2.0); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40200001)); -R127i.y = clampFI32(R127i.y); -PS1i = R127i.y; -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd)); -R123i.y = floatBitsToInt((-(intBitsToFloat(R1i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R0i.z = clampFI32(R0i.z); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS0i)) + uf_blockPS6[27].w)/2.0); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R127i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -R127i.x = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV1i.w))); -PV0i.x = R127i.x; -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(0xbe593484))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.z), intBitsToFloat(R10i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -R125i.z = floatBitsToInt(exp2(intBitsToFloat(R126i.w))); -PS1i = R125i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + 1.0)); -PS0i = R2i.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R2i.w)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R3i.x; -// 11 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R11i.y)) + intBitsToFloat(R127i.z))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.z))); -R1i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R125i.z))) + uf_blockPS6[27].z)); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R9i.w)) + intBitsToFloat(R127i.x))); -R3i.z = floatBitsToInt(exp2(intBitsToFloat(R125i.w))); -PS1i = R3i.z; -} -if( activeMaskStackC[1] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -R5i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R1i.xy),0.0).xyz); -R2i.xyz = floatBitsToInt(texture(textureUnitPS10, intBitsToFloat(R2i.xy)).xyz); -R3i.w = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R3i.xy),intBitsToFloat(R3i.w)).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R11i.x)) + intBitsToFloat(R4i.x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R1i.w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R0i.w))); -PV0i.z = R126i.z; -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R1i.w))); -tempResultf = log2(intBitsToFloat(R0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R1i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * 2.0 + -(1.0))); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + uf_blockPS10[1].z); -R127i.x = clampFI32(R127i.x); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.w),intBitsToFloat(R17i.z)) + intBitsToFloat(R10i.w))); -R6i.y = clampFI32(R6i.y); -R2i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x41c80000) + intBitsToFloat(R15i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS1i))); -R125i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -PS0i = R125i.w; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -R123i.y = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), uf_blockPS6[16].w)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -R6i.w = 0; -PS0i = R6i.w; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.z)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV0i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -R4i.w = 0x3f800000; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[30].w)); -// 7 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R16i.z)) + intBitsToFloat(R127i.z))); -PV1i.y = R123i.y; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.w))); -PV1i.w = R1i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS10[3].z,intBitsToFloat(PV1i.y)) + uf_blockPS10[1].y)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(R126i.z))); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); -// 9 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R2i.z)) + uf_blockPS6[52].x); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.x = clampFI32(R123i.x); -PV1i.x = R123i.x; -// 2 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), uf_blockPS6[13].w)); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R3i.w)) + intBitsToFloat(R3i.w))); -PV0i.z = R123i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV0i.x))); -R6i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.y)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.z))); -PS1i = R6i.z; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -// 8 -R4i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R4i.x; -R4i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.w))); -PV0i.y = R4i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.z = R4i.z; -// 9 -R1i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R1i.w = R4i.w; -// 10 -R0i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R0i.w = R6i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/808ba0411f6f526e_0000007ff9249a49_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/808ba0411f6f526e_0000007ff9249a49_ps.txt deleted file mode 100644 index 9d137fd0..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/808ba0411f6f526e_0000007ff9249a49_ps.txt +++ /dev/null @@ -1,723 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader a73d770e3204e2e6 -UNIFORM_BUFFER_LAYOUT(33, 1, 10) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 11) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 12) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4; -TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(6, 1, 5) uniform sampler2DArray textureUnitPS6; -TEXTURE_LAYOUT(9, 1, 6) uniform sampler2D textureUnitPS9; -TEXTURE_LAYOUT(12, 1, 7) uniform sampler2D textureUnitPS12; -TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem2; -layout(location = 2) in vec4 passParameterSem5; -layout(location = 3) in vec4 passParameterSem6; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -layout(location = 2) out vec4 passPixelColor2; -#ifdef VULKAN -layout(set = 1, binding = 9) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[2]; -bool activeMaskStackC[3]; -activeMaskStack[0] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem2); -R2i = floatBitsToInt(passParameterSem5); -R3i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R5i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R3i.zw)).xyzw); -R3i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R3i.zw)).w); -R7i.xy = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).xy); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.x)) + uf_blockPS1[14].x)); -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R5i.z)) + uf_blockPS1[14].x)); -R5i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); -PS0i = R5i.x; -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R1i.y; -R8i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -PV1i.z = R8i.z; -R124i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); -R124i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); -PS1i = R124i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), -(intBitsToFloat(R127i.w)))); -PS0i = R127i.y; -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(R127i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(R127i.z)))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), -(intBitsToFloat(R127i.w)))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -backupReg0i = R127i.z; -R125i.x = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x437f0000)); -R125i.y = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R127i.y)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.w)); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i))); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R126i.w; -// 5 -R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R124i.w),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R124i.w),intBitsToFloat(R124i.z),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(R127i.x)); -PS1i = R127i.y; -// 6 -backupReg0i = R126i.z; -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R126i.y)); -PV0i.x = R127i.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R126i.w))); -PV0i.y = R8i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(R127i.w)); -PV0i.z = R126i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(backupReg0i)); -PV0i.w = R125i.w; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R126i.w))); -PS0i = R8i.x; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[44].x)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.w))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -PS1i = R2i.w; -// 8 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[44].y) + intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[43].x)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3d4ccccd)); -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.x))); -PS0i = R0i.x; -// 9 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.y))); -R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R125i.y)) + intBitsToFloat(R127i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockPS6[45].x)); -R5i.w = 0x3f800000; -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R125i.z))); -PS1i = R0i.z; -// 10 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[45].y) + intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), -(intBitsToFloat(PS1i)))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[44].z) + intBitsToFloat(backupReg0i))); -R9i.x = 0; -PS0i = R9i.x; -// 11 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg1i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),intBitsToFloat(PV0i.y),-0.0),vec4(-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(backupReg1i)),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R0i.w = tempi.x; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[43].z) + intBitsToFloat(R126i.x))); -PS1i = R125i.w; -// 12 -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),uf_blockPS6[45].z) + intBitsToFloat(R127i.x))); -R10i.z = floatBitsToInt(uf_blockPS6[44].w + intBitsToFloat(R127i.w)); -R9i.w = R7i.x; -R9i.w = clampFI32(R9i.w); -PS0i = int(intBitsToFloat(R125i.x)); -// 13 -backupReg0i = R126i.w; -R10i.x = floatBitsToInt(uf_blockPS1[0].y); -R2i.y = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R126i.w))); -R2i.y = clampFI32(R2i.y); -R127i.z = PS0i & 0x0000001c; -R126i.w = PS0i & 0x00000002; -R7i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(backupReg0i))); -R7i.w = clampFI32(R7i.w); -PS1i = R7i.w; -// 14 -R9i.y = floatBitsToInt(uf_blockPS1[1].y); -R11i.z = floatBitsToInt(uf_blockPS1[2].y); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R124i.x))); -// 15 -R11i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R125i.w)); -R10i.y = R10i.z; -R12i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R125i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.w)); -R3i.z = floatBitsToInt(tempResultf); -PS0i = R3i.z; -// 17 -PS1i = floatBitsToInt(float(R127i.z)); -// 18 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3d124925)); -PS0i = floatBitsToInt(float(R126i.w)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 19 -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PS0i))) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.w)); -R4i.z = floatBitsToInt(tempResultf); -PS1i = R4i.z; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R12i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PV0i.x = R12i.x; -R11i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -PV0i.y = R11i.y; -R127i.z = floatBitsToInt(uf_blockPS10[2].z + 1.0); -// 1 -R124i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.y)) + 1.0)); -R1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -PV1i.z = R1i.z; -R0i.w = 0; -PV1i.w = R0i.w; -R3i.x = PV0i.x; -PS1i = R3i.x; -// 2 -backupReg0i = R2i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV1i.z))); -R2i.y = PV1i.z; -PV0i.y = R2i.y; -R6i.z = 0; -PV0i.z = R6i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), -(intBitsToFloat(PV1i.w)))); -R7i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(R127i.z)); -R7i.z = clampFI32(R7i.z); -PS0i = R7i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R9i.z),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R11i.y)) + intBitsToFloat(PV0i.x))); -PS1i = R122i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y),intBitsToFloat(R2i.z),intBitsToFloat(R126i.w)),vec4(-(intBitsToFloat(R12i.x)),-(intBitsToFloat(R11i.y)),-(intBitsToFloat(R1i.z)),1.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = tempi.x; -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R12i.x)) + intBitsToFloat(PS1i))); -PS0i = R8i.w; -// 5 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R3i.z))); -// 7 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R124i.w))); -// 8 -predResult = (1.0 > intBitsToFloat(R7i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = ((-(intBitsToFloat(R8i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.x) * 1.5); -R127i.z = ((-(intBitsToFloat(R8i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.y) * 1.5); -PS0i = floatBitsToInt(intBitsToFloat(R2i.z) * 1.5); -// 1 -backupReg0i = R0i.w; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.y)),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(R4i.z)) + intBitsToFloat(PS0i))); -PV1i.z = R2i.z; -PV1i.w = PV0i.x & int(1); -PS1i = ((intBitsToFloat(0x3eb33333) > intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -// 2 -R3i.x = floatBitsToInt((intBitsToFloat(R5i.z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(0x3ac49ba6))); -R3i.y = PV1i.w - R127i.z; -PV0i.y = R3i.y; -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS1[17].y) + 1.0)); -R3i.w = ((PS1i == 0)?(0x3f800000):(0)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -// 3 -PV1i.x = PV0i.y << 0x00000002; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PS0i))); -PS1i = R122i.x; -// 4 -R0i.x = PV1i.x + 0x0000002d; -R0i.y = PV1i.x + 0x0000002b; -R0i.z = PV1i.x + 0x0000002c; -R0i.w = PV1i.x + 0x0000002a; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 5 -tempResultf = 1.0 / sqrt(intBitsToFloat(PS0i)); -R2i.w = floatBitsToInt(tempResultf); -PS1i = R2i.w; -} -if( activeMaskStackC[2] == true ) { -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R6i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R2i.w))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R2i.w))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R2i.w))); -PV0i.z = R127i.z; -PS0i = floatBitsToInt(float(R3i.y)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R11i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.z = floatBitsToInt(roundEven(intBitsToFloat(PS0i))); -PS1i = R2i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PV1i.x)) + 1.0)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R11i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); -PV0i.w = R123i.w; -// 3 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3b449ba7)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.w))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3b449ba7)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3b449ba7)); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.z))); -// 5 -backupReg0i = R127i.z; -backupReg1i = R127i.w; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R8i.z))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R1i.x))); -PV1i.w = R127i.w; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R5i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R6i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R4i.x))); -// 7 -backupReg0i = R127i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R0i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(R127i.y))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.w))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.x)); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R126i.w; -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R2i.x; -// 12 -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R126i.w))); -R2i.w = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(PV1i.z)); -R2i.w = clampFI32(R2i.w); -} -if( activeMaskStackC[2] == true ) { -R2i.y = floatBitsToInt(textureShadow_1(textureUnitPS6, vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)))); -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R2i.y)) + 1.0); -// 1 -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(R2i.y))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R11i.x) * intBitsToFloat(0x3a83126f)); -R0i.y = floatBitsToInt(intBitsToFloat(R12i.z) * intBitsToFloat(0x3a83126f)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[26].x) + -(uf_blockPS6[26].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R8i.w) + -(intBitsToFloat(R7i.x))); -R1i.x = floatBitsToInt((intBitsToFloat(R11i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -PS0i = R1i.x; -// 1 -R127i.x = floatBitsToInt(-(uf_blockPS6[27].w) + 1.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R1i.z = floatBitsToInt((intBitsToFloat(R12i.z) * intBitsToFloat(0x3903126f) + 0.5)); -R0i.w = 0x3f800000; -R3i.w = floatBitsToInt(-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3ba3d70a)); -PS1i = R3i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[28].x) + -(uf_blockPS6[28].y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R7i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(0xbe99999a)); -R4i.w = floatBitsToInt((intBitsToFloat(0xbf59999a) * intBitsToFloat(R7i.y) + 1.0)); -tempResultf = log2(intBitsToFloat(PV1i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(max(-(intBitsToFloat(PV0i.y)), intBitsToFloat(0xbf7d70a4))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) / 2.0); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].x, intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[27].y, intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x40200001)); -R127i.w = clampFI32(R127i.w); -PS1i = R127i.w; -// 4 -R5i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),uf_blockPS6[18].x) + uf_blockPS6[17].w)); -R5i.x = clampFI32(R5i.x); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3dcccccd)); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((-(intBitsToFloat(R8i.z)) * intBitsToFloat(0x3ba3d70a) + intBitsToFloat(0xbfe66666))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS0i)) + uf_blockPS6[27].w)/2.0); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(R127i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].x, intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(0xbe593484))); -PV0i.y = R123i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.5); -R2i.w = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(PV1i.y))); -PV0i.w = R2i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(R8i.y))); -R0i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -R126i.x = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); -PS1i = R126i.x; -// 8 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[37].x,uf_blockPS1[37].y,uf_blockPS1[37].z,uf_blockPS1[37].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + 1.0)); -PS0i = R2i.x; -// 9 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[35].x,uf_blockPS1[35].y,uf_blockPS1[35].z,uf_blockPS1[35].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R127i.z; -// 10 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R11i.x),intBitsToFloat(R10i.y),intBitsToFloat(R12i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockPS1[36].x,uf_blockPS1[36].y,uf_blockPS1[36].z,uf_blockPS1[36].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PS0i = R3i.x; -// 11 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R9i.z)) + intBitsToFloat(R127i.y))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.z))); -R0i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS6[27].z,-(intBitsToFloat(R126i.x))) + uf_blockPS6[27].z)); -R6i.x = floatBitsToInt(exp2(intBitsToFloat(R127i.x))); -PS1i = R6i.x; -} -if( activeMaskStackC[1] == true ) { -R1i.w = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -R1i.xyz = floatBitsToInt(textureLod(textureUnitPS13, intBitsToFloat(R1i.xz),0.0).xyz); -R2i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R2i.xz)).xyz); -R3i.x = floatBitsToInt(textureLod(textureUnitPS4, intBitsToFloat(R3i.xy),intBitsToFloat(R3i.w)).x); -} -// export -passPixelColor2 = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.x), intBitsToFloat(R9i.x), intBitsToFloat(R9i.x)); -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R4i.x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R1i.w) * 2.0 + -(1.0))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R4i.w))); -PV0i.z = R126i.z; -R8i.w = 0; -R7i.w = 0x3f800000; -PS0i = R7i.w; -// 1 -backupReg0i = R3i.x; -R3i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x41c80000) + intBitsToFloat(R10i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R9i.w)) + intBitsToFloat(R2i.w))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + uf_blockPS10[1].z); -R127i.w = clampFI32(R127i.w); -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -backupReg0i = R2i.x; -backupReg1i = R2i.y; -backupReg2i = R2i.z; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.y))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockPS6[29].z, intBitsToFloat(PS1i))); -tempResultf = log2(intBitsToFloat(R5i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), uf_blockPS10[3].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[18].y, intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), uf_blockPS6[42].z)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockPS6[29].w),intBitsToFloat(PS1i)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),uf_blockPS6[42].y) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), uf_blockPS6[16].w)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 6 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockPS6[30].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),uf_blockPS6[42].x) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 7 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R4i.w))); -PV1i.y = R3i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -// 8 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -PV0i.x = R127i.x; -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R126i.z))); -PS0i = R2i.w; -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) + -(intBitsToFloat(PV0i.x))); -// 10 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R7i.z)) + intBitsToFloat(R127i.x))); -PV0i.z = R123i.z; -// 11 -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + uf_blockPS10[1].y); -R8i.x = clampFI32(R8i.x); -} -if( activeMaskStackC[1] == true ) { -// 0 -PV0i.w = floatBitsToInt(-(intBitsToFloat(R3i.x)) + uf_blockPS6[52].x); -// 1 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockPS6[15].x) + uf_blockPS6[14].w)); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -// 2 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockPS6[13].w)); -// 3 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R4i.w))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R1i.y)) + intBitsToFloat(R1i.y))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.y))); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].y, intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].x, intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[13].z, intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.x))); -R8i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); -PS1i = R8i.z; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].z,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].y,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[16].x,intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -// 8 -R7i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].x,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R7i.x; -R7i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].y,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.y))); -PV0i.y = R7i.y; -R7i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS6[30].z,intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = R7i.z; -// 9 -R1i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); -R1i.w = R7i.w; -// 10 -R0i.xyz = ivec3(R8i.x,R8i.y,R8i.z); -R0i.w = R8i.w; -} -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/88133ee405eaae28_000003c000009269_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/88133ee405eaae28_000003c000009269_ps.txt deleted file mode 100644 index 3c70ffe8..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/88133ee405eaae28_000003c000009269_ps.txt +++ /dev/null @@ -1,797 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ffe0e8c84f6e8da9 -UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3; -TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6; -TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArray textureUnitPS8; -TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 6) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R6i.z = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.zw)).x); -R6i.w = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R0i.xy)).x); -R4i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.zw)).xyzw); -R2i.xy = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xw); -} -if( activeMaskStackC[1] == true ) { -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.w)) + uf_blockPS1[14].x)); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.z)) + uf_blockPS1[14].x)); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R6i.x)) + uf_blockPS1[14].x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); -PS0i = R127i.x; -// 1 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); -R12i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R4i.z) * 2.0 + -(1.0))); -PS1i = R125i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R127i.y)))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R127i.y)))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.z)))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.z)))); -PS0i = R126i.z; -// 3 -R125i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R127i.z))); -R124i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.x)); -R125i.w = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(-(intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.w)); -PS1i = R126i.y; -// 4 -backupReg0i = R126i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R6i.y),intBitsToFloat(R12i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(backupReg0i)); -PS0i = R126i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(R127i.y)); -PS1i = R126i.w; -// 6 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[43].x)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R126i.x))); -R125i.y = floatBitsToInt(sqrt(intBitsToFloat(backupReg0i))); -PS0i = R125i.y; -// 7 -backupReg0i = R127i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockPS6[45].x)); -R124i.y = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); -R127i.z = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[43].y) + intBitsToFloat(PV0i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -PS1i = floatBitsToInt(tempResultf); -// 8 -backupReg0i = R125i.z; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS1[18].y, uf_blockPS1[18].z)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R12i.z)) * intBitsToFloat(0x3d4ccccd)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R9i.z; -// 9 -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R126i.z))); -R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R125i.x)) + intBitsToFloat(R127i.y))); -R126i.z = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockPS6[45].y) + intBitsToFloat(R124i.x))); -PV1i.w = R123i.w; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R127i.z))); -PS1i = R126i.w; -// 10 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[45].z) + intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockPS6[43].z) + intBitsToFloat(R4i.w))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R125i.w)) + intBitsToFloat(R124i.w))); -PV0i.z = R1i.z; -R125i.w = R8i.x; -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.z = R7i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -PS0i = R124i.z; -// 11 -R124i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R1i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = R124i.x; -PV1i.y = R124i.x; -PV1i.z = R124i.x; -PV1i.w = R124i.x; -R2i.x = floatBitsToInt((-(uf_blockPS6[53].w) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R2i.x = clampFI32(R2i.x); -PS1i = R2i.x; -// 12 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), -(intBitsToFloat(R126i.z)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0xbb6fe5d7)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3ca30589)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3ca30589)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0xbb6fe5d7)); -PS0i = R126i.z; -// 13 -R10i.x = floatBitsToInt(uf_blockPS6[43].w + intBitsToFloat(R126i.y)); -R3i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R12i.z)), uf_blockPS1[17].y)); -R1i.w = 0x3f800000; -R4i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3b02da3b) + intBitsToFloat(PV0i.z))); -PS1i = R4i.x; -// 14 -R3i.x = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R126i.z))); -R2i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x3d156fb9) + intBitsToFloat(R127i.y))); -R11i.z = floatBitsToInt(uf_blockPS6[45].w + intBitsToFloat(R126i.x)); -R10i.w = floatBitsToInt((-(uf_blockPS6[53].z) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(R127i.w))); -R10i.w = clampFI32(R10i.w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 15 -backupReg0i = R124i.y; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(backupReg0i)); -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = PS1i & int(1); -// 17 -R11i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.x))); -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.y))); -R11i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); -R11i.w = clampFI32(R11i.w); -R8i.y = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = R8i.y; -// 18 -tempResultf = 1.0 / sqrt(intBitsToFloat(R124i.x)); -R2i.w = floatBitsToInt(tempResultf); -PS0i = R2i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -PV0i.x = floatBitsToInt(uf_blockPS10[2].z + 1.0); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -R9i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -PS0i = R9i.x; -// 1 -R10i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R12i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.x)); -R12i.w = clampFI32(R12i.w); -R7i.w = 0; -PS1i = R7i.w; -// 2 -predResult = (1.0 > intBitsToFloat(R10i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R12i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R4i.x)); -R12i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R3i.y)); -R13i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R4i.x))); -PS0i = R13i.x; -// 1 -R14i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R3i.x)); -R13i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R3i.y))); -R14i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R2i.y)); -PS1i = R14i.y; -// 2 -R15i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(intBitsToFloat(R3i.x))); -R15i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(R2i.y))); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R7i.y) * 1.5); -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.x) * 1.5); -PV0i.w = ((-(intBitsToFloat(R12i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R9i.z) * 1.5); -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.z; -R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = PV0i.w & int(1); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.y)),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg1i)),intBitsToFloat(R2i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(R2i.z) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R13i.w = PV1i.y - R127i.x; -PV0i.w = R13i.w; -PS0i = floatBitsToInt(uf_blockPS6[53].y * uf_fragCoordScale.y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 3 -R6i.x = floatBitsToInt(uf_blockPS6[53].x * uf_fragCoordScale.x); -R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); -PV1i.y = PV0i.w << 0x00000002; -R6i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -R2i.w = PS0i; -PS1i = floatBitsToInt(float(PV0i.w)); -// 4 -R0i.x = PV1i.y + 0x0000002b; -R0i.y = PV1i.y + 0x0000002d; -R0i.z = PV1i.y + 0x0000002a; -R0i.w = PV1i.y + 0x0000002c; -R7i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R7i.z; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -R8i.z = PS0i; -PS1i = R8i.z; -} -if( activeMaskStackC[2] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R5i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R7i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.z)),vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R10i.z)),-(intBitsToFloat(R7i.w))))); -R126i.x = clampFI32(R126i.x); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R6i.x))); -R1i.z = R7i.z; -PS1i = R1i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = R7i.z; -PS0i = R9i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 4 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R2i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R2i.x))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R2i.z))); -// 5 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.y))); -// 6 -backupReg0i = R6i.y; -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R7i.x))); -PV0i.x = R16i.x; -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R12i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R4i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R5i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R127i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -// 13 -R7i.x = floatBitsToInt((uf_blockPS6[53].x * uf_fragCoordScale.x * 0.5 + intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R127i.y = clampFI32(R127i.y); -PV1i.y = R127i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.z))); -PV1i.w = R127i.w; -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R6i.x)); -PS1i = R8i.x; -// 14 -R1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.w)); -R7i.y = floatBitsToInt((uf_blockPS6[53].y * uf_fragCoordScale.y * 0.5 + intBitsToFloat(PV1i.w))); -R7i.w = PV1i.y; -R8i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R6i.z)); -PS0i = R8i.y; -// 15 -R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * uf_fragCoordScale.x * 0.5 + intBitsToFloat(R127i.z))); -R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R2i.w)); -R8i.w = R127i.y; -R1i.w = R127i.y; -PS1i = R1i.w; -// 16 -R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * uf_fragCoordScale.y * 0.5 + intBitsToFloat(R127i.w))); -R9i.w = R127i.y; -} -if( activeMaskStackC[2] == true ) { -R7i.z = floatBitsToInt(textureShadow_1(textureUnitPS8, vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)))); -R8i.y = floatBitsToInt(textureShadow_2(textureUnitPS8, vec4(intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),intBitsToFloat(R8i.z),intBitsToFloat(R8i.w)))); -R1i.x = floatBitsToInt(textureShadow_3(textureUnitPS8, vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)))); -R9i.w = floatBitsToInt(textureShadow_4(textureUnitPS8, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(R8i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 1 -R123i.z = floatBitsToInt((intBitsToFloat(R1i.x) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 2 -R5i.w = floatBitsToInt((intBitsToFloat(R9i.w) * 0.5 + intBitsToFloat(PV1i.z))/2.0); -PV0i.w = R5i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R0i.y = ((R13i.w > 0)?(PV1i.x):(0)); -// 5 -predResult = (R0i.y != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R13i.w; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R0i.x = PV1i.w + 0x0000002c; -R0i.y = PV1i.w + 0x0000002b; -R0i.z = PV1i.w + 0x0000002a; -R0i.w = PV1i.w + 0x0000002d; -R4i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R4i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockPS1[R0i.w].xyzw); -R2i.xyzw = floatBitsToInt(uf_blockPS1[R0i.x].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R0i.z].xyzw); -R0i.xyzw = floatBitsToInt(uf_blockPS1[R0i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R2i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R1i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R3i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R0i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R4i.y; -// 6 -R4i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R4i.w = clampFI32(R4i.w); -} -if( activeMaskStackC[3] == true ) { -R4i.z = floatBitsToInt(textureShadow_5(textureUnitPS8, vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R5i.w; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R4i.z))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -R0i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R14i.xy)).x); -R0i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R15i.xy)).x); -R1i.x = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R12i.xy)).x); -R1i.y = floatBitsToInt(texture(textureUnitPS6, intBitsToFloat(R13i.xy)).x); -} -if( activeMaskStackC[2] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x3f7eb852)); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x41a00000)); -R124i.z = floatBitsToInt(-(intBitsToFloat(R5i.w)) + 1.0); -R127i.w = floatBitsToInt(uf_blockPS1[16].x * intBitsToFloat(0x3f555555)); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(R0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f8ba8d6)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) / 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fbc4580)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -R126i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.x)); -PS1i = R126i.z; -// 2 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.y)) + 1.0)); -R127i.x = clampFI32(R127i.x); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + 0.5)); -R127i.y = clampFI32(R127i.y); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.y)) + 0.5)); -R125i.z = clampFI32(R125i.z); -PV0i.z = R125i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(backupReg0i)); -PV0i.w = R126i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV1i.x)) + 1.0)); -R125i.w = clampFI32(R125i.w); -PS0i = R125i.w; -// 3 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.z)) + 0.5)); -R126i.x = clampFI32(R126i.x); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + 0.5)); -R124i.w = clampFI32(R124i.w); -PV1i.w = R124i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R126i.z)) + 1.0)); -R0i.w = clampFI32(R0i.w); -PS1i = R0i.w; -// 4 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.x))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + 0.5)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(0.5 + -(intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R125i.w)) + 0.5)); -PV0i.w = R127i.w; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.w)) + 1.0)); -R125i.y = clampFI32(R125i.y); -PS0i = R125i.y; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(PS0i)) + 0.5)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.z) + -(intBitsToFloat(PV0i.w))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R0i.w)) + 0.5)); -PV1i.w = R126i.w; -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R10i.w)) + intBitsToFloat(R5i.w))); -PS1i = R3i.w; -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(R126i.y))); -PV0i.w = R123i.w; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e35e743)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e35e743)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(R127i.y))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e825397) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -// 10 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0xbedd476b)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c00000)); -PV1i.x = clampFI32(PV1i.x); -// 12 -R1i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R1i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0x38d1b717) + 0.5)); -R0i.y = floatBitsToInt((intBitsToFloat(R11i.z) * intBitsToFloat(0x3903126f) + 0.5)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R10i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = R11i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R2i.z = R1i.w; -PS0i = R2i.z; -// 1 -R1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.5); -R2i.w = 0x3f800000; -} -if( activeMaskStackC[1] == true ) { -R0i.xyz = floatBitsToInt(textureLod(textureUnitPS15, intBitsToFloat(R0i.xy),0.0).xyz); -R1i.y = floatBitsToInt(textureLod(textureUnitPS1, intBitsToFloat(R1i.xy),0.0).x); -} -if( activeMaskStackC[1] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(uf_blockPS6[42].x,uf_blockPS6[42].y,uf_blockPS6[42].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R11i.w))) + intBitsToFloat(R1i.y))); -PS0i = R2i.y; -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -// 2 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -PV0i.z = R127i.z; -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.w) + -(intBitsToFloat(PV0i.z))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.z))); -PV0i.x = R123i.x; -// 5 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R2i.x = clampFI32(R2i.x); -} -// export -passPixelColor5 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/9c0b7031078fba88_0000007800001269_ps.txt b/Workarounds/BreathOfTheWild_!ShadowFix/9c0b7031078fba88_0000007800001269_ps.txt deleted file mode 100644 index 647e9e27..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/9c0b7031078fba88_0000007800001269_ps.txt +++ /dev/null @@ -1,590 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader b8a18eeb20759bfd -UNIFORM_BUFFER_LAYOUT(33, 1, 6) uniform uniformBlockPS1 -{ -vec4 uf_blockPS1[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(38, 1, 7) uniform uniformBlockPS6 -{ -vec4 uf_blockPS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(42, 1, 8) uniform uniformBlockPS10 -{ -vec4 uf_blockPS10[1024]; -}; - -TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2; -TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5; -TEXTURE_LAYOUT(7, 1, 3) uniform sampler2DArray textureUnitPS7; -TEXTURE_LAYOUT(12, 1, 4) uniform sampler2D textureUnitPS12; -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem5; -layout(location = 2) in vec4 passParameterSem6; -layout(location = 5) out vec4 passPixelColor5; -#ifdef VULKAN -layout(set = 1, binding = 5) uniform ufBlock -{ -uniform vec4 uf_fragCoordScale; -}; -#else -uniform vec2 uf_fragCoordScale; -#endif -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float textureShadow_1(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_2(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_3(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_4(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -float textureShadow_5(sampler2DArray s, vec4 coord) { -vec4 v; -vec2 texSize = vec2(textureSize(s,0).xy); -vec2 texSizeR = vec2(1.0) / texSize; -vec2 texCoordFract = mod(coord.xy,texSizeR); -vec2 texCoordBase = coord.xy - texCoordFract + texSizeR/2.0; -texCoordFract /= texSizeR; -v.x = texture(s, vec3(texCoordBase+vec2(0.0,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.y = texture(s, vec3(texCoordBase+vec2(texSizeR.x,0.0), coord.z)).x >= coord.w?1.0:0.0; -v.z = texture(s, vec3(texCoordBase+vec2(0.0,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -v.w = texture(s, vec3(texCoordBase+vec2(texSizeR.x,texSizeR.y), coord.z)).x >= coord.w?1.0:0.0; -float r = mix(mix(v.x, v.y, texCoordFract.x) , mix(v.z, v.w, texCoordFract.x) , texCoordFract.y); -return r; -} -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = floatBitsToInt(passParameterSem0); -R1i = floatBitsToInt(passParameterSem5); -R2i = floatBitsToInt(passParameterSem6); -if( activeMaskStackC[1] == true ) { -R3i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R4i.x = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R4i.z = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.zw)).x); -R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); -R5i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); -R2i.z = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).w); -} -if( activeMaskStackC[1] == true ) { -// 0 -R127i.x = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.x)) + uf_blockPS1[14].x)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),uf_blockPS1[16].x) + uf_blockPS1[14].x)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.w)) + uf_blockPS1[14].x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockPS1[16].x,intBitsToFloat(R4i.z)) + uf_blockPS1[14].x)); -PV0i.w = R127i.w; -R124i.x = floatBitsToInt((intBitsToFloat(R5i.x) * 2.0 + -(1.0))); -PS0i = R124i.x; -// 1 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.y)))); -PV1i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.y)))); -R0i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), -(intBitsToFloat(PV0i.w)))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), -(intBitsToFloat(PV0i.w)))); -PS1i = R127i.z; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), -(intBitsToFloat(R127i.x)))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), -(intBitsToFloat(R127i.x)))); -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.w)); -PS0i = R126i.x; -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w)); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + intBitsToFloat(R127i.z)); -PV1i.y = R126i.y; -R127i.zwy = floatBitsToInt(vec3(-(intBitsToFloat(R1i.x)),-(intBitsToFloat(R0i.z)),-(intBitsToFloat(R0i.z))) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.z))); -PV1i.z = R127i.z; -PV1i.w = R127i.w; -PS1i = R127i.y; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -R125i.y = floatBitsToInt((intBitsToFloat(R5i.y) * 2.0 + -(1.0))); -R125i.z = floatBitsToInt((intBitsToFloat(R5i.z) * 2.0 + -(1.0))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.x))); -PS0i = R125i.x; -// 5 -backupReg0i = R127i.y; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(0x437f0000)); -R126i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x437f0000)); -PV1i.w = floatBitsToInt(uf_blockPS6[53].z * intBitsToFloat(0x3d4ccccd)); -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); -PS1i = R2i.y; -// 6 -R12i.x = floatBitsToInt((-(intBitsToFloat(R0i.z)) * intBitsToFloat(0x3d4ccccd) + -(intBitsToFloat(PV1i.w)))); -R12i.x = clampFI32(R12i.x); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R125i.x))); -R0i.w = 0x3f800000; -R2i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), uf_blockPS1[17].y)); -PS0i = R2i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R125i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -PS1i = int(intBitsToFloat(R127i.y)); -// 8 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R2i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R1i.z)),-0.0),vec4(-(intBitsToFloat(R2i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(R1i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = PS1i & int(1); -// 9 -R5i.z = ((PS0i == 0)?(0):(0x3f800000)); -PS1i = int(intBitsToFloat(R126i.z)); -// 10 -R125i.x = PS1i & 0x00000002; -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.w)); -PS0i = floatBitsToInt(tempResultf); -// 11 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.y)); -R1i.w = floatBitsToInt(tempResultf); -PS1i = R1i.w; -// 12 -R4i.w = floatBitsToInt(float(R125i.x)); -R4i.w = floatBitsToInt(intBitsToFloat(R4i.w) / 2.0); -PS0i = R4i.w; -} -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R5i.x = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].x, uf_blockPS10[2].w)); -R9i.y = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].y, uf_blockPS10[2].w)); -// 1 -R4i.z = floatBitsToInt(mul_nonIEEE(uf_blockPS6[4].z, uf_blockPS10[2].w)); -R9i.w = 0; -// 2 -predResult = (1.0 > intBitsToFloat(R12i.x)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R9i.x) * 1.5); -PV0i.y = floatBitsToInt(intBitsToFloat(R10i.y) * 1.5); -R127i.z = ((-(intBitsToFloat(R0i.z)) > uf_blockPS1[58].y)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = ((-(intBitsToFloat(R0i.z)) > uf_blockPS1[58].x)?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(intBitsToFloat(R10i.z) * 1.5); -// 1 -backupReg0i = R2i.x; -backupReg1i = R2i.z; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = PV0i.w & int(1); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.y))); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.z)),intBitsToFloat(R1i.w)) + intBitsToFloat(PS0i))); -R122i.x = floatBitsToInt((intBitsToFloat(backupReg1i) * 0.25 + 1.0)); -PS1i = R122i.x; -// 2 -R4i.x = PV1i.y - R127i.z; -PV0i.x = R4i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.x))); -R3i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R3i.w = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -R4i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); -PS0i = R4i.y; -// 3 -backupReg0i = R4i.w; -backupReg1i = R0i.z; -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R4i.w)) + intBitsToFloat(R1i.y))); -R3i.y = floatBitsToInt(uf_blockPS6[53].y); -R3i.y = floatBitsToInt(intBitsToFloat(R3i.y) / 2.0); -PV1i.z = PV0i.x << 0x00000002; -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg1i))); -R127i.y = floatBitsToInt(float(PV0i.x)); -PS1i = R127i.y; -// 4 -R1i.x = PV1i.z + 0x0000002b; -R1i.y = PV1i.z + 0x0000002a; -R1i.z = PV1i.z + 0x0000002d; -R1i.w = PV1i.z + 0x0000002c; -R5i.w = floatBitsToInt(uf_blockPS6[53].x); -R5i.w = floatBitsToInt(intBitsToFloat(R5i.w) / 2.0); -PS0i = R5i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.y = tempi.x; -R9i.z = floatBitsToInt(roundEven(intBitsToFloat(R127i.y))); -PS1i = R9i.z; -} -if( activeMaskStackC[2] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockPS1[R1i.z].xyzw); -R7i.xyzw = floatBitsToInt(uf_blockPS1[R1i.w].xyzw); -R8i.xyzw = floatBitsToInt(uf_blockPS1[R1i.y].xyzw); -R1i.xyzw = floatBitsToInt(uf_blockPS1[R1i.x].xyzw); -} -if( activeMaskStackC[2] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.z)),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R9i.y)),-(intBitsToFloat(R4i.z)),-(intBitsToFloat(R9i.w))))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(R2i.y)); -PS0i = floatBitsToInt(tempResultf); -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.y))); -R2i.z = R9i.z; -PS1i = R2i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(R5i.w))); -PS0i = R125i.y; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PV0i.x)) + 1.0)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.x))); -PV1i.w = R123i.w; -R126i.x = R3i.y; -PS1i = R126i.x; -// 4 -backupReg0i = R126i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R4i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(backupReg0i))); -R10i.z = R9i.z; -PS0i = R10i.z; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV0i.w))); -R11i.z = R9i.z; -// 6 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.y))); -PV0i.x = R5i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.x))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R4i.w))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R7i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R6i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.x))); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R126i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -backupReg0i = R0i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV1i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.z)) + intBitsToFloat(R127i.y))); -PV0i.w = R123i.w; -// 11 -backupReg0i = R0i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z)) + intBitsToFloat(R126i.y))); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.w)); -// 13 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); -R127i.x = clampFI32(R127i.x); -PV1i.x = R127i.x; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R126i.y))); -PV1i.w = R126i.w; -R9i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.y))); -PS1i = R9i.x; -// 14 -R2i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R5i.w)); -R9i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.w))); -R9i.w = PV1i.x; -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.w)); -PS0i = R2i.y; -// 15 -R10i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R125i.y)); -R10i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R126i.x)); -R2i.w = R127i.x; -R10i.w = R127i.x; -PS1i = R10i.w; -// 16 -R11i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.y))); -R11i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R126i.w))); -R11i.w = R127i.x; -} -if( activeMaskStackC[2] == true ) { -R9i.y = floatBitsToInt(textureShadow_1(textureUnitPS7, vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),intBitsToFloat(R9i.w)))); -R2i.x = floatBitsToInt(textureShadow_2(textureUnitPS7, vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)))); -R10i.w = floatBitsToInt(textureShadow_3(textureUnitPS7, vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),intBitsToFloat(R10i.w)))); -R11i.z = floatBitsToInt(textureShadow_4(textureUnitPS7, vec4(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.z),intBitsToFloat(R11i.w)))); -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(R2i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(R10i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -// 2 -R0i.w = floatBitsToInt((intBitsToFloat(R11i.z) * 0.5 + intBitsToFloat(PV1i.y))/2.0); -PV0i.w = R0i.w; -// 3 -PV1i.x = ((1.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 4 -R1i.z = ((R4i.x > 0)?(PV1i.x):(0)); -// 5 -predResult = (R1i.z != 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = int(-1) + R4i.x; -// 1 -PV1i.w = PV0i.x << 0x00000002; -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -R1i.x = PV1i.w + 0x0000002c; -R1i.y = PV1i.w + 0x0000002a; -R1i.z = PV1i.w + 0x0000002b; -R1i.w = PV1i.w + 0x0000002d; -R5i.z = floatBitsToInt(roundEven(intBitsToFloat(PS1i))); -PS0i = R5i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockPS1[R1i.w].xyzw); -R3i.xyzw = floatBitsToInt(uf_blockPS1[R1i.x].xyzw); -R4i.xyzw = floatBitsToInt(uf_blockPS1[R1i.y].xyzw); -R1i.xyzw = floatBitsToInt(uf_blockPS1[R1i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R3i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R2i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R4i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R1i.x))); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R3i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PS0i))); -PS1i = R5i.y; -// 6 -R5i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xbb03126f)); -R5i.w = clampFI32(R5i.w); -} -if( activeMaskStackC[3] == true ) { -R5i.y = floatBitsToInt(textureShadow_5(textureUnitPS7, vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.w; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R5i.y))); -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R0i.w)) + 1.0); -// 1 -backupReg0i = R0i.w; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R12i.x)) + intBitsToFloat(backupReg0i))); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -R0i.y = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).y); -} -if( activeMaskStackC[1] == true ) { -// 0 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),uf_blockPS10[3].z) + uf_blockPS10[1].y)); -R0i.x = clampFI32(R0i.x); -R0i.z = 0x3f800000; -} -// export -passPixelColor5 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.z)); -} diff --git a/Workarounds/BreathOfTheWild_!ShadowFix/rules.txt b/Workarounds/BreathOfTheWild_!ShadowFix/rules.txt deleted file mode 100644 index 65a4fb13..00000000 --- a/Workarounds/BreathOfTheWild_!ShadowFix/rules.txt +++ /dev/null @@ -1,7 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Shadows workaround for Intel and AMD GPUs (OpenGL and Intel/AMD) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/GPU specific workarounds for OpenGL/AMD and Intel: Shadows" -description = Reduces the severity of the bugged shadows on Intel and OpenGL GPUs when using OpenGL. Made by ethrillo, updated by Cypher. -rendererFilter = opengl -version = 4 diff --git a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/15bc7edf9de2ed30_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_AMD_ShaderCrash/15bc7edf9de2ed30_0000000000000000_vs.txt deleted file mode 100644 index 22770bc8..00000000 --- a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/15bc7edf9de2ed30_0000000000000000_vs.txt +++ /dev/null @@ -1,61 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#extension GL_ARB_shading_language_packing : enable -// shader 15bc7edf9de2ed30 -layout(binding = 6, std140) -uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - - -layout(binding = 7, std140) -uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - - -layout(binding = 8, std140) -uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - - -layout(binding = 11, std140) -uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - - -layout(binding = 45) uniform sampler2D textureUnitVS13; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -// export -gl_Position = vec4(0.0); -} diff --git a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/24838b84d15a1da1_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_AMD_ShaderCrash/24838b84d15a1da1_0000000000000000_vs.txt deleted file mode 100644 index f64ec631..00000000 --- a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/24838b84d15a1da1_0000000000000000_vs.txt +++ /dev/null @@ -1,72 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#extension GL_ARB_shading_language_packing : enable -// shader 24838b84d15a1da1 -layout(binding = 6, std140) -uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - - -layout(binding = 7, std140) -uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - - -layout(binding = 8, std140) -uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - - -layout(binding = 11, std140) -uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - - -layout(binding = 13, std140) -uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - - -layout(binding = 40) uniform sampler2D textureUnitVS8; -layout(binding = 45) uniform sampler2D textureUnitVS13; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -// export -gl_Position = vec4(0.0); -} diff --git a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/83a697d61a3b9202_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_AMD_ShaderCrash/83a697d61a3b9202_0000000000000000_vs.txt deleted file mode 100644 index bcb568e3..00000000 --- a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/83a697d61a3b9202_0000000000000000_vs.txt +++ /dev/null @@ -1,61 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#extension GL_ARB_shading_language_packing : enable -// shader 83a697d61a3b9202 -layout(binding = 6, std140) -uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - - -layout(binding = 7, std140) -uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - - -layout(binding = 8, std140) -uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - - -layout(binding = 11, std140) -uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - - -layout(binding = 45) uniform sampler2D textureUnitVS13; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -// export -gl_Position = vec4(0.0); -} diff --git a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/97bc44a5028381c6_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_AMD_ShaderCrash/97bc44a5028381c6_0000000000000000_vs.txt deleted file mode 100644 index 21afbf7e..00000000 --- a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/97bc44a5028381c6_0000000000000000_vs.txt +++ /dev/null @@ -1,11 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#extension GL_ARB_shading_language_packing : enable -// shader 24838b84d15a1da1 - -void main() -{ -// export -gl_Position = vec4(0.0); -} diff --git a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/rules.txt b/Workarounds/BreathOfTheWild_AMD_ShaderCrash/rules.txt deleted file mode 100644 index f1bcf39a..00000000 --- a/Workarounds/BreathOfTheWild_AMD_ShaderCrash/rules.txt +++ /dev/null @@ -1,8 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Crash workaround for AMD GPUs (OpenGL and AMD) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/GPU specific workarounds for OpenGL/AMD: Crash" -description = Workaround for a shader related crash on AMD when using OpenGL. Required for Cemu 1.15.8 and above. -vendorFilter = amd -rendererFilter = opengl -version = 4 diff --git a/Workarounds/BreathOfTheWild_GrassWorkaround/7fb9a62472e80c0f_0000000000000079_ps.txt b/Workarounds/BreathOfTheWild_GrassWorkaround/7fb9a62472e80c0f_0000000000000079_ps.txt deleted file mode 100644 index 0600f2cd..00000000 --- a/Workarounds/BreathOfTheWild_GrassWorkaround/7fb9a62472e80c0f_0000000000000079_ps.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 430 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -// shader 7fb9a62472e80c0f -// usesIntegerValues: false -// special state 0 0 0 0 0 0 0 0 0 -// Color buffers: -// Color0: 64543x15 at 0x42a99800 fmt 001a tm 4 -// Color1: 2055x0 at 0x3d112e00 fmt 0820 tm 1 -// Color2: 31823x57 at 0xf5593000 fmt 0816 tm 4 -// Color3: 31823x57 at 0xf5593000 fmt 0816 tm 4 -// Color4: 31823x57 at 0xf5846000 fmt 0001 tm 4 -// Color5: 31823x57 at 0xf528a800 fmt 001a tm 4 -// Color6: 0x0 at 0x3cda7100 fmt 0816 tm 3 -// Color7: 64671x224 at 0xf4e91800 fmt 0806 tm 4 -// start of shader inputs/outputs, predetermined by Cemu. Do not touch -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -#ifdef VULKAN -layout(set = 1, binding = 1) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[1]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[1]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -layout(location = 0) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -// end of shader inputs/outputs -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R0f.xy = (texture(textureUnitPS0, R0f.xy).xy); // TEX_INST_SAMPLE OffsetXYZ 00 00 00 - -// emulate border color (0.5,0.5,0.5,0.5) -if(R0f.x <= 0.0 || R0f.x >= 1.0 || R0f.y <= 0.0 || R0f.y >= 1.0 ) - R0f.xy = vec2(0.5); - -// 0 -R127f.z = (R0f.y * 2.0 + -(1.0)); -PV0f.z = R127f.z; -R123f.w = (R0f.x * 2.0 + -(1.0)); -PV0f.w = R123f.w; -// 1 -PV1f.x = mul_nonIEEE(-(PV0f.z), intBitsToFloat(uf_remappedPS[0].z)); -PV1f.x = clamp(PV1f.x, 0.0, 1.0); -PV1f.y = mul_nonIEEE(-(PV0f.w), intBitsToFloat(uf_remappedPS[0].z)); -PV1f.y = clamp(PV1f.y, 0.0, 1.0); -R0f.x = mul_nonIEEE(PV0f.w, intBitsToFloat(uf_remappedPS[0].z)); -R0f.x = clamp(R0f.x, 0.0, 1.0); -PS1f = R0f.x; -// 2 -R0f.y = mul_nonIEEE(R127f.z, intBitsToFloat(uf_remappedPS[0].z)); -R0f.y = clamp(R0f.y, 0.0, 1.0); -R0f.z = PV1f.y; -R0f.w = PV1f.x; -// export -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -} diff --git a/Workarounds/BreathOfTheWild_GrassWorkaround/rules.txt b/Workarounds/BreathOfTheWild_GrassWorkaround/rules.txt deleted file mode 100644 index d801dc2a..00000000 --- a/Workarounds/BreathOfTheWild_GrassWorkaround/rules.txt +++ /dev/null @@ -1,7 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Grass Swaying workaround for missing Vulkan extension -path = "The Legend of Zelda: Breath of the Wild/Workarounds/Grass Swaying (Vulkan)" -description = Workaround pack for graphic drivers that don't support VK_EXT_custom_border_color. Fixes some grass swaying incorrectly in the distance. Made by Exzap. -rendererFilter = vulkan -version = 4 diff --git a/Workarounds/BreathOfTheWild_KakarikoShadows/8e9e804a3cd384c3_00000000000ff259_ps.txt b/Workarounds/BreathOfTheWild_KakarikoShadows/8e9e804a3cd384c3_00000000000ff259_ps.txt deleted file mode 100644 index cd42a6fd..00000000 --- a/Workarounds/BreathOfTheWild_KakarikoShadows/8e9e804a3cd384c3_00000000000ff259_ps.txt +++ /dev/null @@ -1,630 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 8e9e804a3cd384c3 -// Square Shadows Fix - Workaround for the square shadows seen around torches in Kakariko Village -// shader dumped from BotW v1.3.1, using Cemu 1.11.1 -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[13]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[13]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform samplerCubeArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex2 = 0.0; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -// 0 -R6i.x = 0x3f800000; -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedPS[0].x))); -R127i.z = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(uf_remappedPS[0].y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].x)); -// 1 -R2i.x = floatBitsToInt(intBitsToFloat(R0i.x) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R11i.w = 0; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedPS[1].y)); -// 2 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -R2i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.z)); -R0i.y = floatBitsToInt(tempResultf); -PS0i = R0i.y; -R3i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.xy)).xyzw); -R2i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).x); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R3i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R3i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R3i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R2i.x)) + intBitsToFloat(uf_remappedPS[2].x))); -PV0i.w = R126i.w; -R127i.w = floatBitsToInt(intBitsToFloat(R3i.w) * intBitsToFloat(0x437f0000)); -PS0i = R127i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),-(intBitsToFloat(PV0i.w))) + -(intBitsToFloat(uf_remappedPS[3].x)))); -PS1i = R5i.x; -// 2 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R0i.y))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].y)))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].z)))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R0i.y))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R0i.y))); -PS1i = int(intBitsToFloat(R127i.w)); -// 4 -backupReg0i = R0i.z; -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),-0.0),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.x = PS1i & 0x00000002; -PS0i = R125i.x; -// 5 -R126i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3a83126f))); -PV1i.x = R126i.x; -R0i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + 1.0); -R2i.z = floatBitsToInt(-(intBitsToFloat(R126i.w))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R126i.w)))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), -(intBitsToFloat(R126i.w)))); -PS1i = R4i.y; -// 6 -backupReg0i = R0i.z; -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 7 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.x)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R2i.y)), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), intBitsToFloat(PS0i))); -PV1i.z = R4i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].w), intBitsToFloat(PS0i))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg0i)) + intBitsToFloat(0x3d4ccccd))); -R126i.z = clampFI32(R126i.z); -PS1i = R126i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = R125i.z; -// 9 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(1.0))); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(R0i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -R126i.w = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); -PS0i = R126i.w; -// 11 -redcCUBE(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x),intBitsToFloat(R127i.x),intBitsToFloat(R127i.y)),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)),cubeMapSTM,cubeMapFaceId); -R1i.x = floatBitsToInt(cubeMapSTM.x); -R1i.y = floatBitsToInt(cubeMapSTM.y); -R1i.z = floatBitsToInt(cubeMapSTM.z); -R1i.w = cubeMapFaceId; -PV1i.x = R1i.x; -PV1i.y = R1i.y; -PV1i.z = R1i.z; -PV1i.w = R1i.w; -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS1i = R127i.x; -// 12 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(uf_remappedPS[8].x)) + intBitsToFloat(uf_remappedPS[8].y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R126i.z))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(uf_remappedPS[8].z)) + intBitsToFloat(uf_remappedPS[8].w))); -PV0i.z = R126i.z; -R126i.w = floatBitsToInt((intBitsToFloat(R0i.y) * 0.5 + 0.5)); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 13 -backupReg0i = R1i.x; -backupReg1i = R1i.y; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R127i.w = ((intBitsToFloat(PV0i.z) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R10i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(1.0)); -PS1i = R10i.x; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); -R5i.y = floatBitsToInt(intBitsToFloat(R5i.y) / 2.0); -PV0i.y = R5i.y; -R6i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3ea2f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x40400000)); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); -PS0i = R6i.w; -// 15 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[9].y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[10].y))); -PV1i.y = clampFI32(PV1i.y); -R123i.z = ((R127i.w == 0)?(0):(PV0i.x)); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -R4i.x = ((intBitsToFloat(R3i.x) > intBitsToFloat(uf_remappedPS[9].x))?int(0xFFFFFFFF):int(0x0)); -R3i.y = ((R125i.x == 0)?(R126i.z):(PV1i.z)); -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R3i.w = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PS1i)); -R3i.w = clampFI32(R3i.w); -R0i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -R0i.x = floatBitsToInt(intBitsToFloat(R0i.x) / 2.0); -PS0i = R0i.x; -R1i.w = floatBitsToInt(texture(textureUnitPS2, vec4(redcCUBEReverse(intBitsToFloat(R1i.yx),R1i.w),cubeMapArrayIndex2)).x); -R3i.y = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R3i.xy)).x); -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R4i.w),intBitsToFloat(R5i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = ((intBitsToFloat(R1i.w) > intBitsToFloat(0x3f7ae148))?int(0xFFFFFFFF):int(0x0)); -// 1 -R126i.x = ((PS0i == 0)?(R1i.w):(0x42c80000)); -PV1i.y = PV0i.x; -PV1i.y = clampFI32(PV1i.y); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R2i.x))); -PV1i.w = PV0i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R3i.w)); -// 2 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R7i.x)))); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R4i.w)))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R5i.w)))); -PV0i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y))); -PV0i.w = R123i.w; -R126i.y = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(PS1i)); -PS0i = R126i.y; -// 3 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R2i.y)),-(intBitsToFloat(backupReg0i)),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.y; -// 4 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -backupReg2i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.x))); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R2i.y))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R0i.z))); -PV0i.z = R126i.z; -float magicNumber = 3.0; -R123i.w = floatBitsToInt((mul_nonIEEE(magicNumber * intBitsToFloat(uf_remappedPS[10].z),intBitsToFloat(backupReg2i)) + 4.0)/2.0); -PV0i.w = R123i.w; -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.y))); -PS0i = R3i.w; -// 5 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(backupReg0i))); -R127i.z = clampFI32(R127i.z); -PS1i = R127i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),intBitsToFloat(uf_remappedPS[4].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),intBitsToFloat(uf_remappedPS[6].w)))); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 8 -R124i.x = ((R4i.x == 0)?(R3i.y):(R125i.z)); -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[11].y)); -R125i.y = clampFI32(R125i.y); -R125i.z = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(uf_remappedPS[11].x)); -R125i.z = clampFI32(R125i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) * intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R3i.z))); -PS0i = R1i.w; -// 9 -backupReg0i = R126i.x; -backupReg1i = R127i.y; -backupReg2i = R126i.z; -backupReg3i = R125i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R5i.x)))); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R2i.y)))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R0i.z)))); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(uf_remappedPS[12].x))); -PV1i.w = clampFI32(PV1i.w); -R125i.x = floatBitsToInt(intBitsToFloat(backupReg3i) + -(intBitsToFloat(uf_remappedPS[12].y))); -R125i.x = clampFI32(R125i.x); -PS1i = R125i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.w))); -PS0i = R127i.x; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R4i.y),intBitsToFloat(R2i.z),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),intBitsToFloat(uf_remappedPS[7].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 12 -backupReg0i = R127i.y; -backupReg1i = R126i.z; -backupReg2i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R124i.w = floatBitsToInt(max(intBitsToFloat(R125i.y), intBitsToFloat(R125i.x))); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg2i)) + 1.0); -PS0i = R127i.w; -// 13 -backupReg0i = R125i.w; -backupReg0i = R125i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.x)); -PV1i.x = R126i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.y)); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[11].z)); -R125i.w = clampFI32(R125i.w); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(uf_remappedPS[12].z))); -R126i.w = clampFI32(R126i.w); -PS1i = R126i.w; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = floatBitsToInt(max(-(intBitsToFloat(R4i.z)), 0.0)); -PS0i = R0i.w; -// 15 -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -R6i.x = clampFI32(R6i.x); -PV1i.x = R6i.x; -PV1i.y = R6i.x; -PV1i.z = R6i.x; -PV1i.w = R6i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 16 -backupReg0i = R126i.x; -backupReg1i = R125i.y; -backupReg2i = R127i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y))); -PV0i.w = R123i.w; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(R127i.w))); -PS0i = R125i.z; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R4i.w),intBitsToFloat(R5i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R127i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R127i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R125i.y; -// 19 -backupReg0i = R124i.y; -backupReg1i = R9i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R124i.y = floatBitsToInt(max(intBitsToFloat(R125i.w), intBitsToFloat(R126i.w))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); -R9i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].z)),intBitsToFloat(backupReg1i)) + 1.0)); -R9i.x = clampFI32(R9i.x); -PS1i = R9i.x; -// 20 -backupReg0i = R125i.y; -PV0i.x = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -R125i.y = floatBitsToInt(min(intBitsToFloat(R0i.w), 1.0)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(PV1i.w)) + 1.0)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R1i.w)) + 1.0); -PS0i = R127i.y; -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R6i.y = floatBitsToInt(-(intBitsToFloat(R124i.y)) + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.x))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(R124i.x))); -PS1i = R5i.y; -// 22 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(R124i.x))); -R4i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(R1i.w))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(R124i.x))); -R0i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R0i.w; -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R6i.y)) + -(1.0))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(R5i.y) * intBitsToFloat(0x3ea2f983)); -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(R0i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R10i.x) * intBitsToFloat(0x3ea2f983)); -PS0i = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(0x3ea2f983)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R4i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[10].w)) + 1.0)); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS0i))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.x))); -// 3 -R11i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -R11i.y = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -R11i.z = floatBitsToInt(min(intBitsToFloat(PV0i.z), intBitsToFloat(0x42000000))); -PS1i = R11i.z; -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.z))); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(PV0i.y))); -// 6 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(PV0i.w))); -// 8 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV1i.z))); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.z))); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.z))); -// 11 -R4i.x = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -R4i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -R4i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(0x42000000))); -// 12 -R0i.xyz = ivec3(R11i.x,R11i.y,R11i.z); -R0i.w = R11i.w; -// 13 -R1i.xyz = ivec3(R4i.x,R4i.y,R4i.z); -R1i.w = R4i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_KakarikoShadows/ab0a485b9ae1bb1e_00000000000ff259_ps.txt b/Workarounds/BreathOfTheWild_KakarikoShadows/ab0a485b9ae1bb1e_00000000000ff259_ps.txt deleted file mode 100644 index 83c23ddd..00000000 --- a/Workarounds/BreathOfTheWild_KakarikoShadows/ab0a485b9ae1bb1e_00000000000ff259_ps.txt +++ /dev/null @@ -1,627 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader ab0a485b9ae1bb1e -// Square Shadows Fix - Workaround for the square shadows seen around torches in Kakariko Village -// shader dumped from BotW v1.4.0, using Cemu 1.11.1 -#ifdef VULKAN -layout(set = 1, binding = 4) uniform ufBlock -{ -uniform ivec4 uf_remappedPS[13]; -uniform vec4 uf_fragCoordScale; -}; -#else -uniform ivec4 uf_remappedPS[13]; -uniform vec2 uf_fragCoordScale; -#endif -TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; -TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; -TEXTURE_LAYOUT(2, 1, 2) uniform samplerCubeArray textureUnitPS2; -TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3; -layout(location = 1) noperspective in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -layout(location = 1) out vec4 passPixelColor1; -// uf_fragCoordScale was moved to the ufBlock -void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) -{ -// stm -> x .. s, y .. t, z .. MajorAxis*2.0 -vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); -float rx = inputCoord.x; -float ry = inputCoord.y; -float rz = inputCoord.z; -if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) -{ -stm.z = rx*2.0; -stm.xy = vec2(ry,rz); -if( rx >= 0.0 ) -{ -faceId = 0; -} -else -{ -faceId = 1; -} -} -else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) -{ -stm.z = ry*2.0; -stm.xy = vec2(rx,rz); -if( ry >= 0.0 ) -{ -faceId = 2; -} -else -{ -faceId = 3; -} -} -else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) -{ -stm.z = rz*2.0; -stm.xy = vec2(rx,ry); -if( rz >= 0.0 ) -{ -faceId = 4; -} -else -{ -faceId = 5; -} -} -} -vec3 redcCUBEReverse(vec2 st, int faceId) -{ -st.yx = st.xy; -vec3 v; -float majorAxis = 1.0; -if( faceId == 0 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = 1.0; -} -else if( faceId == 1 ) -{ -v.yz = (st-vec2(1.5))*(majorAxis*2.0); -v.x = -1.0; -} -else if( faceId == 2 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = 1.0; -} -else if( faceId == 3 ) -{ -v.xz = (st-vec2(1.5))*(majorAxis*2.0); -v.y = -1.0; -} -else if( faceId == 4 ) -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = 1.0; -} -else -{ -v.xy = (st-vec2(1.5))*(majorAxis*2.0); -v.z = -1.0; -} -return v; -} -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -float cubeMapArrayIndex2 = 0.0; -R0i = floatBitsToInt(GET_FRAGCOORD()); -R1i = floatBitsToInt(passParameterSem0); -// 0 -backupReg0i = R0i.y; -R6i.x = 0x3f800000; -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(0xbc23d70a)); -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(0xbc23d70a)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + 1.0)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedPS[0].x))); -// 1 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[1].z))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[1].w))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.w))); -R1i.w = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(uf_remappedPS[0].y))); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); -PS1i = R3i.z; -R2i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw); -R0i.x = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).x); -// 0 -R127i.x = floatBitsToInt((intBitsToFloat(R2i.x) * 2.0 + -(1.0))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((intBitsToFloat(R2i.y) * 2.0 + -(1.0))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt((intBitsToFloat(R2i.z) * 2.0 + -(1.0))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(R0i.x)) + intBitsToFloat(uf_remappedPS[2].x))); -PV0i.w = R126i.w; -R127i.w = floatBitsToInt(intBitsToFloat(R2i.w) * intBitsToFloat(0x437f0000)); -PS0i = R127i.w; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),-(intBitsToFloat(PV0i.w))) + -(intBitsToFloat(uf_remappedPS[3].x)))); -PS1i = R5i.x; -// 2 -R3i.x = floatBitsToInt(-(intBitsToFloat(R2i.w)) + 1.0); -PV0i.x = R3i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].y)))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),-(intBitsToFloat(R126i.w))) + -(intBitsToFloat(uf_remappedPS[3].z)))); -R4i.w = floatBitsToInt(-(intBitsToFloat(R126i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -backupReg0i = R127i.w; -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0x3d4ccccd))); -R127i.w = clampFI32(R127i.w); -PS1i = int(intBitsToFloat(backupReg0i)); -// 4 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R2i.z)),-0.0),vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R2i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.x = PS1i & 0x00000002; -PS0i = R125i.x; -// 5 -R126i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3a83126f))); -PV1i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); -R126i.z = floatBitsToInt((intBitsToFloat(R3i.x) * 0.5 + 0.5)); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), -(intBitsToFloat(R126i.w)))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R0i.z)); -R126i.y = floatBitsToInt(tempResultf); -PS1i = R126i.y; -// 6 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R3i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),0.0))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.x)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R3i.y)), intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R2i.z)), intBitsToFloat(PS0i))); -PV1i.z = R5i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].w), intBitsToFloat(PS0i))); -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R126i.y))); -PS1i = R8i.x; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R5i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PS0i = R125i.z; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R3i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(1.0))); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R3i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -R127i.w = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); -PS0i = R127i.w; -// 11 -redcCUBE(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x),intBitsToFloat(R127i.x),intBitsToFloat(R127i.y)),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)),cubeMapSTM,cubeMapFaceId); -R0i.x = floatBitsToInt(cubeMapSTM.x); -R0i.y = floatBitsToInt(cubeMapSTM.y); -R0i.z = floatBitsToInt(cubeMapSTM.z); -R0i.w = cubeMapFaceId; -PV1i.x = R0i.x; -PV1i.y = R0i.y; -PV1i.z = R0i.z; -PV1i.w = R0i.w; -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS1i = R127i.x; -// 12 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(uf_remappedPS[8].x)) + intBitsToFloat(uf_remappedPS[8].y))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R126i.y))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(uf_remappedPS[8].z)) + intBitsToFloat(uf_remappedPS[8].w))); -PV0i.z = R127i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R126i.y))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); -// 13 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS0i)) + 1.5)); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PS0i)) + 1.5)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -R127i.w = ((intBitsToFloat(PV0i.z) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R9i.x = floatBitsToInt(intBitsToFloat(R125i.y) + -(1.0)); -PS1i = R9i.x; -// 14 -backupReg0i = R1i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R126i.z))); -R4i.y = floatBitsToInt(intBitsToFloat(R4i.y) / 2.0); -PV0i.y = R4i.y; -R6i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(0x3ea2f983)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x40400000)); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), -(intBitsToFloat(R126i.w)))); -PS0i = R1i.y; -// 15 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); -PV1i.x = R10i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(uf_remappedPS[9].y))); -PV1i.y = clampFI32(PV1i.y); -R123i.z = ((R127i.w == 0)?(0):(PV0i.x)); -PV1i.z = R123i.z; -R5i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[10].y))); -R2i.y = ((R125i.x == 0)?(R127i.z):(PV1i.z)); -R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(PV1i.y)) + 1.0)); -R2i.w = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(PS1i)); -R2i.w = clampFI32(R2i.w); -R1i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) / 2.0); -PS0i = R1i.x; -R0i.w = floatBitsToInt(texture(textureUnitPS2, vec4(redcCUBEReverse(intBitsToFloat(R0i.yx),R0i.w),cubeMapArrayIndex2)).x); -R0i.y = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R2i.xy)).x); -// 0 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R5i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = ((intBitsToFloat(backupReg0i) > intBitsToFloat(0x3f7ae148))?int(0xFFFFFFFF):int(0x0)); -// 1 -R126i.x = ((PS0i == 0)?(R0i.w):(0x42c80000)); -PV1i.y = PV0i.x; -PV1i.y = clampFI32(PV1i.y); -R126i.z = ((intBitsToFloat(R2i.x) > intBitsToFloat(uf_remappedPS[10].x))?int(0xFFFFFFFF):int(0x0)); -PV1i.w = PV0i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R2i.w)); -// 2 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R8i.x)))); -PV0i.x = R125i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R6i.y)))); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R6i.w)))); -PV0i.z = R127i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R5i.w)) + intBitsToFloat(R4i.y))); -PV0i.w = R123i.w; -R126i.y = floatBitsToInt(intBitsToFloat(R3i.x) * intBitsToFloat(PS1i)); -PS0i = R126i.y; -// 3 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R3i.y)),-(intBitsToFloat(R2i.z)),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.y; -// 4 -backupReg0i = R127i.z; -backupReg1i = R126i.x; -backupReg2i = R126i.y; -backupReg2i = R126i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.x))); -PV0i.x = R126i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.y))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)) + intBitsToFloat(R2i.z))); -PV0i.z = R127i.z; -///R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z), intBitsToFloat(backupReg1i)) + 4.0) / 2.0); -R123i.w = floatBitsToInt((mul_nonIEEE(3.0*intBitsToFloat(uf_remappedPS[9].z),intBitsToFloat(backupReg1i)) + 4.0)/2.0); -PV0i.w = R123i.w; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(backupReg2i))); -PS0i = R0i.w; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(R1i.x))); -R124i.z = clampFI32(R124i.z); -PS1i = R124i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.w),intBitsToFloat(R1i.y),intBitsToFloat(R4i.w),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),intBitsToFloat(uf_remappedPS[4].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.y = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 7 -R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.w),intBitsToFloat(R1i.y),intBitsToFloat(R4i.w),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),intBitsToFloat(uf_remappedPS[6].w)))); -PV1i.x = R125i.x; -PV1i.y = R125i.x; -PV1i.z = R125i.x; -PV1i.w = R125i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 8 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R4i.x))); -R127i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(uf_remappedPS[11].y)); -R127i.y = clampFI32(R127i.y); -R125i.z = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(uf_remappedPS[11].x)); -R125i.z = clampFI32(R125i.z); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].w) * intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R1i.w)) + intBitsToFloat(R3i.z))); -PS0i = R2i.y; -// 9 -backupReg0i = R126i.x; -backupReg1i = R126i.y; -backupReg2i = R127i.z; -backupReg3i = R125i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R5i.x)))); -PV1i.x = R126i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R3i.y)))); -PV1i.y = R126i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)) + -(intBitsToFloat(R2i.z)))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R125i.y) + -(intBitsToFloat(uf_remappedPS[12].x))); -PV1i.w = clampFI32(PV1i.w); -R125i.x = floatBitsToInt(intBitsToFloat(backupReg3i) + -(intBitsToFloat(uf_remappedPS[12].y))); -R125i.x = clampFI32(R125i.x); -PS1i = R125i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.w))); -PS0i = R127i.x; -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.w),intBitsToFloat(R1i.y),intBitsToFloat(R4i.w),intBitsToFloat(R6i.x)),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),intBitsToFloat(uf_remappedPS[7].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 12 -backupReg0i = R127i.z; -backupReg1i = R127i.y; -backupReg2i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.z = R127i.z; -R124i.w = floatBitsToInt(max(intBitsToFloat(backupReg1i), intBitsToFloat(R125i.x))); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg2i)) + 1.0); -PS0i = R127i.w; -// 13 -backupReg0i = R125i.w; -backupReg0i = R125i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(PV0i.x)); -PV1i.x = R126i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PV0i.y)); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = R125i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(uf_remappedPS[11].z)); -R125i.w = clampFI32(R125i.w); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(uf_remappedPS[12].z))); -R126i.w = clampFI32(R126i.w); -PS1i = R126i.w; -// 14 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.z = ((R126i.z == 0)?(backupReg0i):(R124i.x)); -PS0i = R2i.z; -// 15 -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R5i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -R5i.x = clampFI32(R5i.x); -PV1i.x = R5i.x; -PV1i.y = R5i.x; -PV1i.z = R5i.x; -PV1i.w = R5i.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 16 -backupReg0i = R126i.x; -backupReg1i = R126i.y; -backupReg2i = R125i.z; -backupReg3i = R124i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PS1i))); -PV0i.z = R125i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(R4i.y))); -PV0i.w = R123i.w; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(R127i.w))); -PS0i = R124i.z; -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R5i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R127i.w; -// 18 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.w),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -tempi.x = clampFI32(tempi.x); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -// 19 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R127i.w))); -R124i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.y = R124i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(PS0i)) + 1.0)); -PV1i.z = R123i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); -R127i.w = floatBitsToInt(max(-(intBitsToFloat(R5i.z)), 0.0)); -PS1i = R127i.w; -// 20 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.y))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R125i.w), intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].z)),intBitsToFloat(R2i.y)) + 1.0)); -R4i.x = clampFI32(R4i.x); -PS0i = R4i.x; -// 21 -R9i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R2i.y = floatBitsToInt(-(intBitsToFloat(R5i.w)) + 1.0); -R1i.z = floatBitsToInt(min(intBitsToFloat(R127i.w), 1.0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 22 -R8i.x = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(PS1i)); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.w))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.w))); -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(R2i.z))); -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(R2i.z))); -PS0i = R7i.x; -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R2i.y)) + intBitsToFloat(R5i.w))); -R123i.y = floatBitsToInt((intBitsToFloat(R6i.z) * intBitsToFloat(0x3f75c28f) + intBitsToFloat(0x3d23d70a))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R9i.x)) + -(1.0))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(R2i.z))); -PS0i = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x3ea2f983)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) * intBitsToFloat(0x3ea2f983)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3ea2f983)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(uf_remappedPS[9].w)) + 1.0)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS0i))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.x))); -R6i.w = 0; -PS0i = R6i.w; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.z))); -R6i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -PS1i = R6i.x; -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -R6i.z = floatBitsToInt(min(intBitsToFloat(PV1i.x), intBitsToFloat(0x42000000))); -R6i.y = floatBitsToInt(min(intBitsToFloat(PV1i.w), intBitsToFloat(0x42000000))); -PS0i = R6i.y; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.y))); -// 6 -backupReg0i = R0i.w; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(PV0i.w))); -// 8 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.z))); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.z))); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.z))); -// 11 -R4i.x = floatBitsToInt(min(intBitsToFloat(PV0i.y), intBitsToFloat(0x42000000))); -R4i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), intBitsToFloat(0x42000000))); -R4i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(0x42000000))); -// 12 -R0i.xyz = ivec3(R6i.x,R6i.y,R6i.z); -R0i.w = R6i.w; -// 13 -R1i.xyz = ivec3(R4i.x,R4i.y,R4i.z); -R1i.w = R4i.w; -// export -passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -passPixelColor1 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); -} diff --git a/Workarounds/BreathOfTheWild_KakarikoShadows/rules.txt b/Workarounds/BreathOfTheWild_KakarikoShadows/rules.txt deleted file mode 100644 index cfbe1eda..00000000 --- a/Workarounds/BreathOfTheWild_KakarikoShadows/rules.txt +++ /dev/null @@ -1,7 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Kakariko Torch Shadows workaround (OpenGL) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/Kakariko Torch Shadows (OpenGL)" -description = Workaround for the square shadows seen around torches in Kakariko Village when using OpenGL. Made by Kiri. -rendererFilter = opengl -version = 4 diff --git a/Workarounds/BreathOfTheWild_LwzxNullCheck/patches.txt b/Workarounds/BreathOfTheWild_LwzxNullCheck/patches.txt deleted file mode 100644 index 9b9c56e3..00000000 --- a/Workarounds/BreathOfTheWild_LwzxNullCheck/patches.txt +++ /dev/null @@ -1,329 +0,0 @@ -[BotwPlsNoCrashV33] -moduleMatches = 0xD91A406D -#restore the 2 instructions possibly overwritten by cemu itself -0x03721B00 = stwu r1, -0x28(r1) -0x03721B04 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x03721CA8 = bla _lwzxCheck -0x03721CB4 = bla _lwzCheck - -0x03721D20 = bla _lwzxCheck -0x03721D2C = bla _lwzCheck - -[BotwPlsNoCrashV48] -moduleMatches = 0x0F748D9C -#restore the 2 instructions possibly overwritten by cemu itself -0x03721F0C = stwu r1, -0x28(r1) -0x03721F10 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x037220B4 = bla _lwzxCheck -0x037220C0 = bla _lwzCheck - -0x0372212C = bla _lwzxCheck -0x03722138 = bla _lwzCheck - -[BotwPlsNoCrashV64] -moduleMatches = 0x9A61FF4C -#restore the 2 instructions possibly overwritten by cemu itself -0x037235F4 = stwu r1, -0x28(r1) -0x037235F8 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x0372379C = bla _lwzxCheck -0x037237A8 = bla _lwzCheck - -0x03723814 = bla _lwzxCheck -0x03723820 = bla _lwzCheck - -[BotwPlsNoCrashV80] -moduleMatches = 0x8E3324A9 -#restore the 2 instructions possibly overwritten by cemu itself -0x03744368 = stwu r1, -0x28(r1) -0x0374436C = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x03744510 = bla _lwzxCheck -0x0374451C = bla _lwzCheck - -0x03744588 = bla _lwzxCheck -0x03744594 = bla _lwzCheck - -[BotwPlsNoCrashV97] -moduleMatches = 0xD71D859D -#restore the 2 instructions possibly overwritten by cemu itself -0x03799E3C = stwu r1, -0x28(r1) -0x03799E40 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x03799FE4 = bla _lwzxCheck -0x03799FF0 = bla _lwzCheck - -0x0379A05C = bla _lwzxCheck -0x0379A068 = bla _lwzCheck - -[BotwPlsNoCrashV112] -moduleMatches = 0x6FD41A61 -#restore the 2 instructions possibly overwritten by cemu itself -0x0379AF6C = stwu r1, -0x28(r1) -0x0379AF70 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x0379B114 = bla _lwzxCheck -0x0379B120 = bla _lwzCheck - -0x0379B18C = bla _lwzxCheck -0x0379B198 = bla _lwzCheck - -[BotwPlsNoCrashV144] -moduleMatches = 0x9A2CA0C7 -#restore the 2 instructions possibly overwritten by cemu itself -0x037CF648 = stwu r1, -0x28(r1) -0x037CF64C = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x037CF7F0 = bla _lwzxCheck -0x037CF7FC = bla _lwzCheck - -0x037CF868 = bla _lwzxCheck -0x037CF874 = bla _lwzCheck - -[BotwPlsNoCrashV160] -moduleMatches = 0x29DBB52A -#restore the 2 instructions possibly overwritten by cemu itself -0x037CF514 = stwu r1, -0x28(r1) -0x037CF518 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x037CF6BC = bla _lwzxCheck -0x037CF6C8 = bla _lwzCheck - -0x037CF734 = bla _lwzxCheck -0x037CF740 = bla _lwzCheck - -[BotwPlsNoCrashV176V192] -moduleMatches = 0xFD091F9F,0xD472D8A5 -#restore the 2 instructions possibly overwritten by cemu itself -0x038E3A30 = stwu r1, -0x28(r1) -0x038E3A34 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x038E3BD8 = bla _lwzxCheck -0x038E3BE4 = bla _lwzCheck - -0x038E3C50 = bla _lwzxCheck -0x038E3C5C = bla _lwzCheck - -[BotwPlsNoCrashV208] -moduleMatches = 0x6267BFD0 -#restore the 2 instructions possibly overwritten by cemu itself -0x038E46CC = stwu r1, -0x28(r1) -0x038E46D0 = mflr r0 - -#null check functions -codeCaveSize = 0x40 - -_lwzxCheck = 0x00000000 ; null checked version of 'lwzx r31, r9, r0' -0x00000000 = add r30, r9, r0 -0x00000004 = xor r31, r31, r31 -0x00000008 = cmpwi r30, 0 -0x0000000C = beq .+0x8 -0x00000010 = lwzx r31, r9, r0 -0x00000014 = blr - -_lwzCheck = 0x00000020 ; null checked version of 'lwz r8, 0(r31)' -0x00000020 = xor r8, r8, r8 -0x00000024 = oris r8, r8, 0xD15A -0x00000028 = ori r8, r8, 0xB1ED -0x0000002C = cmpwi r31, 0 -0x00000030 = beq .+0x8 -0x00000034 = lwz r8, 0(r31) -0x00000038 = blr - -#replace simple loads with calls to these funcs -0x038E4874 = bla _lwzxCheck -0x038E4880 = bla _lwzCheck - -0x038E48EC = bla _lwzxCheck -0x038E48F8 = bla _lwzCheck \ No newline at end of file diff --git a/Workarounds/BreathOfTheWild_LwzxNullCheck/rules.txt b/Workarounds/BreathOfTheWild_LwzxNullCheck/rules.txt deleted file mode 100644 index 41445b26..00000000 --- a/Workarounds/BreathOfTheWild_LwzxNullCheck/rules.txt +++ /dev/null @@ -1,7 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = LWZX Crash Workaround (OpenGL) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/LWZX Crash (OpenGL)" -description = It's recommended to keep this pack enabled since it has no drawbacks, even though it only fixes crashes when Full sync at GX2DrawDone() isn't enabled. Made by rajkosto. -rendererFilter = opengl -version = 4 diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/17aae2b035ae850c_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/17aae2b035ae850c_0000000000000000_vs.txt deleted file mode 100644 index e940fa8a..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/17aae2b035ae850c_0000000000000000_vs.txt +++ /dev/null @@ -1,1850 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 17aae2b035ae850c // distant cloud and fog vs -uniform ivec4 uf_remappedVS[68]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -layout(location = 11) in uvec4 attrDataSem11; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem7; -layout(location = 5) out vec4 passParameterSem8; -layout(location = 7) out vec4 passParameterSem11; -layout(location = 8) out vec4 passParameterSem14; -layout(location = 9) out vec4 passParameterSem15; -layout(location = 10) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 6) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem5.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem11; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R11i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem4; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem8; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R10i.z = floatBitsToInt(-(intBitsToFloat(R10i.y)) + 1.0); -R6i.w = 0; -R7i.w = floatBitsToInt(1.0); -PS0i = R7i.w; -// 1 -R10i.w = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(uf_remappedVS[0].x)); -R15i.w = floatBitsToInt(-(intBitsToFloat(R10i.x)) + 1.0); -PS1i = R15i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R10i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].y) * intBitsToFloat(0x40a00000)); -R21i.x = 0; -PS0i = R21i.x; -// 1 -R5i.w = R7i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R5i.w = R6i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R5i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R4i.w)); -// 1 -R22i.x = floatBitsToInt(float(PS0i)); -PS1i = R22i.x; -// 2 -predResult = (intBitsToFloat(R10i.w) >= intBitsToFloat(R22i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].y) * intBitsToFloat(0x40a00000)); -R21i.x = 0; -PS0i = R21i.x; -// 1 -R6i.w = R7i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R6i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(uf_remappedVS[2].y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(uf_remappedVS[2].z))); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R8i.x), 0.0)); -// 1 -PV1i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 0.0)); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedVS[3].w))); -PS1i = R13i.z; -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV1i.z)); -PV0i.x = R0i.x; -R14i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].w) + intBitsToFloat(R10i.w)); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedVS[2].x))); -// 4 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedVS[3].y))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_remappedVS[3].z))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedVS[3].y))); -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R17i.x = ((intBitsToFloat(uf_remappedVS[4].x) == 1.0)?int(0xFFFFFFFF):int(0x0)); -R12i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].x)) + 1.0); -// 1 -predResult = (R17i.x != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(R14i.z))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].w), intBitsToFloat(PV0i.x))); -// 2 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].x), intBitsToFloat(PV1i.w))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].y), intBitsToFloat(PV1i.w))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].z), intBitsToFloat(PV1i.w))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -tempResultf = log2(abs(intBitsToFloat(uf_remappedVS[4].x))); -PS0i = floatBitsToInt(tempResultf); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f317218)); -tempResultf = log2(intBitsToFloat(uf_remappedVS[4].x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS1i))); -R127i.y = ((intBitsToFloat(uf_remappedVS[4].x) == 0.0)?(0xff7fffff):(PV1i.z)); -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(R12i.y)); -PS0i = R127i.z; -// 3 -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + -(1.0)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(R14i.z) + -(intBitsToFloat(PV1i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.y))); -// 8 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].w), intBitsToFloat(PV1i.x))); -// 9 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].x), intBitsToFloat(PV0i.w))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].y), intBitsToFloat(PV0i.w))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].z), intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = uf_remappedVS[6].x & 0x00020000; -R127i.y = uf_remappedVS[6].x & 0x00010000; -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R8i.z)); -R125i.w = uf_remappedVS[6].x & 0x00040000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[7].z)); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * 0.5); -R126i.y = R8i.z; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[7].x) * intBitsToFloat(PS0i)); -R124i.w = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.y)); -R127i.w = floatBitsToInt(float(PV0i.x)); -PS1i = R127i.w; -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PV1i.z))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.z) > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.x = floatBitsToInt(float(R127i.y)); -PS0i = R127i.x; -// 3 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(R127i.w))?1.0:0.0); -R127i.y = ((intBitsToFloat(PV0i.z) > 1.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + -(intBitsToFloat(PV1i.x))); -R123i.y = ((PV1i.y == 0)?(R127i.z):(PS1i)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(R127i.x))?1.0:0.0); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3fc90fdb)); -PS0i = floatBitsToInt(float(R125i.w)); -// 5 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt(min(intBitsToFloat(PV0i.y), 1.0)); -R125i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R125i.w; -// 6 -R124i.x = floatBitsToInt(((R127i.y == 0)?(intBitsToFloat(R127i.w)):(-(intBitsToFloat(R127i.w))))); -R125i.y = ((R127i.y == 0)?(0):(R126i.w)); -R126i.z = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(1.0))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R125i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R125i.x; -// 7 -backupReg0i = R126i.y; -backupReg1i = R124i.w; -R127i.x = R8i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -PV1i.z = 0 - R125i.w; -R124i.w = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg1i) * 0.5); -PS1i = R127i.z; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(0x3edcf805) * intBitsToFloat(PV1i.y) + 1.0)); -PV0i.x = R123i.x; -R127i.y = max(R125i.w, PV1i.z); -R123i.z = floatBitsToInt((intBitsToFloat(0x3d6ee04d) * intBitsToFloat(PV1i.y) + intBitsToFloat(0x3f43b24e))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.z)); -R0i.x = floatBitsToInt(intBitsToFloat(R126i.x) + -(0.5)); -R0i.x = floatBitsToInt(intBitsToFloat(R0i.x) * 2.0); -PS0i = R0i.x; -// 9 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -R127i.x = 0 - R125i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.z)) + 1.0)); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R127i.w = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.z)), intBitsToFloat(PV0i.x))); -R124i.z = int(intBitsToFloat(backupReg1i)); -PS1i = R124i.z; -// 10 -R126i.x = R8i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R126i.y = floatBitsToInt((intBitsToFloat(uf_remappedVS[7].x) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(R124i.w))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(R124i.w) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(uf_remappedVS[7].x))?1.0:0.0); -R124i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -R12i.z = max(R125i.x, R127i.x); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R0i.z = floatBitsToInt(intBitsToFloat(R125i.w) * 0.5); -PS1i = R0i.z; -// 12 -R125i.x = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(PV1i.x))); -R0i.y = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); -R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) * 2.0); -R123i.z = ((intBitsToFloat(R126i.z) > 0.0)?(PV1i.w):(floatBitsToInt(-(intBitsToFloat(PV1i.w))))); -PV0i.z = R123i.z; -PV0i.w = 0 - R124i.z; -R127i.x = floatBitsToInt(float(R127i.y)); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -PS0i = R127i.x; -// 13 -backupReg0i = R125i.y; -backupReg1i = R125i.z; -PV1i.x = floatBitsToInt((intBitsToFloat(R125i.z) > 0.0)?1.0:0.0); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV0i.z)) + intBitsToFloat(backupReg0i))); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(floor(intBitsToFloat(R126i.x))); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(backupReg1i))?1.0:0.0); -R126i.x = max(R124i.z, PV0i.w); -PS1i = R126i.x; -// 14 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PV1i.y))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.y) > 0.0)?1.0:0.0); -R124i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -R6i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.x)), intBitsToFloat(R124i.y))); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.z) + -(0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -PS0i = R0i.w; -// 15 -R12i.x = floatBitsToInt(intBitsToFloat(R8i.y) + -(0.5)); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(R125i.z))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(R125i.z) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(float(R12i.z)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 16 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.w)); -R124i.z = ((intBitsToFloat(uf_remappedVS[7].x) == 0.0)?int(0xFFFFFFFF):int(0x0)); -R7i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(backupReg0i))); -PS0i = floatBitsToInt(float(R126i.x)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 17 -PV1i.x = ((0.0 > intBitsToFloat(uf_remappedVS[7].z))?int(0xFFFFFFFF):int(0x0)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fc90fdb)); -R12i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(PV0i.x))); -R12i.w = floatBitsToInt(intBitsToFloat(R8i.x) + -(0.5)); -R13i.x = floatBitsToInt(intBitsToFloat(R8i.z) + -(0.5)); -PS1i = R13i.x; -// 18 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.y) + -(intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(0x3fc90fdb)); -R124i.z = ((intBitsToFloat(uf_remappedVS[7].z) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -tempResultf = log2(intBitsToFloat(uf_remappedVS[4].x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 19 -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R13i.z))); -PV1i.y = uf_remappedVS[8].y; -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R123i.z = ((PV0i.w == 0)?(PV0i.x):(0x40490fdb)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R12i.y)); -PS1i = R125i.z; -// 20 -R16i.x = 0x3f800000; -R12i.y = ((R124i.z == 0)?(PV1i.z):(R125i.y)); -PV0i.z = uf_remappedVS[8].x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 21 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.z)); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PV0i.w))); -R14i.w = floatBitsToInt(intBitsToFloat(R8i.x) + 1.0); -R7i.x = floatBitsToInt(intBitsToFloat(R8i.y) + 1.0); -PS1i = R7i.x; -// 22 -backupReg0i = R14i.x; -R14i.x = floatBitsToInt(intBitsToFloat(R8i.z) + 1.0); -R7i.y = ((intBitsToFloat(R10i.w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R13i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R125i.z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[9].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[9].y))); -R126i.z = ((intBitsToFloat(uf_remappedVS[10].w) == 1.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[10].w)) + 1.0); -tempResultf = log2(intBitsToFloat(uf_remappedVS[10].w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 1 -R125i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[10].y) + intBitsToFloat(PV0i.y)); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[9].z))); -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[10].x)); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.w), intBitsToFloat(PS0i))); -R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.z; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R7i.w))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(uf_remappedVS[11].y))); -R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[10].z) + intBitsToFloat(PV1i.y)); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R6i.w))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R124i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.x)); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R12i.z))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(uf_remappedVS[11].x))); -// 4 -R125i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R124i.z)); -R127i.z = floatBitsToInt(intBitsToFloat(PS1i) + 0.0); -R127i.w = floatBitsToInt(intBitsToFloat(R125i.y) + 0.0); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(uf_remappedVS[11].z))); -// 5 -R123i.x = ((R126i.z == 0)?(PV0i.y):(R10i.w)); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(intBitsToFloat(PS0i) + 0.0); -R126i.z = ((R17i.x == 0)?(R13i.w):(R14i.z)); -PV1i.z = R126i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.w), intBitsToFloat(uf_remappedVS[12].x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedVS[12].x))); -PS1i = R126i.y; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV1i.z))); -PS0i = R125i.z; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R126i.z))); -R125i.y = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV0i.y)); -PS1i = R125i.y; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(R125i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R12i.y)); -R125i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV1i.w)); -PS0i = R125i.z; -// 9 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R125i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.w = R123i.w; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PV0i.z))); -PS1i = R125i.y; -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R125i.z))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -R124i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV1i.z)); -PS0i = R124i.x; -// 11 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983)); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -PV1i.z = R125i.z; -R124i.w = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R125i.y)); -R126i.z = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 12 -backupReg0i = R7i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983)); -PV0i.x = R125i.x; -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.x), intBitsToFloat(uf_remappedVS[12].x))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R22i.x), intBitsToFloat(uf_remappedVS[13].w))); -R4i.w = ((backupReg0i == 0)?(R10i.w):(0x3f800000)); -R127i.x = floatBitsToInt(cos((intBitsToFloat(PV1i.z))/0.1591549367)); -PS0i = R127i.x; -// 13 -R13i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = R13i.x; -PV1i.y = R13i.x; -PV1i.z = R13i.x; -PV1i.w = R13i.x; -R127i.w = floatBitsToInt(sin((intBitsToFloat(PV0i.x))/0.1591549367)); -PS1i = R127i.w; -// 14 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(sin((intBitsToFloat(R125i.z))/0.1591549367)); -PS0i = R127i.y; -// 15 -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.w))); -R125i.z = floatBitsToInt(cos((intBitsToFloat(R125i.x))/0.1591549367)); -PS1i = R125i.z; -// 16 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R125i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(sin((intBitsToFloat(R126i.x))/0.1591549367)); -PS0i = R125i.y; -// 17 -backupReg0i = R126i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R125i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.z))); -R1i.w = floatBitsToInt(-(intBitsToFloat(PS0i))); -R126i.x = floatBitsToInt(cos((intBitsToFloat(backupReg0i))/0.1591549367)); -PS1i = R126i.x; -// 18 -backupReg0i = R127i.w; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R1i.y = floatBitsToInt(-(intBitsToFloat(R124i.y)) + intBitsToFloat(PV1i.z)); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -R4i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV1i.y)); -PS0i = R4i.y; -// 19 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R15i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R124i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R15i.x))); -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.x))); -PS1i = R14i.x; -// 20 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R15i.x))); -R9i.y = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 21 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R14i.y = tempi.x; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.w))); -PS1i = R125i.z; -// 22 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R4i.x)) + intBitsToFloat(R127i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R14i.x)) + intBitsToFloat(backupReg0i))); -PV0i.y = R123i.y; -// 23 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.y))); -PS1i = R122i.x; -// 24 -R0i.x = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(R126i.x)); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt(intBitsToFloat(R14i.y) + intBitsToFloat(R125i.z)); -PV0i.y = R0i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PS1i)); -PV0i.z = R2i.z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 25 -backupReg0i = R7i.y; -backupReg1i = R4i.w; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R127i.w))); -R7i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(backupReg0i)); -R0i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -R4i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R126i.w)); -R3i.z = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(PS0i)); -R3i.z = clampFI32(R3i.z); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(R0i.z)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R1i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.w)) + intBitsToFloat(R3i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R14i.x)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV0i.x)); -// 2 -R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.x)) + intBitsToFloat(R127i.w))); -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -R13i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z))); -// 3 -predResult = (intBitsToFloat(uf_remappedVS[14].y) != 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_remappedVS[15].w; -PV0i.y = uf_remappedVS[16].w; -// 1 -R127i.x = floatBitsToInt(-(intBitsToFloat(R0i.x)) + intBitsToFloat(PV0i.y)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.x)); -PV1i.w = uf_remappedVS[17].w; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[14].y)); -PS1i = R126i.y; -// 2 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.w)); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(R126i.y)); -PV1i.x = clampFI32(PV1i.x); -// 6 -backupReg0i = R3i.z; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[16].w) + intBitsToFloat(uf_remappedVS[15].w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(backupReg0i)); -R1i.w = 0x3f800000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R13i.y)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[17].w)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(uf_remappedVS[18].w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(uf_remappedVS[18].z))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 2 -PV0i.x = ((0.0 > intBitsToFloat(PV1i.w))?int(0xFFFFFFFF):int(0x0)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[13].x))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3dd70a3d)); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.w)), intBitsToFloat(PV1i.w))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[13].z), intBitsToFloat(uf_remappedVS[18].w))); -R0i.w = ((PV0i.x == 0)?(PS0i):(PV0i.w)); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[13].y), intBitsToFloat(uf_remappedVS[18].z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -// 6 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -// 7 -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -// 8 -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -PV0i.z = R127i.z; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.z))/0.1591549367)); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.z))); -PS0i = floatBitsToInt(cos((intBitsToFloat(R127i.z))/0.1591549367)); -// 11 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); -R1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.x))/0.1591549367)); -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.y))); -R2i.w = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(PV1i.x)); -// 13 -R2i.z = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.x)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R13i.x) + -(intBitsToFloat(uf_remappedVS[19].x))); -R126i.y = floatBitsToInt(intBitsToFloat(R14i.y) + -(intBitsToFloat(uf_remappedVS[19].y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[20].w))); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(R9i.z) + -(intBitsToFloat(uf_remappedVS[19].z))); -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 3 -R0i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R0i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(min(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[21].x))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].y), intBitsToFloat(R0i.z))); -R126i.z = floatBitsToInt(max(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[21].y))); -R0i.w = ((intBitsToFloat(backupReg0i) > intBitsToFloat(uf_remappedVS[21].x))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R0i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[21].x)); -// 1 -backupReg0i = R1i.w; -backupReg0i = R1i.w; -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -R1i.w = ((PV0i.w == 0)?(backupReg0i):(backupReg0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[21].y)); -// 2 -R1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].x), intBitsToFloat(R0i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].z), intBitsToFloat(R0i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].y), intBitsToFloat(R0i.y))); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.z))); -R7i.w = 0x3f800000; -PS1i = R7i.w; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV1i.y)); -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(PV0i.y)); -R0i.y = uf_remappedVS[22].x; -R126i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.x)); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(R13i.x)) + intBitsToFloat(PV0i.z)); -// 4 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(backupReg0i))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.y))); -PS0i = R127i.x; -// 5 -backupReg0i = R126i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(PV0i.z)); -R126i.y = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV0i.w)); -R126i.z = floatBitsToInt(intBitsToFloat(R14i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R1i.y))); -PS1i = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(PV0i.x)); -// 6 -R2i.x = ((R0i.w == 0)?(PV1i.x):(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV1i.w)); -R1i.z = uf_remappedVS[22].y; -PV0i.w = floatBitsToInt(intBitsToFloat(R14i.y) + intBitsToFloat(R127i.x)); -R2i.z = uf_remappedVS[22].z; -PS0i = R2i.z; -// 7 -R0i.x = uf_remappedVS[23].x; -R4i.y = ((R0i.w == 0)?(R126i.z):(PV0i.w)); -R4i.z = ((R0i.w == 0)?(R126i.y):(PV0i.y)); -R0i.w = uf_remappedVS[24].x; -R1i.x = uf_remappedVS[24].y; -PS1i = R1i.x; -// 8 -R2i.w = uf_remappedVS[24].z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R22i.x)); -// 9 -R6i.z = uf_remappedVS[25].z; -R6i.w = uf_remappedVS[25].w; -R3i.z = floatBitsToInt(intBitsToFloat(R10i.w) * intBitsToFloat(PS0i)); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[26].x),intBitsToFloat(uf_remappedVS[26].y),intBitsToFloat(uf_remappedVS[26].z),intBitsToFloat(uf_remappedVS[26].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[27].x),intBitsToFloat(uf_remappedVS[27].y),intBitsToFloat(uf_remappedVS[27].z),intBitsToFloat(uf_remappedVS[27].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[28].x),intBitsToFloat(uf_remappedVS[28].y),intBitsToFloat(uf_remappedVS[28].z),intBitsToFloat(uf_remappedVS[28].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.w = tempi.x; -// 3 -R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[29].x),intBitsToFloat(uf_remappedVS[29].y),intBitsToFloat(uf_remappedVS[29].z),intBitsToFloat(uf_remappedVS[29].w)))); -PV1i.x = R9i.x; -PV1i.y = R9i.x; -PV1i.z = R9i.x; -PV1i.w = R9i.x; -// 4 -backupReg0i = R0i.y; -R5i.x = floatBitsToInt((intBitsToFloat(R4i.w) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.x = R5i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[30].x))); -PV0i.z = PV1i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(uf_remappedVS[30].y))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedVS[30].z))); -PS0i = R1i.z; -// 5 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(uf_remappedVS[30].w))); -R123i.y = floatBitsToInt((intBitsToFloat(R4i.w) * 0.0 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R5i.w = floatBitsToInt((intBitsToFloat(R4i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.w = R5i.w; -R3i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R3i.w; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -R7i.y = floatBitsToInt((intBitsToFloat(R5i.z) * 0.5 + intBitsToFloat(PV1i.y))); -R7i.z = floatBitsToInt((intBitsToFloat(R6i.y) * -(0.5) + intBitsToFloat(PV1i.y))); -// 7 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedVS[1].w)) + -(intBitsToFloat(uf_remappedVS[1].y)))); -PV1i.z = R123i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.x),intBitsToFloat(R14i.y),intBitsToFloat(R9i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_remappedVS[28].x),intBitsToFloat(uf_remappedVS[28].y),intBitsToFloat(uf_remappedVS[28].z),intBitsToFloat(uf_remappedVS[28].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 9 -R0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].z)) * intBitsToFloat(PS0i)); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.x),intBitsToFloat(R14i.y),intBitsToFloat(R9i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_remappedVS[29].x),intBitsToFloat(uf_remappedVS[29].y),intBitsToFloat(uf_remappedVS[29].z),intBitsToFloat(uf_remappedVS[29].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 11 -PV1i.y = PV0i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R123i.w = floatBitsToInt((intBitsToFloat(R127i.w) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 12 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.w) * 0.5 + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 13 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[1].w), intBitsToFloat(PV1i.y))); -// 15 -PV1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].y)) + intBitsToFloat(PV0i.x)); -// 16 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 17 -R2i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].z)) * intBitsToFloat(PS0i)); -// 18 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[31].y))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[31].x))); -R2i.z = ((intBitsToFloat(R8i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(uf_remappedVS[31].z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[32].x))); -PV0i.y = floatBitsToInt((intBitsToFloat(uf_remappedVS[33].w) > 0.0)?1.0:0.0); -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(uf_remappedVS[32].x))); -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedVS[32].x))); -PS0i = floatBitsToInt((0.0 > intBitsToFloat(uf_remappedVS[33].w))?1.0:0.0); -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R1i.y))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R1i.x))); -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R0i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[33].w)); -// 2 -PV0i.x = uf_remappedVS[6].x & 0x00080000; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(R10i.w) * intBitsToFloat(PS1i)); -R127i.w = ((R2i.z == 0)?(R10i.x):(R15i.w)); -PS0i = uf_remappedVS[6].x & 0x00100000; -// 3 -PV1i.x = (PV0i.x == 0x00080000)?int(0xFFFFFFFF):int(0x0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(uf_remappedVS[34].x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R126i.z = (PS0i == 0x00100000)?int(0xFFFFFFFF):int(0x0); -PV1i.w = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS1i = uf_remappedVS[6].x & 0x00200000; -// 4 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -R123i.y = ((PV1i.w == 0)?(R10i.y):(R10i.z)); -PV0i.y = R123i.y; -R1i.z = ((PV1i.x == 0)?(R10i.x):(R127i.w)); -R127i.w = (PS1i == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PS0i = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -R1i.y = ((R126i.z == 0)?(R10i.y):(PV0i.y)); -R123i.z = ((PS0i == 0)?(R10i.x):(R15i.w)); -PV1i.z = R123i.z; -PV1i.w = uf_remappedVS[6].x & 0x00400000; -PS1i = ((intBitsToFloat(R8i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 6 -R1i.x = ((R127i.w == 0)?(R10i.x):(PV1i.z)); -R123i.y = ((PS1i == 0)?(R10i.y):(R10i.z)); -PV0i.y = R123i.y; -PV0i.z = (PV1i.w == 0x00400000)?int(0xFFFFFFFF):int(0x0); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.x))); -// 7 -R2i.z = uf_remappedVS[6].x & 0x00800000; -R1i.w = ((PV0i.z == 0)?(R10i.y):(PV0i.y)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[35].w)) + intBitsToFloat(uf_remappedVS[36].w)); -R126i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[36].w))); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[35].w))); -PV0i.z = R126i.z; -// 1 -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[35].x)) + intBitsToFloat(uf_remappedVS[36].x)); -R127i.z = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R127i.z; -R127i.w = (R2i.z == 0x00800000)?int(0xFFFFFFFF):int(0x0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -R126i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[36].x)) + intBitsToFloat(uf_remappedVS[37].x)); -PS0i = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[37].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(uf_remappedVS[35].x))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x))); -R123i.w = ((PS0i == 0)?(R10i.x):(R15i.w)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[35].x), intBitsToFloat(PV0i.y))); -// 4 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[36].w)) + intBitsToFloat(uf_remappedVS[37].w)); -R0i.z = ((R127i.w == 0)?(R10i.x):(PV1i.w)); -R127i.w = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.w = R127i.w; -PS0i = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.y = uf_remappedVS[6].x & 0x01000000; -R127i.z = ((PS0i == 0)?(R10i.y):(R10i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -PV0i.z = (PV1i.y == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PV0i.w = uf_remappedVS[6].y & int(1); -// 7 -R10i.x = (int(1) != PV0i.w)?int(0xFFFFFFFF):int(0x0); -R0i.y = ((PV0i.z == 0)?(R10i.y):(R127i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(uf_remappedVS[36].x))); -PV1i.w = R123i.w; -// 8 -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(R126i.x))); -PV0i.w = R123i.w; -// 9 -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[37].x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R2i.z; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[31].w))); -PS0i = int(intBitsToFloat(uf_remappedVS[38].z)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[39].z) + intBitsToFloat(uf_remappedVS[40].x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_remappedVS[40].x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_remappedVS[40].y))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[39].w) + intBitsToFloat(uf_remappedVS[40].y)); -R127i.y = floatBitsToInt(float(PS0i)); -PS1i = R127i.y; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.w)),intBitsToFloat(uf_remappedVS[39].x)) + -(intBitsToFloat(PV0i.w)))); -R127i.z = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.y)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[39].y)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[38].z)); -// 4 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[38].x), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z)); -R126i.z = ((R10i.x == 0)?(0):(int(1))); -PV0i.z = R126i.z; -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[38].w)); -// 5 -R123i.x = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.x = R123i.x; -R125i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[38].y), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PV0i.x)) + -(0.5))); -PS1i = int(intBitsToFloat(PV0i.w)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[41].x) + intBitsToFloat(uf_remappedVS[41].z)); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[41].y) + intBitsToFloat(uf_remappedVS[41].w)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV1i.z)) + -(0.5))); -R123i.w = ((intBitsToFloat(R127i.y) == 0.0)?(0):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 7 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(uf_remappedVS[41].z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(uf_remappedVS[41].w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.w = (R126i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PS1i = int(intBitsToFloat(PV0i.w)); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[40].w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[40].z)) + intBitsToFloat(PV1i.x))); -R123i.z = ((PV1i.w == 0)?(R8i.x):(R8i.z)); -PV0i.z = R123i.z; -R123i.w = ((PV1i.w == 0)?(R8i.y):(R8i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 9 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R125i.z)) + -(intBitsToFloat(R127i.z)))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.y))); -PV1i.y = R123i.y; -R123i.z = ((R125i.y == 0)?(PV0i.z):(R8i.y)); -PV1i.z = R123i.z; -R123i.w = ((R125i.y == 0)?(PV0i.w):(R8i.z)); -PV1i.w = R123i.w; -R127i.x = ((R125i.y == 0)?(R8i.x):(R8i.y)); -PS1i = R127i.x; -// 10 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[42].x), intBitsToFloat(PV1i.z))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[42].y), intBitsToFloat(PV1i.w))); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -R127i.w = ((R125i.y == 0)?(R8i.y):(R8i.z)); -PS0i = int(intBitsToFloat(uf_remappedVS[43].z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[44].z) + intBitsToFloat(uf_remappedVS[42].x)); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[44].w) + intBitsToFloat(uf_remappedVS[42].y)); -R126i.w = ((R10i.x == 0)?(0):(0x00000002)); -R127i.y = floatBitsToInt(float(PS0i)); -PS1i = R127i.y; -// 12 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y)); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.w)),intBitsToFloat(uf_remappedVS[44].x)) + -(intBitsToFloat(PV0i.w)))); -R127i.z = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.y)); -PV1i.z = R127i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[44].y)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[43].z)); -// 14 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[43].x), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z)); -R126i.z = (R126i.w == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[43].w)); -// 15 -R123i.x = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.x = R123i.x; -R125i.y = (R126i.w == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[43].y), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.x)) + -(0.5))); -PS1i = int(intBitsToFloat(PV0i.w)); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[45].x) + intBitsToFloat(uf_remappedVS[45].z)); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[45].y) + intBitsToFloat(uf_remappedVS[45].w)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(PV1i.z)) + -(0.5))); -R123i.w = ((intBitsToFloat(R127i.y) == 0.0)?(0):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[45].w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[45].z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R127i.w = ((R125i.y == 0)?(R8i.x):(R8i.z)); -PS1i = int(intBitsToFloat(PV0i.w)); -// 18 -backupReg0i = R125i.y; -backupReg0i = R125i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[42].w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[42].z)) + intBitsToFloat(PV1i.z))); -R123i.z = ((backupReg0i == 0)?(R8i.z):(R8i.y)); -PV0i.z = R123i.z; -R123i.w = ((backupReg0i == 0)?(R8i.y):(R8i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 19 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R125i.z)) + -(intBitsToFloat(R127i.y)))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.y))); -PV1i.y = R123i.y; -R123i.z = ((R126i.z == 0)?(R127i.w):(R8i.y)); -PV1i.z = R123i.z; -R127i.w = ((R126i.z == 0)?(PV0i.w):(R8i.z)); -R0i.w = ((R126i.z == 0)?(PV0i.z):(R8i.x)); -PS1i = R0i.w; -// 20 -R10i.x = ((R126i.z == 0)?(R8i.y):(R8i.z)); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -R1i.z = ((R126i.z == 0)?(R8i.x):(R8i.y)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[46].x), intBitsToFloat(PV1i.z))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) * 2.0); -PS0i = int(intBitsToFloat(uf_remappedVS[47].z)); -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[46].y), intBitsToFloat(R127i.w))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -R5i.y = floatBitsToInt(intBitsToFloat(R124i.y) + 0.5); -PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[48].z) + intBitsToFloat(uf_remappedVS[46].x)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[48].w) + intBitsToFloat(uf_remappedVS[46].y)); -R1i.w = floatBitsToInt(float(PS0i)); -PS1i = R1i.w; -// 22 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 23 -R8i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(0):(PV0i.x)); -PV1i.x = R8i.x; -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.w)),intBitsToFloat(uf_remappedVS[48].x)) + -(intBitsToFloat(PV0i.y)))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[48].y)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[47].z)); -// 24 -R3i.x = floatBitsToInt(intBitsToFloat(R125i.x) + 0.5); -R8i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[47].x), intBitsToFloat(PS1i))); -R8i.w = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.x)); -R1i.y = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[47].w)); -PS0i = R1i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[47].y), intBitsToFloat(R1i.y))); -PV0i.x = R125i.x; -R1i.y = floatBitsToInt(intBitsToFloat(R10i.y) + 0.5); -R123i.z = ((-(intBitsToFloat(R8i.x)) > 0.0)?(R8i.w):(R8i.x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R8i.z)) + -(0.5))); -PS0i = int(intBitsToFloat(R8i.y)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[49].y) + intBitsToFloat(uf_remappedVS[49].z)); -R123i.y = ((intBitsToFloat(R1i.w) == 0.0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + -(0.5))); -R1i.w = floatBitsToInt(intBitsToFloat(R1i.x) + 0.5); -PS1i = floatBitsToInt(float(PS0i)); -// 2 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[49].z),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.x))); -R124i.y = floatBitsToInt(intBitsToFloat(R2i.y) + -(intBitsToFloat(uf_remappedVS[50].x))); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PS1i)) + intBitsToFloat(R2i.w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[50].x)) + intBitsToFloat(uf_remappedVS[50].y)); -PS0i = int(intBitsToFloat(PV1i.y)); -// 3 -backupReg0i = R3i.z; -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[51].y) + intBitsToFloat(uf_remappedVS[51].w)); -R3i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + 0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[51].x) + intBitsToFloat(uf_remappedVS[51].z)); -PS1i = floatBitsToInt(float(PS0i)); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[51].w),intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R3i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[51].z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[49].x)) + intBitsToFloat(R125i.x))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 5 -backupReg0i = R124i.y; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[46].z)) + intBitsToFloat(PV0i.z))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(uf_remappedVS[46].w)) + intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R7i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R7i.w = clampFI32(R7i.w); -R127i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[52].w))); -PS1i = R127i.y; -// 6 -R125i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[52].x)) + intBitsToFloat(uf_remappedVS[53].x)); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -// 7 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[53].w))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[52].w)) + intBitsToFloat(uf_remappedVS[53].w)); -// 8 -R124i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[53].x)) + intBitsToFloat(uf_remappedVS[54].x)); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[53].w)) + intBitsToFloat(uf_remappedVS[54].w)); -PV1i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R1i.z = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[54].w))); -R125i.z = floatBitsToInt(sin((intBitsToFloat(PV0i.w))/0.1591549367)); -PS1i = R125i.z; -// 10 -backupReg0i = R126i.w; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.w))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedVS[52].x))); -R126i.w = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[55].w))); -PS0i = floatBitsToInt(cos((intBitsToFloat(backupReg0i))/0.1591549367)); -// 11 -backupReg0i = R125i.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[54].x)) + intBitsToFloat(uf_remappedVS[55].x)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R125i.x = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS1i = R125i.x; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R126i.z)))); -PV0i.y = R123i.y; -PV0i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[54].w)) + intBitsToFloat(uf_remappedVS[55].w)); -// 13 -backupReg0i = R125i.y; -R4i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -R125i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[55].x)) + intBitsToFloat(uf_remappedVS[56].x)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(R125i.x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 14 -R8i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedVS[53].x))); -R124i.w = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[56].w))); -R125i.w = ((intBitsToFloat(R127i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R125i.w; -// 15 -backupReg0i = R126i.y; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(uf_remappedVS[54].x))); -R126i.y = ((intBitsToFloat(R1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R126i.y; -R124i.z = ((intBitsToFloat(backupReg0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R0i.w = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[57].w))); -PV1i.w = R0i.w; -R127i.x = ((intBitsToFloat(R126i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R127i.x; -// 16 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[55].w)) + intBitsToFloat(uf_remappedVS[56].w)); -R127i.z = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R127i.z; -R127i.w = ((intBitsToFloat(R124i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.w = R127i.w; -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -PS0i = R126i.x; -// 17 -R125i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[56].x)) + intBitsToFloat(uf_remappedVS[57].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 18 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[56].w)) + intBitsToFloat(uf_remappedVS[57].w)); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(backupReg0i))); -PS0i = R127i.w; -// 19 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R124i.z)) + 1.0); -R125i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[58].w))); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(uf_remappedVS[55].x))); -R126i.w = floatBitsToInt(-(intBitsToFloat(R125i.w)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 20 -backupReg0i = R125i.x; -backupReg1i = R125i.w; -R125i.x = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R125i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -R124i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[57].x)) + intBitsToFloat(uf_remappedVS[58].x)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.x))); -R8i.w = 0; -PS0i = R8i.w; -// 21 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV0i.y)) + intBitsToFloat(uf_remappedVS[56].x))); -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedVS[59].w))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -// 22 -R1i.x = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R1i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[57].w)) + intBitsToFloat(uf_remappedVS[58].w)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -// 23 -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[58].x)) + intBitsToFloat(uf_remappedVS[59].x)); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 24 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[58].w)) + intBitsToFloat(uf_remappedVS[59].w)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -// 25 -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(uf_remappedVS[57].x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[52].x), intBitsToFloat(R126i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 26 -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -// 27 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(uf_remappedVS[58].x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -// 28 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -// 29 -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 30 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -// 31 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -// 32 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -// 33 -R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[59].x),intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].x) + -(intBitsToFloat(R2i.x))); -R125i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].y) + -(intBitsToFloat(R4i.y))); -PV0i.z = floatBitsToInt(min(intBitsToFloat(uf_remappedVS[19].y), intBitsToFloat(uf_remappedVS[60].z))); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].z) + -(intBitsToFloat(R4i.z))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(uf_remappedVS[61].x)) + -(intBitsToFloat(uf_remappedVS[61].y)))); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[60].y),intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedVS[60].x))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(uf_remappedVS[62].x)) + -(intBitsToFloat(uf_remappedVS[62].y)))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PV1i.x)); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(R125i.y) + intBitsToFloat(PS0i))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[63].y) + 1.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedVS[64].w))); -tempResultf = log2(intBitsToFloat(PV0i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 4 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * 1.5); -PV0i.x = clampFI32(PV0i.x); -R126i.y = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt((intBitsToFloat(uf_remappedVS[63].y) * 1.0 + intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[61].w), intBitsToFloat(PS1i))); -tempResultf = log2(intBitsToFloat(PV1i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[65].y), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[65].x), intBitsToFloat(PS0i))); -R124i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x41700000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 6 -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),intBitsToFloat(uf_remappedVS[66].w)) + intBitsToFloat(uf_remappedVS[66].w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.y)); -PS0i = floatBitsToInt(tempResultf); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R124i.w = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(R3i.w)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(uf_remappedVS[63].x),intBitsToFloat(uf_remappedVS[63].y),intBitsToFloat(uf_remappedVS[63].z),0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PS0i = R0i.y; -// 9 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.x = R127i.x; -R2i.y = 0; -R3i.z = ((0.0 >= intBitsToFloat(R7i.w))?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedVS[65].z)),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedVS[65].z))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -0.0); -PV1i.y = clampFI32(PV1i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.w))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.y = R123i.y; -R1i.z = PV1i.y; -PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(0x3e4ccccd))); -R1i.x = PV1i.y; -PS0i = R1i.x; -// 13 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.y))) + 1.0)); -R8i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].y) * intBitsToFloat(0x40a00000)); -PV1i.y = R8i.y; -R4i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 1.0)); -PV1i.w = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(0x40200000)); -R4i.y = 0; -PS1i = R4i.y; -// 14 -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3daaaaab)); -R3i.y = ((R3i.z == 0)?(R5i.z):(PS1i)); -R5i.z = ((R3i.z == 0)?(R4i.w):(PV1i.y)); -R4i.w = 0; -R13i.x = 0; -PS0i = R13i.x; -} -if( activeMaskStackC[3] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R0i.xy)).xyz); -R10i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R2i.xy)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R4i.z))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R4i.z))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].w), intBitsToFloat(R6i.z))); -PV0i.z = R125i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R4i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].w), intBitsToFloat(R6i.w))); -PS0i = R127i.y; -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[39].y), intBitsToFloat(PS0i))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[44].y),intBitsToFloat(PV0i.z)) + intBitsToFloat(R1i.y))); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[39].y),intBitsToFloat(PV0i.z)) + intBitsToFloat(R5i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[44].y), intBitsToFloat(PS0i))); -R0i.x = R12i.x; -PS1i = R0i.x; -// 2 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[67].w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R1i.w))); -R1i.y = R12i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[48].y), intBitsToFloat(R127i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedVS[67].w)) + intBitsToFloat(R3i.x))); -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[48].y),intBitsToFloat(R125i.z)) + intBitsToFloat(R8i.x))); -PS0i = R2i.x; -// 3 -backupReg0i = R4i.x; -R4i.x = ((R3i.z == 0)?(R6i.y):(R4i.w)); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[67].w),intBitsToFloat(PV0i.z)) + intBitsToFloat(backupReg0i))); -R4i.z = R13i.z; -R1i.w = ((R3i.z == 0)?(R9i.x):(R9i.x)); -R0i.z = ((R3i.z == 0)?(R13i.y):(R13i.y)); -PS1i = R0i.z; -// 4 -R3i.x = ((R3i.z == 0)?(0):(0x3f800000)); -PV0i.x = R3i.x; -R6i.y = ((R3i.z == 0)?(R21i.z):(R21i.z)); -R123i.z = ((R3i.z == 0)?(0):(R0i.w)); -PV0i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(0):(R2i.w)); -PV0i.w = R123i.w; -R122i.x = ((R3i.z == 0)?(0):(R125i.y)); -PS0i = R122i.x; -// 5 -R14i.x = ((PV0i.x == 0)?(R2i.w):(PV0i.w)); -R14i.y = ((PV0i.x == 0)?(R0i.w):(PV0i.z)); -R123i.z = ((R3i.z == 0)?(0):(R1i.z)); -PV1i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(0):(R127i.x)); -PV1i.w = R123i.w; -R16i.x = ((PV0i.x == 0)?(R125i.y):(PS0i)); -PS1i = R16i.x; -// 6 -R123i.x = ((R3i.z == 0)?(0):(R8i.w)); -PV0i.x = R123i.x; -R16i.y = ((R3i.x == 0)?(R127i.x):(PV1i.w)); -R14i.z = ((R3i.x == 0)?(R1i.z):(PV1i.z)); -R123i.w = ((R3i.z == 0)?(0):(R1i.x)); -PV0i.w = R123i.w; -R122i.x = ((R3i.z == 0)?(0):(R124i.w)); -PS0i = R122i.x; -// 7 -R127i.x = ((R3i.z == 0)?(0):(R10i.y)); -R125i.y = ((R3i.z == 0)?(0):(R10i.z)); -R16i.z = ((R3i.x == 0)?(R124i.w):(PS0i)); -R14i.w = ((R3i.x == 0)?(R8i.w):(PV0i.x)); -R16i.w = ((R3i.x == 0)?(R1i.x):(PV0i.w)); -PS1i = R16i.w; -// 8 -backupReg0i = R1i.y; -R123i.x = ((R3i.z == 0)?(0):(R10i.w)); -PV0i.x = R123i.x; -R1i.y = ((R3i.z == 0)?(0):(R0i.x)); -R1i.z = ((R3i.z == 0)?(0):(backupReg0i)); -R123i.w = ((R3i.z == 0)?(0):(R10i.x)); -PV0i.w = R123i.w; -R1i.x = ((R3i.z == 0)?(0):(R0i.w)); -PS0i = R1i.x; -// 9 -R17i.x = ((R3i.x == 0)?(R10i.x):(PV0i.w)); -R17i.y = ((R3i.x == 0)?(R10i.y):(R127i.x)); -R17i.z = ((R3i.x == 0)?(R10i.z):(R125i.y)); -R17i.w = ((R3i.x == 0)?(R10i.w):(PV0i.x)); -R124i.w = ((R3i.z == 0)?(0):(R127i.w)); -PS1i = R124i.w; -// 10 -R127i.x = ((R3i.z == 0)?(0):(R11i.w)); -R10i.y = ((R3i.z == 0)?(0):(R4i.z)); -R123i.z = ((R3i.z == 0)?(0):(R0i.y)); -PV0i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(0):(R2i.x)); -PV0i.w = R123i.w; -R125i.z = ((R3i.z == 0)?(0):(R126i.y)); -PS0i = R125i.z; -// 11 -R15i.x = ((R3i.x == 0)?(R2i.x):(PV0i.w)); -R15i.y = ((R3i.x == 0)?(R0i.y):(PV0i.z)); -R4i.z = ((R3i.z == 0)?(0):(R2i.z)); -PV1i.z = R4i.z; -R125i.w = ((R3i.z == 0)?(0):(R126i.x)); -R126i.w = ((R3i.z == 0)?(0):(R11i.y)); -PS1i = R126i.w; -// 12 -R123i.x = ((R3i.z == 0)?(0):(R124i.z)); -PV0i.x = R123i.x; -R125i.y = ((R3i.z == 0)?(0):(R11i.x)); -R10i.w = ((R3i.z == 0)?(R21i.y):(R13i.y)); -R10i.z = ((R3i.z == 0)?(R21i.z):(R21i.z)); -PS0i = R10i.z; -// 13 -R18i.x = ((R3i.x == 0)?(R124i.z):(PV0i.x)); -R18i.y = ((R3i.x == 0)?(R127i.w):(R124i.w)); -R18i.z = ((R3i.x == 0)?(R126i.y):(R125i.z)); -R18i.w = ((R3i.x == 0)?(R126i.x):(R125i.w)); -// 14 -R20i.x = ((R3i.x == 0)?(R11i.x):(R125i.y)); -R20i.y = ((R3i.x == 0)?(R11i.y):(R126i.w)); -R123i.z = ((R3i.z == 0)?(0):(R11i.z)); -PV0i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(0):(R7i.y)); -PV0i.w = R123i.w; -R126i.w = ((R3i.z == 0)?(0):(R5i.w)); -PS0i = R126i.w; -// 15 -R23i.x = ((R3i.x == 0)?(R7i.y):(PV0i.w)); -R123i.y = ((R3i.z == 0)?(0):(R7i.z)); -PV1i.y = R123i.y; -R20i.z = ((R3i.x == 0)?(R11i.z):(PV0i.z)); -R20i.w = ((R3i.x == 0)?(R11i.w):(R127i.x)); -R122i.x = ((R3i.z == 0)?(0):(R5i.x)); -PS1i = R122i.x; -// 16 -R123i.x = ((R3i.z == 0)?(0):(R9i.y)); -PV0i.x = R123i.x; -R23i.y = ((R3i.x == 0)?(R7i.z):(PV1i.y)); -R23i.z = ((R3i.x == 0)?(R5i.w):(R126i.w)); -R23i.w = ((R3i.x == 0)?(R5i.x):(PS1i)); -R122i.x = ((R3i.z == 0)?(0):(R9i.z)); -PS0i = R122i.x; -// 17 -R0i.x = ((R3i.x == 0)?(R9i.y):(PV0i.x)); -R0i.y = ((R3i.x == 0)?(R9i.z):(PS0i)); -R9i.z = ((R3i.z == 0)?(R21i.x):(R13i.x)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(R7i.w)) + 0.0)); -PV0i.x = R2i.x; -// 1 -R123i.x = ((R3i.z == 0)?(0):(R9i.w)); -PV1i.x = R123i.x; -R125i.y = R12i.y; -R125i.z = ((R3i.z == 0)?(0):(R2i.z)); -R123i.w = ((R3i.z == 0)?(PV0i.x):(R13i.x)); -PV1i.w = R123i.w; -R126i.y = ((R3i.z == 0)?(0):(R6i.x)); -PS1i = R126i.y; -// 2 -R21i.x = ((R3i.x == 0)?(PV1i.w):(R9i.z)); -R21i.y = ((R3i.x == 0)?(R0i.z):(R10i.w)); -R21i.z = ((R3i.x == 0)?(R6i.y):(R10i.z)); -PV0i.w = R12i.x; -R0i.z = ((R3i.x == 0)?(R9i.w):(PV1i.x)); -PS0i = R0i.z; -// 3 -R13i.x = ((R3i.x == 0)?(PV0i.w):(R1i.y)); -R13i.y = ((R3i.x == 0)?(R125i.y):(R1i.z)); -R0i.w = ((R3i.x == 0)?(R2i.z):(R125i.z)); -R12i.x = ((R3i.x == 0)?(R6i.x):(R126i.y)); -PS1i = R12i.x; -// 4 -R123i.x = ((R3i.z == 0)?(0):(R12i.w)); -PV0i.x = R123i.x; -R123i.y = ((R3i.z == 0)?(R19i.x):(R4i.y)); -PV0i.y = R123i.y; -R123i.z = ((R3i.z == 0)?(0):(R7i.x)); -PV0i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(0):(R12i.z)); -PV0i.w = R123i.w; -// 5 -backupReg0i = R12i.z; -R19i.x = ((R3i.x == 0)?(R3i.y):(PV0i.y)); -R12i.y = ((R3i.x == 0)?(R12i.w):(PV0i.x)); -R12i.z = ((R3i.x == 0)?(backupReg0i):(PV0i.w)); -R12i.w = ((R3i.x == 0)?(R7i.x):(PV0i.z)); -R122i.x = ((R3i.z == 0)?(R19i.y):(R4i.w)); -PS1i = R122i.x; -// 6 -PV0i.x = R13i.z; -R19i.y = ((R3i.x == 0)?(R4i.x):(PS1i)); -R123i.z = ((R3i.z == 0)?(R19i.w):(R9i.x)); -PV0i.z = R123i.z; -R123i.w = ((R3i.z == 0)?(R19i.z):(R8i.y)); -PV0i.w = R123i.w; -// 7 -R13i.z = ((R3i.x == 0)?(PV0i.x):(R10i.y)); -R19i.w = ((R3i.x == 0)?(R1i.w):(PV0i.z)); -R19i.z = ((R3i.x == 0)?(R5i.z):(PV0i.w)); -PS1i = R19i.z; -// 8 -R15i.z = ((R3i.x == 0)?(R2i.z):(R4i.z)); -R13i.w = ((R3i.x == 0)?(R1i.x):(R1i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R12i.x), intBitsToFloat(R12i.y), intBitsToFloat(R12i.z), intBitsToFloat(R12i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem7 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R13i.x), intBitsToFloat(R13i.y), intBitsToFloat(R13i.z), intBitsToFloat(R13i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y), intBitsToFloat(R16i.z), intBitsToFloat(R16i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R15i.x), intBitsToFloat(R15i.y), intBitsToFloat(R15i.z), intBitsToFloat(R15i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/2938a1b3abfdfe49_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/2938a1b3abfdfe49_0000000000000000_vs.txt deleted file mode 100644 index 3e784c2b..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/2938a1b3abfdfe49_0000000000000000_vs.txt +++ /dev/null @@ -1,2575 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2938a1b3abfdfe49 -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 11, std140) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -layout(location = 11) in uvec4 attrDataSem11; -layout(location = 12) in uvec4 attrDataSem12; -layout(location = 13) in uvec4 attrDataSem13; -layout(location = 14) in uvec4 attrDataSem14; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem5; -layout(location = 5) out vec4 passParameterSem8; -layout(location = 7) out vec4 passParameterSem11; -layout(location = 8) out vec4 passParameterSem14; -layout(location = 9) out vec4 passParameterSem15; -layout(location = 10) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 6) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem8.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem13; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R12i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem11; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R11i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R17i.z = floatBitsToInt(-(intBitsToFloat(R12i.y)) + 1.0); -R5i.w = 0; -R8i.w = floatBitsToInt(1.0); -PS0i = R8i.w; -// 1 -R12i.w = floatBitsToInt(-(intBitsToFloat(R7i.w)) + uf_blockVS8[2].x); -R16i.w = floatBitsToInt(-(intBitsToFloat(R12i.x)) + 1.0); -PS1i = R16i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R12i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R20i.x = 0; -PS0i = R20i.x; -// 1 -R7i.w = R8i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R7i.w = R5i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R7i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R6i.w)); -// 1 -R7i.x = floatBitsToInt(float(PS0i)); -PS1i = R7i.x; -// 2 -predResult = (intBitsToFloat(R12i.w) >= intBitsToFloat(R7i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R20i.x = 0; -PS0i = R20i.x; -// 1 -R5i.w = R8i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R5i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS7[10].y)); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R10i.x), 0.0)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS0i)); -R127i.y = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -PV1i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 0.0)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -R6i.y = floatBitsToInt(1.0 / intBitsToFloat(R7i.x)); -PS1i = R6i.y; -// 2 -R7i.x = floatBitsToInt(intBitsToFloat(R11i.x) + intBitsToFloat(PV1i.z)); -R7i.y = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS1i)); -PV0i.y = R7i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -R126i.y = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -PS0i = R126i.y; -// 3 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.z))); -R125i.y = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.z))); -R126i.z = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -R125i.w = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R127i.y; -R125i.x = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.y)); -PV1i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(-(uf_blockVS7[97].z) + uf_blockVS7[98].z); -PS1i = R126i.y; -// 6 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[97].w)); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[96].w)); -PV0i.w = R126i.w; -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.y))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -R127i.y = floatBitsToInt(intBitsToFloat(R125i.x) + -(uf_blockVS7[98].w)); -PS1i = R127i.y; -// 8 -R0i.x = ((intBitsToFloat(R126i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R124i.y = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(PV1i.x)); -R127i.z = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV1i.y)); -R124i.w = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R125i.w = floatBitsToInt(-(uf_blockVS7[98].x) + uf_blockVS7[99].x); -R126i.w = floatBitsToInt(-(uf_blockVS7[98].y) + uf_blockVS7[99].y); -PS1i = R126i.w; -// 10 -R126i.x = floatBitsToInt(-(uf_blockVS7[98].z) + uf_blockVS7[99].z); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(-(uf_blockVS7[98].w) + uf_blockVS7[99].w); -// 11 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(PV0i.w)); -R125i.y = ((intBitsToFloat(backupReg0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R126i.z = floatBitsToInt(uf_blockVS7[97].z + intBitsToFloat(PV0i.y)); -R127i.w = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 12 -backupReg0i = R126i.x; -R126i.x = ((intBitsToFloat(R127i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(intBitsToFloat(R125i.x) + -(uf_blockVS7[99].w)); -// 13 -backupReg0i = R127i.y; -backupReg0i = R127i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.w))); -R127i.y = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -// 14 -R125i.x = floatBitsToInt(uf_blockVS7[98].y + intBitsToFloat(PV1i.w)); -R126i.y = floatBitsToInt(uf_blockVS7[98].x + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.w = floatBitsToInt(uf_blockVS7[98].z + intBitsToFloat(PV1i.z)); -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -PS0i = R124i.x; -// 15 -R6i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].x, intBitsToFloat(R127i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.z))); -R0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].y, intBitsToFloat(R127i.y))); -R5i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].z, intBitsToFloat(R127i.y))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PS1i = R125i.w; -// 16 -backupReg0i = R124i.x; -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(backupReg0i))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.y))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.y))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(backupReg0i))); -PS0i = R0i.y; -// 17 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(-(intBitsToFloat(R125i.y)) + 1.0); -R125i.y = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R10i.y)); -R125i.z = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(R10i.z)); -R126i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -R6i.w = 0x3f800000; -PS1i = R6i.w; -// 18 -R13i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(PS1i)))); -PV0i.x = R13i.x; -PV0i.y = R13i.x; -PV0i.z = R13i.x; -PV0i.w = R13i.x; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.x))); -PS0i = R127i.w; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R6i.w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R12i.z = tempi.x; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS0i))); -PS1i = R126i.z; -// 20 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R6i.w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.y = tempi.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R127i.w))); -PS0i = R126i.y; -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(R126i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(R126i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(R126i.w))); -R125i.x = floatBitsToInt(intBitsToFloat(R125i.y) * 0.5); -PS1i = R125i.x; -// 22 -R127i.x = floatBitsToInt(intBitsToFloat(R125i.z) * 0.5); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R10i.z)); -// 23 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * 0.5); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.z)); -R3i.z = floatBitsToInt(intBitsToFloat(R125i.x) + -(0.5)); -R3i.z = floatBitsToInt(intBitsToFloat(R3i.z) * 2.0); -PS1i = R3i.z; -// 24 -R3i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); -R0i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV1i.x)); -R2i.z = floatBitsToInt(intBitsToFloat(R127i.x) + -(0.5)); -R2i.z = floatBitsToInt(intBitsToFloat(R2i.z) * 2.0); -R0i.w = floatBitsToInt(intBitsToFloat(R124i.z) + intBitsToFloat(PV1i.z)); -R3i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(0.5)); -R3i.w = floatBitsToInt(intBitsToFloat(R3i.w) * 2.0); -PS0i = R3i.w; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(R5i.w) + intBitsToFloat(R0i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(R3i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(backupReg0i)); -R127i.w = floatBitsToInt(intBitsToFloat(R10i.x) + -(0.5)); -R124i.z = floatBitsToInt(intBitsToFloat(R10i.y) + -(0.5)); -PS0i = R124i.z; -// 1 -R11i.x = floatBitsToInt(intBitsToFloat(R10i.z) + -(0.5)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV0i.z))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), uf_blockVS7[115].x)); -PS1i = R125i.w; -// 2 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[3].y)); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS8[3].w)); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockVS8[3].z)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[3].y)); -PS0i = R10i.y; -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 3 -R6i.x = floatBitsToInt(intBitsToFloat(R125i.w) + uf_blockVS7[114].x); -PV1i.y = floatBitsToInt(floor(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), uf_blockVS7[115].y)); -PV1i.w = R10i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); -R127i.y = R10i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -PS1i = R127i.y; -// 4 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) > 0.0)?1.0:0.0); -R0i.y = floatBitsToInt(uf_blockVS7[114].y + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PV1i.y))?1.0:0.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockVS7[115].z)); -PS0i = floatBitsToInt(floor(intBitsToFloat(PV1i.w))); -// 5 -R3i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -R3i.y = floatBitsToInt(uf_blockVS7[114].z + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(floor(intBitsToFloat(R127i.y))); -// 6 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), uf_blockVS7[113].x)); -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), uf_blockVS7[113].y)); -PS0i = R2i.x; -// 7 -R11i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00020000; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00010000; -R127i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00040000; -// 1 -PS1i = floatBitsToInt(float(PV0i.z)); -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), uf_blockVS7[113].z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R127i.y)); -// 3 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(float(R127i.w)); -// 4 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.y; -// 5 -PV1i.x = 0 - PS0i; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.x))); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 6 -PV0i.x = max(R127i.y, PV1i.x); -PV0i.y = 0 - PS1i; -R125i.w = ((uf_blockVS7[114].w == 1.0)?int(0xFFFFFFFF):int(0x0)); -R127i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.x; -// 7 -PV1i.x = 0 - PS0i; -PV1i.z = max(R127i.w, PV0i.y); -PS1i = floatBitsToInt(float(PV0i.x)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 8 -PV0i.y = max(R127i.x, PV1i.x); -R124i.z = floatBitsToInt(-(uf_blockVS7[114].w) + 1.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R3i.x))); -PS0i = floatBitsToInt(float(PV1i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(R2i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(float(PV0i.y)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 10 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R11i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -R126i.z = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV1i.x))); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(PS0i)); -R127i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.y)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R3i.w)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV0i.x))); -// 12 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R2i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PV1i.z)); -tempResultf = log2(uf_blockVS7[114].w); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[13].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(PS0i))); -R124i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R126i.y)); -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -PS1i = R126i.y; -// 14 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 15 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -// 16 -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R126i.y)); -// 17 -R123i.x = ((R125i.w == 0)?(PV0i.w):(R12i.w)); -PV1i.x = R123i.x; -// 18 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.y)); -// 20 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.w = R123i.w; -// 21 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(uf_blockVS7[13].x); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -// 22 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.y = R123i.y; -R5i.z = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV1i.w)); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(uf_blockVS7[13].y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 23 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983)); -PV1i.x = R127i.x; -R3i.y = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3e22f983)); -// 24 -R127i.w = floatBitsToInt(sin((intBitsToFloat(PV1i.x))/0.1591549367)); -PS0i = R127i.w; -// 25 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(cos((intBitsToFloat(backupReg0i))/0.1591549367)); -PS1i = R127i.x; -// 26 -R124i.z = floatBitsToInt(sin((intBitsToFloat(R126i.z))/0.1591549367)); -PS0i = R124i.z; -// 27 -backupReg0i = R126i.z; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(cos((intBitsToFloat(backupReg0i))/0.1591549367)); -PS1i = R127i.y; -// 28 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R125i.x; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -PV0i.w = R124i.w; -R3i.w = floatBitsToInt(sin((intBitsToFloat(R126i.w))/0.1591549367)); -PS0i = R3i.w; -// 29 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.x))); -R11i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.y))); -R124i.x = floatBitsToInt(cos((intBitsToFloat(R126i.w))/0.1591549367)); -PS1i = R124i.x; -// 30 -R5i.x = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.y)); -R5i.y = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R5i.w = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.w)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PS0i = R2i.w; -// 31 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R124i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R126i.z))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R124i.x))); -// 32 -R2i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.y)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(intBitsToFloat(R13i.x) + -(uf_blockVS6[17].x)); -PV0i.x = R125i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R12i.z) + -(uf_blockVS6[17].y)); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R1i.y) + -(uf_blockVS6[17].z)); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R13i.x)) + uf_blockVS6[17].x); -R125i.y = floatBitsToInt(-(intBitsToFloat(R12i.z)) + uf_blockVS6[17].y); -PS0i = R125i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(R1i.y)) + uf_blockVS6[17].z); -PS1i = R124i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.z)), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.y)), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.x)), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.w))); -PV0i.x = R14i.x; -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.y))); -PV0i.z = R14i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.z))); -PV0i.w = R6i.w; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R126i.y; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.z)); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.w),intBitsToFloat(R125i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R127i.w),intBitsToFloat(R125i.y),intBitsToFloat(R124i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(R126i.y)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R126i.y = floatBitsToInt(tempResultf); -PS0i = R126i.y; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PS1i = R127i.w; -// 10 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R3i.y))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.y))); -PV0i.z = R126i.z; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.z))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), -(uf_blockVS6[1].z))); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), -(uf_blockVS6[1].x))); -R126i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].y,intBitsToFloat(PV0i.z)) + intBitsToFloat(PS0i))); -R9i.z = R124i.w; -PV1i.z = R9i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), -(uf_blockVS6[1].y))); -R6i.z = R127i.w; -PS1i = R6i.z; -// 12 -R1i.x = R126i.z; -PV0i.x = R1i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].z,intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R125i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].x,intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R124i.z; -R126i.w = PV1i.z; -R125i.z = PS1i; -PS0i = R125i.z; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = PV0i.x; -PS1i = R127i.y; -// 14 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R126i.w))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R126i.w))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R125i.z))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 15 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -PV1i.x = R9i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R125i.z))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PV1i.z = R5i.z; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PV1i.w = R0i.w; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R127i.y))); -PS1i = R125i.y; -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.z))); -R3i.z = PV1i.w; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.w))); -R3i.x = PV1i.z; -PS0i = R3i.x; -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.w)),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R127i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R3i.y))); -// 18 -R6i.x = PV1i.y; -PV0i.x = R6i.x; -R9i.y = PV1i.x; -PV0i.y = R9i.y; -R7i.z = PV1i.w; -PV0i.z = R7i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R2i.x)) + intBitsToFloat(PS1i))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R126i.w))); -PS0i = R126i.z; -// 19 -backupReg0i = R2i.z; -R124i.x = PV0i.y; -PV1i.x = R124i.x; -R127i.y = PV0i.x; -PV1i.y = R127i.y; -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.w))); -R126i.w = PV0i.z; -PV1i.w = R126i.w; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.z))); -PS1i = R5i.y; -// 20 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R125i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R125i.x))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(backupReg0i))); -PV0i.w = R123i.w; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R126i.y))); -PS0i = R125i.w; -// 21 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV0i.w))); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R0i.w)) + intBitsToFloat(PV0i.x))); -R13i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R9i.x)) + intBitsToFloat(PV0i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(R125i.y))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R3i.y))); -// 22 -backupReg0i = R3i.w; -R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R9i.x)) + intBitsToFloat(R127i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R11i.z)) + intBitsToFloat(PS1i))); -PV0i.y = R123i.y; -R11i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R0i.w)) + intBitsToFloat(R125i.w))); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.w))); -R7i.w = 0x3f800000; -PS0i = R7i.w; -// 23 -R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R0i.z)) + intBitsToFloat(PV0i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(R124i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(R5i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R124i.x)) + intBitsToFloat(R126i.z))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(R3i.y))); -// 24 -backupReg0i = R1i.z; -backupReg0i = R1i.z; -backupReg1i = R0i.w; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(PS1i))); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R9i.x)) + intBitsToFloat(PV1i.w))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.y))); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV1i.z))); -R5i.y = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(R6i.w)); -PS0i = R5i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R3i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R5i.x)) + intBitsToFloat(R2i.x))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R0i.w))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R1i.z))); -R1i.z = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R14i.z)); -PS0i = R1i.z; -// 1 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x))); -PS1i = R124i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.z),intBitsToFloat(R6i.x),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R127i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R3i.w)) + intBitsToFloat(R126i.w))); -PS0i = R127i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R7i.z),intBitsToFloat(R1i.x),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R127i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(PV0i.x)); -// 4 -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R127i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R11i.z)) + intBitsToFloat(R126i.z))); -PV0i.y = R123i.y; -R7i.z = floatBitsToInt(intBitsToFloat(R6i.w) + intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV1i.x)); -R3i.w = 0x3f800000; -PS0i = R3i.w; -// 5 -R15i.x = floatBitsToInt(intBitsToFloat(R14i.z) + intBitsToFloat(PV0i.w)); -R8i.y = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(R14i.x)); -R9i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.y))); -R11i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R13i.z)) + intBitsToFloat(R124i.z))); -R8i.z = floatBitsToInt(uf_blockVS7[60].x); -PS1i = R8i.z; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(R127i.z)); -R2i.y = floatBitsToInt(uf_blockVS7[60].y); -R6i.w = floatBitsToInt(uf_blockVS7[60].z); -// 7 -R5i.x = floatBitsToInt(intBitsToFloat(R14i.x) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS1i)); -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -PV0i.y = R127i.y; -R125i.w = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -// 9 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[9].z) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 10 -PV0i.x = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 12 -R127i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS1i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -// 13 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(uf_blockVS7[68].w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(uf_blockVS7[69].w)); -// 14 -backupReg0i = R127i.y; -R127i.x = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R127i.x; -R127i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R127i.y; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(backupReg0i)) + uf_blockVS7[68].x)); -// 15 -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV1i.z))); -// 17 -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -// 18 -R14i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[69].x,intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.z),intBitsToFloat(R15i.x),intBitsToFloat(R7i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.y = tempi.x; -// 1 -R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.z),intBitsToFloat(R15i.x),intBitsToFloat(R7i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = R0i.x; -PV1i.y = R0i.x; -PV1i.z = R0i.x; -PV1i.w = R0i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.z),intBitsToFloat(R15i.x),intBitsToFloat(R7i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.w = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R7i.z),intBitsToFloat(R15i.x),intBitsToFloat(R7i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R15i.z = tempi.x; -// 4 -backupReg0i = R6i.w; -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), uf_blockVS8[0].x)); -PV0i.y = PV1i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R16i.z = floatBitsToInt((intBitsToFloat(R8i.w) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R16i.z; -R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockVS8[0].y)); -R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].z)); -PS0i = R7i.w; -// 5 -R123i.x = floatBitsToInt((intBitsToFloat(R8i.w) * 0.0 + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.x), uf_blockVS8[0].w)); -R15i.w = floatBitsToInt((intBitsToFloat(R8i.w) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.w = R15i.w; -R9i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R9i.w; -// 6 -R17i.x = floatBitsToInt((intBitsToFloat(R9i.y) * 0.5 + intBitsToFloat(PV1i.x))); -R11i.y = floatBitsToInt((intBitsToFloat(R0i.x) * -(0.5) + intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -// 7 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV1i.y = R123i.y; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 9 -R12i.z = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 11 -PV1i.x = PV0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) / 2.0); -R123i.y = floatBitsToInt((intBitsToFloat(R127i.y) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -// 12 -R123i.z = floatBitsToInt((intBitsToFloat(R127i.y) * 0.5 + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PS0i)); -// 14 -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV1i.x))); -// 15 -PV1i.y = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV0i.z)); -// 16 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 17 -R3i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -// 18 -PV0i.x = ((intBitsToFloat(R10i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = ((intBitsToFloat(R10i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.z = ((intBitsToFloat(R10i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = ((intBitsToFloat(R10i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 19 -R14i.x = ((PV0i.w == 0)?(R12i.x):(R16i.w)); -R8i.y = ((PV0i.z == 0)?(R12i.x):(R16i.w)); -R1i.z = ((PV0i.x == 0)?(R12i.y):(R17i.z)); -R3i.w = ((PV0i.y == 0)?(R12i.y):(R17i.z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R13i.x; -R13i.x = floatBitsToInt(uf_blockVS7[76].x); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), uf_blockVS7[59].x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[59].x)); -R14i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), uf_blockVS7[59].x)); -R8i.z = floatBitsToInt(uf_blockVS7[76].y); -PS0i = R8i.z; -// 1 -PV1i.x = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -R2i.y = floatBitsToInt(uf_blockVS7[76].z); -PV1i.z = ((intBitsToFloat(R10i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 2 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -R125i.y = ((PV1i.z == 0)?(R12i.x):(R16i.w)); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[10].x) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PV1i.z = (PV0i.x == 0x00080000)?int(0xFFFFFFFF):int(0x0); -PV1i.w = (PS0i == 0x00100000)?int(0xFFFFFFFF):int(0x0); -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -// 4 -R1i.x = ((PV1i.w == 0)?(R12i.y):(R3i.w)); -PV0i.y = (PS1i == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -R0i.w = ((PV1i.z == 0)?(R12i.x):(R8i.y)); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -// 5 -PV1i.x = (PS0i == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -R14i.z = ((PV0i.y == 0)?(R12i.x):(R14i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -// 6 -R14i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.w))); -R1i.y = ((PV1i.x == 0)?(R12i.y):(R1i.z)); -PV0i.z = (PV1i.y == 0x00800000)?int(0xFFFFFFFF):int(0x0); -R126i.w = (PS1i == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PS0i = ((intBitsToFloat(R10i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 7 -backupReg0i = R125i.y; -R123i.x = ((PS0i == 0)?(R12i.y):(R17i.z)); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -PV1i.z = floatBitsToInt(uf_blockVS7[5].y) & int(1); -R1i.w = ((PV0i.z == 0)?(R12i.x):(backupReg0i)); -R6i.w = int(uf_blockVS7[17].x); -PS1i = R6i.w; -// 8 -R11i.x = ((R126i.w == 0)?(R12i.y):(PV1i.x)); -R8i.y = (int(1) != PV1i.z)?int(0xFFFFFFFF):int(0x0); -R12i.x = int(uf_blockVS7[17].y); -PS0i = R12i.x; -// 9 -R12i.y = floatBitsToInt(float(R125i.y)); -PS1i = R12i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R14i.x) + -(uf_blockVS7[85].w)); -R127i.z = floatBitsToInt(intBitsToFloat(R14i.x) + -(uf_blockVS7[84].w)); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -// 1 -R127i.x = floatBitsToInt((intBitsToFloat(R12i.y) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -R124i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R124i.z; -R126i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 2 -backupReg0i = R8i.z; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), uf_blockVS8[1].x)); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[1].y)); -PS0i = R8i.z; -// 3 -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockVS8[1].z)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[84].x)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt((0.0 > intBitsToFloat(R12i.y))?1.0:0.0); -// 4 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.x) + -(intBitsToFloat(PS1i))); -// 5 -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[85].x,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 6 -PV0i.x = 0 - PS1i; -R16i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[1].w)); -// 7 -R14i.x = max(R125i.y, PV0i.x); -R9i.x = floatBitsToInt(uf_blockVS8[3].x); -PS1i = R9i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -R18i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(R3i.w))); -R13i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(R13i.x))); -R17i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(R8i.z))); -PV0i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -R124i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -PS0i = R124i.z; -// 1 -R124i.x = int(-1) + R6i.w; -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -PS1i = floatBitsToInt(float(PV0i.w)); -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R124i.z)); -// 3 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.z)); -// 4 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.w = 0 - PS0i; -R127i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R127i.y; -// 6 -R8i.x = max(R125i.y, PV1i.w); -PV0i.w = 0 - PS1i; -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 7 -R13i.x = max(R127i.y, PV0i.w); -PV1i.w = 0 - PS0i; -R127i.z = floatBitsToInt(float(R6i.w)); -PS1i = R127i.z; -// 8 -R126i.x = max(R125i.y, PV1i.w); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(PS1i))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(float(R12i.x)); -// 9 -PV1i.w = floatBitsToInt(intBitsToFloat(R6i.y) * intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 10 -R126i.w = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS1i)); -PS0i = int(intBitsToFloat(PV1i.w)); -// 11 -R126i.z = R14i.x * PS0i; -PS1i = R126i.z; -// 12 -R14i.x = int(intBitsToFloat(R126i.w)); -PS0i = R14i.x; -// 13 -PS1i = floatBitsToInt(float(PS0i)); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PS1i)); -R127i.y = floatBitsToInt(float(R6i.w)); -PS0i = R127i.y; -// 15 -R7i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R123i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -R127i.w = floatBitsToInt(float(R14i.x)); -PS1i = R127i.w; -// 16 -R125i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R127i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.x; -// 17 -R125i.y = int(1) - PS0i; -R12i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R127i.y))); -PS1i = R12i.x; -// 18 -backupReg0i = R127i.x; -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R127i.w)), intBitsToFloat(PS1i))); -R127i.x = backupReg0i * R124i.x; -PS0i = R127i.x; -// 19 -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(float(R126i.y)); -// 20 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R7i.x)) + intBitsToFloat(R125i.x))); -PV0i.z = R124i.z; -R125i.w = int(intBitsToFloat(backupReg0i)); -PS0i = R125i.w; -// 21 -PV1i.x = floatBitsToInt(-(abs(intBitsToFloat(R127i.y))) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R127i.y)))?1.0:0.0); -R126i.y = R126i.x * PS0i; -PS1i = R126i.y; -// 22 -R126i.x = ((intBitsToFloat(PV1i.w) == 0.0)?(R124i.z):(PV1i.x)); -PV0i.x = R126i.x; -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 23 -PV1i.x = 0 - PS0i; -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.x)); -// 24 -R123i.y = ((-(intBitsToFloat(R126i.x)) > 0.0)?(PV1i.z):(R126i.x)); -PV0i.y = R123i.y; -PV0i.z = max(R126i.w, PV1i.x); -// 25 -R123i.w = ((-(intBitsToFloat(R127i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -PS1i = PV0i.z * R125i.w; -// 26 -R126i.x = ((intBitsToFloat(R127i.y) == 0.0)?(R127i.w):(PV1i.w)); -PV0i.z = R14i.x + PS1i; -// 27 -R127i.w = R13i.x * PV0i.z; -PS1i = R127i.w; -// 28 -PS0i = int(intBitsToFloat(R126i.x)); -// 29 -PS1i = R125i.y * PS0i; -// 30 -PV0i.z = PS1i + R127i.x; -// 31 -PS1i = R8i.x * PV0i.z; -// 32 -PV0i.y = PS1i + R126i.z; -// 33 -PV1i.w = R127i.w + PV0i.y; -// 34 -PV0i.x = R126i.y + PV1i.w; -// 35 -R124i.z = floatBitsToInt(float(PV0i.x)); -PS1i = R124i.z; -// 36 -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), abs(intBitsToFloat(PS1i)))); -// 37 -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -// 38 -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R7i.x)) + intBitsToFloat(R127i.x))); -PV0i.z = R126i.z; -// 39 -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R127i.y))) + intBitsToFloat(PV0i.z)); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R127i.y)))?1.0:0.0); -// 40 -R127i.x = ((intBitsToFloat(PV1i.w) == 0.0)?(R126i.z):(PV1i.y)); -PV0i.x = R127i.x; -// 41 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.x)); -// 42 -R123i.y = ((-(intBitsToFloat(R127i.x)) > 0.0)?(PV1i.z):(R127i.x)); -PV0i.y = R123i.y; -// 43 -R123i.w = ((-(intBitsToFloat(R124i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -// 44 -R123i.x = ((intBitsToFloat(R127i.y) == 0.0)?(R124i.z):(PV1i.w)); -PV0i.x = R123i.x; -// 45 -R124i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.z; -// 46 -R2i.y = floatBitsToInt(float(PS1i)); -PS0i = R2i.y; -// 47 -R7i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R6i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R3i.w = floatBitsToInt(float(R124i.z)); -PS1i = R3i.w; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R3i.w)) * 0.25); -R127i.y = floatBitsToInt(abs(intBitsToFloat(R3i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(R6i.w) + -(intBitsToFloat(R7i.x))); -// 1 -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * 0.5 + intBitsToFloat(R2i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * 0.25); -R13i.z = ((R8i.y == 0)?(R10i.x):(R10i.y)); -R127i.w = floatBitsToInt((-(intBitsToFloat(PV1i.z)) * 4.0 + intBitsToFloat(R127i.y))); -PV0i.w = R127i.w; -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0xc0800000)); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt((intBitsToFloat(PV0i.w) >= 4.0)?1.0:0.0); -R12i.y = int(uf_blockVS7[26].x); -PS1i = R12i.y; -// 4 -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R127i.y = ((intBitsToFloat(PV1i.z) == 0.0)?(R127i.w):(PV1i.x)); -PV0i.y = R127i.y; -PS0i = int(intBitsToFloat(PV1i.y)); -// 5 -R2i.y = PS0i + 0x00000012; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 4.0); -R6i.w = int(uf_blockVS7[26].y); -PS1i = R6i.w; -// 6 -R123i.x = ((-(intBitsToFloat(R127i.y)) > 0.0)?(PV1i.w):(R127i.y)); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(float(R127i.x)); -// 7 -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R123i.z = ((-(intBitsToFloat(R3i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -// 8 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.w))); -PS0i = int(intBitsToFloat(PV1i.z)); -// 9 -R127i.x = 0xfffffffe + PS0i; -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -R124i.z = 0xfffffffd + PS0i; -PV1i.w = int(-1) + PS0i; -PS1i = floatBitsToInt(float(PS0i)); -// 10 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.w)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.x)); -// 12 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -R127i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R127i.w; -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.y = 0 - PS0i; -R127i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R127i.x; -// 14 -PV0i.x = 0 - PS1i; -PV0i.z = max(R127i.w, PV1i.y); -R126i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R126i.z; -// 15 -R8i.x = int(1) - PV0i.z; -PV1i.y = max(R127i.x, PV0i.x); -PV1i.z = 0 - PS0i; -PS1i = floatBitsToInt(float(R124i.z)); -// 16 -R12i.x = int(1) - PV1i.y; -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = max(R126i.z, PV1i.z); -R126i.z = int(intBitsToFloat(R126i.x)); -PS0i = R126i.z; -// 17 -R7i.x = int(1) - PV0i.w; -PV1i.y = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(float(R127i.y)); -// 18 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R3i.w = max(R126i.z, PV1i.y); -R127i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.y; -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = 0 - PS0i; -// 20 -PV0i.x = max(R127i.y, PV1i.w); -R1i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R1i.z; -// 21 -R8i.z = int(1) - PV0i.x; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockVS7[R2i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -PV0i.y = 0 - R1i.z; -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -R125i.w = int(-1) + R12i.y; -R127i.y = R8i.z * R2i.w; -PS0i = R127i.y; -// 1 -R7i.w = max(R1i.z, PV0i.y); -R127i.w = R7i.x * R2i.z; -PS1i = R127i.w; -// 2 -R126i.x = R12i.x * R2i.y; -PS0i = R126i.x; -// 3 -PS1i = R8i.x * R2i.x; -// 4 -PV0i.y = R126i.x + PS1i; -PS0i = floatBitsToInt(float(R127i.x)); -// 5 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = R127i.w + PV0i.y; -PS1i = floatBitsToInt(float(R126i.z)); -// 6 -R8i.x = R127i.y + PV1i.w; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R127i.x = floatBitsToInt(float(R12i.y)); -PS0i = R127i.x; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.w))); -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(PS0i))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PS0i))); -R126i.z = int(intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 8 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(R6i.y) * intBitsToFloat(PV1i.z)); -R124i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R124i.z; -// 9 -PV1i.y = 0 - PS0i; -R2i.w = max(R126i.z, PV0i.x); -PS1i = int(intBitsToFloat(PV0i.y)); -// 10 -R124i.w = max(R124i.z, PV1i.y); -R125i.x = R3i.w * PS1i; -PS0i = R125i.x; -// 11 -PS1i = floatBitsToInt(float(R6i.w)); -// 12 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 13 -PV1i.y = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(float(R12i.y)); -PS1i = R126i.z; -// 14 -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R6i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R6i.w; -// 15 -PS1i = floatBitsToInt(float(PS0i)); -// 16 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PS1i)); -R126i.y = floatBitsToInt(float(R6i.w)); -PS0i = R126i.y; -// 17 -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R127i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R3i.w = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.z))); -PS1i = R3i.w; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.y)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.y)); -// 19 -backupReg0i = R125i.w; -R126i.x = int(1) - PS0i; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R125i.w = PS0i * backupReg0i; -PS1i = R125i.w; -// 20 -R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.z)),intBitsToFloat(R124i.y)) + intBitsToFloat(R127i.w))); -PV0i.x = R127i.x; -PS0i = floatBitsToInt(float(R127i.y)); -// 21 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.x) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R125i.y = int(intBitsToFloat(R126i.w)); -PS1i = R125i.y; -// 22 -backupReg0i = R124i.w; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -R124i.w = ((intBitsToFloat(PV1i.y) == 0.0)?(R127i.x):(PV1i.z)); -PV0i.w = R124i.w; -R124i.z = backupReg0i * PS1i; -PS0i = R124i.z; -// 23 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w)); -R127i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R127i.y; -// 24 -R123i.z = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV1i.x):(R124i.w)); -PV0i.z = R123i.z; -PV0i.w = 0 - PS1i; -// 25 -PV1i.x = max(R127i.y, PV0i.w); -R123i.y = ((-(intBitsToFloat(R126i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -// 26 -R123i.w = ((intBitsToFloat(R126i.z) == 0.0)?(R126i.y):(PV1i.y)); -PV0i.w = R123i.w; -PS0i = PV1i.x * R125i.y; -// 27 -R127i.x = R6i.w + PS0i; -PS1i = int(intBitsToFloat(PV0i.w)); -// 28 -PS0i = R126i.x * PS1i; -// 29 -PV1i.x = PS0i + R125i.w; -R126i.y = R2i.w * R127i.x; -PS1i = R126i.y; -// 30 -PS0i = R7i.w * PV1i.x; -// 31 -PV1i.z = PS0i + R125i.x; -// 32 -PV0i.y = R126i.y + PV1i.z; -// 33 -PV1i.w = R124i.z + PV0i.y; -// 34 -R127i.x = floatBitsToInt(float(PV1i.w)); -PS0i = R127i.x; -// 35 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), abs(intBitsToFloat(PS0i)))); -R125i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -// 36 -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -// 37 -R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R124i.y)) + intBitsToFloat(R125i.w))); -PV1i.x = R125i.x; -// 38 -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.x) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV0i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV1i.x)); -// 39 -R125i.w = ((intBitsToFloat(PV0i.y) == 0.0)?(R125i.x):(PV0i.z)); -PV1i.w = R125i.w; -// 40 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.w)); -// 41 -R123i.z = ((-(intBitsToFloat(R125i.w)) > 0.0)?(PV0i.x):(R125i.w)); -PV1i.z = R123i.z; -// 42 -R123i.y = ((-(intBitsToFloat(R127i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -// 43 -R123i.w = ((intBitsToFloat(R126i.z) == 0.0)?(R127i.x):(PV0i.y)); -PV1i.w = R123i.w; -// 44 -R127i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.x; -// 45 -R13i.z = floatBitsToInt(float(PS0i)); -PS1i = R13i.z; -// 46 -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R12i.y = floatBitsToInt(float(R127i.x)); -PS0i = R12i.y; -// 47 -R2i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R3i.w = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(R3i.w))); -R123i.z = floatBitsToInt((intBitsToFloat(R2i.x) * 0.5 + intBitsToFloat(R13i.z))); -PV0i.z = R123i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * 0.25); -R124i.y = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * 4.0 + intBitsToFloat(R2i.z))); -PV1i.y = R124i.y; -// 2 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) >= 4.0)?1.0:0.0); -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xc0800000)); -// 3 -R126i.z = ((intBitsToFloat(PV0i.x) == 0.0)?(R124i.y):(PV0i.w)); -PV1i.z = R126i.z; -PS1i = int(intBitsToFloat(PV0i.y)); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 4.0); -R2i.z = PS1i + 0x0000001b; -PS0i = int(uf_blockVS7[48].z); -// 5 -R123i.w = ((-(intBitsToFloat(R126i.z)) > 0.0)?(PV0i.y):(R126i.z)); -PV1i.w = R123i.w; -R1i.z = floatBitsToInt(float(PS0i)); -PS1i = R1i.z; -// 6 -R123i.x = ((-(intBitsToFloat(R12i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.w)))):(PV1i.w)); -PV0i.x = R123i.x; -R12i.y = floatBitsToInt(float(R8i.x)); -PS0i = R12i.y; -// 7 -PS1i = int(intBitsToFloat(PV0i.x)); -// 8 -R127i.x = 0xfffffffd + PS1i; -PV0i.y = int(-1) + PS1i; -R126i.z = floatBitsToInt(abs(intBitsToFloat(R1i.z))); -R125i.w = 0xfffffffe + PS1i; -PS0i = floatBitsToInt(float(PS1i)); -// 9 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.y)); -// 10 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(float(R125i.w)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R124i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R124i.y; -// 12 -PV0i.x = 0 - PS1i; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -R125i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R125i.w; -// 13 -PV1i.x = max(R124i.y, PV0i.x); -PV1i.y = 0 - PS0i; -R125i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R125i.x; -// 14 -R7i.x = int(1) - PV1i.x; -PV0i.y = 0 - PS1i; -PV0i.z = max(R125i.w, PV1i.y); -PS0i = floatBitsToInt(float(R127i.x)); -// 15 -R12i.x = int(1) - PV0i.z; -PV1i.y = max(R125i.x, PV0i.y); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R7i.w = floatBitsToInt(float(R8i.x)); -PS1i = R7i.w; -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R3i.w = int(1) - PV1i.y; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R1i.z))); -// 17 -PV1i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R7i.w)), intBitsToFloat(PS0i))); -R124i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.z; -// 18 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -PV0i.y = 0 - PS1i; -// 19 -backupReg0i = R126i.z; -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R124i.y))); -PV1i.z = R126i.z; -PV1i.w = max(R124i.z, PV0i.y); -// 20 -R8i.x = int(1) - PV1i.w; -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R1i.z))) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R1i.z)))?1.0:0.0); -// 21 -R2i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(R126i.z):(PV0i.y)); -PV1i.x = R2i.x; -// 22 -R13i.z = floatBitsToInt(abs(intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.x)); -} -if( activeMaskStackC[3] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockVS7[R2i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((intBitsToFloat(R12i.y) > 0.0)?1.0:0.0); -R123i.y = ((-(intBitsToFloat(R2i.x)) > 0.0)?(R13i.z):(R2i.x)); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(R12i.y))?1.0:0.0); -R127i.z = R8i.x * R6i.w; -PS0i = R127i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS7[45].x)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), uf_blockVS7[45].y)); -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -R123i.w = ((-(intBitsToFloat(R7i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -R126i.y = R3i.w * R6i.z; -PS1i = R126i.y; -// 2 -R125i.x = ((intBitsToFloat(R1i.z) == 0.0)?(R7i.w):(PV1i.w)); -R124i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(R126i.z)); -R126i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * 0.5 + intBitsToFloat(R12i.y))); -PV0i.w = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R125i.w = R12i.x * R6i.y; -PS0i = R125i.w; -// 3 -PV1i.x = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV1i.y = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R124i.w = floatBitsToInt(-(intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.w)); -PS1i = R7i.x * R6i.x; -// 4 -backupReg0i = R124i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[46].z) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(backupReg0i)))); -PV0i.z = R125i.w + PS1i; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),uf_blockVS7[46].w) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R124i.z = int(intBitsToFloat(R125i.x)); -PS0i = R124i.z; -// 5 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[44].y) + intBitsToFloat(R124i.w))); -PV1i.y = R126i.y + PV0i.z; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[45].z) + intBitsToFloat(PV0i.x))); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[45].w) + intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R1i.z)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -R126i.w = R127i.z + PV1i.y; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 7 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R123i.y = ((R8i.y == 0)?(0):(int(1))); -PV1i.y = R123i.y; -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS0i))); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 8 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(PV1i.w)) + -(0.5))); -R126i.y = (PV1i.y == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -PV0i.w = (PV1i.y == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 9 -backupReg0i = R124i.z; -R123i.x = ((PV0i.w == 0)?(R10i.y):(R10i.x)); -PV1i.x = R123i.x; -R125i.y = ((PV0i.y == 0)?(R10i.x):(R10i.y)); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.z)) + -(0.5))); -R123i.w = ((PV0i.w == 0)?(R10i.x):(R10i.z)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(float(backupReg0i)); -// 10 -R123i.x = ((R126i.y == 0)?(PV1i.x):(R10i.z)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R124i.y))); -PV0i.y = R123i.y; -R123i.z = ((R126i.y == 0)?(PV1i.w):(R10i.y)); -PV0i.z = R123i.z; -R127i.w = ((R126i.y == 0)?(R10i.y):(R10i.z)); -PS0i = floatBitsToInt(float(R127i.z)); -// 11 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV0i.x))); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.x))); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); -PS1i = int(uf_blockVS7[53].z); -// 12 -PV0i.x = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -PV0i.y = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R124i.z)) + -(intBitsToFloat(PV1i.z)))); -R127i.y = floatBitsToInt(float(PS1i)); -PS0i = R127i.y; -// 13 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R124i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R124i.w = floatBitsToInt(float(R126i.w)); -PS1i = R124i.w; -// 14 -backupReg0i = R125i.y; -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R125i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R126i.x = floatBitsToInt(float(R126i.w)); -PS0i = R126i.x; -// 15 -R125i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R124i.z)))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R127i.y))); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.x)), intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R124i.w))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[49].y) + intBitsToFloat(R127i.x))); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[50].z) + intBitsToFloat(R125i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[50].w) + intBitsToFloat(R125i.x))); -R124i.z = ((R8i.y == 0)?(0):(0x00000002)); -PV1i.z = R124i.z; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 18 -backupReg0i = R126i.y; -R1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS1i))); -PV0i.x = R1i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R124i.y))); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R124i.w = (PV1i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 19 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R127i.y)))?1.0:0.0); -R124i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS0i))); -PV1i.y = R124i.y; -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.z),intBitsToFloat(PV0i.x)) + -(0.5))); -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(R127i.y))) + intBitsToFloat(PV0i.y)); -PS1i = int(intBitsToFloat(PV0i.z)); -// 20 -backupReg0i = R126i.y; -backupReg1i = R124i.z; -R7i.x = ((R124i.w == 0)?(R10i.x):(R10i.y)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV1i.y)) + -(0.5))); -R124i.z = ((intBitsToFloat(PV1i.x) == 0.0)?(backupReg0i):(PV1i.w)); -PV0i.z = R124i.z; -PV0i.w = (backupReg1i == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PS0i = floatBitsToInt(float(PS1i)); -// 21 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.z))); -PV1i.y = R123i.y; -R123i.z = ((PV0i.w == 0)?(R10i.x):(R10i.z)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.w == 0)?(R10i.y):(R10i.x)); -PV1i.w = R123i.w; -R6i.z = ((R124i.w == 0)?(R10i.y):(R10i.z)); -PS1i = R6i.z; -// 22 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R126i.y)) + -(intBitsToFloat(PV1i.y)))); -R1i.y = ((R124i.w == 0)?(PV1i.z):(R10i.y)); -R14i.z = ((R124i.w == 0)?(PV1i.w):(R10i.z)); -R123i.w = ((-(intBitsToFloat(R124i.z)) > 0.0)?(PV1i.x):(R124i.z)); -PV0i.w = R123i.w; -PS0i = int(uf_blockVS7[58].z); -// 23 -R123i.x = ((-(intBitsToFloat(R126i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.x = R123i.x; -R7i.w = floatBitsToInt(float(PS0i)); -PS1i = R7i.w; -// 24 -R10i.x = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -R10i.y = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -R10i.z = ((intBitsToFloat(R127i.y) == 0.0)?(R126i.x):(PV1i.x)); -R10i.w = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R10i.w; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.w) * 0.0); -R127i.y = ((intBitsToFloat(R10i.y) == 0.0)?(0):(R10i.x)); -PV0i.y = R127i.y; -PS0i = int(intBitsToFloat(R10i.z)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R1i.y))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(abs(intBitsToFloat(R7i.w)) + intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(float(PS0i)); -// 2 -R123i.x = ((-(intBitsToFloat(R127i.y)) > 0.0)?(PV1i.w):(R127i.y)); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R14i.z))); -R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PS1i)) + intBitsToFloat(R0i.w))); -PV0i.w = R123i.w; -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 3 -R13i.x = floatBitsToInt(intBitsToFloat(R6i.y) + 0.5); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.w)),uf_blockVS7[54].x) + -(intBitsToFloat(PV0i.z)))); -R123i.z = ((intBitsToFloat(R7i.w) == 0.0)?(0):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(R1i.z)) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 4 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -R8i.y = floatBitsToInt(intBitsToFloat(R3i.w) + 0.5); -R5i.z = floatBitsToInt(intBitsToFloat(R6i.x) + 0.5); -R13i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.5); -R127i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.y; -// 5 -R125i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(uf_blockVS7[93].x)); -R10i.y = floatBitsToInt(intBitsToFloat(R7i.y) + 0.0); -PV1i.y = R10i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(PV0i.x)) + -(0.5))); -R124i.w = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 6 -backupReg0i = R127i.y; -R14i.x = R7i.y; -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + -(uf_blockVS7[104].w)); -PS0i = floatBitsToInt(float(backupReg0i)); -// 7 -backupReg0i = R126i.y; -PV1i.x = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(PV0i.y)) + -(0.5))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + intBitsToFloat(backupReg0i))); -R126i.x = floatBitsToInt(float(R125i.y)); -PS1i = R126i.x; -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R124i.y)) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV0i.w = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.w)); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R6i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R3i.z = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(PS0i)); -R3i.z = clampFI32(R3i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[54].y) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[55].w) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[105].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),uf_blockVS7[55].z) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 11 -backupReg0i = R124i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + -(intBitsToFloat(PV0i.y)))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R124i.z = floatBitsToInt(-(uf_blockVS7[104].y) + uf_blockVS7[105].y); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(R127i.w))); -PV1i.w = R123i.w; -// 12 -R24i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.5); -R2i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.z = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R127i.w = floatBitsToInt(-(uf_blockVS7[104].z) + uf_blockVS7[105].z); -// 13 -R126i.x = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -R126i.z = floatBitsToInt(-(uf_blockVS7[105].y) + uf_blockVS7[106].y); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 14 -R125i.x = floatBitsToInt(-(uf_blockVS7[105].z) + uf_blockVS7[106].z); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -// 15 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[104].x)); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[104].y)); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.y)) + uf_blockVS7[104].z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[106].w)); -PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[106].z) + uf_blockVS7[107].z); -PS0i = R127i.w; -// 17 -R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[105].x)); -R13i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[105].y)); -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.y)) + uf_blockVS7[105].z)); -// 18 -R126i.x = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -R126i.z = floatBitsToInt(-(uf_blockVS7[106].y) + uf_blockVS7[107].y); -// 19 -R124i.x = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[107].w)); -PV1i.y = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R14i.z = ((intBitsToFloat(R125i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -// 20 -R127i.x = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -R6i.y = ((intBitsToFloat(R127i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R127i.z = floatBitsToInt(-(uf_blockVS7[107].y) + uf_blockVS7[108].y); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 21 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(-(uf_blockVS7[107].z) + uf_blockVS7[108].z); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -// 22 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.z)) + uf_blockVS7[106].x)); -R127i.y = ((intBitsToFloat(R125i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.w)) + uf_blockVS7[106].y)); -R10i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[106].z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 23 -R3i.x = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[108].w)); -PV1i.x = R3i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R1i.w = floatBitsToInt(-(uf_blockVS7[108].z) + uf_blockVS7[109].z); -PS1i = R1i.w; -// 24 -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.z)) + uf_blockVS7[107].x)); -R126i.y = ((intBitsToFloat(R124i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R126i.y; -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.w)) + uf_blockVS7[107].y)); -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[107].z)); -R7i.y = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R7i.y; -// 25 -R7i.x = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R6i.z = floatBitsToInt(-(uf_blockVS7[108].y) + uf_blockVS7[109].y); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R127i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); -PS1i = R127i.w; -// 26 -R1i.x = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[109].w)); -PV0i.x = R1i.x; -PV0i.y = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.w))); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -R3i.w = floatBitsToInt(-(intBitsToFloat(R14i.z)) + 1.0); -PS0i = R3i.w; -// 27 -R6i.x = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -R1i.y = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R1i.z = floatBitsToInt(-(uf_blockVS7[109].y) + uf_blockVS7[110].y); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R127i.w))); -R11i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -PS1i = R11i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.x = floatBitsToInt(-(uf_blockVS7[109].z) + uf_blockVS7[110].z); -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.w) * intBitsToFloat(R11i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R7i.x) * intBitsToFloat(R11i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(R11i.x)); -PS0i = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -// 1 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.z)) + uf_blockVS7[108].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + 1.0); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.w)) + uf_blockVS7[108].y)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.y)) + uf_blockVS7[108].z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R6i.x) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R124i.x) * intBitsToFloat(PS1i)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(PS1i)); -R126i.y = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[110].w)); -PS0i = R126i.y; -// 3 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.x)) + uf_blockVS7[109].x)); -R124i.y = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R124i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + uf_blockVS7[109].y)); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + uf_blockVS7[109].z)); -PS1i = floatBitsToInt(-(intBitsToFloat(R6i.y)) + 1.0); -// 4 -R124i.x = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -R127i.y = floatBitsToInt(-(uf_blockVS7[110].y) + uf_blockVS7[111].y); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -// 5 -PV1i.x = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS7[111].w)); -R127i.w = floatBitsToInt(-(uf_blockVS7[110].z) + uf_blockVS7[111].z); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R3i.w))); -R1i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].y, intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].z, intBitsToFloat(R3i.w))); -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R127i.x; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R124i.x) * intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R124i.w = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -PS1i = R124i.w; -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(R127i.x)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.x),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.z)) + uf_blockVS7[110].x)); -PS0i = R127i.x; -// 9 -backupReg0i = R126i.y; -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R124i.w)) + uf_blockVS7[110].y)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + uf_blockVS7[110].z)); -PS1i = R124i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R11i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R11i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R11i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(R1i.y)) + 1.0); -R127i.y = floatBitsToInt(fract(intBitsToFloat(R4i.w))); -PS0i = R127i.y; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R126i.x = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(0x42c80000)); -R126i.x = clampFI32(R126i.x); -PS1i = R126i.x; -// 12 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PS0i = R4i.z; -// 13 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(R126i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), uf_blockVS11[5].z)); -PS1i = R4i.x; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].y,intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].z,intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 15 -R6i.y = PV0i.x; -R2i.z = PV0i.w; -R7i.y = PV0i.z; -PS1i = R7i.y; -// 16 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R3i.z)) + 0.0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R11i.y) * intBitsToFloat(R9i.w)); -// 17 -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 18 -R1i.y = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R1i.y = clampFI32(R1i.y); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R5i.x))); -R126i.y = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R7i.z))); -PV0i.w = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -// 1 -R126i.x = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R15i.x))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(R1i.y)) + 1.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockVS13[24].x) + -(uf_blockVS13[24].y))); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV1i.z)) + uf_blockVS13[27].x)); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R124i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0x41080000)); -PS0i = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PV1i.x)); -// 3 -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), uf_blockVS13[26].w)); -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(R126i.y) + intBitsToFloat(PS0i))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(uf_blockVS13[28].y + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -tempResultf = log2(intBitsToFloat(PV0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[24].w, intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 1.5); -PV0i.z = clampFI32(PV0i.z); -R125i.w = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R12i.z))); -tempResultf = log2(intBitsToFloat(PV1i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -R125i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(PS0i))); -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS0i))); -R12i.z = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x3daaaaab)); -R124i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x41700000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 6 -R5i.x = ((0.0 >= intBitsToFloat(R3i.z))?int(0xFFFFFFFF):int(0x0)); -R12i.y = 0; -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),uf_blockVS13[25].w) + uf_blockVS13[25].w)); -R4i.w = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.y)); -PS0i = floatBitsToInt(tempResultf); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R5i.w = 0; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R125i.y))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PS0i = R1i.y; -// 9 -R2i.x = 0; -R5i.y = ((R5i.x == 0)?(R0i.x):(R5i.w)); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.z = R126i.z; -R8i.w = 0; -PV1i.w = R8i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R125i.x))); -// 10 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R4i.y = ((R5i.x == 0)?(R4i.z):(PV1i.w)); -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(PS1i)) + uf_blockVS13[23].z)); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.w)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(0xbe593484))); -PV1i.y = R123i.y; -R7i.z = ((R5i.x == 0)?(R9i.y):(R4i.w)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.w)); -PV1i.w = clampFI32(PV1i.w); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R9i.y = PV1i.w; -PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(0x3e4ccccd))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R4i.z = PV1i.w; -PS0i = R4i.z; -// 13 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.w))) + 1.0)); -R10i.y = R9i.z; -R6i.z = R16i.x; -R9i.w = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); -R0i.x = R11i.w; -PS1i = R0i.x; -} -if( activeMaskStackC[3] == true ) { -R1i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R1i.xy)).xyz); -R12i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R12i.zy)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(R9i.w))); -PV0i.x = R125i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.w))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R9i.w))); -R9i.w = ((R5i.x == 0)?(R15i.z):(R15i.z)); -R1i.z = ((R5i.x == 0)?(R6i.y):(R6i.y)); -PS0i = R1i.z; -// 1 -R1i.x = ((R5i.x == 0)?(0):(0x3f800000)); -R1i.y = ((R5i.x == 0)?(R20i.z):(R20i.z)); -R126i.z = ((R5i.x == 0)?(0):(PV0i.x)); -R2i.w = ((R5i.x == 0)?(R3i.x):(R2i.x)); -R126i.y = ((R5i.x == 0)?(0):(R9i.y)); -PS1i = R126i.y; -// 2 -R123i.x = ((R5i.x == 0)?(0):(R125i.y)); -PV0i.x = R123i.x; -R124i.y = ((R5i.x == 0)?(0):(R12i.w)); -R123i.z = ((R5i.x == 0)?(0):(R15i.x)); -PV0i.z = R123i.z; -R123i.w = ((R5i.x == 0)?(0):(R3i.z)); -PV0i.w = R123i.w; -R127i.y = ((R5i.x == 0)?(0):(R124i.z)); -PS0i = R127i.y; -// 3 -R21i.x = ((R1i.x == 0)?(R3i.z):(PV0i.w)); -R21i.y = ((R1i.x == 0)?(R15i.x):(PV0i.z)); -R21i.z = ((R1i.x == 0)?(R9i.y):(R126i.y)); -R123i.w = ((R5i.x == 0)?(0):(R4i.z)); -PV1i.w = R123i.w; -R22i.x = ((R1i.x == 0)?(R125i.y):(PV0i.x)); -PS1i = R22i.x; -// 4 -backupReg0i = R125i.x; -R125i.x = R11i.w; -R22i.y = ((R1i.x == 0)?(backupReg0i):(R126i.z)); -R22i.z = ((R1i.x == 0)?(R124i.z):(R127i.y)); -R22i.w = ((R1i.x == 0)?(R4i.z):(PV1i.w)); -// 5 -R123i.x = ((R5i.x == 0)?(0):(R4i.x)); -PV1i.x = R123i.x; -R127i.y = ((R5i.x == 0)?(0):(R12i.z)); -R126i.z = ((R5i.x == 0)?(0):(R12i.y)); -R125i.w = ((R5i.x == 0)?(0):(R10i.y)); -R9i.y = ((R5i.x == 0)?(0):(R6i.z)); -PS1i = R9i.y; -// 6 -R126i.x = ((R5i.x == 0)?(0):(R0i.w)); -R125i.y = ((R5i.x == 0)?(0):(R24i.z)); -R124i.z = ((R5i.x == 0)?(0):(R2i.y)); -R21i.w = ((R1i.x == 0)?(R4i.x):(PV1i.x)); -R124i.w = ((R5i.x == 0)?(0):(R8i.y)); -PS0i = R124i.w; -// 7 -R124i.x = ((R5i.x == 0)?(0):(R7i.y)); -R126i.y = ((R5i.x == 0)?(0):(R5i.z)); -R125i.z = ((R5i.x == 0)?(0):(R13i.w)); -R123i.w = ((R5i.x == 0)?(0):(R12i.x)); -PV1i.w = R123i.w; -R127i.z = ((R5i.x == 0)?(0):(R2i.z)); -PS1i = R127i.z; -// 8 -R23i.x = ((R1i.x == 0)?(R12i.x):(PV1i.w)); -R23i.y = ((R1i.x == 0)?(R12i.y):(R126i.z)); -R23i.z = ((R1i.x == 0)?(R12i.z):(R127i.y)); -R23i.w = ((R1i.x == 0)?(R12i.w):(R124i.y)); -R127i.x = R9i.z; -PS0i = R127i.x; -// 9 -R12i.x = ((R5i.x == 0)?(R20i.y):(R6i.y)); -R127i.y = ((R5i.x == 0)?(0):(R14i.w)); -R126i.z = ((R5i.x == 0)?(R20i.z):(R20i.z)); -R123i.w = ((R5i.x == 0)?(0):(R0i.x)); -PV1i.w = R123i.w; -R9i.z = ((R5i.x == 0)?(0):(R16i.z)); -PS1i = R9i.z; -// 10 -R25i.x = ((R1i.x == 0)?(R125i.x):(PV1i.w)); -R25i.y = ((R1i.x == 0)?(R127i.x):(R125i.w)); -// 11 -R127i.x = ((R5i.x == 0)?(0):(R11i.y)); -R124i.y = ((R5i.x == 0)?(0):(R15i.w)); -R12i.z = ((R5i.x == 0)?(0):(R17i.z)); -R123i.w = ((R5i.x == 0)?(0):(R24i.x)); -PV1i.w = R123i.w; -R12i.w = ((R5i.x == 0)?(0):(R13i.y)); -PS1i = R12i.w; -// 12 -R6i.x = ((R1i.x == 0)?(R24i.x):(PV1i.w)); -R6i.y = ((R1i.x == 0)?(R2i.y):(R124i.z)); -R4i.z = ((R5i.x == 0)?(0):(R16i.w)); -R125i.w = ((R5i.x == 0)?(0):(R3i.y)); -R126i.w = ((R5i.x == 0)?(0):(R14i.w)); -PS0i = R126i.w; -// 13 -backupReg0i = R4i.w; -R123i.x = ((R5i.x == 0)?(0):(R13i.x)); -PV1i.x = R123i.x; -R123i.y = ((R5i.x == 0)?(0):(R0i.z)); -PV1i.y = R123i.y; -R124i.z = ((R5i.x == 0)?(0):(R0i.y)); -R127i.w = ((R5i.x == 0)?(R19i.y):(R8i.w)); -R4i.w = ((R5i.x == 0)?(R19i.z):(backupReg0i)); -PS1i = R4i.w; -// 14 -R24i.x = ((R1i.x == 0)?(R13i.x):(PV1i.x)); -R24i.y = ((R1i.x == 0)?(R8i.y):(R124i.w)); -R24i.z = ((R1i.x == 0)?(R13i.w):(R125i.z)); -PV0i.z = R24i.z; -R24i.w = ((R1i.x == 0)?(R5i.z):(R126i.y)); -R0i.x = ((R1i.x == 0)?(R0i.z):(PV1i.y)); -PS0i = R0i.x; -// 15 -backupReg0i = R0i.y; -PV1i.x = R16i.x; -R0i.y = ((R1i.x == 0)?(R3i.y):(R125i.w)); -R0i.z = ((R1i.x == 0)?(R14i.w):(R126i.w)); -R0i.w = ((R1i.x == 0)?(backupReg0i):(R124i.z)); -R6i.z = ((R1i.x == 0)?(PV0i.z):(R125i.y)); -PS1i = R6i.z; -// 16 -R123i.x = ((R5i.x == 0)?(R19i.w):(R15i.z)); -PV0i.x = R123i.x; -R123i.y = ((R5i.x == 0)?(R19i.x):(R5i.w)); -PV0i.y = R123i.y; -R25i.z = ((R1i.x == 0)?(PV1i.x):(R9i.y)); -// 17 -R19i.x = ((R1i.x == 0)?(R5i.y):(PV0i.y)); -R19i.y = ((R1i.x == 0)?(R4i.y):(R127i.w)); -R19i.z = ((R1i.x == 0)?(R7i.z):(R4i.w)); -R19i.w = ((R1i.x == 0)?(R9i.w):(PV0i.x)); -R25i.w = ((R1i.x == 0)?(R126i.x):(R126i.x)); -PS1i = R25i.w; -// 18 -R123i.x = ((R5i.x == 0)?(0):(R14i.x)); -PV0i.x = R123i.x; -// 19 -backupReg0i = R14i.x; -backupReg1i = R14i.w; -R14i.x = ((R1i.x == 0)?(backupReg0i):(PV0i.x)); -R14i.y = ((R1i.x == 0)?(R7i.y):(R124i.x)); -R14i.z = ((R1i.x == 0)?(R2i.z):(R127i.z)); -R14i.w = ((R1i.x == 0)?(backupReg1i):(R127i.y)); -// 20 -R123i.x = ((R5i.x == 0)?(R20i.x):(R2i.x)); -PV0i.x = R123i.x; -// 21 -R20i.x = ((R1i.x == 0)?(R2i.w):(PV0i.x)); -R20i.y = ((R1i.x == 0)?(R1i.z):(R12i.x)); -R20i.z = ((R1i.x == 0)?(R1i.y):(R126i.z)); -// 22 -R123i.y = ((R5i.x == 0)?(0):(R17i.x)); -PV0i.y = R123i.y; -// 23 -R15i.x = ((R1i.x == 0)?(R17i.x):(PV0i.y)); -R15i.y = ((R1i.x == 0)?(R11i.y):(R127i.x)); -R15i.z = ((R1i.x == 0)?(R15i.w):(R124i.y)); -R15i.w = ((R1i.x == 0)?(R16i.z):(R9i.z)); -// 24 -R123i.y = ((R5i.x == 0)?(0):(R18i.x)); -PV0i.y = R123i.y; -// 25 -backupReg0i = R13i.y; -R13i.x = ((R1i.x == 0)?(R18i.x):(PV0i.y)); -R13i.y = ((R1i.x == 0)?(R17i.z):(R12i.z)); -R13i.z = ((R1i.x == 0)?(backupReg0i):(R12i.w)); -R13i.w = ((R1i.x == 0)?(R16i.w):(R4i.z)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R13i.x), intBitsToFloat(R13i.y), intBitsToFloat(R13i.z), intBitsToFloat(R13i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R15i.x), intBitsToFloat(R15i.y), intBitsToFloat(R15i.z), intBitsToFloat(R15i.w)); -// export -passParameterSem5 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R24i.x), intBitsToFloat(R24i.y), intBitsToFloat(R24i.z), intBitsToFloat(R24i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R25i.x), intBitsToFloat(R25i.y), intBitsToFloat(R25i.z), intBitsToFloat(R25i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/314c2583a1612026_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/314c2583a1612026_0000000000000000_vs.txt deleted file mode 100644 index b22b87a4..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/314c2583a1612026_0000000000000000_vs.txt +++ /dev/null @@ -1,1992 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 314c2583a1612026 // guardian explosion fire vs -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem8; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 5) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R12i.z = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); -R0i.w = 0; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R13i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + uf_blockVS8[2].x); -R8i.w = floatBitsToInt(-(intBitsToFloat(R7i.x)) + 1.0); -PS1i = R8i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R13i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R15i.x = 0; -R15i.y = 0; -R15i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R16i.x = 0; -PS0i = R16i.x; -// 1 -R3i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R3i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R2i.w)); -// 1 -R0i.x = floatBitsToInt(float(PS0i)); -PS1i = R0i.x; -// 2 -backupReg0i = R0i.x; -predResult = (intBitsToFloat(R13i.w) >= intBitsToFloat(backupReg0i)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R15i.x = 0; -R15i.y = 0; -R15i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R16i.x = 0; -PS0i = R16i.x; -// 1 -R0i.w = R1i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R0i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[10].y)); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R5i.x), 0.0)); -PV0i.z = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -PV0i.w = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(min(intBitsToFloat(PV0i.y), 0.0)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -R6i.w = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS1i = R6i.w; -// 2 -R2i.x = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.z)); -R3i.z = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS1i)); -PV0i.z = R3i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.w = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -PS0i = R126i.w; -// 3 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.w))); -R127i.z = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -PV1i.w = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -// 4 -backupReg0i = R127i.y; -R126i.x = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -R127i.y = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R126i.y; -backupReg1i = R127i.w; -R127i.x = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt(-(uf_blockVS7[97].z) + uf_blockVS7[98].z); -PS1i = R126i.w; -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(uf_blockVS7[96].w)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + -(uf_blockVS7[97].w)); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R127i.x))); -R125i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.w; -// 8 -R127i.x = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV1i.w)); -R126i.y = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(PV1i.x)); -R125i.z = ((intBitsToFloat(R126i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.z) + -(uf_blockVS7[98].w)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -// 10 -backupReg0i = R126i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.x))); -R126i.z = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R126i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -PS0i = R124i.z; -// 11 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt(uf_blockVS7[97].z + intBitsToFloat(PV0i.w)); -R126i.y = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(PV0i.x)); -R127i.z = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PS1i = R127i.y; -// 12 -backupReg0i = R126i.z; -backupReg1i = R127i.x; -R125i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].x, intBitsToFloat(R126i.z))); -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].z, intBitsToFloat(R126i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].y, intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.w))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R124i.z))); -PS0i = R127i.x; -// 13 -backupReg0i = R126i.x; -backupReg1i = R126i.y; -backupReg2i = R127i.z; -backupReg3i = R127i.w; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV0i.w))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV0i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(R124i.z))); -PS1i = floatBitsToInt(-(intBitsToFloat(R125i.w)) + 1.0); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(PS1i))); -R4i.w = 0x3f800000; -PS0i = R4i.w; -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(uf_blockVS7[13].x); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -PS1i = floatBitsToInt(uf_blockVS7[13].y); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 16 -R0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.z)); -R2i.w = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(PS1i)); -PS0i = R2i.w; -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.z)); -// 18 -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w))); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV1i.x))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV1i.z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.x; -backupReg1i = R6i.y; -backupReg1i = R6i.y; -R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[3].z)); -R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[3].y)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[3].y)); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[3].w)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R0i.y = tempi.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.w = tempi.x; -// 3 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV1i.x = R1i.x; -PV1i.y = R1i.x; -PV1i.z = R1i.x; -PV1i.w = R1i.x; -// 4 -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), uf_blockVS7[13].z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(intBitsToFloat(R0i.y) + -(uf_blockVS6[17].x)); -PV0i.x = R125i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R3i.w) + -(uf_blockVS6[17].y)); -PV0i.y = R125i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R1i.x) + -(uf_blockVS6[17].z)); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(R0i.y)) + uf_blockVS6[17].x); -R126i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + uf_blockVS6[17].y); -PS0i = R126i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(R1i.x)) + uf_blockVS6[17].z); -PS1i = R124i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.x)), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.z)), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.y)), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.w))); -PV0i.x = R2i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.x))); -PV0i.y = R1i.y; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.z))); -PV0i.w = R124i.w; -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R127i.z; -// 5 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.w)); -R4i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -R2i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.x)); -PS1i = R2i.y; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R124i.w)); -PS0i = R1i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(R124i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -R125i.x = floatBitsToInt(-(uf_blockVS6[17].x) + intBitsToFloat(R4i.w)); -R127i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(R127i.z)); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(-(uf_blockVS6[17].y) + intBitsToFloat(R2i.y)); -R0i.w = 0x3f800000; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R125i.y = floatBitsToInt(tempResultf); -PS0i = R125i.y; -// 9 -backupReg0i = R126i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV0i.y))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV0i.y))); -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PS1i = R126i.x; -// 10 -backupReg0i = R4i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R0i.x))); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R2i.w))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R125i.y))); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), -(uf_blockVS6[1].z))); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), -(uf_blockVS6[1].y))); -R125i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].y,intBitsToFloat(PV0i.w)) + intBitsToFloat(PS0i))); -R126i.z = R126i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), -(uf_blockVS6[1].x))); -R125i.z = R126i.x; -PS1i = R125i.z; -// 12 -backupReg0i = R127i.y; -R0i.x = R127i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].z,intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.w))); -PV0i.y = R127i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].x,intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.x))); -PV0i.z = R124i.z; -R4i.y = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -PS0i = R4i.y; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(-(uf_blockVS6[17].z) + intBitsToFloat(R1i.z)); -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.z),intBitsToFloat(PS1i),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.z),intBitsToFloat(PS1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 15 -backupReg0i = R127i.y; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PV1i.x = R125i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PV1i.w = R125i.w; -R125i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R125i.y; -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.w))); -R126i.w = PV1i.y; -R124i.x = PV1i.w; -PS0i = R124i.x; -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(min(intBitsToFloat(R125i.y), uf_blockVS7[116].x)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[116].x); -// 18 -R126i.x = PV1i.y; -PV0i.y = PV1i.x; -R124i.z = PV1i.w; -R2i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -R1i.w = 0x3f800000; -PS0i = R1i.w; -// 19 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R126i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 20 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R126i.w),intBitsToFloat(R126i.x),intBitsToFloat(R125i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -PS0i = R126i.x; -// 21 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV0i.x)); -// 22 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R126i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.x)); -// 23 -R1i.x = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(PV0i.y)); -R1i.y = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.x)); -R3i.w = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV0i.w)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) * intBitsToFloat(R4i.y)); -PV0i.y = floatBitsToInt((uf_blockVS7[8].x > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(R3i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R1i.y) * intBitsToFloat(R4i.y)); -PS0i = floatBitsToInt((0.0 > uf_blockVS7[8].x)?1.0:0.0); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R2i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(R4i.y)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R2i.w))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].x); -// 2 -R127i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV1i.y)); -R124i.y = floatBitsToInt(intBitsToFloat(R2i.y) + intBitsToFloat(PV1i.w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R2i.w))); -R124i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R124i.w; -// 3 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),uf_blockVS7[9].y) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.w)); -PV1i.z = R124i.z; -// 4 -backupReg0i = R0i.w; -R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(PV1i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = R9i.x; -PV0i.y = R9i.x; -PV0i.z = R9i.x; -PV0i.w = R9i.x; -PS0i = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -// 5 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -// 6 -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.z))); -// 7 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.z = tempi.x; -// 8 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.y = tempi.x; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),intBitsToFloat(R0i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.w = tempi.x; -// 10 -PV0i.x = PV1i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -PV0i.y = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -R9i.w = floatBitsToInt((intBitsToFloat(R10i.y) * 0.0 + intBitsToFloat(PV1i.x))); -// 11 -R11i.y = floatBitsToInt((intBitsToFloat(R10i.y) * 0.5 + intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((intBitsToFloat(R10i.y) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -// 12 -R10i.x = floatBitsToInt((intBitsToFloat(R7i.z) * -(0.5) + intBitsToFloat(PV1i.z))); -R8i.z = floatBitsToInt((intBitsToFloat(R9i.x) * 0.5 + intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R2i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = tempi.x; -R124i.y = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS0i)); -PS1i = R124i.y; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R2i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); -PS0i = R124i.z; -// 15 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),uf_blockVS7[9].z) + intBitsToFloat(R124i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R127i.y) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -PV1i.w = PV0i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -// 16 -R123i.z = floatBitsToInt((intBitsToFloat(R127i.y) * 0.5 + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 17 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PS0i)); -// 18 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R124i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV1i.w))); -// 19 -PV1i.y = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV0i.z)); -// 20 -R9i.y = floatBitsToInt(uf_blockVS6[18].y); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 21 -R7i.w = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[60].w)); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(-(uf_blockVS7[60].z) + uf_blockVS7[61].z); -PV0i.z = floatBitsToInt(-(uf_blockVS7[60].w) + uf_blockVS7[61].w); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[61].w)); -// 1 -R126i.x = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -R124i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(-(uf_blockVS7[60].y) + uf_blockVS7[61].y); -PV1i.w = floatBitsToInt(-(uf_blockVS7[60].x) + uf_blockVS7[61].x); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R124i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R124i.w; -// 3 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + uf_blockVS7[60].z)); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.y)) + uf_blockVS7[60].y)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.z)) + uf_blockVS7[60].x)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].x, intBitsToFloat(PS0i))); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].z, intBitsToFloat(R124i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].y, intBitsToFloat(R124i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(PS1i))); -PV0i.w = R123i.w; -// 5 -R126i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].x,intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(uf_blockVS7[68].w)); -PV1i.w = R126i.w; -// 6 -backupReg0i = R124i.y; -backupReg0i = R124i.y; -R124i.y = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R124i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -R124i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].y,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.z))); -// 7 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R124i.z = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(uf_blockVS7[69].w)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -// 9 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(backupReg0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), uf_blockVS8[0].x)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), uf_blockVS8[0].y)); -R124i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), uf_blockVS8[0].z)); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS7[59].x)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockVS7[59].x)); -PS0i = R12i.w; -// 11 -R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockVS7[59].x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[68].x)); -PV1i.z = R123i.z; -// 12 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(-(uf_blockVS7[76].x) + uf_blockVS7[77].x); -R124i.y = floatBitsToInt(-(uf_blockVS7[76].y) + uf_blockVS7[77].y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -PV0i.z = R123i.z; -// 13 -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[69].x,intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -// 14 -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS8[0].w)); -PV0i.z = ((intBitsToFloat(R5i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 15 -R126i.x = floatBitsToInt(-(uf_blockVS7[76].z) + uf_blockVS7[77].z); -R4i.y = ((PV0i.z == 0)?(R7i.x):(R8i.w)); -PV1i.z = ((intBitsToFloat(R5i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(-(uf_blockVS7[76].w) + uf_blockVS7[77].w); -// 16 -R1i.x = ((PV1i.z == 0)?(R7i.y):(R12i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 17 -R2i.x = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(PS0i)); -R2i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R1i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS0i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].z)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[8].z > 0.0)?1.0:0.0); -R4i.z = floatBitsToInt(uf_blockVS7[84].x); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].z); -// 1 -PV1i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -PV1i.y = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -R124i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),uf_blockVS7[9].w) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = (PV1i.z == 0x00100000)?int(0xFFFFFFFF):int(0x0); -R125i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = (PV1i.x == 0x00080000)?int(0xFFFFFFFF):int(0x0); -R124i.y = (PS1i == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PS0i = R124i.y; -// 3 -R3i.x = ((PV0i.w == 0)?(R7i.x):(R4i.y)); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.z = ((intBitsToFloat(R5i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R3i.w = ((PV0i.y == 0)?(R7i.y):(R1i.x)); -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -// 4 -R127i.x = (PS1i == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.y))); -PV0i.z = ((intBitsToFloat(R5i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R123i.w = ((PV1i.z == 0)?(R7i.x):(R8i.w)); -PV0i.w = R123i.w; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = ((PV0i.z == 0)?(R7i.y):(R12i.z)); -PV1i.y = R123i.y; -R0i.z = ((R124i.y == 0)?(R7i.x):(PV0i.w)); -// 6 -R8i.y = ((R127i.x == 0)?(R7i.y):(PV1i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[77].w)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[76].w)); -// 7 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R1i.w)) + uf_blockVS7[76].z)); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R2i.x)) + uf_blockVS7[76].y)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R2i.y)) + uf_blockVS7[76].x)); -R124i.w = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R124i.w; -R125i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.y; -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = ((intBitsToFloat(R5i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -PS0i = R126i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].x, intBitsToFloat(PV0i.z))); -R126i.y = ((PV0i.w == 0)?(R7i.x):(R8i.w)); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].y, intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].z, intBitsToFloat(PV0i.z))); -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -PV0i.w = (R127i.y == 0x00800000)?int(0xFFFFFFFF):int(0x0); -R125i.z = (R126i.w == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PS0i = R125i.z; -// 11 -R8i.x = ((PV0i.w == 0)?(R7i.x):(R126i.y)); -R2i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].z,intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); -R1i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].y,intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].x,intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.z))); -PS1i = ((intBitsToFloat(R5i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 12 -R123i.x = ((PS1i == 0)?(R7i.y):(R12i.z)); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -PV0i.z = floatBitsToInt(uf_blockVS7[5].y) & int(1); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -R2i.x = int(uf_blockVS7[17].x); -PS0i = R2i.x; -// 13 -backupReg0i = R125i.z; -R3i.y = (int(1) != PV0i.z)?int(0xFFFFFFFF):int(0x0); -R125i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -R8i.w = ((backupReg0i == 0)?(R7i.y):(PV0i.x)); -R4i.w = int(uf_blockVS7[17].y); -PS1i = R4i.w; -// 14 -PS0i = floatBitsToInt(float(R126i.y)); -// 15 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R126i.w)); -// 16 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R7i.y = floatBitsToInt(float(R125i.z)); -PS0i = R7i.y; -// 17 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 18 -PV0i.x = 0 - PS1i; -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 19 -PV1i.x = 0 - PS0i; -R0i.w = max(R126i.y, PV0i.x); -// 20 -R2i.w = max(R125i.y, PV1i.x); -} -if( activeMaskStackC[3] == true ) { -// 0 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), uf_blockVS8[1].w)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockVS8[1].z)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), uf_blockVS8[1].y)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[1].x)); -// 1 -PV1i.x = floatBitsToInt((intBitsToFloat(R7i.y) > 0.0)?1.0:0.0); -R12i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.y))); -R9i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.z))); -R10i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt((0.0 > intBitsToFloat(R7i.y))?1.0:0.0); -// 2 -R127i.x = int(-1) + R2i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PS1i))); -R124i.z = floatBitsToInt(float(R2i.x)); -PS0i = R124i.z; -// 3 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.w), intBitsToFloat(PS0i))); -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 4 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(PV1i.y)); -R125i.z = floatBitsToInt(float(R4i.w)); -PS0i = R125i.z; -// 5 -R4i.w = max(R125i.y, PV0i.x); -PS1i = int(intBitsToFloat(PV0i.y)); -// 6 -R126i.z = R0i.w * PS1i; -PS0i = R126i.z; -// 7 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS1i)); -R2i.y = floatBitsToInt(float(R2i.x)); -PS0i = R2i.y; -// 9 -R7i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R0i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R0i.w; -// 10 -PS0i = floatBitsToInt(float(PS1i)); -// 11 -PV1i.y = floatBitsToInt(-(intBitsToFloat(R124i.z)) + intBitsToFloat(PS0i)); -R124i.x = floatBitsToInt(float(R0i.w)); -PS1i = R124i.x; -// 12 -R123i.x = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R123i.x; -R126i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R1i.w = floatBitsToInt(1.0 / abs(intBitsToFloat(R2i.y))); -PS0i = R1i.w; -// 13 -PV1i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.x)), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(PV0i.x)); -// 14 -backupReg0i = R127i.x; -R127i.x = int(1) - PS1i; -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R124i.w = PS1i * backupReg0i; -PS0i = R124i.w; -// 15 -R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R7i.x)) + intBitsToFloat(R126i.w))); -PV1i.z = R124i.z; -R2i.x = int(intBitsToFloat(R126i.x)); -PS1i = R2i.x; -// 16 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R2i.y)))?1.0:0.0); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R2i.y))) + intBitsToFloat(PV1i.z)); -// 17 -R126i.w = ((intBitsToFloat(PV0i.x) == 0.0)?(R124i.z):(PV0i.y)); -PV1i.w = R126i.w; -// 18 -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R2i.y)) + intBitsToFloat(PV1i.w)); -// 19 -R123i.y = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV0i.z):(R126i.w)); -PV1i.y = R123i.y; -// 20 -R123i.x = ((-(intBitsToFloat(R124i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.x = R123i.x; -// 21 -R123i.w = ((intBitsToFloat(R2i.y) == 0.0)?(R124i.x):(PV0i.x)); -PV1i.w = R123i.w; -// 22 -PS0i = int(intBitsToFloat(PV1i.w)); -// 23 -PS1i = R127i.x * PS0i; -// 24 -PV0i.z = PS1i + R124i.w; -// 25 -PS1i = R2i.w * PV0i.z; -// 26 -R7i.y = PS1i + R126i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -// 1 -PS1i = floatBitsToInt(float(PV0i.z)); -// 2 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(R125i.y)); -// 3 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 5 -PV1i.x = 0 - PS0i; -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 6 -PV0i.x = 0 - PS1i; -PV0i.w = max(R125i.y, PV1i.x); -// 7 -PV1i.z = max(R127i.x, PV0i.x); -R125i.y = PV0i.w * R2i.x; -PS1i = R125i.y; -// 8 -PS0i = PV1i.z * R2i.x; -// 9 -PV1i.z = R0i.w + PS0i; -// 10 -PS0i = R4i.w * PV1i.z; -// 11 -PV1i.x = PS0i + R7i.y; -// 12 -PV0i.w = R125i.y + PV1i.x; -// 13 -R124i.z = floatBitsToInt(float(PV0i.w)); -PS1i = R124i.z; -// 14 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), abs(intBitsToFloat(PS1i)))); -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -// 15 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -// 16 -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R7i.x)) + intBitsToFloat(R124i.w))); -PV0i.z = R126i.z; -// 17 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R2i.y)))?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R2i.y))) + intBitsToFloat(PV0i.z)); -// 18 -R124i.w = ((intBitsToFloat(PV1i.x) == 0.0)?(R126i.z):(PV1i.y)); -PV0i.w = R124i.w; -// 19 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.w)); -// 20 -R123i.y = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV1i.z):(R124i.w)); -PV0i.y = R123i.y; -// 21 -R123i.x = ((-(intBitsToFloat(R124i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.x = R123i.x; -// 22 -R123i.w = ((intBitsToFloat(R2i.y) == 0.0)?(R124i.z):(PV1i.x)); -PV0i.w = R123i.w; -// 23 -R124i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R124i.z; -// 24 -R125i.y = floatBitsToInt(float(PS1i)); -PS0i = R125i.y; -// 25 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R124i.x = floatBitsToInt(float(R124i.z)); -PS1i = R124i.x; -// 26 -R126i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt(abs(intBitsToFloat(PS1i)) * 0.25); -// 27 -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * 0.5 + intBitsToFloat(R125i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -// 28 -R127i.x = floatBitsToInt((-(intBitsToFloat(PV1i.z)) * 4.0 + intBitsToFloat(R126i.y))); -PV0i.x = R127i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 0.25); -R4i.z = ((R3i.y == 0)?(R5i.x):(R5i.y)); -// 29 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt((intBitsToFloat(PV0i.x) >= 4.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xc0800000)); -R0i.y = int(uf_blockVS7[26].x); -PS1i = R0i.y; -// 30 -R126i.y = ((intBitsToFloat(PV1i.z) == 0.0)?(R127i.x):(PV1i.w)); -PV0i.y = R126i.y; -R124i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -PS0i = int(intBitsToFloat(PV1i.x)); -// 31 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + 4.0); -R2i.y = PS0i + 0x00000012; -R0i.x = int(uf_blockVS7[26].y); -PS1i = R0i.x; -// 32 -R123i.w = ((-(intBitsToFloat(R126i.y)) > 0.0)?(PV1i.x):(R126i.y)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(R124i.w)); -// 33 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R123i.z = ((-(intBitsToFloat(R124i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.z = R123i.z; -// 34 -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -PS0i = int(intBitsToFloat(PV1i.z)); -// 35 -PV1i.x = int(-1) + PS0i; -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -R124i.z = 0xfffffffd + PS0i; -R124i.w = 0xfffffffe + PS0i; -PS1i = floatBitsToInt(float(PS0i)); -// 36 -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.x)); -// 37 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R124i.w)); -// 38 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R124i.x; -// 39 -PV1i.x = 0 - PS0i; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -R124i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.w; -// 40 -PV0i.x = 0 - PS1i; -PV0i.z = max(R124i.x, PV1i.x); -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 41 -R7i.x = int(1) - PV0i.z; -PV1i.y = max(R124i.w, PV0i.x); -PV1i.z = 0 - PS0i; -PS1i = floatBitsToInt(float(R124i.z)); -// 42 -PV0i.x = max(R126i.z, PV1i.z); -R1i.y = int(1) - PV1i.y; -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.z = int(intBitsToFloat(R126i.w)); -PS0i = R126i.z; -// 43 -PV1i.y = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.w))); -R1i.w = int(1) - PV0i.x; -PS1i = floatBitsToInt(float(R126i.y)); -// 44 -R1i.x = max(R126i.z, PV1i.y); -R7i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R4i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R4i.y; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockVS7[R2i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = 0 - R4i.y; -R125i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R124i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -R124i.w = floatBitsToInt(intBitsToFloat(R7i.y) + -(intBitsToFloat(R1i.z))); -R124i.x = R1i.w * R2i.z; -PS0i = R124i.x; -// 1 -PV1i.w = max(R4i.y, PV0i.x); -R126i.w = R1i.y * R2i.y; -PS1i = R126i.w; -// 2 -PV0i.z = int(1) - PV1i.w; -R127i.w = int(-1) + R0i.y; -PS0i = R7i.x * R2i.x; -// 3 -PV1i.y = R126i.w + PS0i; -R126i.y = PV0i.z * R2i.w; -PS1i = R126i.y; -// 4 -PV0i.x = R124i.x + PV1i.y; -R126i.z = int(intBitsToFloat(R124i.w)); -PS0i = R126i.z; -// 5 -PV1i.y = 0 - PS0i; -R2i.w = R126i.y + PV0i.x; -PS1i = floatBitsToInt(float(R125i.y)); -// 6 -R7i.x = max(R126i.z, PV1i.y); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PS0i = floatBitsToInt(float(R124i.z)); -// 7 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt(float(backupReg0i)); -PS1i = R124i.w; -// 8 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.w), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 9 -PV1i.x = 0 - PS0i; -PV1i.y = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(PV0i.z)); -R124i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R124i.z; -// 10 -R2i.x = max(R126i.z, PV1i.x); -PV0i.y = 0 - PS1i; -PS0i = int(intBitsToFloat(PV1i.y)); -// 11 -R126i.x = max(R124i.z, PV0i.y); -R125i.w = R1i.x * PS0i; -PS1i = R125i.w; -// 12 -backupReg0i = R0i.x; -PS0i = floatBitsToInt(float(backupReg0i)); -// 13 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 14 -backupReg0i = R0i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(float(backupReg0i)); -PS0i = R126i.z; -// 15 -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R125i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R125i.x; -// 16 -PS0i = floatBitsToInt(float(PS1i)); -// 17 -PV1i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(float(R125i.x)); -PS1i = R125i.y; -// 18 -R124i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R123i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R123i.y; -R4i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.z))); -PS0i = R4i.x; -// 19 -PV1i.w = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.y)), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(PV0i.y)); -// 20 -R0i.x = int(1) - PS1i; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -R1i.x = PS1i * R127i.w; -PS0i = R1i.x; -// 21 -backupReg0i = R126i.w; -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R124i.y)) + intBitsToFloat(R124i.x))); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(float(backupReg0i)); -// 22 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.w) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV0i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R127i.y = int(intBitsToFloat(R127i.x)); -PS0i = R127i.y; -// 23 -backupReg0i = R126i.x; -R126i.x = ((intBitsToFloat(PV0i.y) == 0.0)?(R126i.w):(PV0i.z)); -PV1i.x = R126i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R124i.z = backupReg0i * PS0i; -PS1i = R124i.z; -// 24 -PV0i.w = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.x)); -R126i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.y; -// 25 -PV1i.x = 0 - PS0i; -R123i.z = ((-(intBitsToFloat(R126i.x)) > 0.0)?(PV0i.w):(R126i.x)); -PV1i.z = R123i.z; -// 26 -R123i.y = ((-(intBitsToFloat(R125i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -PV0i.w = max(R126i.y, PV1i.x); -// 27 -R123i.x = ((intBitsToFloat(R126i.z) == 0.0)?(R125i.y):(PV0i.y)); -PV1i.x = R123i.x; -PS1i = PV0i.w * R127i.y; -// 28 -R126i.w = R125i.x + PS1i; -PS0i = int(intBitsToFloat(PV1i.x)); -// 29 -backupReg0i = R0i.x; -PS1i = backupReg0i * PS0i; -// 30 -PV0i.w = PS1i + R1i.x; -R127i.y = R2i.x * R126i.w; -PS0i = R127i.y; -// 31 -PS1i = R7i.x * PV0i.w; -// 32 -PV0i.z = PS1i + R125i.w; -// 33 -PV1i.y = R127i.y + PV0i.z; -// 34 -PV0i.x = R124i.z + PV1i.y; -// 35 -R126i.w = floatBitsToInt(float(PV0i.x)); -PS1i = R126i.w; -// 36 -R125i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), abs(intBitsToFloat(PS1i)))); -// 37 -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -// 38 -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R124i.y)) + intBitsToFloat(R125i.x))); -PV0i.w = R125i.w; -// 39 -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.w) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV0i.w)); -// 40 -R125i.x = ((intBitsToFloat(PV1i.y) == 0.0)?(R125i.w):(PV1i.z)); -PV0i.x = R125i.x; -// 41 -PV1i.w = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.x)); -// 42 -R123i.z = ((-(intBitsToFloat(R125i.x)) > 0.0)?(PV1i.w):(R125i.x)); -PV0i.z = R123i.z; -// 43 -R123i.y = ((-(intBitsToFloat(R126i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -// 44 -R123i.x = ((intBitsToFloat(R126i.z) == 0.0)?(R126i.w):(PV1i.y)); -PV0i.x = R123i.x; -// 45 -R126i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R126i.w; -// 46 -R4i.z = floatBitsToInt(float(PS1i)); -PS0i = R4i.z; -// 47 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R0i.y = floatBitsToInt(float(R126i.w)); -PS1i = R0i.y; -// 48 -R4i.x = floatBitsToInt(abs(intBitsToFloat(PS1i)) * 0.25); -R2i.z = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R6i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -// 49 -R123i.z = floatBitsToInt((intBitsToFloat(R6i.w) * 0.5 + intBitsToFloat(R4i.z))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(R4i.x))); -// 50 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * 0.25); -R124i.y = floatBitsToInt((-(intBitsToFloat(PV1i.w)) * 4.0 + intBitsToFloat(R2i.z))); -PV0i.y = R124i.y; -// 51 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0xc0800000)); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.y) >= 4.0)?1.0:0.0); -// 52 -R126i.z = ((intBitsToFloat(PV1i.w) == 0.0)?(R124i.y):(PV1i.x)); -PV0i.z = R126i.z; -PS0i = int(intBitsToFloat(PV1i.y)); -// 53 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 4.0); -R2i.z = PS0i + 0x0000001b; -PS1i = int(uf_blockVS7[48].z); -// 54 -R123i.x = ((-(intBitsToFloat(R126i.z)) > 0.0)?(PV1i.y):(R126i.z)); -PV0i.x = R123i.x; -R1i.z = floatBitsToInt(float(PS1i)); -PS0i = R1i.z; -// 55 -R123i.w = ((-(intBitsToFloat(R0i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.w = R123i.w; -R0i.y = floatBitsToInt(float(R2i.w)); -PS1i = R0i.y; -// 56 -R4i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R4i.z; -} -if( activeMaskStackC[3] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockVS7[R2i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = 0xfffffffe + R4i.z; -PV0i.y = int(-1) + R4i.z; -R124i.z = floatBitsToInt(abs(intBitsToFloat(R1i.z))); -R125i.w = 0xfffffffd + R4i.z; -PS0i = floatBitsToInt(float(R4i.z)); -// 1 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.y)); -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R125i.x)); -// 3 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R126i.w = floatBitsToInt((intBitsToFloat(backupReg0i) > 0.0)?1.0:0.0); -R124i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R124i.y; -// 4 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -PV0i.y = 0 - PS1i; -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(backupReg0i))?1.0:0.0); -R125i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R125i.x; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.y = 0 - PS0i; -PV1i.w = max(R124i.y, PV0i.y); -R126i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R126i.w; -// 6 -R127i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * 0.5 + intBitsToFloat(R0i.y))); -PV0i.y = int(1) - PV1i.w; -PV0i.z = max(R125i.x, PV1i.y); -PV0i.w = 0 - PS1i; -PS0i = floatBitsToInt(float(R125i.w)); -// 7 -PV1i.x = int(1) - PV0i.z; -PV1i.y = max(R126i.w, PV0i.w); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R126i.w = PV0i.y * R6i.x; -PS1i = R126i.w; -// 8 -PV0i.x = int(1) - PV1i.y; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[45].x)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -R125i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -PS0i = PV1i.x * R6i.y; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockVS7[45].y)); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -PV1i.z = PS0i + R126i.w; -R126i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z)); -PS1i = PV0i.x * R6i.z; -// 10 -R125i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y)); -R124i.y = PS1i + PV1i.z; -PV0i.z = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -PV0i.w = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -R126i.z = int(intBitsToFloat(R125i.w)); -PS0i = R126i.z; -// 11 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockVS7[46].w) + intBitsToFloat(PV0i.z))); -PV1i.y = 0 - PS0i; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),uf_blockVS7[46].z) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R13i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(R126i.w)))); -R124i.x = floatBitsToInt(float(R2i.w)); -PS1i = R124i.x; -// 12 -PV0i.x = max(R126i.z, PV1i.y); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[44].y) + intBitsToFloat(R125i.x))); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[45].z) + intBitsToFloat(PV1i.z))); -R126i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R1i.z))); -// 13 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[45].w) + intBitsToFloat(backupReg0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.x)), intBitsToFloat(PS0i))); -PV1i.w = int(1) - PV0i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R1i.z)); -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -PS0i = PV1i.w * R6i.w; -// 15 -backupReg0i = R124i.z; -R125i.x = PS0i + R124i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R126i.w))); -PV1i.z = R124i.z; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 16 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R1i.z)))?1.0:0.0); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R1i.z))) + intBitsToFloat(PV1i.z)); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS1i))); -PV0i.z = R125i.z; -R123i.w = ((R3i.y == 0)?(0):(int(1))); -PV0i.w = R123i.w; -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 17 -backupReg0i = R124i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.z)) + -(0.5))); -PV1i.y = (PV0i.w == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R124i.z = (PV0i.w == int(1))?int(0xFFFFFFFF):int(0x0); -R126i.w = ((intBitsToFloat(PV0i.x) == 0.0)?(backupReg0i):(PV0i.y)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -R123i.y = ((PV1i.y == 0)?(R5i.x):(R5i.z)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w)); -R123i.w = ((PV1i.y == 0)?(R5i.y):(R5i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(R126i.z)); -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV0i.x)) + -(0.5))); -PV1i.x = R123i.x; -R123i.y = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV0i.z):(R126i.w)); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -R126i.w = ((R124i.z == 0)?(PV0i.y):(R5i.y)); -R127i.y = ((R124i.z == 0)?(PV0i.w):(R5i.z)); -PS1i = R127i.y; -// 20 -backupReg0i = R124i.z; -backupReg0i = R124i.z; -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(PV1i.z)))); -R123i.y = ((-(intBitsToFloat(R124i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.y = R123i.y; -R124i.z = ((backupReg0i == 0)?(R5i.x):(R5i.y)); -R6i.w = ((backupReg0i == 0)?(R5i.y):(R5i.z)); -PS0i = int(uf_blockVS7[53].z); -// 21 -R123i.w = ((intBitsToFloat(R1i.z) == 0.0)?(R124i.x):(PV0i.y)); -PV1i.w = R123i.w; -R6i.y = floatBitsToInt(float(PS0i)); -PS1i = R6i.y; -// 22 -R1i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.w)); -// 23 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(R126i.w))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(R127i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -PV1i.z = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -PV1i.w = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -PS1i = floatBitsToInt(float(PS0i)); -// 24 -PV0i.x = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.w))); -PV0i.y = R123i.y; -R6i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.w)); -R2i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.z)); -R3i.x = floatBitsToInt(float(R125i.x)); -PS0i = R3i.x; -// 25 -R6i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.x))); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y))); -R1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R3i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R4i.w = floatBitsToInt(float(R125i.x)); -PS1i = R4i.w; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(abs(intBitsToFloat(R4i.w))); -PV0i.y = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + -(intBitsToFloat(R3i.w))); -R125i.w = ((R3i.y == 0)?(0):(0x00000002)); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R6i.y))); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R4i.w)), intBitsToFloat(PS0i))); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * 0.5 + intBitsToFloat(R3i.x))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R13i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R6i.z)))); -R126i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(R6i.w)) + intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R6i.y)); -// 2 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R125i.y = (R125i.w == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[49].y) + intBitsToFloat(R2i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 3 -backupReg0i = R127i.x; -R127i.x = (R125i.w == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R1i.w)) + intBitsToFloat(backupReg0i))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 4 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(R6i.y))) + intBitsToFloat(PV1i.y)); -R124i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS1i))); -PV0i.y = R124i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[50].z) + intBitsToFloat(R6i.x))); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.y) >= abs(intBitsToFloat(R6i.y)))?1.0:0.0); -PS0i = int(intBitsToFloat(PV1i.z)); -// 5 -backupReg0i = R127i.y; -backupReg1i = R126i.w; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R125i.w)) + -(0.5))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(PV0i.y)) + -(0.5))); -R124i.z = ((intBitsToFloat(PV0i.w) == 0.0)?(backupReg0i):(PV0i.x)); -PV1i.z = R124i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[50].w) + intBitsToFloat(backupReg1i))); -PS1i = floatBitsToInt(float(PS0i)); -// 6 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.y)),intBitsToFloat(PS1i)) + intBitsToFloat(R127i.z))); -PV0i.y = R123i.y; -R123i.z = ((R127i.x == 0)?(R5i.y):(R5i.x)); -PV0i.z = R123i.z; -R123i.w = ((R127i.x == 0)?(R5i.x):(R5i.z)); -PV0i.w = R123i.w; -R124i.y = int(uf_blockVS7[58].z); -PS0i = R124i.y; -// 7 -backupReg0i = R126i.w; -backupReg1i = R127i.y; -R123i.x = ((-(intBitsToFloat(R124i.z)) > 0.0)?(PV0i.x):(R124i.z)); -PV1i.x = R123i.x; -R127i.y = ((R125i.y == 0)?(PV0i.w):(R5i.y)); -R124i.z = ((R125i.y == 0)?(PV0i.z):(R5i.z)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)) + -(intBitsToFloat(PV0i.y)))); -R127i.w = ((R125i.y == 0)?(R5i.x):(R5i.y)); -PS1i = R127i.w; -// 8 -R127i.z = ((R125i.y == 0)?(R5i.y):(R5i.z)); -R123i.w = ((-(intBitsToFloat(R4i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.x)))):(PV1i.x)); -PV0i.w = R123i.w; -R127i.x = floatBitsToInt(float(R124i.y)); -PS0i = R127i.x; -// 9 -PV1i.x = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS0i)))?1.0:0.0); -R123i.z = ((intBitsToFloat(R6i.y) == 0.0)?(R4i.w):(PV0i.w)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(PS0i))) + 0.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 10 -R125i.y = ((intBitsToFloat(PV1i.x) == 0.0)?(0):(PV1i.w)); -PV0i.y = R125i.y; -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * 0.0); -PS0i = int(intBitsToFloat(PV1i.z)); -// 11 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R127i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -PS1i = floatBitsToInt(float(PS0i)); -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.z))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R124i.z))); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w)); -R123i.w = ((-(intBitsToFloat(R125i.y)) > 0.0)?(PV1i.x):(R125i.y)); -PV0i.w = R123i.w; -R124i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R124i.y; -// 13 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R13i.w)),uf_blockVS7[54].x) + -(intBitsToFloat(PV0i.z)))); -R123i.z = ((intBitsToFloat(R127i.x) == 0.0)?(0):(PV0i.w)); -PV1i.z = R123i.z; -R1i.w = floatBitsToInt(intBitsToFloat(R0i.y) + 0.5); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 14 -R6i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -R5i.y = floatBitsToInt(intBitsToFloat(R4i.x) + 0.5); -R6i.z = floatBitsToInt(intBitsToFloat(R126i.w) + 0.5); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS1i))); -PV0i.w = R126i.w; -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 15 -R127i.x = floatBitsToInt(intBitsToFloat(R7i.w) + -(uf_blockVS7[93].x)); -R0i.y = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(PV0i.w)) + -(0.5))); -R4i.w = floatBitsToInt(intBitsToFloat(R3i.z) + 0.0); -PV1i.w = R4i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 16 -backupReg0i = R125i.y; -R124i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(uf_blockVS7[104].w)); -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -PS0i = floatBitsToInt(float(backupReg0i)); -// 17 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.y))); -PV1i.y = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV0i.y)) + -(0.5))); -R126i.w = floatBitsToInt(float(R124i.y)); -PS1i = R126i.w; -// 18 -PV0i.x = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -PV0i.z = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R0i.y)); -// 19 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[54].y) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R5i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R5i.z = clampFI32(R5i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 20 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[55].z) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[105].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.w),uf_blockVS7[55].w) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -// 21 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.z)) + intBitsToFloat(R125i.x))); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R125i.z)) + -(intBitsToFloat(PV0i.y)))); -PV1i.w = R123i.w; -// 22 -R1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -R1i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.5); -PV0i.z = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R7i.w = ((intBitsToFloat(R124i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R0i.y = ((intBitsToFloat(R127i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R0i.y; -// 23 -R126i.y = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 24 -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -R3i.z = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[106].w)); -PV0i.z = R3i.z; -// 25 -R4i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R0i.z = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[107].w)); -PV1i.z = R0i.z; -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV0i.x)) + uf_blockVS7[104].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 26 -R8i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -R8i.w = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -// 27 -R5i.x = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[108].w)); -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[105].x)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS8[3].x, intBitsToFloat(R5i.z))); -R126i.y = ((intBitsToFloat(R5i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[109].w)); -PV0i.z = R126i.z; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R8i.x)) + 1.0); -R127i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R126i.w = floatBitsToInt(-(intBitsToFloat(R4i.x)) + 1.0); -PS1i = R126i.w; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R125i.y = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PV1i.w))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R126i.w))); -PS1i = floatBitsToInt(-(intBitsToFloat(R0i.y)) + 1.0); -// 4 -R125i.x = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[110].w)); -PV0i.x = R125i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(PS1i))); -R127i.z = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PV1i.x)) + uf_blockVS7[106].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 5 -R124i.x = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R0i.y = ((0.0 >= intBitsToFloat(R5i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R7i.w = floatBitsToInt(intBitsToFloat(R9i.y) * intBitsToFloat(0x40a00000)); -PS1i = R7i.w; -// 6 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[107].x)); -R0i.z = 0; -PV0i.z = R0i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.w) + -(uf_blockVS7[111].w)); -R8i.y = 0; -PS0i = R8i.y; -// 7 -PV1i.x = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R9i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R9i.y; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.x))); -R4i.w = ((R0i.y == 0)?(R9i.x):(PV0i.z)); -R2i.w = ((R0i.y == 0)?(R7i.z):(PS0i)); -PS1i = R2i.w; -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R127i.y = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -R7i.z = ((R0i.y == 0)?(R10i.y):(R7i.w)); -R6i.w = ((R0i.y == 0)?(R11i.w):(R11i.w)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -R8i.w = ((R0i.y == 0)?(R16i.z):(R16i.z)); -// 10 -R3i.y = ((R0i.y == 0)?(0):(0x3f800000)); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R127i.z))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.x)) + uf_blockVS7[108].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 11 -R123i.x = ((R0i.y == 0)?(0):(R1i.x)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -R5i.w = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -R127i.z = ((R0i.y == 0)?(0):(R1i.z)); -PS1i = R127i.z; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[109].x)); -R123i.z = ((R0i.y == 0)?(0):(R1i.w)); -PV0i.z = R123i.z; -R127i.w = ((R0i.y == 0)?(0):(R6i.x)); -R2i.x = ((R3i.y == 0)?(R1i.x):(PV1i.x)); -PS0i = R2i.x; -// 13 -R9i.x = ((R3i.y == 0)?(R1i.w):(PV0i.z)); -R126i.y = ((R0i.y == 0)?(R16i.z):(R16i.z)); -PV1i.z = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R122i.x = ((R0i.y == 0)?(0):(R8i.z)); -PS1i = R122i.x; -// 14 -backupReg0i = R125i.y; -R17i.x = ((R3i.y == 0)?(R8i.z):(PS1i)); -R125i.y = ((R0i.y == 0)?(0):(R6i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 15 -backupReg0i = R0i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(PS0i)); -R123i.z = ((backupReg0i == 0)?(0):(R10i.x)); -PV1i.z = R123i.z; -// 16 -backupReg0i = R124i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[110].x)); -PV0i.x = R123i.x; -R17i.y = ((R3i.y == 0)?(R10i.x):(PV1i.z)); -R124i.z = ((R0i.y == 0)?(0):(R9i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 17 -R123i.x = ((R0i.y == 0)?(0):(R11i.y)); -PV1i.x = R123i.x; -R123i.y = ((R0i.y == 0)?(0):(R10i.w)); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R126i.w = ((R0i.y == 0)?(0):(R11i.x)); -R125i.x = ((R0i.y == 0)?(0):(R12i.x)); -PS1i = R125i.x; -// 18 -R10i.x = ((R3i.y == 0)?(R10i.w):(PV1i.y)); -R4i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R4i.y; -R17i.z = ((R3i.y == 0)?(R11i.y):(PV1i.x)); -R17i.w = ((R3i.y == 0)?(R9i.w):(R124i.z)); -R1i.x = 0; -PS0i = R1i.x; -// 19 -R123i.x = ((R0i.y == 0)?(R0i.x):(PS0i)); -PV1i.x = R123i.x; -R123i.y = ((R0i.y == 0)?(0):(R1i.y)); -PV1i.y = R123i.y; -R123i.z = ((R0i.y == 0)?(R16i.x):(PS0i)); -PV1i.z = R123i.z; -R125i.w = ((R0i.y == 0)?(PV0i.y):(PV0i.y)); -R122i.x = ((R0i.y == 0)?(0):(R9i.z)); -PS1i = R122i.x; -// 20 -R16i.x = ((R3i.y == 0)?(PV1i.x):(PV1i.z)); -R2i.y = ((R3i.y == 0)?(R1i.y):(PV1i.y)); -R123i.z = ((R0i.y == 0)?(R15i.x):(R0i.z)); -PV0i.z = R123i.z; -R124i.w = ((R0i.y == 0)?(R15i.z):(R7i.w)); -R10i.y = ((R3i.y == 0)?(R9i.z):(PS1i)); -PS0i = R10i.y; -// 21 -R15i.x = ((R3i.y == 0)?(R4i.w):(PV0i.z)); -R123i.y = ((R0i.y == 0)?(0):(R12i.y)); -PV1i.y = R123i.y; -R2i.z = ((R3i.y == 0)?(R1i.z):(R127i.z)); -R4i.w = ((R0i.y == 0)?(R15i.w):(R11i.w)); -// 22 -R10i.z = ((R3i.y == 0)?(R12i.y):(PV1i.y)); -R10i.w = ((R3i.y == 0)?(R11i.x):(R126i.w)); -// 23 -R123i.x = ((R0i.y == 0)?(0):(R5i.y)); -PV1i.x = R123i.x; -R127i.y = ((R0i.y == 0)?(0):(R12i.w)); -// 24 -R9i.y = ((R3i.y == 0)?(R5i.y):(PV1i.x)); -R9i.z = ((R3i.y == 0)?(R6i.x):(R127i.w)); -R9i.w = ((R3i.y == 0)?(R6i.z):(R125i.y)); -// 25 -R123i.x = ((R0i.y == 0)?(R16i.y):(R4i.y)); -PV1i.x = R123i.x; -// 26 -R16i.y = ((R3i.y == 0)?(R125i.w):(PV1i.x)); -R16i.z = ((R3i.y == 0)?(R8i.w):(R126i.y)); -// 27 -R123i.z = ((R0i.y == 0)?(0):(R13i.y)); -PV1i.z = R123i.z; -R125i.w = ((R0i.y == 0)?(0):(R14i.y)); -// 28 -R11i.x = ((R3i.y == 0)?(R13i.y):(PV1i.z)); -R11i.y = ((R3i.y == 0)?(R12i.w):(R127i.y)); -R11i.z = ((R3i.y == 0)?(R12i.x):(R125i.x)); -// 29 -R11i.w = ((R3i.y == 0)?(R14i.y):(R125i.w)); -// 30 -R123i.y = ((R0i.y == 0)?(R15i.y):(R8i.y)); -PV0i.y = R123i.y; -// 31 -R15i.y = ((R3i.y == 0)?(R2i.w):(PV0i.y)); -R15i.z = ((R3i.y == 0)?(R7i.z):(R124i.w)); -// 32 -R15i.w = ((R3i.y == 0)?(R6i.w):(R4i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R15i.x), intBitsToFloat(R15i.y), intBitsToFloat(R15i.z), intBitsToFloat(R15i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R11i.x), intBitsToFloat(R11i.y), intBitsToFloat(R11i.z), intBitsToFloat(R11i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R10i.x), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y), intBitsToFloat(R16i.z), intBitsToFloat(R16i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/344d8b1f7d6f2b8e_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/344d8b1f7d6f2b8e_0000000000000000_vs.txt deleted file mode 100644 index 3d89f76d..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/344d8b1f7d6f2b8e_0000000000000000_vs.txt +++ /dev/null @@ -1,2391 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 344d8b1f7d6f2b8e // guardian explosion yellow smoke vs -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem5; -layout(location = 5) out vec4 passParameterSem8; -layout(location = 7) out vec4 passParameterSem11; -layout(location = 8) out vec4 passParameterSem14; -layout(location = 9) out vec4 passParameterSem15; -layout(location = 10) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 6) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem4.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R4i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + 1.0); -R2i.w = 0; -R5i.w = floatBitsToInt(1.0); -PS0i = R5i.w; -// 1 -R8i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + uf_blockVS8[2].x); -R1i.w = floatBitsToInt(-(intBitsToFloat(R9i.x)) + 1.0); -PS1i = R1i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R8i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R4i.w = R5i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R4i.w = R2i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R4i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R3i.w)); -// 1 -R3i.x = floatBitsToInt(float(PS0i)); -PS1i = R3i.x; -// 2 -predResult = (intBitsToFloat(R8i.w) >= intBitsToFloat(R3i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R2i.w = R5i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R2i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[10].y)); -PV0i.y = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -R126i.z = floatBitsToInt(max(intBitsToFloat(R7i.x), 0.0)); -PV0i.w = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -PV1i.x = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -R127i.y = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.w))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -R15i.x = floatBitsToInt(1.0 / intBitsToFloat(R3i.x)); -PS1i = R15i.x; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.y = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.w)); -R15i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS1i)); -PV0i.w = R15i.w; -R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R124i.z; -// 3 -PV1i.x = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -R2i.w = 0x3f800000; -PS1i = R2i.w; -// 4 -PV0i.x = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -R126i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(R124i.z)); -PV0i.z = floatBitsToInt(min(intBitsToFloat(R126i.z), 0.0)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.y))); -R124i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R124i.x; -// 5 -R3i.x = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.w)); -PV1i.y = R127i.y; -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(-(uf_blockVS7[98].w) + uf_blockVS7[99].w); -R126i.z = floatBitsToInt(-(uf_blockVS7[98].z) + uf_blockVS7[99].z); -PS1i = R126i.z; -// 6 -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(uf_blockVS7[96].w)); -PV0i.x = R125i.x; -R0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(uf_blockVS7[97].w)); -PV0i.y = R0i.y; -R125i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -PS0i = R125i.y; -// 7 -backupReg0i = R127i.y; -backupReg0i = R127i.y; -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -R127i.y = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.w))); -R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[98].w)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[99].w)); -// 8 -backupReg0i = R0i.y; -R126i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(-(uf_blockVS7[98].x) + uf_blockVS7[99].x); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.z))); -R0i.z = ((intBitsToFloat(PS1i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R0i.z; -// 9 -PV1i.x = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(R127i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(R125i.y)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.z))); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R0i.x = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); -PS1i = R0i.x; -// 10 -backupReg0i = R0i.z; -PV0i.x = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(R127i.w)); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.w))); -PV0i.y = R3i.y; -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.z))); -PS0i = R127i.z; -// 11 -backupReg0i = R0i.x; -backupReg1i = R126i.y; -PV1i.x = floatBitsToInt(uf_blockVS7[98].x + intBitsToFloat(PV0i.z)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(backupReg0i))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -PV1i.w = R124i.w; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(backupReg1i))); -PS1i = R124i.y; -// 12 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.z)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(R125i.y)); -PV0i.w = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(backupReg0i))); -PS0i = R125i.w; -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(R124i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.z))); -// 14 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt(-(uf_blockVS7[97].z) + uf_blockVS7[98].z); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R124i.x)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(uf_blockVS7[98].z + intBitsToFloat(PV1i.w)); -// 15 -PV1i.x = floatBitsToInt(-(uf_blockVS7[98].y) + uf_blockVS7[99].y); -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(R124i.x)); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].x, intBitsToFloat(R0i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R124i.w))); -PS1i = R127i.z; -// 16 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R125i.y)); -PV0i.y = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(R127i.y)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R127i.w)); -R127i.w = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(R124i.y)); -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(backupReg0i))); -PS0i = R127i.y; -// 17 -backupReg0i = R0i.y; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(R124i.z)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R125i.z))); -// 18 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(R125i.w)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R125i.z))); -PV0i.z = floatBitsToInt(uf_blockVS7[97].z + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt(uf_blockVS7[98].y + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R3i.y))); -// 19 -backupReg0i = R0i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R3i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R124i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R127i.y)); -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].y, intBitsToFloat(backupReg0i))); -PS1i = R127i.y; -// 20 -R124i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].z, intBitsToFloat(R0i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt(uf_blockVS7[13].x); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -PS0i = floatBitsToInt(uf_blockVS7[13].y); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 21 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.z)); -R3i.y = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV0i.w)); -R3i.z = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.y)); -// 22 -PV0i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV1i.x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV1i.w))); -// 23 -backupReg0i = R8i.z; -R8i.z = floatBitsToInt(uf_blockVS7[13].z); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R3i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV0i.x = R3i.x; -PV0i.y = R3i.x; -PV0i.z = R3i.x; -PV0i.w = R3i.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R0i.y = tempi.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = tempi.x; -// 3 -R124i.x = floatBitsToInt(-(intBitsToFloat(R3i.x)) + uf_blockVS6[17].x); -R127i.y = floatBitsToInt(-(intBitsToFloat(R0i.y)) + uf_blockVS6[17].y); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + uf_blockVS6[17].z); -R125i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(uf_blockVS6[17].x)); -R126i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(uf_blockVS6[17].y)); -PS1i = R126i.y; -// 4 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), uf_blockVS8[3].y)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), uf_blockVS8[3].y)); -R125i.z = floatBitsToInt(intBitsToFloat(R9i.z) + -(uf_blockVS6[17].z)); -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R8i.z))); -PS1i = R124i.w; -// 6 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.w)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(R125i.w)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R125i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 7 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R125i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS8[3].z)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 8 -PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.z)), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.y)), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), -(uf_blockVS6[1].z))); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.w)), intBitsToFloat(PS1i))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), -(uf_blockVS6[1].x))); -PS0i = R127i.w; -// 9 -backupReg0i = R124i.w; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.w))); -PV1i.x = R1i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), -(uf_blockVS6[1].y))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.x))); -PV1i.z = R1i.z; -R124i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].y,intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -PS1i = R4i.y; -// 10 -R124i.x = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV1i.x)); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].z,intBitsToFloat(R126i.w)) + intBitsToFloat(R127i.w))); -R124i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].x,intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PS1i)); -R127i.z = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV1i.z)); -PS0i = R127i.z; -// 11 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[3].w)); -PS1i = R125i.w; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R124i.w),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R126i.y; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.w),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.w),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 14 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -PV0i.x = R0i.x; -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -PV0i.y = R8i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -PV0i.z = R0i.z; -R127i.w = R126i.w; -R124i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R124i.w; -// 15 -backupReg0i = R126i.y; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -R126i.y = PV0i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -// 16 -backupReg0i = R0i.z; -R124i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.x))); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.y)),intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.w))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS1i)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R124i.z = R125i.y; -PS0i = R124i.z; -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.z))); -R126i.z = PV0i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.z))); -R125i.y = PV0i.w; -PS1i = R125i.y; -// 18 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV1i.x))); -R125i.w = R0i.z; -R3i.y = backupReg0i; -PS0i = R3i.y; -// 19 -R6i.x = R124i.z; -R6i.y = R127i.w; -R125i.z = R126i.x; -PV1i.z = R125i.z; -R0i.w = R126i.z; -R6i.z = R125i.y; -PS1i = R6i.z; -// 20 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.z),intBitsToFloat(R127i.w),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R3i.z = PV1i.z; -PS0i = R3i.z; -// 21 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.y),intBitsToFloat(R124i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R10i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(PV0i.x)); -PS1i = R10i.x; -// 22 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R3i.y),intBitsToFloat(R125i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -PS0i = R10i.y; -// 23 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R1i.y = tempi.x; -R10i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV0i.x)); -PS1i = R10i.z; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -backupReg0i = R3i.y; -R4i.x = floatBitsToInt(-(intBitsToFloat(R3i.x)) + intBitsToFloat(R10i.x)); -R3i.y = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(R10i.y)); -R8i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R10i.z)); -R126i.w = backupReg0i; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R6i.x))); -PS0i = R127i.y; -// 1 -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,0.0))); -PV1i.x = R6i.x; -PV1i.y = R6i.x; -PV1i.z = R6i.x; -PV1i.w = R6i.x; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R6i.y))); -PS1i = R127i.w; -// 2 -backupReg0i = R1i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.y = tempi.x; -R2i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(0x358637bd)); -PS0i = R2i.z; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R3i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R3i.y),intBitsToFloat(R8i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R3i.z))); -PS1i = R124i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R1i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R1i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R1i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R1i.y),intBitsToFloat(R2i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = tempi.x; -R125i.z = ((intBitsToFloat(PS0i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R125i.z; -// 6 -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R0i.w)) + intBitsToFloat(R127i.w))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R6i.z)) + intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R125i.w))); -// 7 -PV1i.x = ((intBitsToFloat(PS0i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(R124i.x))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.z)); -PS1i = floatBitsToInt(tempResultf); -// 8 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS1i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -R3i.z = ((R125i.z == 0)?(0):(PV1i.x)); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS1i))); -PS0i = R5i.z; -// 9 -R14i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R124i.z))); -R16i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y)) + intBitsToFloat(R127i.w))); -R23i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R0i.z)) + intBitsToFloat(R127i.y))); -// 10 -predResult = (R3i.z != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R3i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R3i.y),intBitsToFloat(R8i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockVS7[95].x)); -PS0i = R127i.x; -// 1 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), uf_blockVS7[95].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS7[95].x)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS1i))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -// 5 -backupReg0i = R10i.x; -backupReg1i = R10i.y; -backupReg2i = R10i.z; -R10i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R1i.x)); -R5i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R4i.y)); -R126i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(R1i.z)); -R6i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R10i.x)); -R6i.y = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R10i.y)); -PS0i = R6i.y; -// 1 -R126i.x = 0x3f800000; -R0i.y = floatBitsToInt(uf_blockVS7[60].x); -R11i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(R10i.z)); -PV1i.z = R11i.z; -R127i.w = 0x3f800000; -PV1i.w = R127i.w; -R0i.z = floatBitsToInt(uf_blockVS7[60].y); -PS1i = R0i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R12i.z = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R8i.y = tempi.x; -// 4 -R11i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = R11i.x; -PV0i.y = R11i.x; -PV0i.z = R11i.x; -PV0i.w = R11i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R14i.w = tempi.x; -// 6 -R1i.y = floatBitsToInt(uf_blockVS7[60].z); -PV0i.z = PV1i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R10i.w = floatBitsToInt((intBitsToFloat(R11i.x) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.w = R10i.w; -// 7 -R12i.x = floatBitsToInt((intBitsToFloat(R11i.x) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.x = R12i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R11i.x) * 0.0 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -R8i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R8i.x; -// 8 -PV0i.x = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -R12i.y = floatBitsToInt((intBitsToFloat(R12i.z) * 0.5 + intBitsToFloat(PV1i.y))); -R14i.z = floatBitsToInt((intBitsToFloat(R8i.y) * -(0.5) + intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PS1i)); -// 9 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 10 -R125i.x = floatBitsToInt(-(uf_blockVS7[69].x) + uf_blockVS7[70].x); -R1i.z = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 11 -R6i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R5i.y),intBitsToFloat(R126i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.z = tempi.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R5i.y),intBitsToFloat(R126i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 14 -R127i.x = floatBitsToInt(-(uf_blockVS7[69].w) + uf_blockVS7[70].w); -R123i.z = floatBitsToInt((intBitsToFloat(R127i.z) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -PV0i.w = PV1i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 15 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.z) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 16 -R2i.y = floatBitsToInt(uf_blockVS7[76].y); -R3i.z = floatBitsToInt(uf_blockVS7[76].x); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV0i.w))); -R3i.y = floatBitsToInt(uf_blockVS7[76].z); -R0i.w = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(PS0i)); -// 18 -PV0i.z = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV1i.x)); -// 19 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 20 -R5i.w = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[0].y)); -PV0i.w = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 1 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS8[0].z)); -PV1i.y = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[9].z) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PS1i))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 4 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[10].x) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -// 5 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -// 7 -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[68].w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[69].w)); -// 1 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R0i.w)) + uf_blockVS7[69].x)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R1i.z)) + uf_blockVS7[68].x)); -R126i.z = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R126i.z; -R127i.w = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), uf_blockVS7[59].x)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[70].w)); -R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS7[59].x)); -PS0i = R12i.w; -// 3 -R127i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV0i.z))); -R13i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS7[59].x)); -// 4 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -R127i.y = floatBitsToInt(intBitsToFloat(R2i.z) + -(uf_blockVS7[84].w)); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(intBitsToFloat(R2i.z) + -(uf_blockVS7[85].w)); -// 5 -R126i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.z))); -R126i.z = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 6 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R126i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = ((intBitsToFloat(R7i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PV0i.z))); -R2i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[70].x,intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[84].x)); -PV1i.w = R123i.w; -R0i.w = ((PS0i == 0)?(R9i.x):(R1i.w)); -PS1i = R0i.w; -// 8 -PV0i.x = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -R1i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[85].x,intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w))); -R0i.y = ((PV0i.x == 0)?(R9i.y):(R4i.z)); -R0i.z = ((PV0i.y == 0)?(R9i.x):(R1i.w)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), uf_blockVS8[1].x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockVS8[1].y)); -R16i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), uf_blockVS8[0].w)); -// 1 -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS8[1].w)); -R14i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.y))); -R15i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), uf_blockVS8[1].z)); -PS1i = ((intBitsToFloat(R7i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 2 -PV0i.x = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R3i.y = ((PS1i == 0)?(R9i.y):(R4i.z)); -PV0i.z = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R11i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.w))); -// 3 -backupReg0i = R1i.w; -R1i.x = ((PV0i.z == 0)?(R9i.y):(R4i.z)); -R1i.w = ((PV0i.x == 0)?(R9i.x):(backupReg0i)); -R10i.x = floatBitsToInt(uf_blockVS8[3].x); -PS1i = R10i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -PV0i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -PS0i = floatBitsToInt(uf_blockVS7[5].y) & int(1); -// 1 -PV1i.x = (PV0i.w == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = (PV0i.z == 0x00100000)?int(0xFFFFFFFF):int(0x0); -PV1i.z = (PV0i.x == 0x00080000)?int(0xFFFFFFFF):int(0x0); -PV1i.w = (PV0i.y == 0x00200000)?int(0xFFFFFFFF):int(0x0); -R3i.w = (int(1) != PS0i)?int(0xFFFFFFFF):int(0x0); -PS1i = R3i.w; -// 2 -R4i.x = ((PV1i.z == 0)?(R9i.x):(R0i.w)); -R1i.y = ((PV1i.w == 0)?(R9i.x):(R0i.z)); -R6i.z = ((PV1i.y == 0)?(R9i.y):(R0i.y)); -R4i.w = ((PV1i.x == 0)?(R9i.y):(R3i.y)); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 3 -PV1i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -PV1i.z = (PS0i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -R127i.x = int(uf_blockVS7[17].x); -PS1i = R127i.x; -// 4 -R5i.x = ((PV1i.z == 0)?(R9i.x):(R1i.w)); -PV0i.y = (PV1i.x == 0x01000000)?int(0xFFFFFFFF):int(0x0); -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -R125i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -R127i.z = int(uf_blockVS7[17].y); -PS0i = R127i.z; -// 5 -R125i.y = int(-1) + R127i.x; -R8i.z = ((PV0i.y == 0)?(R9i.y):(R1i.x)); -PS1i = floatBitsToInt(float(R127i.y)); -// 6 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(R126i.w)); -// 7 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R126i.z)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 9 -PV1i.x = 0 - PS0i; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 10 -PV0i.x = 0 - PS1i; -R126i.z = max(R126i.w, PV1i.x); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 11 -PV1i.x = 0 - PS0i; -R4i.z = max(R127i.w, PV0i.x); -PS1i = floatBitsToInt(float(R125i.w)); -// 12 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R1i.z = max(R126i.w, PV1i.x); -R126i.y = floatBitsToInt(float(R127i.x)); -PS0i = R126i.y; -// 13 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt(float(R127i.z)); -PS1i = R127i.y; -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(R15i.x) * intBitsToFloat(PV1i.w)); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 15 -PV1i.x = 0 - PS0i; -PS1i = int(intBitsToFloat(PV0i.x)); -// 16 -R127i.z = max(R126i.w, PV1i.x); -R9i.y = R126i.z * PS1i; -PS0i = R9i.y; -// 17 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 18 -PV0i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS1i)); -R2i.w = floatBitsToInt(float(R127i.x)); -PS0i = R2i.w; -// 19 -R3i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R2i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R2i.z; -// 20 -PS0i = floatBitsToInt(float(PS1i)); -// 21 -PV1i.w = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PS0i)); -R9i.x = floatBitsToInt(float(R2i.z)); -PS1i = R9i.x; -// 22 -R123i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R123i.x; -R126i.z = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R5i.z = floatBitsToInt(1.0 / abs(intBitsToFloat(R2i.w))); -PS0i = R5i.z; -// 23 -PV1i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R9i.x)), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(PV0i.x)); -// 24 -R2i.x = int(1) - PS1i; -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -R3i.z = PS1i * R125i.y; -PS0i = R3i.z; -// 25 -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(R126i.z))); -PV1i.y = R125i.y; -PS1i = floatBitsToInt(float(R124i.w)); -// 26 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) >= abs(intBitsToFloat(R2i.w)))?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(-(abs(intBitsToFloat(R2i.w))) + intBitsToFloat(PV1i.y)); -R0i.x = int(intBitsToFloat(R126i.x)); -PS0i = R0i.x; -// 27 -backupReg0i = R127i.z; -R127i.z = ((intBitsToFloat(PV0i.x) == 0.0)?(R125i.y):(PV0i.w)); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.y))); -R0i.w = backupReg0i * PS0i; -PS1i = R0i.w; -// 28 -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z)); -R1i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R1i.x; -// 29 -R0i.z = 0 - PS0i; -R1i.w = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R123i.x = ((-(intBitsToFloat(R9i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(R1i.w)))):(R1i.w)); -PV0i.x = R123i.x; -PV0i.y = max(R1i.x, R0i.z); -// 1 -R123i.z = ((intBitsToFloat(R2i.w) == 0.0)?(R9i.x):(PV0i.x)); -PV1i.z = R123i.z; -PS1i = PV0i.y * R0i.x; -// 2 -R125i.y = R2i.z + PS1i; -PS0i = int(intBitsToFloat(PV1i.z)); -// 3 -PS1i = R2i.x * PS0i; -// 4 -PV0i.y = PS1i + R3i.z; -R126i.x = R1i.z * R125i.y; -PS0i = R126i.x; -// 5 -PS1i = R4i.z * PV0i.y; -// 6 -PV0i.w = PS1i + R9i.y; -// 7 -PV1i.x = R126i.x + PV0i.w; -// 8 -PV0i.z = R0i.w + PV1i.x; -// 9 -R126i.y = floatBitsToInt(float(PV0i.z)); -PS1i = R126i.y; -// 10 -R127i.z = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), abs(intBitsToFloat(PS1i)))); -// 11 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -// 12 -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.z))); -PV0i.y = R125i.y; -// 13 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R2i.w)))?1.0:0.0); -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(R2i.w))) + intBitsToFloat(PV0i.y)); -// 14 -R127i.z = ((intBitsToFloat(PV1i.x) == 0.0)?(R125i.y):(PV1i.w)); -PV0i.z = R127i.z; -// 15 -PV1i.y = floatBitsToInt(abs(intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.z)); -// 16 -R123i.w = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV1i.y):(R127i.z)); -PV0i.w = R123i.w; -// 17 -R123i.x = ((-(intBitsToFloat(R126i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.x = R123i.x; -// 18 -R123i.z = ((intBitsToFloat(R2i.w) == 0.0)?(R126i.y):(PV1i.x)); -PV0i.z = R123i.z; -// 19 -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 20 -R124i.w = floatBitsToInt(float(PS1i)); -PS0i = R124i.w; -// 21 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R127i.x = floatBitsToInt(float(R126i.y)); -PS1i = R127i.x; -// 22 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(abs(intBitsToFloat(PS1i)) * 0.25); -R126i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -// 23 -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.5 + intBitsToFloat(R124i.w))); -PV1i.w = R123i.w; -// 24 -R126i.x = floatBitsToInt((-(intBitsToFloat(PV1i.y)) * 4.0 + intBitsToFloat(R126i.w))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * 0.25); -R4i.z = ((R3i.w == 0)?(R7i.x):(R7i.y)); -// 25 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.x) >= 4.0)?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xc0800000)); -R0i.w = int(uf_blockVS7[26].x); -PS1i = R0i.w; -// 26 -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R126i.w = ((intBitsToFloat(PV1i.y) == 0.0)?(R126i.x):(PV1i.z)); -PV0i.w = R126i.w; -PS0i = int(intBitsToFloat(PV1i.x)); -// 27 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + 4.0); -R2i.w = PS0i + 0x00000012; -R9i.x = int(uf_blockVS7[26].y); -PS1i = R9i.x; -// 28 -R123i.z = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV1i.x):(R126i.w)); -PV0i.z = R123i.z; -PS0i = floatBitsToInt(float(R127i.z)); -// 29 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R123i.y = ((-(intBitsToFloat(R127i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -// 30 -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PS0i = int(intBitsToFloat(PV1i.y)); -// 31 -PV1i.x = int(-1) + PS0i; -R126i.y = 0xfffffffd + PS0i; -R127i.z = 0xfffffffe + PS0i; -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -PS1i = floatBitsToInt(float(PS0i)); -// 32 -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.x)); -// 33 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(float(R127i.z)); -// 34 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.x; -// 35 -PV1i.x = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.y))); -R127i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R127i.z; -// 36 -PV0i.x = 0 - PS1i; -PV0i.y = max(R127i.x, PV1i.x); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 37 -R3i.x = int(1) - PV0i.y; -PV1i.y = 0 - PS0i; -PV1i.w = max(R127i.z, PV0i.x); -PS1i = floatBitsToInt(float(R126i.y)); -// 38 -PV0i.x = max(R125i.y, PV1i.y); -R3i.y = int(1) - PV1i.w; -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R125i.y = int(intBitsToFloat(R126i.z)); -PS0i = R125i.y; -// 39 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.w))); -R5i.z = int(1) - PV0i.x; -PV1i.w = 0 - PS0i; -PS1i = floatBitsToInt(float(R126i.w)); -// 40 -R0i.x = max(R125i.y, PV1i.w); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 41 -PV1i.x = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.y))); -// 42 -PV0i.z = max(R126i.w, PV1i.x); -R0i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R0i.y; -// 43 -R9i.y = int(1) - PV0i.z; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(uf_blockVS7[R2i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -R127i.y = int(-1) + R0i.w; -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -PV0i.w = 0 - R0i.y; -R126i.w = R9i.y * R2i.w; -PS0i = R126i.w; -// 1 -R1i.x = max(R0i.y, PV0i.w); -R127i.x = R5i.z * R2i.z; -PS1i = R127i.x; -// 2 -R126i.z = R3i.y * R2i.y; -PS0i = R126i.z; -// 3 -PS1i = R3i.x * R2i.x; -// 4 -PV0i.w = R126i.z + PS1i; -PS0i = floatBitsToInt(float(R127i.z)); -// 5 -PV1i.x = R127i.x + PV0i.w; -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R126i.x)); -// 6 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R2i.z = R126i.w + PV1i.x; -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(float(backupReg0i)); -PS0i = R127i.z; -// 7 -R126i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.y))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS0i))); -R125i.y = int(intBitsToFloat(PV0i.x)); -PS1i = R125i.y; -// 8 -PV0i.x = 0 - PS1i; -PV0i.w = floatBitsToInt(intBitsToFloat(R15i.x) * intBitsToFloat(PV1i.y)); -R126i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.y; -// 9 -R2i.x = max(R125i.y, PV0i.x); -PV1i.w = 0 - PS0i; -PS1i = int(intBitsToFloat(PV0i.w)); -// 10 -R125i.x = max(R126i.y, PV1i.w); -R126i.z = R0i.x * PS1i; -PS0i = R126i.z; -// 11 -PS1i = floatBitsToInt(float(R9i.x)); -// 12 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 13 -backupReg0i = R0i.w; -PV1i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(float(backupReg0i)); -PS1i = R126i.y; -// 14 -R125i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R124i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R124i.x; -// 15 -PS1i = floatBitsToInt(float(PS0i)); -// 16 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PS1i)); -R124i.w = floatBitsToInt(float(R124i.x)); -PS0i = R124i.w; -// 17 -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R123i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -R3i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.y))); -PS1i = R3i.x; -// 18 -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.w)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.w)); -// 19 -R9i.x = int(1) - PS0i; -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R0i.x = PS0i * R127i.y; -PS1i = R0i.x; -// 20 -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R125i.w)) + intBitsToFloat(R127i.x))); -PV0i.z = R127i.z; -PS0i = floatBitsToInt(float(R126i.x)); -// 21 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -R127i.w = int(intBitsToFloat(R126i.w)); -PS1i = R127i.w; -// 22 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV1i.w) == 0.0)?(R127i.z):(PV1i.y)); -PV0i.x = R125i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R127i.y = backupReg0i * PS1i; -PS0i = R127i.y; -// 23 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x)); -R126i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R126i.w; -// 24 -PV0i.x = 0 - PS1i; -R123i.y = ((-(intBitsToFloat(R125i.x)) > 0.0)?(PV1i.z):(R125i.x)); -PV0i.y = R123i.y; -// 25 -PV1i.z = max(R126i.w, PV0i.x); -R123i.w = ((-(intBitsToFloat(R124i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -// 26 -R123i.x = ((intBitsToFloat(R126i.y) == 0.0)?(R124i.w):(PV1i.w)); -PV0i.x = R123i.x; -PS0i = PV1i.z * R127i.w; -// 27 -R127i.z = R124i.x + PS0i; -PS1i = int(intBitsToFloat(PV0i.x)); -// 28 -PS0i = R9i.x * PS1i; -// 29 -PV1i.z = PS0i + R0i.x; -R127i.w = R2i.x * R127i.z; -PS1i = R127i.w; -// 30 -PS0i = R1i.x * PV1i.z; -// 31 -PV1i.y = PS0i + R126i.z; -// 32 -PV0i.w = R127i.w + PV1i.y; -// 33 -PV1i.x = R127i.y + PV0i.w; -// 34 -R127i.z = floatBitsToInt(float(PV1i.x)); -PS0i = R127i.z; -// 35 -R124i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), abs(intBitsToFloat(PS0i)))); -// 36 -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -// 37 -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R125i.w)) + intBitsToFloat(R124i.x))); -PV1i.z = R126i.z; -// 38 -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -// 39 -R124i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(R126i.z):(PV0i.y)); -PV1i.x = R124i.x; -// 40 -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.x)); -// 41 -R123i.y = ((-(intBitsToFloat(R124i.x)) > 0.0)?(PV0i.z):(R124i.x)); -PV1i.y = R123i.y; -// 42 -R123i.w = ((-(intBitsToFloat(R127i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.w = R123i.w; -// 43 -R123i.x = ((intBitsToFloat(R126i.y) == 0.0)?(R127i.z):(PV0i.w)); -PV1i.x = R123i.x; -// 44 -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 45 -R126i.y = floatBitsToInt(float(PS0i)); -PS1i = R126i.y; -// 46 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R0i.w = floatBitsToInt(float(R127i.z)); -PS0i = R0i.w; -// 47 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -R2i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -// 48 -R3i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R126i.y))); -R4i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.y) * 0.25); -R125i.w = floatBitsToInt((-(intBitsToFloat(R4i.z)) * 4.0 + intBitsToFloat(R2i.y))); -PV0i.w = R125i.w; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0xc0800000)); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt((intBitsToFloat(PV0i.w) >= 4.0)?1.0:0.0); -// 2 -R126i.y = ((intBitsToFloat(PV1i.z) == 0.0)?(R125i.w):(PV1i.x)); -PV0i.y = R126i.y; -PS0i = int(intBitsToFloat(PV1i.y)); -// 3 -R2i.y = PS0i + 0x0000001b; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 4.0); -PS1i = int(uf_blockVS7[48].z); -// 4 -R123i.x = ((-(intBitsToFloat(R126i.y)) > 0.0)?(PV1i.w):(R126i.y)); -PV0i.x = R123i.x; -R0i.y = floatBitsToInt(float(PS1i)); -PS0i = R0i.y; -// 5 -R123i.z = ((-(intBitsToFloat(R0i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.z = R123i.z; -R0i.w = floatBitsToInt(float(R2i.z)); -PS1i = R0i.w; -// 6 -PS0i = int(intBitsToFloat(PV1i.z)); -// 7 -R124i.x = 0xfffffffe + PS0i; -R126i.y = floatBitsToInt(abs(intBitsToFloat(R0i.y))); -R127i.z = 0xfffffffd + PS0i; -PV1i.w = int(-1) + PS0i; -PS1i = floatBitsToInt(float(PS0i)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.w)); -// 9 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R124i.x)); -// 10 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -R125i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R125i.w; -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.y = 0 - PS0i; -R124i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R124i.x; -// 12 -PV0i.x = 0 - PS1i; -PV0i.z = max(R125i.w, PV1i.y); -R126i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R126i.z; -// 13 -R2i.x = int(1) - PV0i.z; -PV1i.y = max(R124i.x, PV0i.x); -PV1i.z = 0 - PS0i; -PS1i = floatBitsToInt(float(R127i.z)); -// 14 -R1i.x = int(1) - PV1i.y; -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = max(R126i.z, PV1i.z); -R0i.x = floatBitsToInt(float(R2i.z)); -PS0i = R0i.x; -// 15 -R3i.x = int(1) - PV0i.w; -R127i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R0i.y))); -// 16 -PV0i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R0i.x)), intBitsToFloat(PS1i))); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 17 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PV1i.w = 0 - PS0i; -// 18 -backupReg0i = R127i.y; -PV0i.x = max(R125i.y, PV1i.w); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R126i.y)) + intBitsToFloat(backupReg0i))); -PV0i.y = R127i.y; -// 19 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R0i.y)))?1.0:0.0); -R2i.z = int(1) - PV0i.x; -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(R0i.y))) + intBitsToFloat(PV0i.y)); -// 20 -R4i.z = ((intBitsToFloat(PV1i.x) == 0.0)?(R127i.y):(PV1i.w)); -PV0i.z = R4i.z; -// 21 -R3i.y = floatBitsToInt(abs(intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.z)); -} -if( activeMaskStackC[3] == true ) { -R9i.xyzw = floatBitsToInt(uf_blockVS7[R2i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((intBitsToFloat(R0i.w) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(R0i.w))?1.0:0.0); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[45].x)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) * 2.0); -R123i.w = ((-(intBitsToFloat(R4i.z)) > 0.0)?(R3i.y):(R4i.z)); -PV0i.w = R123i.w; -R127i.y = R2i.z * R9i.w; -PS0i = R127i.y; -// 1 -R123i.x = ((-(intBitsToFloat(R0i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), uf_blockVS7[45].y)); -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R127i.w = R3i.x * R9i.z; -PS1i = R127i.w; -// 2 -R125i.x = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y)); -R126i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R0i.w))); -R126i.z = ((intBitsToFloat(R0i.y) == 0.0)?(R0i.x):(PV1i.x)); -PV0i.w = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R124i.x = R1i.x * R9i.y; -PS0i = R124i.x; -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV1i.w = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -PS1i = R2i.x * R9i.x; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[46].z) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -PV0i.y = R124i.x + PS1i; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockVS7[46].w) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(R125i.x)))); -R125i.y = int(intBitsToFloat(R126i.z)); -PS0i = R125i.y; -// 5 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[45].z) + intBitsToFloat(PV0i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[45].w) + intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[44].y) + intBitsToFloat(R127i.x))); -PV1i.w = R127i.w + PV0i.y; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R0i.y)); -// 6 -R126i.x = R127i.y + PV1i.w; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 7 -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R123i.y = ((R3i.w == 0)?(0):(int(1))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 8 -R125i.x = (PV1i.y == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.x = R125i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PV1i.x)) + -(0.5))); -PV0i.w = (PV1i.y == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.y; -// 9 -backupReg0i = R125i.y; -R123i.x = ((PV0i.w == 0)?(R7i.x):(R7i.z)); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(PV0i.y)) + -(0.5))); -R123i.z = ((PV0i.w == 0)?(R7i.y):(R7i.x)); -PV1i.z = R123i.z; -R127i.w = ((PV0i.x == 0)?(R7i.x):(R7i.y)); -PS1i = floatBitsToInt(float(backupReg0i)); -// 10 -R123i.x = ((R125i.x == 0)?(PV1i.z):(R7i.z)); -PV0i.x = R123i.x; -R123i.y = ((R125i.x == 0)?(PV1i.x):(R7i.y)); -PV0i.y = R123i.y; -R125i.z = ((R125i.x == 0)?(R7i.y):(R7i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.w))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(R127i.y)); -// 11 -backupReg0i = R124i.x; -backupReg1i = R127i.z; -R124i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(PV0i.y))); -R124i.x = floatBitsToInt(intBitsToFloat(R124i.x) * 2.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.z))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV0i.x))); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.w))); -PS1i = int(uf_blockVS7[53].z); -// 12 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R125i.y)) + -(intBitsToFloat(PV1i.y)))); -PV0i.y = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -PV0i.z = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R126i.w = floatBitsToInt(float(PS1i)); -PS0i = R126i.w; -// 13 -backupReg0i = R127i.z; -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R125i.y = floatBitsToInt(-(intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.z)); -R127i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R124i.x = floatBitsToInt(float(R126i.x)); -PS1i = R124i.x; -// 14 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R127i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -R126i.z = floatBitsToInt(float(R126i.x)); -PS0i = R126i.z; -// 15 -backupReg0i = R125i.z; -R126i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -R125i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); -R9i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R125i.y)))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.w))); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.z)), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[49].y) + intBitsToFloat(R127i.z))); -R9i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[50].z) + intBitsToFloat(R127i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * 0.5 + intBitsToFloat(R124i.x))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 17 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[50].w) + intBitsToFloat(R125i.z))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(PS0i)); -R125i.w = ((R3i.w == 0)?(0):(0x00000002)); -PV1i.w = R125i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 18 -backupReg0i = R127i.x; -R127i.x = (PV1i.w == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R6i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS1i))); -PV0i.z = R6i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R126i.x))); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 19 -PV1i.x = floatBitsToInt(-(abs(intBitsToFloat(R126i.w))) + intBitsToFloat(PV0i.w)); -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + -(0.5))); -PV1i.z = floatBitsToInt((intBitsToFloat(PV0i.w) >= abs(intBitsToFloat(R126i.w)))?1.0:0.0); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS0i))); -PV1i.w = R124i.w; -PS1i = int(intBitsToFloat(PV0i.y)); -// 20 -PV0i.x = (R125i.w == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R126i.y = ((intBitsToFloat(PV1i.z) == 0.0)?(R127i.w):(PV1i.x)); -PV0i.y = R126i.y; -R4i.z = ((R127i.x == 0)?(R7i.x):(R7i.y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(PV1i.w)) + -(0.5))); -PS0i = floatBitsToInt(float(PS1i)); -// 21 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y)); -R123i.y = ((PV0i.x == 0)?(R7i.y):(R7i.x)); -PV1i.y = R123i.y; -R125i.z = ((PV0i.x == 0)?(R7i.x):(R7i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.y))); -PV1i.w = R123i.w; -R9i.y = ((R127i.x == 0)?(R7i.y):(R7i.z)); -PS1i = R9i.y; -// 22 -R123i.x = ((-(intBitsToFloat(R126i.y)) > 0.0)?(PV1i.x):(R126i.y)); -PV0i.x = R123i.x; -R1i.y = ((R127i.x == 0)?(PV1i.y):(R7i.z)); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.w)) + -(intBitsToFloat(PV1i.w)))); -PS0i = int(uf_blockVS7[58].z); -// 23 -R123i.z = ((-(intBitsToFloat(R126i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.z = R123i.z; -R7i.w = ((R127i.x == 0)?(R125i.z):(R7i.y)); -R2i.x = floatBitsToInt(float(PS0i)); -PS1i = R2i.x; -// 24 -R7i.x = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -R7i.y = ((intBitsToFloat(R126i.w) == 0.0)?(R126i.z):(PV1i.z)); -R7i.z = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -R4i.x = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R4i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = floatBitsToInt(intBitsToFloat(R4i.x) * 0.0); -R126i.w = ((intBitsToFloat(R7i.x) == 0.0)?(0):(R7i.z)); -PV0i.w = R126i.w; -PS0i = int(intBitsToFloat(R7i.y)); -// 1 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R2i.x)) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R7i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 2.0); -PV1i.w = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -PS1i = floatBitsToInt(float(PS0i)); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R9i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w)); -R123i.z = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV1i.x):(R126i.w)); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R1i.y))); -R125i.w = floatBitsToInt(intBitsToFloat(R125i.w) * 2.0); -R124i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R124i.w; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = ((intBitsToFloat(R2i.x) == 0.0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -R13i.z = floatBitsToInt(intBitsToFloat(R0i.w) + 0.5); -R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),uf_blockVS7[54].x) + -(intBitsToFloat(PV0i.y)))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 4 -R7i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -R11i.y = floatBitsToInt(intBitsToFloat(R2i.z) + 0.5); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R1i.w = floatBitsToInt(intBitsToFloat(R9i.x) + 0.5); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 5 -backupReg0i = R5i.w; -R127i.x = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.z)) + -(0.5))); -R7i.z = floatBitsToInt(intBitsToFloat(R15i.w) + 0.0); -PV1i.z = R7i.z; -R5i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[93].x)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 6 -backupReg0i = R126i.w; -R0i.x = R15i.w; -R124i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(uf_blockVS7[104].w)); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS1i))); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(float(backupReg0i)); -// 7 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PV0i.w)) + -(0.5))); -R126i.z = floatBitsToInt(float(R124i.w)); -PS1i = R126i.z; -// 8 -PV0i.x = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -PV0i.y = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 9 -R4i.x = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(PS0i)); -R4i.x = clampFI32(R4i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[54].y) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R4i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[55].z) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[105].w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[55].w) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.x))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.w)) + -(intBitsToFloat(PV0i.w)))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(-(uf_blockVS7[104].y) + uf_blockVS7[105].y); -// 12 -R3i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -R15i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R126i.z = floatBitsToInt(-(uf_blockVS7[104].z) + uf_blockVS7[105].z); -PV0i.w = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -// 13 -R125i.z = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -R126i.w = floatBitsToInt(-(uf_blockVS7[105].y) + uf_blockVS7[106].y); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(-(uf_blockVS7[105].z) + uf_blockVS7[106].z); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -// 15 -R7i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[104].z)); -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV0i.w)) + uf_blockVS7[104].x)); -R9i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[104].y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 16 -backupReg0i = R125i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -R125i.z = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[106].w)); -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -R126i.y = floatBitsToInt(-(uf_blockVS7[106].z) + uf_blockVS7[107].z); -PS0i = R126i.y; -// 17 -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[105].z)); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.w)) + uf_blockVS7[105].x)); -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[105].y)); -// 18 -R126i.z = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -R126i.w = floatBitsToInt(-(uf_blockVS7[106].y) + uf_blockVS7[107].y); -// 19 -backupReg0i = R124i.y; -PV1i.x = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R124i.y = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[107].w)); -R6i.z = ((intBitsToFloat(backupReg0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -// 20 -R124i.x = ((intBitsToFloat(R125i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R127i.z = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -R127i.w = floatBitsToInt(-(uf_blockVS7[107].y) + uf_blockVS7[108].y); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 21 -backupReg0i = R126i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(-(uf_blockVS7[107].z) + uf_blockVS7[108].z); -PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -// 22 -R127i.x = ((intBitsToFloat(R125i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.x)) + uf_blockVS7[106].z)); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.w)) + uf_blockVS7[106].x)); -R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.y)) + uf_blockVS7[106].y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 23 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -R2i.z = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[108].w)); -PV1i.z = R2i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R9i.y = floatBitsToInt(-(uf_blockVS7[108].z) + uf_blockVS7[109].z); -PS1i = R9i.y; -// 24 -R126i.x = ((intBitsToFloat(R124i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.x)) + uf_blockVS7[107].z)); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.w)) + uf_blockVS7[107].x)); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.y)) + uf_blockVS7[107].y)); -R5i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R5i.x; -// 25 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R4i.z = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R5i.w = floatBitsToInt(-(uf_blockVS7[108].y) + uf_blockVS7[109].y); -PS1i = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -// 26 -PV0i.x = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R0i.y = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[109].w)); -PV0i.y = R0i.y; -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.y))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -PS0i = R2i.x; -// 27 -R9i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R1i.y = floatBitsToInt(-(intBitsToFloat(R124i.x)) + 1.0); -R9i.z = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -R0i.w = floatBitsToInt(-(uf_blockVS7[109].y) + uf_blockVS7[110].y); -R8i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R8i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R9i.y) * intBitsToFloat(R8i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(R8i.z)); -R127i.z = floatBitsToInt(-(uf_blockVS7[109].z) + uf_blockVS7[110].z); -PV0i.w = floatBitsToInt(intBitsToFloat(R4i.z) * intBitsToFloat(R8i.z)); -PS0i = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R9i.x)) + 1.0); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.x)) + uf_blockVS7[108].z)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[108].x)); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.y)) + uf_blockVS7[108].y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R9i.z) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS1i)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.x))); -R127i.x = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[110].w)); -PS0i = R127i.x; -// 3 -R126i.x = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.z)) + uf_blockVS7[109].z)); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[109].x)); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[109].y)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R1i.y))); -PS1i = R127i.w; -// 4 -R124i.x = floatBitsToInt(-(intBitsToFloat(R6i.z)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R127i.z = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -R126i.w = floatBitsToInt(-(uf_blockVS7[110].y) + uf_blockVS7[111].y); -// 5 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV0i.y))); -R124i.y = floatBitsToInt(-(uf_blockVS7[110].z) + uf_blockVS7[111].z); -PV1i.z = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -PV1i.w = floatBitsToInt(intBitsToFloat(R7i.z) + -(uf_blockVS7[111].w)); -// 6 -backupReg0i = R124i.x; -backupReg0i = R124i.x; -backupReg0i = R124i.x; -R124i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].y, intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].z, intBitsToFloat(backupReg0i))); -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R126i.z; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -PS1i = R126i.y; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R2i.x)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(R2i.x)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(R126i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R2i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + uf_blockVS7[110].x)); -PS0i = R126i.z; -// 9 -backupReg0i = R127i.x; -backupReg0i = R127i.x; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.y)) + uf_blockVS7[110].y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.z)) + uf_blockVS7[110].z)); -PS1i = R126i.y; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(R124i.x)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R2i.x = 0; -PS0i = R2i.x; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.y))); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS13[24].x) + -(uf_blockVS13[24].y))); -R122i.x = clampFI32(R122i.x); -PS1i = R122i.x; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 13 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.y = floatBitsToInt(tempResultf); -PS1i = R126i.y; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R124i.x)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].y,intBitsToFloat(R124i.x)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].z,intBitsToFloat(R124i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.z = floatBitsToInt(tempResultf); -PS0i = R126i.z; -// 15 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[24].w, intBitsToFloat(R126i.y))); -R0i.y = PV0i.x; -R1i.z = PV0i.w; -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS0i))); -R1i.y = PV0i.z; -PS1i = R1i.y; -// 16 -R124i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(R126i.z))); -PV0i.y = floatBitsToInt(uf_blockVS13[28].y + 1.0); -R126i.z = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R6i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(R14i.z) * intBitsToFloat(R8i.x)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * 1.5); -PV1i.x = clampFI32(PV1i.x); -R0i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),uf_blockVS13[25].w) + uf_blockVS13[25].w)); -R0i.w = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R125i.w))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 18 -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R4i.x)) + 0.0)); -R10i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41700000)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -// 19 -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(PS0i)) + uf_blockVS13[23].z)); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + -0.0); -PV0i.w = clampFI32(PV0i.w); -// 21 -R6i.x = PV0i.w; -R4i.y = PV0i.w; -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3e4ccccd))); -// 22 -R2i.w = floatBitsToInt(min(intBitsToFloat(PV1i.z), 1.0)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.w = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -// 1 -R124i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R6i.w))); -R126i.y = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R6i.y))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV0i.w)); -R125i.w = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R11i.z))); -PV1i.w = R125i.w; -R122i.x = floatBitsToInt((intBitsToFloat(R0i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R122i.x = clampFI32(R122i.x); -PS1i = R122i.x; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PV1i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV1i.z)) + uf_blockVS13[27].x)); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -// 3 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), uf_blockVS13[26].w)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0x41080000)); -R122i.x = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.x))); -PS1i = R122i.x; -// 4 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3daaaaab)); -R123i.y = floatBitsToInt((intBitsToFloat(R124i.x) * intBitsToFloat(R124i.x) + intBitsToFloat(PS1i))); -PV0i.y = R123i.y; -R4i.z = 0; -R9i.w = ((0.0 >= intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R9i.w; -R11i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -PS0i = R11i.z; -// 5 -R1i.x = 0; -R6i.y = 0; -PV1i.y = R6i.y; -R3i.z = ((PV0i.w == 0)?(R11i.x):(PS0i)); -R3i.w = 0; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -R7i.w = ((R9i.w == 0)?(R12i.z):(PV1i.y)); -R5i.x = R14i.x; -PS0i = R5i.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R2i.y = R16i.y; -PS1i = R2i.y; -// 8 -R11i.x = ((R9i.w == 0)?(R8i.y):(R3i.w)); -R5i.y = ((R9i.w == 0)?(R0i.y):(R0i.y)); -R126i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.z = R126i.z; -R0i.w = ((R9i.w == 0)?(R8i.x):(R1i.x)); -R2i.z = R23i.z; -PS0i = R2i.z; -// 9 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R3i.y = ((R9i.w == 0)?(R14i.w):(R14i.w)); -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.z = R123i.z; -R6i.w = ((R9i.w == 0)?(R18i.z):(R18i.z)); -R9i.x = ((R9i.w == 0)?(0):(0x3f800000)); -PS1i = R9i.x; -// 10 -R123i.x = ((R9i.w == 0)?(0):(R4i.y)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(0xbe593484))); -PV0i.y = R123i.y; -R123i.z = ((R9i.w == 0)?(0):(R127i.x)); -PV0i.z = R123i.z; -R123i.w = ((R9i.w == 0)?(0):(R0i.z)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 11 -R22i.x = ((R9i.x == 0)?(R0i.z):(PV0i.w)); -R22i.y = ((R9i.x == 0)?(R127i.x):(PV0i.z)); -R22i.z = ((R9i.x == 0)?(R4i.y):(PV0i.x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(0x3fc90da4))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -// 12 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),-(intBitsToFloat(PV1i.w))) + 1.0)); -R4i.y = ((R9i.w == 0)?(0):(R2i.x)); -R0i.z = ((R9i.w == 0)?(0):(R6i.x)); -R4i.w = ((R9i.w == 0)?(0):(R2i.y)); -R2i.y = ((R9i.w == 0)?(0):(R2i.z)); -PS0i = R2i.y; -} -if( activeMaskStackC[3] == true ) { -R10i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R10i.xy)).xyz); -R8i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R4i.xz)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(R2i.w))); -PV0i.x = R127i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(R2i.w))); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(R2i.w))); -PV0i.z = R126i.z; -R22i.w = ((R9i.x == 0)?(R2i.x):(R4i.y)); -R127i.y = ((R9i.w == 0)?(0):(R8i.z)); -PS0i = R127i.y; -// 1 -R124i.x = ((R9i.w == 0)?(0):(R8i.x)); -R123i.y = ((R9i.w == 0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -R123i.z = ((R9i.w == 0)?(0):(PV0i.x)); -PV1i.z = R123i.z; -R123i.w = ((R9i.w == 0)?(0):(PV0i.y)); -PV1i.w = R123i.w; -R124i.z = ((R9i.w == 0)?(0):(R8i.y)); -PS1i = R124i.z; -// 2 -R21i.x = ((R9i.x == 0)?(R126i.y):(PV1i.w)); -R21i.y = ((R9i.x == 0)?(R127i.x):(PV1i.z)); -R21i.z = ((R9i.x == 0)?(R126i.z):(PV1i.y)); -R21i.w = ((R9i.x == 0)?(R6i.x):(R0i.z)); -R122i.x = ((R9i.w == 0)?(0):(R8i.w)); -PS0i = R122i.x; -// 3 -R20i.x = ((R9i.x == 0)?(R8i.x):(R124i.x)); -R20i.y = ((R9i.x == 0)?(R8i.y):(R124i.z)); -R20i.z = ((R9i.x == 0)?(R8i.z):(R127i.y)); -R20i.w = ((R9i.x == 0)?(R8i.w):(PS0i)); -R125i.w = ((R9i.w == 0)?(0):(R1i.w)); -PS1i = R125i.w; -// 4 -R127i.x = ((R9i.w == 0)?(0):(R5i.w)); -R125i.y = ((R9i.w == 0)?(0):(R3i.z)); -R123i.z = ((R9i.w == 0)?(0):(R15i.y)); -PV0i.z = R123i.z; -R126i.w = ((R9i.w == 0)?(0):(R5i.x)); -R122i.x = ((R9i.w == 0)?(0):(R3i.x)); -PS0i = R122i.x; -// 5 -R23i.x = ((R9i.x == 0)?(R3i.x):(PS0i)); -R23i.y = ((R9i.x == 0)?(R15i.y):(PV0i.z)); -R123i.z = ((R9i.w == 0)?(0):(R13i.z)); -PV1i.z = R123i.z; -R124i.w = ((R9i.w == 0)?(0):(R11i.y)); -R124i.z = ((R9i.w == 0)?(0):(R1i.z)); -PS1i = R124i.z; -// 6 -R19i.x = ((R9i.x == 0)?(R13i.z):(PV1i.z)); -R19i.y = ((R9i.x == 0)?(R1i.w):(R125i.w)); -R123i.z = ((R9i.w == 0)?(0):(R7i.x)); -PV0i.z = R123i.z; -R125i.w = ((R9i.w == 0)?(0):(R1i.y)); -R126i.z = ((R9i.w == 0)?(R18i.z):(R18i.z)); -PS0i = R126i.z; -// 7 -R124i.x = ((R9i.w == 0)?(R18i.y):(R0i.y)); -R127i.y = ((R9i.w == 0)?(0):(R12i.x)); -R19i.z = ((R9i.x == 0)?(R7i.x):(PV0i.z)); -R19i.w = ((R9i.x == 0)?(R11i.y):(R124i.w)); -R127i.w = ((R9i.w == 0)?(0):(R11i.w)); -PS1i = R127i.w; -// 8 -R123i.x = ((R9i.w == 0)?(0):(R0i.x)); -PV0i.x = R123i.x; -R124i.y = ((R9i.w == 0)?(0):(R0i.w)); -R123i.z = ((R9i.w == 0)?(0):(R12i.y)); -PV0i.z = R123i.z; -R124i.w = ((R9i.w == 0)?(0):(R14i.z)); -R126i.y = ((R9i.w == 0)?(0):(R15i.z)); -PS0i = R126i.y; -// 9 -R10i.x = ((R9i.x == 0)?(R0i.x):(PV0i.x)); -R10i.y = ((R9i.x == 0)?(R1i.y):(R125i.w)); -R10i.z = ((R9i.x == 0)?(R1i.z):(R124i.z)); -R125i.w = ((R9i.w == 0)?(0):(R13i.x)); -R15i.x = ((R9i.x == 0)?(R12i.y):(PV0i.z)); -PS1i = R15i.x; -// 10 -R0i.x = ((R9i.x == 0)?(R15i.z):(R126i.y)); -R15i.y = ((R9i.x == 0)?(R14i.z):(R124i.w)); -R15i.z = ((R9i.x == 0)?(R12i.x):(R127i.y)); -R123i.w = ((R9i.w == 0)?(0):(R13i.y)); -PV0i.w = R123i.w; -R124i.w = ((R9i.w == 0)?(0):(R13i.w)); -PS0i = R124i.w; -// 11 -R12i.x = ((R9i.x == 0)?(R13i.y):(PV0i.w)); -R123i.y = ((R9i.w == 0)?(R18i.x):(R1i.x)); -PV1i.y = R123i.y; -R123i.z = ((R9i.w == 0)?(0):(R10i.w)); -PV1i.z = R123i.z; -R1i.w = ((R9i.w == 0)?(0):(R16i.z)); -R122i.x = ((R9i.w == 0)?(0):(R14i.y)); -PS1i = R122i.x; -// 12 -R18i.x = ((R9i.x == 0)?(R0i.w):(PV1i.y)); -R18i.y = ((R9i.x == 0)?(R5i.y):(R124i.x)); -R18i.z = ((R9i.x == 0)?(R6i.w):(R126i.z)); -R15i.w = ((R9i.x == 0)?(R10i.w):(PV1i.z)); -R0i.y = ((R9i.x == 0)?(R14i.y):(PS1i)); -PS0i = R0i.y; -// 13 -backupReg0i = R125i.y; -R124i.x = R16i.y; -R125i.y = R23i.z; -R0i.z = ((R9i.x == 0)?(R11i.w):(R127i.w)); -R0i.w = ((R9i.x == 0)?(R13i.x):(R125i.w)); -R23i.z = ((R9i.x == 0)?(R3i.z):(backupReg0i)); -PS1i = R23i.z; -// 14 -R123i.x = ((R9i.w == 0)?(0):(R12i.w)); -PV0i.x = R123i.x; -R127i.y = ((R9i.w == 0)?(R17i.x):(R6i.y)); -PV0i.z = R14i.x; -R127i.w = ((R9i.w == 0)?(R17i.z):(R11i.z)); -R125i.x = ((R9i.w == 0)?(R17i.y):(R3i.w)); -PS0i = R125i.x; -// 15 -R13i.x = ((R9i.x == 0)?(PV0i.z):(R126i.w)); -R13i.y = ((R9i.x == 0)?(R124i.x):(R4i.w)); -R13i.z = ((R9i.x == 0)?(R125i.y):(R2i.y)); -R12i.y = ((R9i.x == 0)?(R12i.w):(PV0i.x)); -PS1i = R12i.y; -// 16 -R12i.z = ((R9i.x == 0)?(R13i.w):(R124i.w)); -R12i.w = ((R9i.x == 0)?(R16i.z):(R1i.w)); -PV0i.w = R12i.w; -R13i.w = ((R9i.x == 0)?(R127i.x):(R127i.x)); -PS0i = R13i.w; -// 17 -R17i.x = ((R9i.x == 0)?(R7i.w):(R127i.y)); -R17i.y = ((R9i.x == 0)?(R11i.x):(R125i.x)); -R17i.z = ((R9i.x == 0)?(R3i.z):(R127i.w)); -R10i.w = ((R9i.x == 0)?(R0i.w):(R124i.y)); -PS1i = R10i.w; -// 18 -R123i.z = ((R9i.w == 0)?(R17i.w):(R14i.w)); -PV0i.z = R123i.z; -// 19 -R17i.w = ((R9i.x == 0)?(R3i.y):(PV0i.z)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R12i.x), intBitsToFloat(R12i.y), intBitsToFloat(R12i.z), intBitsToFloat(R12i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R15i.x), intBitsToFloat(R15i.y), intBitsToFloat(R15i.z), intBitsToFloat(R15i.w)); -// export -passParameterSem5 = vec4(intBitsToFloat(R10i.x), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R13i.x), intBitsToFloat(R13i.y), intBitsToFloat(R13i.z), intBitsToFloat(R13i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/961cf134642327cc_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/961cf134642327cc_0000000000000000_vs.txt deleted file mode 100644 index bb09b259..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/961cf134642327cc_0000000000000000_vs.txt +++ /dev/null @@ -1,1849 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 961cf134642327cc // distant cloud and fog vs -uniform ivec4 uf_remappedVS[68]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -layout(location = 11) in uvec4 attrDataSem11; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem7; -layout(location = 5) out vec4 passParameterSem8; -layout(location = 7) out vec4 passParameterSem11; -layout(location = 8) out vec4 passParameterSem14; -layout(location = 9) out vec4 passParameterSem15; -layout(location = 10) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 6) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R26i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem5.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem11; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R11i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem4; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem8; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R10i.z = floatBitsToInt(-(intBitsToFloat(R10i.y)) + 1.0); -R0i.w = 0; -R6i.w = floatBitsToInt(1.0); -PS0i = R6i.w; -// 1 -R15i.w = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(uf_remappedVS[0].x)); -R22i.w = floatBitsToInt(-(intBitsToFloat(R10i.x)) + 1.0); -PS1i = R22i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R15i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R23i.x = 0; -R23i.y = 0; -R23i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].y) * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R5i.w = R6i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R5i.w = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R5i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R4i.w)); -// 1 -R24i.x = floatBitsToInt(float(PS0i)); -PS1i = R24i.x; -// 2 -predResult = (intBitsToFloat(R15i.w) >= intBitsToFloat(R24i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R23i.x = 0; -R23i.y = 0; -R23i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[1].y) * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R0i.w = R6i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R0i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(uf_remappedVS[2].y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(uf_remappedVS[2].z))); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R8i.x), 0.0)); -// 1 -PV1i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 0.0)); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedVS[3].w))); -PS1i = R13i.z; -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV1i.z)); -PV0i.x = R0i.x; -R14i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].w) + intBitsToFloat(R15i.w)); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedVS[2].x))); -// 4 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedVS[3].y))); -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_remappedVS[3].z))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedVS[3].y))); -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R17i.x = ((intBitsToFloat(uf_remappedVS[4].x) == 1.0)?int(0xFFFFFFFF):int(0x0)); -R12i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].x)) + 1.0); -// 1 -predResult = (R17i.x != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(R14i.z))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -// 1 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].w), intBitsToFloat(PV0i.x))); -// 2 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].x), intBitsToFloat(PV1i.w))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].y), intBitsToFloat(PV1i.w))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].z), intBitsToFloat(PV1i.w))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -tempResultf = log2(abs(intBitsToFloat(uf_remappedVS[4].x))); -PS0i = floatBitsToInt(tempResultf); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f317218)); -tempResultf = log2(intBitsToFloat(uf_remappedVS[4].x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS1i))); -R127i.y = ((intBitsToFloat(uf_remappedVS[4].x) == 0.0)?(0xff7fffff):(PV1i.z)); -R127i.z = floatBitsToInt(1.0 / intBitsToFloat(R12i.y)); -PS0i = R127i.z; -// 3 -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + -(1.0)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 5 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 6 -PV0i.y = floatBitsToInt(intBitsToFloat(R14i.z) + -(intBitsToFloat(PV1i.z))); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.y))); -// 8 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].w), intBitsToFloat(PV1i.x))); -// 9 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].x), intBitsToFloat(PV0i.w))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].y), intBitsToFloat(PV0i.w))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[5].z), intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = uf_remappedVS[6].x & 0x00020000; -R127i.y = uf_remappedVS[6].x & 0x00010000; -PV0i.z = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R8i.z)); -R125i.w = uf_remappedVS[6].x & 0x00040000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[7].z)); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * 0.5); -R126i.y = R8i.z; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[7].x) * intBitsToFloat(PS0i)); -R124i.w = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.y)); -R127i.w = floatBitsToInt(float(PV0i.x)); -PS1i = R127i.w; -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PV1i.z))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.z) > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); -PV0i.z = R127i.z; -R126i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.x = floatBitsToInt(float(R127i.y)); -PS0i = R127i.x; -// 3 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(R127i.w))?1.0:0.0); -R127i.y = ((intBitsToFloat(PV0i.z) > 1.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + -(intBitsToFloat(PV1i.x))); -R123i.y = ((PV1i.y == 0)?(R127i.z):(PS1i)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(R127i.x))?1.0:0.0); -R126i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3fc90fdb)); -PS0i = floatBitsToInt(float(R125i.w)); -// 5 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt(min(intBitsToFloat(PV0i.y), 1.0)); -R125i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R125i.w; -// 6 -R124i.x = floatBitsToInt(((R127i.y == 0)?(intBitsToFloat(R127i.w)):(-(intBitsToFloat(R127i.w))))); -R125i.y = ((R127i.y == 0)?(0):(R126i.w)); -R126i.z = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(1.0))); -PV0i.z = R126i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R125i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R125i.x; -// 7 -backupReg0i = R126i.y; -backupReg1i = R124i.w; -R127i.x = R8i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); -PV1i.y = R126i.y; -PV1i.z = 0 - R125i.w; -R124i.w = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg1i) * 0.5); -PS1i = R127i.z; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(0x3edcf805) * intBitsToFloat(PV1i.y) + 1.0)); -PV0i.x = R123i.x; -R127i.y = max(R125i.w, PV1i.z); -R123i.z = floatBitsToInt((intBitsToFloat(0x3d6ee04d) * intBitsToFloat(PV1i.y) + intBitsToFloat(0x3f43b24e))); -PV0i.z = R123i.z; -R125i.w = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.z)); -R0i.x = floatBitsToInt(intBitsToFloat(R126i.x) + -(0.5)); -R0i.x = floatBitsToInt(intBitsToFloat(R0i.x) * 2.0); -PS0i = R0i.x; -// 9 -backupReg0i = R127i.x; -backupReg1i = R127i.w; -R127i.x = 0 - R125i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.z)) + 1.0)); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -R127i.w = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.z)), intBitsToFloat(PV0i.x))); -R124i.z = int(intBitsToFloat(backupReg1i)); -PS1i = R124i.z; -// 10 -R126i.x = R8i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R126i.y = floatBitsToInt((intBitsToFloat(uf_remappedVS[7].x) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(R124i.w))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(R124i.w) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(uf_remappedVS[7].x))?1.0:0.0); -R124i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -R12i.z = max(R125i.x, R127i.x); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R0i.z = floatBitsToInt(intBitsToFloat(R125i.w) * 0.5); -PS1i = R0i.z; -// 12 -R125i.x = floatBitsToInt(intBitsToFloat(R126i.y) + -(intBitsToFloat(PV1i.x))); -R0i.y = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); -R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) * 2.0); -R123i.z = ((intBitsToFloat(R126i.z) > 0.0)?(PV1i.w):(floatBitsToInt(-(intBitsToFloat(PV1i.w))))); -PV0i.z = R123i.z; -PV0i.w = 0 - R124i.z; -R127i.x = floatBitsToInt(float(R127i.y)); -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -PS0i = R127i.x; -// 13 -backupReg0i = R125i.y; -backupReg1i = R125i.z; -PV1i.x = floatBitsToInt((intBitsToFloat(R125i.z) > 0.0)?1.0:0.0); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV0i.z)) + intBitsToFloat(backupReg0i))); -PV1i.y = R125i.y; -R125i.z = floatBitsToInt(floor(intBitsToFloat(R126i.x))); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(backupReg1i))?1.0:0.0); -R126i.x = max(R124i.z, PV0i.w); -PS1i = R126i.x; -// 14 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PV1i.y))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.y) > 0.0)?1.0:0.0); -R124i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -R6i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.x)), intBitsToFloat(R124i.y))); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.z) + -(0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -PS0i = R0i.w; -// 15 -R12i.x = floatBitsToInt(intBitsToFloat(R8i.y) + -(0.5)); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(R125i.z))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(R125i.z) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(float(R12i.z)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 16 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.w)); -R124i.z = ((intBitsToFloat(uf_remappedVS[7].x) == 0.0)?int(0xFFFFFFFF):int(0x0)); -R7i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(backupReg0i))); -PS0i = floatBitsToInt(float(R126i.x)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 17 -PV1i.x = ((0.0 > intBitsToFloat(uf_remappedVS[7].z))?int(0xFFFFFFFF):int(0x0)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fc90fdb)); -R12i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(PV0i.x))); -R12i.w = floatBitsToInt(intBitsToFloat(R8i.x) + -(0.5)); -R13i.x = floatBitsToInt(intBitsToFloat(R8i.z) + -(0.5)); -PS1i = R13i.x; -// 18 -backupReg0i = R124i.z; -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.y) + -(intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(0x3fc90fdb)); -R124i.z = ((intBitsToFloat(uf_remappedVS[7].z) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -tempResultf = log2(intBitsToFloat(uf_remappedVS[4].x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 19 -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R13i.z))); -PV1i.y = uf_remappedVS[8].y; -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R123i.z = ((PV0i.w == 0)?(PV0i.x):(0x40490fdb)); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R12i.y)); -PS1i = R125i.z; -// 20 -R16i.x = 0x3f800000; -R12i.y = ((R124i.z == 0)?(PV1i.z):(R125i.y)); -PV0i.z = uf_remappedVS[8].x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 21 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.z)); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.y), intBitsToFloat(PV0i.w))); -R14i.w = floatBitsToInt(intBitsToFloat(R8i.x) + 1.0); -R7i.x = floatBitsToInt(intBitsToFloat(R8i.y) + 1.0); -PS1i = R7i.x; -// 22 -backupReg0i = R14i.x; -R14i.x = floatBitsToInt(intBitsToFloat(R8i.z) + 1.0); -R7i.y = ((intBitsToFloat(R15i.w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R13i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R125i.z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[9].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[9].y))); -R126i.z = ((intBitsToFloat(uf_remappedVS[10].w) == 1.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[10].w)) + 1.0); -tempResultf = log2(intBitsToFloat(uf_remappedVS[10].w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 1 -R125i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[10].y) + intBitsToFloat(PV0i.y)); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[9].z))); -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[10].x)); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS0i))); -R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -PS1i = R124i.z; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R7i.w))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(uf_remappedVS[11].y))); -R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[10].z) + intBitsToFloat(PV1i.y)); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R6i.w))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R124i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.x)); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R12i.z))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(uf_remappedVS[11].x))); -// 4 -R125i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(R124i.z)); -R127i.z = floatBitsToInt(intBitsToFloat(PS1i) + 0.0); -R127i.w = floatBitsToInt(intBitsToFloat(R125i.y) + 0.0); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(uf_remappedVS[11].z))); -// 5 -R123i.x = ((R126i.z == 0)?(PV0i.y):(R15i.w)); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(intBitsToFloat(PS0i) + 0.0); -R126i.z = ((R17i.x == 0)?(R13i.w):(R14i.z)); -PV1i.z = R126i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.w), intBitsToFloat(uf_remappedVS[12].x))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(uf_remappedVS[12].x))); -PS1i = R126i.y; -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV1i.z))); -PS0i = R125i.z; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R126i.z))); -R125i.y = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV0i.y)); -PS1i = R125i.y; -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(R125i.z)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R12i.y)); -R125i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV1i.w)); -PS0i = R125i.z; -// 9 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R125i.y))); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.w = R123i.w; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PV0i.z))); -PS1i = R125i.y; -// 10 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R125i.z))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -R124i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV1i.z)); -PS0i = R124i.x; -// 11 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983)); -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -PV1i.z = R125i.z; -R124i.w = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R125i.y)); -R126i.z = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(PV0i.y)); -PS1i = R126i.z; -// 12 -backupReg0i = R7i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983)); -PV0i.x = R125i.x; -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.x), intBitsToFloat(uf_remappedVS[12].x))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R24i.x), intBitsToFloat(uf_remappedVS[13].w))); -R4i.w = ((backupReg0i == 0)?(R15i.w):(0x3f800000)); -R127i.x = floatBitsToInt(cos((intBitsToFloat(PV1i.z))/0.1591549367)); -PS0i = R127i.x; -// 13 -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = R5i.x; -PV1i.y = R5i.x; -PV1i.z = R5i.x; -PV1i.w = R5i.x; -R127i.w = floatBitsToInt(sin((intBitsToFloat(PV0i.x))/0.1591549367)); -PS1i = R127i.w; -// 14 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(sin((intBitsToFloat(R125i.z))/0.1591549367)); -PS0i = R127i.y; -// 15 -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.w))); -R125i.z = floatBitsToInt(cos((intBitsToFloat(R125i.x))/0.1591549367)); -PS1i = R125i.z; -// 16 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -PV0i.x = R125i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(sin((intBitsToFloat(R126i.x))/0.1591549367)); -PS0i = R125i.y; -// 17 -backupReg0i = R126i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R125i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.z))); -R1i.w = floatBitsToInt(-(intBitsToFloat(PS0i))); -R126i.x = floatBitsToInt(cos((intBitsToFloat(backupReg0i))/0.1591549367)); -PS1i = R126i.x; -// 18 -backupReg0i = R127i.w; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); -R1i.y = floatBitsToInt(-(intBitsToFloat(R124i.y)) + intBitsToFloat(PV1i.z)); -PV0i.y = R1i.y; -R1i.z = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -R4i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV1i.y)); -PS0i = R4i.y; -// 19 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R126i.x))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R15i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R124i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R15i.x))); -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R126i.x))); -PS1i = R14i.x; -// 20 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R15i.x))); -R9i.y = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 21 -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R12i.y = tempi.x; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.y)) + intBitsToFloat(PV0i.w))); -PS1i = R125i.z; -// 22 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R4i.x)) + intBitsToFloat(R127i.z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R14i.x)) + intBitsToFloat(backupReg0i))); -PV0i.y = R123i.y; -// 23 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R124i.w),intBitsToFloat(R126i.z),intBitsToFloat(R16i.x)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.y))); -PS1i = R122i.x; -// 24 -R0i.x = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.x)); -PV0i.x = R0i.x; -R0i.y = floatBitsToInt(intBitsToFloat(R12i.y) + intBitsToFloat(R125i.z)); -PV0i.y = R0i.y; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PS1i)); -PV0i.z = R2i.z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 25 -backupReg0i = R7i.y; -backupReg1i = R4i.w; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R127i.w))); -R7i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(backupReg0i)); -R0i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); -R4i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R126i.w)); -R3i.z = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(PS0i)); -R3i.z = clampFI32(R3i.z); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(R0i.z)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R1i.y))); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.w)) + intBitsToFloat(R3i.x))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R14i.x)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R2i.w = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV0i.x)); -// 2 -R18i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.x)) + intBitsToFloat(R127i.w))); -R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.y)) + intBitsToFloat(PV1i.x))); -R13i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z))); -// 3 -predResult = (intBitsToFloat(uf_remappedVS[14].y) != 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.x = uf_remappedVS[15].w; -PV0i.y = uf_remappedVS[16].w; -// 1 -R127i.x = floatBitsToInt(-(intBitsToFloat(R0i.x)) + intBitsToFloat(PV0i.y)); -R127i.y = floatBitsToInt(-(intBitsToFloat(R0i.y)) + intBitsToFloat(PV0i.x)); -PV1i.w = uf_remappedVS[17].w; -R126i.y = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[14].y)); -PS1i = R126i.y; -// 2 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.w)); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(R126i.y)); -PV1i.x = clampFI32(PV1i.x); -// 6 -backupReg0i = R3i.z; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[16].w) + intBitsToFloat(uf_remappedVS[15].w)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(backupReg0i)); -R1i.w = 0x3f800000; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R14i.y)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedVS[17].w)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(uf_remappedVS[18].w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(uf_remappedVS[18].z))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 2 -PV0i.x = ((0.0 > intBitsToFloat(PV1i.w))?int(0xFFFFFFFF):int(0x0)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[0].x), intBitsToFloat(uf_remappedVS[13].x))); -PV0i.y = R126i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3dd70a3d)); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.w)), intBitsToFloat(PV1i.w))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[13].z), intBitsToFloat(uf_remappedVS[18].w))); -R0i.w = ((PV0i.x == 0)?(PS0i):(PV0i.w)); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[13].y), intBitsToFloat(uf_remappedVS[18].z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.y)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -// 6 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -// 7 -R123i.z = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -// 8 -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -PV0i.z = R127i.z; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.z))/0.1591549367)); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.z))); -PS0i = floatBitsToInt(cos((intBitsToFloat(R127i.z))/0.1591549367)); -// 11 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); -R1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -PS1i = floatBitsToInt(sin((intBitsToFloat(PV0i.x))/0.1591549367)); -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.y))); -R2i.w = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(PV1i.x)); -// 13 -R2i.z = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.x)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R5i.x) + -(intBitsToFloat(uf_remappedVS[19].x))); -R126i.y = floatBitsToInt(intBitsToFloat(R12i.y) + -(intBitsToFloat(uf_remappedVS[19].y))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[20].w))); -// 1 -PV1i.z = floatBitsToInt(intBitsToFloat(R9i.z) + -(intBitsToFloat(uf_remappedVS[19].z))); -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 3 -R0i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R0i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(min(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[21].x))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].y), intBitsToFloat(R0i.z))); -R126i.z = floatBitsToInt(max(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[21].y))); -R0i.w = ((intBitsToFloat(backupReg0i) > intBitsToFloat(uf_remappedVS[21].x))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R0i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[21].x)); -// 1 -backupReg0i = R1i.w; -backupReg0i = R1i.w; -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -R1i.w = ((PV0i.w == 0)?(backupReg0i):(backupReg0i)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[21].y)); -// 2 -R1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].x), intBitsToFloat(R0i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].z), intBitsToFloat(R0i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[20].y), intBitsToFloat(R0i.y))); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.z))); -R6i.w = 0x3f800000; -PS1i = R6i.w; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV1i.y)); -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(PV0i.y)); -R0i.y = uf_remappedVS[22].x; -R126i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.x)); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(R5i.x)) + intBitsToFloat(PV0i.z)); -// 4 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(backupReg0i))); -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.y))); -PS0i = R127i.x; -// 5 -backupReg0i = R126i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV0i.z)); -R126i.y = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV0i.w)); -R126i.z = floatBitsToInt(intBitsToFloat(R12i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R1i.y))); -PS1i = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV0i.x)); -// 6 -R2i.x = ((R0i.w == 0)?(PV1i.x):(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV1i.w)); -R1i.z = uf_remappedVS[22].y; -PV0i.w = floatBitsToInt(intBitsToFloat(R12i.y) + intBitsToFloat(R127i.x)); -R2i.z = uf_remappedVS[22].z; -PS0i = R2i.z; -// 7 -R0i.x = uf_remappedVS[23].x; -R4i.y = ((R0i.w == 0)?(R126i.z):(PV0i.w)); -R4i.z = ((R0i.w == 0)?(R126i.y):(PV0i.y)); -R0i.w = uf_remappedVS[24].x; -R1i.x = uf_remappedVS[24].y; -PS1i = R1i.x; -// 8 -R2i.w = uf_remappedVS[24].z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R24i.x)); -// 9 -R5i.z = uf_remappedVS[25].z; -R5i.w = uf_remappedVS[25].w; -R3i.z = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[26].x),intBitsToFloat(uf_remappedVS[26].y),intBitsToFloat(uf_remappedVS[26].z),intBitsToFloat(uf_remappedVS[26].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R6i.z = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[27].x),intBitsToFloat(uf_remappedVS[27].y),intBitsToFloat(uf_remappedVS[27].z),intBitsToFloat(uf_remappedVS[27].w)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.y = tempi.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[28].x),intBitsToFloat(uf_remappedVS[28].y),intBitsToFloat(uf_remappedVS[28].z),intBitsToFloat(uf_remappedVS[28].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R4i.w = tempi.x; -// 3 -R12i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_remappedVS[29].x),intBitsToFloat(uf_remappedVS[29].y),intBitsToFloat(uf_remappedVS[29].z),intBitsToFloat(uf_remappedVS[29].w)))); -PV1i.x = R12i.x; -PV1i.y = R12i.x; -PV1i.z = R12i.x; -PV1i.w = R12i.x; -// 4 -backupReg0i = R0i.y; -R6i.x = floatBitsToInt((intBitsToFloat(R4i.w) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.x = R6i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[30].x))); -PV0i.z = PV1i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(uf_remappedVS[30].y))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedVS[30].z))); -PS0i = R1i.z; -// 5 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(uf_remappedVS[30].w))); -R123i.y = floatBitsToInt((intBitsToFloat(R4i.w) * 0.0 + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R7i.w = floatBitsToInt((intBitsToFloat(R4i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PV1i.w = R7i.w; -R3i.w = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R3i.w; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -R7i.y = floatBitsToInt((intBitsToFloat(R6i.z) * 0.5 + intBitsToFloat(PV1i.y))); -R7i.z = floatBitsToInt((intBitsToFloat(R5i.y) * -(0.5) + intBitsToFloat(PV1i.y))); -// 7 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedVS[1].w)) + -(intBitsToFloat(uf_remappedVS[1].y)))); -PV1i.z = R123i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_remappedVS[28].x),intBitsToFloat(uf_remappedVS[28].y),intBitsToFloat(uf_remappedVS[28].z),intBitsToFloat(uf_remappedVS[28].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 9 -R0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].z)) * intBitsToFloat(PS0i)); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R12i.y),intBitsToFloat(R9i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_remappedVS[29].x),intBitsToFloat(uf_remappedVS[29].y),intBitsToFloat(uf_remappedVS[29].z),intBitsToFloat(uf_remappedVS[29].w)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 11 -PV1i.y = PV0i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R123i.w = floatBitsToInt((intBitsToFloat(R127i.w) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 12 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.w) * 0.5 + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 13 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[1].w), intBitsToFloat(PV1i.y))); -// 15 -PV1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].y)) + intBitsToFloat(PV0i.x)); -// 16 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 17 -R3i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[1].z)) * intBitsToFloat(PS0i)); -// 18 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedVS[31].y))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(uf_remappedVS[31].x))); -R2i.z = ((intBitsToFloat(R8i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(uf_remappedVS[31].z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(uf_remappedVS[32].x))); -PV0i.y = floatBitsToInt((intBitsToFloat(uf_remappedVS[33].w) > 0.0)?1.0:0.0); -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(uf_remappedVS[32].x))); -R10i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedVS[32].x))); -PS0i = floatBitsToInt((0.0 > intBitsToFloat(uf_remappedVS[33].w))?1.0:0.0); -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PS0i))); -PV1i.x = R127i.x; -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R1i.y))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R1i.x))); -R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[32].x), intBitsToFloat(R0i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[33].w)); -// 2 -PV0i.x = uf_remappedVS[6].x & 0x00080000; -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -R127i.w = ((R2i.z == 0)?(R10i.x):(R22i.w)); -PS0i = uf_remappedVS[6].x & 0x00100000; -// 3 -PV1i.x = (PV0i.x == 0x00080000)?int(0xFFFFFFFF):int(0x0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(uf_remappedVS[34].x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R126i.z = (PS0i == 0x00100000)?int(0xFFFFFFFF):int(0x0); -PV1i.w = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS1i = uf_remappedVS[6].x & 0x00200000; -// 4 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -R123i.y = ((PV1i.w == 0)?(R10i.y):(R10i.z)); -PV0i.y = R123i.y; -R1i.z = ((PV1i.x == 0)?(R10i.x):(R127i.w)); -R127i.w = (PS1i == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PS0i = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -R1i.y = ((R126i.z == 0)?(R10i.y):(PV0i.y)); -R123i.z = ((PS0i == 0)?(R10i.x):(R22i.w)); -PV1i.z = R123i.z; -PV1i.w = uf_remappedVS[6].x & 0x00400000; -PS1i = ((intBitsToFloat(R8i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 6 -R1i.x = ((R127i.w == 0)?(R10i.x):(PV1i.z)); -R123i.y = ((PS1i == 0)?(R10i.y):(R10i.z)); -PV0i.y = R123i.y; -PV0i.z = (PV1i.w == 0x00400000)?int(0xFFFFFFFF):int(0x0); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.x))); -// 7 -R2i.z = uf_remappedVS[6].x & 0x00800000; -R1i.w = ((PV0i.z == 0)?(R10i.y):(PV0i.y)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[35].w)) + intBitsToFloat(uf_remappedVS[36].w)); -R126i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[36].w))); -PV0i.y = R126i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[35].w))); -PV0i.z = R126i.z; -// 1 -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[35].x)) + intBitsToFloat(uf_remappedVS[36].x)); -R127i.z = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R127i.z; -R127i.w = (R2i.z == 0x00800000)?int(0xFFFFFFFF):int(0x0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -R126i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[36].x)) + intBitsToFloat(uf_remappedVS[37].x)); -PS0i = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + -(intBitsToFloat(uf_remappedVS[37].w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(uf_remappedVS[35].x))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x))); -R123i.w = ((PS0i == 0)?(R10i.x):(R22i.w)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[35].x), intBitsToFloat(PV0i.y))); -// 4 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[36].w)) + intBitsToFloat(uf_remappedVS[37].w)); -R0i.z = ((R127i.w == 0)?(R10i.x):(PV1i.w)); -R127i.w = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.w = R127i.w; -PS0i = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.y = uf_remappedVS[6].x & 0x01000000; -R127i.z = ((PS0i == 0)?(R10i.y):(R10i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.x))); -PV0i.z = (PV1i.y == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PV0i.w = uf_remappedVS[6].y & int(1); -// 7 -R10i.x = (int(1) != PV0i.w)?int(0xFFFFFFFF):int(0x0); -R0i.y = ((PV0i.z == 0)?(R10i.y):(R127i.z)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(uf_remappedVS[36].x))); -PV1i.w = R123i.w; -// 8 -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(R126i.x))); -PV0i.w = R123i.w; -// 9 -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[37].x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(uf_remappedVS[31].w))); -PS0i = int(intBitsToFloat(uf_remappedVS[38].z)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[39].z) + intBitsToFloat(uf_remappedVS[40].x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_remappedVS[40].x))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_remappedVS[40].y))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[39].w) + intBitsToFloat(uf_remappedVS[40].y)); -R127i.y = floatBitsToInt(float(PS0i)); -PS1i = R127i.y; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),intBitsToFloat(uf_remappedVS[39].x)) + -(intBitsToFloat(PV0i.w)))); -R127i.z = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.y)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[39].y)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[38].z)); -// 4 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[38].x), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z)); -R126i.z = ((R10i.x == 0)?(0):(int(1))); -PV0i.z = R126i.z; -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[38].w)); -// 5 -R123i.x = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.x = R123i.x; -R125i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[38].y), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PV0i.x)) + -(0.5))); -PS1i = int(intBitsToFloat(PV0i.w)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[41].x) + intBitsToFloat(uf_remappedVS[41].z)); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[41].y) + intBitsToFloat(uf_remappedVS[41].w)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV1i.z)) + -(0.5))); -R123i.w = ((intBitsToFloat(R127i.y) == 0.0)?(0):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 7 -backupReg0i = R127i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(uf_remappedVS[41].z)) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(uf_remappedVS[41].w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PS0i)) + intBitsToFloat(R127i.w))); -PV1i.w = (R126i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PS1i = int(intBitsToFloat(PV0i.w)); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[40].w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[40].z)) + intBitsToFloat(PV1i.x))); -R123i.z = ((PV1i.w == 0)?(R8i.x):(R8i.z)); -PV0i.z = R123i.z; -R123i.w = ((PV1i.w == 0)?(R8i.y):(R8i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 9 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R125i.z)) + -(intBitsToFloat(R127i.z)))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.y))); -PV1i.y = R123i.y; -R123i.z = ((R125i.y == 0)?(PV0i.z):(R8i.y)); -PV1i.z = R123i.z; -R123i.w = ((R125i.y == 0)?(PV0i.w):(R8i.z)); -PV1i.w = R123i.w; -R127i.x = ((R125i.y == 0)?(R8i.x):(R8i.y)); -PS1i = R127i.x; -// 10 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[42].x), intBitsToFloat(PV1i.z))); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[42].y), intBitsToFloat(PV1i.w))); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -R127i.w = ((R125i.y == 0)?(R8i.y):(R8i.z)); -PS0i = int(intBitsToFloat(uf_remappedVS[43].z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[44].z) + intBitsToFloat(uf_remappedVS[42].x)); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[44].w) + intBitsToFloat(uf_remappedVS[42].y)); -R126i.w = ((R10i.x == 0)?(0):(0x00000002)); -R127i.y = floatBitsToInt(float(PS0i)); -PS1i = R127i.y; -// 12 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y)); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 13 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),intBitsToFloat(uf_remappedVS[44].x)) + -(intBitsToFloat(PV0i.w)))); -R127i.z = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.y)); -PV1i.z = R127i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[44].y)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[43].z)); -// 14 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[43].x), intBitsToFloat(PS1i))); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.z)); -R126i.z = (R126i.w == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[43].w)); -// 15 -R123i.x = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.x = R123i.x; -R125i.y = (R126i.w == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[43].y), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.x)) + -(0.5))); -PS1i = int(intBitsToFloat(PV0i.w)); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[45].x) + intBitsToFloat(uf_remappedVS[45].z)); -PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[45].y) + intBitsToFloat(uf_remappedVS[45].w)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(PV1i.z)) + -(0.5))); -R123i.w = ((intBitsToFloat(R127i.y) == 0.0)?(0):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[45].w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[45].z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R127i.w = ((R125i.y == 0)?(R8i.x):(R8i.z)); -PS1i = int(intBitsToFloat(PV0i.w)); -// 18 -backupReg0i = R125i.y; -backupReg0i = R125i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[42].w)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[42].z)) + intBitsToFloat(PV1i.z))); -R123i.z = ((backupReg0i == 0)?(R8i.z):(R8i.y)); -PV0i.z = R123i.z; -R123i.w = ((backupReg0i == 0)?(R8i.y):(R8i.x)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 19 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R125i.z)) + -(intBitsToFloat(R127i.y)))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.y))); -PV1i.y = R123i.y; -R123i.z = ((R126i.z == 0)?(R127i.w):(R8i.y)); -PV1i.z = R123i.z; -R127i.w = ((R126i.z == 0)?(PV0i.w):(R8i.z)); -R0i.w = ((R126i.z == 0)?(PV0i.z):(R8i.x)); -PS1i = R0i.w; -// 20 -R10i.x = ((R126i.z == 0)?(R8i.y):(R8i.z)); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y))); -R1i.z = ((R126i.z == 0)?(R8i.x):(R8i.y)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[46].x), intBitsToFloat(PV1i.z))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) * 2.0); -PS0i = int(intBitsToFloat(uf_remappedVS[47].z)); -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[46].y), intBitsToFloat(R127i.w))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -R6i.y = floatBitsToInt(intBitsToFloat(R124i.y) + 0.5); -PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[48].z) + intBitsToFloat(uf_remappedVS[46].x)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[48].w) + intBitsToFloat(uf_remappedVS[46].y)); -R1i.w = floatBitsToInt(float(PS0i)); -PS1i = R1i.w; -// 22 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.z)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 23 -R8i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(0):(PV0i.x)); -PV1i.x = R8i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),intBitsToFloat(uf_remappedVS[48].x)) + -(intBitsToFloat(PV0i.y)))); -PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[48].y)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[47].z)); -// 24 -R3i.x = floatBitsToInt(intBitsToFloat(R125i.x) + 0.5); -R8i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[47].x), intBitsToFloat(PS1i))); -R8i.w = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.x)); -R1i.y = floatBitsToInt(1.0 / intBitsToFloat(uf_remappedVS[47].w)); -PS0i = R1i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[47].y), intBitsToFloat(R1i.y))); -PV0i.x = R125i.x; -R1i.y = floatBitsToInt(intBitsToFloat(R10i.y) + 0.5); -R123i.z = ((-(intBitsToFloat(R8i.x)) > 0.0)?(R8i.w):(R8i.x)); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R8i.z)) + -(0.5))); -PS0i = int(intBitsToFloat(R8i.y)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[49].y) + intBitsToFloat(uf_remappedVS[49].z)); -R123i.y = ((intBitsToFloat(R1i.w) == 0.0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + -(0.5))); -R6i.w = floatBitsToInt(intBitsToFloat(R1i.x) + 0.5); -PS1i = floatBitsToInt(float(PS0i)); -// 2 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[49].z),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.x))); -R124i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(uf_remappedVS[50].x))); -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(PS1i)) + intBitsToFloat(R2i.w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[50].x)) + intBitsToFloat(uf_remappedVS[50].y)); -PS0i = int(intBitsToFloat(PV1i.y)); -// 3 -R1i.x = floatBitsToInt(intBitsToFloat(R3i.z) + 0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[51].y) + intBitsToFloat(uf_remappedVS[51].w)); -PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[51].x) + intBitsToFloat(uf_remappedVS[51].z)); -PS1i = floatBitsToInt(float(PS0i)); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[51].w),intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R2i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[51].z),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[49].x)) + intBitsToFloat(R125i.x))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 5 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[46].z)) + intBitsToFloat(PV0i.z))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(uf_remappedVS[46].w)) + intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.z = R123i.z; -R1i.w = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(PS0i)); -R1i.w = clampFI32(R1i.w); -R126i.z = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(uf_remappedVS[50].z))); -PS1i = R126i.z; -// 6 -PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[50].z)) + intBitsToFloat(uf_remappedVS[50].w)); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.z))); -R125i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[52].w))); -// 7 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -R124i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[52].x)) + intBitsToFloat(uf_remappedVS[53].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 8 -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -PV0i.x = R125i.x; -R124i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[52].w)) + intBitsToFloat(uf_remappedVS[53].w)); -R1i.z = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[53].w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -PV0i.w = clampFI32(PV0i.w); -// 9 -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[53].x)) + intBitsToFloat(uf_remappedVS[54].x)); -R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.z = R2i.z; -R126i.z = floatBitsToInt(sin((intBitsToFloat(PV0i.x))/0.1591549367)); -PS1i = R126i.z; -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.w))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV1i.z))); -R8i.z = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[54].w))); -R126i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[53].w)) + intBitsToFloat(uf_remappedVS[54].w)); -PS0i = floatBitsToInt(cos((intBitsToFloat(R125i.x))/0.1591549367)); -// 11 -R124i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[54].x)) + intBitsToFloat(uf_remappedVS[55].x)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R125i.x = floatBitsToInt(1.0 / intBitsToFloat(R124i.y)); -PS1i = R125i.x; -// 12 -backupReg0i = R126i.w; -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.z)),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV1i.w)) + -(intBitsToFloat(R125i.z)))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[54].w)) + intBitsToFloat(uf_remappedVS[55].w)); -R126i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[55].w))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -// 13 -R5i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.5); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(R125i.x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 14 -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedVS[53].x))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedVS[52].x))); -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.x) * intBitsToFloat(PS1i)); -// 15 -R124i.x = ((intBitsToFloat(R1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R127i.y = ((intBitsToFloat(R125i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(uf_remappedVS[54].x))); -R127i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[56].w))); -PV1i.w = R127i.w; -R125i.w = ((intBitsToFloat(R8i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.w; -// 16 -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[55].x)) + intBitsToFloat(uf_remappedVS[56].x)); -R125i.y = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R125i.y; -R124i.z = ((intBitsToFloat(R126i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R124i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 17 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[55].w)) + intBitsToFloat(uf_remappedVS[56].w)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PS1i = R124i.w; -// 18 -backupReg0i = R125i.w; -R124i.x = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.z))); -R124i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[56].x)) + intBitsToFloat(uf_remappedVS[57].x)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 19 -PV1i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[56].w)) + intBitsToFloat(uf_remappedVS[57].w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[57].w))); -PV1i.z = R127i.z; -R8i.w = 0; -// 20 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedVS[55].x))); -R127i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R127i.y; -R126i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[58].w))); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 21 -R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[57].x)) + intBitsToFloat(uf_remappedVS[58].x)); -R124i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R124i.y; -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS0i)); -// 22 -PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(uf_remappedVS[59].w))); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedVS[56].x))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.z))); -// 23 -R8i.x = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R8i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[57].w)) + intBitsToFloat(uf_remappedVS[58].w)); -// 24 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R124i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[58].x)) + intBitsToFloat(uf_remappedVS[59].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 25 -PV1i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[58].w)) + intBitsToFloat(uf_remappedVS[59].w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.x))); -// 26 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(uf_remappedVS[57].x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[52].x), intBitsToFloat(R124i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 27 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.w = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS0i)); -// 28 -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedVS[58].x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 29 -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(min(intBitsToFloat(uf_remappedVS[19].y), intBitsToFloat(uf_remappedVS[60].z))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(R1i.z))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].x) + -(intBitsToFloat(R2i.x))); -R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].y) + -(intBitsToFloat(R4i.y))); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R0i.w)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(uf_remappedVS[61].x)) + -(intBitsToFloat(uf_remappedVS[61].y)))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[19].z) + -(intBitsToFloat(R4i.z))); -PV1i.z = R124i.z; -PV1i.w = floatBitsToInt(-(intBitsToFloat(R12i.y)) + intBitsToFloat(PV0i.x)); -// 2 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_remappedVS[62].x)) + -(intBitsToFloat(uf_remappedVS[62].y)))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[60].y),intBitsToFloat(PV1i.w)) + intBitsToFloat(uf_remappedVS[60].x))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PV1i.z)); -// 3 -backupReg0i = R3i.z; -R123i.x = floatBitsToInt((intBitsToFloat(R125i.w) * intBitsToFloat(R125i.w) + intBitsToFloat(PS0i))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedVS[63].w))); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -tempResultf = log2(intBitsToFloat(PV0i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 4 -R126i.x = floatBitsToInt((intBitsToFloat(uf_remappedVS[64].y) * 1.0 + intBitsToFloat(R0i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[61].w), intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt((intBitsToFloat(R126i.z) * intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[64].y) + 1.0); -tempResultf = log2(intBitsToFloat(PV1i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[65].x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * 1.5); -PV1i.y = clampFI32(PV1i.y); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[65].y), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 6 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x41700000)); -R2i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS1i)),intBitsToFloat(uf_remappedVS[66].w)) + intBitsToFloat(uf_remappedVS[66].w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(R125i.z)); -PS0i = floatBitsToInt(tempResultf); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.z))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(uf_remappedVS[64].x),intBitsToFloat(uf_remappedVS[64].y),intBitsToFloat(uf_remappedVS[64].z),0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PS0i = R0i.y; -// 9 -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.z = R127i.z; -PS1i = floatBitsToInt(exp2(intBitsToFloat(R124i.x))); -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(uf_remappedVS[65].z)),intBitsToFloat(PS1i)) + intBitsToFloat(uf_remappedVS[65].z))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.z = R123i.z; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -0.0); -PV1i.x = clampFI32(PV1i.x); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(0xbe593484))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.y))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.y = floatBitsToInt(max(intBitsToFloat(PV1i.z), intBitsToFloat(0x3e4ccccd))); -R4i.z = PV1i.x; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -R8i.z = PV1i.x; -PS0i = R8i.z; -// 13 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(PV0i.w))) + 1.0)); -R2i.y = floatBitsToInt(min(intBitsToFloat(PV0i.y), 1.0)); -R4i.y = uf_remappedVS[1].y; -PS1i = R4i.y; -} -if( activeMaskStackC[3] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R0i.xy)).xyz); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R2i.y))); -R18i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[59].x),intBitsToFloat(R8i.x)) + intBitsToFloat(R3i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R2i.y))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R2i.y))); -// 1 -backupReg0i = R2i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(R3i.w)); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].w), intBitsToFloat(R5i.z))); -R2i.z = 0; -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[12].w), intBitsToFloat(R5i.w))); -R126i.y = ((0.0 >= intBitsToFloat(backupReg0i))?int(0xFFFFFFFF):int(0x0)); -PS1i = R126i.y; -// 2 -R8i.x = floatBitsToInt(intBitsToFloat(R4i.y) * intBitsToFloat(0x40a00000)); -R4i.y = 0; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.w = ((0.0 >= intBitsToFloat(R1i.w))?int(0xFFFFFFFF):int(0x0)); -R1i.w = 0; -PS0i = R1i.w; -// 3 -R1i.x = ((R126i.y == 0)?(PV0i.w):(int(-1))); -PV1i.x = R1i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R24i.x = 0; -PS1i = R24i.x; -// 4 -R10i.x = R18i.x; -R2i.y = R13i.y; -R0i.z = R13i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R0i.w = ((PV1i.x == 0)?(R6i.z):(R4i.y)); -PS0i = R0i.w; -// 5 -R0i.x = ((R1i.x == 0)?(R5i.y):(R1i.w)); -R10i.y = ((R1i.x == 0)?(R4i.w):(R8i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0x40200000)); -R4i.w = ((R1i.x == 0)?(R22i.z):(R22i.z)); -R13i.x = ((R1i.x == 0)?(R12i.x):(R12i.x)); -PS1i = R13i.x; -// 6 -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3daaaaab)); -R12i.y = ((R1i.x == 0)?(0):(0x3f800000)); -PV0i.y = R12i.y; -R6i.z = ((R1i.x == 0)?(R18i.y):(R18i.y)); -R123i.w = ((R1i.x == 0)?(0):(R2i.w)); -PV0i.w = R123i.w; -R126i.y = ((R1i.x == 0)?(0):(R4i.z)); -PS0i = R126i.y; -// 7 -R14i.x = ((PV0i.y == 0)?(R2i.w):(PV0i.w)); -R123i.y = ((R1i.x == 0)?(0):(R8i.w)); -PV1i.y = R123i.y; -R123i.z = ((R1i.x == 0)?(0):(R3i.y)); -PV1i.z = R123i.z; -R126i.w = ((R1i.x == 0)?(0):(R127i.z)); -R124i.y = ((R1i.x == 0)?(0):(R126i.x)); -PS1i = R124i.y; -// 8 -R123i.x = ((R1i.x == 0)?(0):(R125i.w)); -PV0i.x = R123i.x; -R14i.y = ((R12i.y == 0)?(R3i.y):(PV1i.z)); -R14i.z = ((R12i.y == 0)?(R4i.z):(R126i.y)); -R14i.w = ((R12i.y == 0)?(R8i.w):(PV1i.y)); -R122i.x = ((R1i.x == 0)?(0):(R8i.z)); -PS0i = R122i.x; -// 9 -R16i.x = ((R12i.y == 0)?(R125i.w):(PV0i.x)); -R16i.y = ((R12i.y == 0)?(R127i.z):(R126i.w)); -R16i.z = ((R12i.y == 0)?(R126i.x):(R124i.y)); -R16i.w = ((R12i.y == 0)?(R8i.z):(PS0i)); -R8i.w = uf_remappedVS[67].w; -PS1i = R8i.w; -// 10 -backupReg0i = R10i.x; -R10i.x = ((R1i.x == 0)?(0):(R10i.w)); -R3i.y = ((R1i.x == 0)?(0):(R0i.z)); -R8i.z = ((R1i.x == 0)?(0):(R2i.y)); -R5i.w = ((R1i.x == 0)?(0):(backupReg0i)); -R5i.y = ((R1i.x == 0)?(0):(R2i.z)); -PS0i = R5i.y; -} -if( activeMaskStackC[3] == true ) { -R2i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R2i.xz)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[39].y),intBitsToFloat(R0i.y)) + intBitsToFloat(R6i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[44].y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[39].y), intBitsToFloat(R3i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[44].y), intBitsToFloat(R3i.w))); -R122i.x = ((R1i.x == 0)?(0):(R2i.x)); -PS0i = R122i.x; -// 1 -R17i.x = ((R12i.y == 0)?(R2i.x):(PS0i)); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R8i.w)) + intBitsToFloat(R3i.x))); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R6i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedVS[48].y), intBitsToFloat(R3i.w))); -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[48].y),intBitsToFloat(R0i.y)) + intBitsToFloat(R4i.x))); -PS1i = R2i.x; -// 2 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(R8i.y)) + 0.0)); -PV0i.x = R3i.x; -R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R5i.x))); -PV0i.y = R0i.y; -R123i.z = ((R1i.x == 0)?(0):(R2i.y)); -PV0i.z = R123i.z; -R123i.w = ((R1i.x == 0)?(0):(R2i.z)); -PV0i.w = R123i.w; -R122i.x = ((R1i.x == 0)?(0):(R2i.w)); -PS0i = R122i.x; -// 3 -R124i.x = ((R1i.x == 0)?(PV0i.x):(R24i.x)); -R17i.y = ((R12i.y == 0)?(R2i.y):(PV0i.z)); -R17i.z = ((R12i.y == 0)?(R2i.z):(PV0i.w)); -R17i.w = ((R12i.y == 0)?(R2i.w):(PS0i)); -R127i.z = ((R1i.x == 0)?(0):(PV0i.y)); -PS1i = R127i.z; -// 4 -R127i.x = ((R1i.x == 0)?(0):(R124i.y)); -R127i.y = ((R1i.x == 0)?(0):(R124i.z)); -R125i.z = ((R1i.x == 0)?(0):(R11i.w)); -R123i.w = ((R1i.x == 0)?(0):(R2i.x)); -PV0i.w = R123i.w; -R126i.z = ((R1i.x == 0)?(0):(R126i.y)); -PS0i = R126i.z; -// 5 -R15i.x = ((R12i.y == 0)?(R2i.x):(PV0i.w)); -R15i.y = ((R12i.y == 0)?(R0i.y):(R127i.z)); -R127i.z = ((R1i.x == 0)?(0):(R11i.z)); -R126i.w = ((R1i.x == 0)?(0):(R7i.w)); -R122i.x = ((R1i.x == 0)?(0):(R7i.y)); -PS1i = R122i.x; -// 6 -R21i.x = ((R12i.y == 0)?(R7i.y):(PS1i)); -R123i.y = ((R1i.x == 0)?(0):(R126i.x)); -PV0i.y = R123i.y; -R2i.z = ((R1i.x == 0)?(R22i.z):(R22i.z)); -R124i.w = ((R1i.x == 0)?(0):(R10i.w)); -R122i.x = ((R1i.x == 0)?(0):(R7i.z)); -PS0i = R122i.x; -// 7 -R19i.x = ((R12i.y == 0)?(R126i.x):(PV0i.y)); -R19i.y = ((R12i.y == 0)?(R124i.y):(R127i.x)); -R19i.z = ((R12i.y == 0)?(R126i.y):(R126i.z)); -R125i.w = ((R1i.x == 0)?(0):(R9i.w)); -R21i.y = ((R12i.y == 0)?(R7i.z):(PS0i)); -PS1i = R21i.y; -// 8 -R123i.x = ((R1i.x == 0)?(0):(R11i.x)); -PV0i.x = R123i.x; -R123i.y = ((R1i.x == 0)?(0):(R9i.y)); -PV0i.y = R123i.y; -R21i.z = ((R12i.y == 0)?(R7i.w):(R126i.w)); -R19i.w = ((R12i.y == 0)?(R124i.z):(R127i.y)); -R124i.z = ((R1i.x == 0)?(0):(R10i.z)); -PS0i = R124i.z; -// 9 -R20i.x = ((R12i.y == 0)?(R11i.x):(PV0i.x)); -R123i.y = ((R1i.x == 0)?(0):(R9i.z)); -PV1i.y = R123i.y; -R123i.z = ((R1i.x == 0)?(0):(R6i.x)); -PV1i.z = R123i.z; -R126i.w = R13i.z; -R25i.x = ((R12i.y == 0)?(R9i.y):(PV0i.y)); -PS1i = R25i.x; -// 10 -R123i.x = ((R1i.x == 0)?(0):(R11i.y)); -PV0i.x = R123i.x; -R25i.y = ((R12i.y == 0)?(R9i.z):(PV1i.y)); -R25i.z = ((R12i.y == 0)?(R9i.w):(R125i.w)); -R21i.w = ((R12i.y == 0)?(R6i.x):(PV1i.z)); -R25i.w = ((R12i.y == 0)?(R10i.z):(R124i.z)); -PS0i = R25i.w; -// 11 -R123i.x = ((R1i.x == 0)?(R22i.x):(R24i.x)); -PV1i.x = R123i.x; -R20i.y = ((R12i.y == 0)?(R11i.y):(PV0i.x)); -R20i.z = ((R12i.y == 0)?(R11i.z):(R127i.z)); -R20i.w = ((R12i.y == 0)?(R11i.w):(R125i.z)); -// 12 -R22i.x = ((R12i.y == 0)?(R124i.x):(PV1i.x)); -R127i.y = ((R1i.x == 0)?(0):(R12i.z)); -R127i.z = ((R1i.x == 0)?(0):(R9i.x)); -R123i.w = ((R1i.x == 0)?(R22i.y):(R18i.y)); -PV0i.w = R123i.w; -// 13 -R123i.x = ((R1i.x == 0)?(0):(R7i.x)); -PV1i.x = R123i.x; -R22i.y = ((R12i.y == 0)?(R6i.z):(PV0i.w)); -R22i.z = ((R12i.y == 0)?(R4i.w):(R2i.z)); -R125i.w = ((R1i.x == 0)?(R23i.y):(R1i.w)); -R124i.x = R13i.y; -PS1i = R124i.x; -// 14 -R26i.x = ((R12i.y == 0)?(R7i.x):(PV1i.x)); -R26i.y = ((R12i.y == 0)?(R10i.w):(R124i.w)); -R26i.z = ((R12i.y == 0)?(R12i.z):(R127i.y)); -R26i.w = ((R12i.y == 0)?(R9i.x):(R127i.z)); -PS0i = R18i.x; -// 15 -R18i.x = ((R12i.y == 0)?(PS0i):(R5i.w)); -R18i.y = ((R12i.y == 0)?(R124i.x):(R8i.z)); -R18i.z = ((R12i.y == 0)?(R126i.w):(R3i.y)); -R123i.w = ((R1i.x == 0)?(R23i.x):(R4i.y)); -PV1i.w = R123i.w; -// 16 -R23i.x = ((R12i.y == 0)?(R0i.w):(PV1i.w)); -R23i.y = ((R12i.y == 0)?(R0i.x):(R125i.w)); -R15i.z = ((R12i.y == 0)?(R2i.z):(R5i.y)); -R123i.w = ((R1i.x == 0)?(R23i.z):(R8i.x)); -PV0i.w = R123i.w; -// 17 -R123i.x = ((R1i.x == 0)?(R23i.w):(R12i.x)); -PV1i.x = R123i.x; -R23i.z = ((R12i.y == 0)?(R10i.y):(PV0i.w)); -R18i.w = ((R12i.y == 0)?(R10i.x):(R10i.x)); -PS1i = R18i.w; -// 18 -R23i.w = ((R12i.y == 0)?(R13i.x):(PV1i.x)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R26i.x), intBitsToFloat(R26i.y), intBitsToFloat(R26i.z), intBitsToFloat(R26i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R25i.x), intBitsToFloat(R25i.y), intBitsToFloat(R25i.z), intBitsToFloat(R25i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem7 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y), intBitsToFloat(R16i.z), intBitsToFloat(R16i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R15i.x), intBitsToFloat(R15i.y), intBitsToFloat(R15i.z), intBitsToFloat(R15i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/a4f029f0b16e3776_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/a4f029f0b16e3776_0000000000000000_vs.txt deleted file mode 100644 index d0bdfd3b..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/a4f029f0b16e3776_0000000000000000_vs.txt +++ /dev/null @@ -1,2259 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader a4f029f0b16e3776 -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 11, std140) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem8; -layout(location = 6) out vec4 passParameterSem11; -layout(location = 7) out vec4 passParameterSem14; -layout(location = 8) out vec4 passParameterSem15; -layout(location = 9) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 5) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[3]; -bool activeMaskStackC[4]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem4.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R15i.z = floatBitsToInt(-(intBitsToFloat(R8i.y)) + 1.0); -R4i.w = 0; -R5i.w = floatBitsToInt(1.0); -PS0i = R5i.w; -// 1 -R15i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + uf_blockVS8[2].x); -R16i.w = floatBitsToInt(-(intBitsToFloat(R8i.x)) + 1.0); -PS1i = R16i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R15i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R21i.x = 0; -R21i.y = 0; -R21i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R3i.w = R5i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R3i.w = R4i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R3i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R2i.w)); -// 1 -R3i.x = floatBitsToInt(float(PS0i)); -PS1i = R3i.x; -// 2 -predResult = (intBitsToFloat(R15i.w) >= intBitsToFloat(R3i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R21i.x = 0; -R21i.y = 0; -R21i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R4i.w = R5i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R4i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockVS7[10].y)); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R6i.x), 0.0)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R127i.y = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -PV1i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 0.0)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -R10i.y = floatBitsToInt(1.0 / intBitsToFloat(R3i.x)); -PS1i = R10i.y; -// 2 -R0i.x = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV1i.z)); -R11i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -PV0i.y = R11i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -R126i.y = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -PS0i = R126i.y; -// 3 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.z))); -R125i.y = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -// 4 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.z))); -R126i.z = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -R126i.w = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 5 -backupReg0i = R127i.x; -backupReg1i = R127i.y; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(-(uf_blockVS7[97].z) + uf_blockVS7[98].z); -PS1i = R126i.y; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[97].w)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[96].w)); -// 7 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.y))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -R125i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.y; -// 8 -R125i.x = ((intBitsToFloat(R126i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R125i.x; -R127i.yzw = floatBitsToInt(vec3(uf_blockVS7[96].z,uf_blockVS7[96].y,uf_blockVS7[96].x) + vec3(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.x) + -(uf_blockVS7[98].w)); -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -// 10 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -PS0i = R124i.x; -// 11 -backupReg0i = R127i.w; -R127i.x = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.z = floatBitsToInt(uf_blockVS7[97].z + intBitsToFloat(PV0i.y)); -R127i.w = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(PV0i.z)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PS1i = R126i.w; -// 12 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg0i = R126i.x; -backupReg1i = R127i.z; -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].x, intBitsToFloat(backupReg0i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].y, intBitsToFloat(backupReg0i))); -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[98].z, intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R124i.x))); -PS0i = R127i.z; -// 13 -backupReg0i = R127i.x; -backupReg1i = R127i.y; -backupReg2i = R126i.z; -backupReg3i = R127i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R124i.x))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV0i.y))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg3i), intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(-(intBitsToFloat(R125i.y)) + 1.0); -// 14 -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(PS1i))); -R2i.w = 0x3f800000; -PS0i = R2i.w; -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(uf_blockVS7[13].x); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(uf_blockVS7[13].y); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.x)); -R10i.z = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.z)); -R4i.w = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(PS1i)); -PS0i = R4i.w; -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV0i.y)); -// 18 -backupReg0i = R7i.y; -R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV1i.x))); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV1i.z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[3].y)); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), uf_blockVS8[3].w)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), uf_blockVS8[3].z)); -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.w = tempi.x; -// 2 -R12i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV0i.x = R12i.x; -PV0i.y = R12i.x; -PV0i.z = R12i.x; -PV0i.w = R12i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R2i.w)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.w = tempi.x; -// 4 -R0i.x = floatBitsToInt(intBitsToFloat(R7i.w) + -(uf_blockVS6[17].x)); -PV0i.x = R0i.x; -R7i.y = floatBitsToInt(intBitsToFloat(R12i.x) + -(uf_blockVS6[17].y)); -PV0i.y = R7i.y; -R0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS6[17].z)); -PV0i.z = R0i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(R7i.w)) + uf_blockVS6[17].x); -R127i.y = floatBitsToInt(-(intBitsToFloat(R12i.x)) + uf_blockVS6[17].y); -PS0i = R127i.y; -// 5 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.z = floatBitsToInt(-(intBitsToFloat(R9i.w)) + uf_blockVS6[17].z); -PS1i = R125i.z; -// 6 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(backupReg1i),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(backupReg1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 7 -R7i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.x)), intBitsToFloat(PS0i))); -R7i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), intBitsToFloat(PS0i))); -R0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R7i.y)), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R8i.z = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R8i.z; -// 9 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 10 -backupReg0i = R125i.w; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -PV0i.x = R127i.x; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.w = R125i.w; -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), -(uf_blockVS6[1].y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), -(uf_blockVS6[1].z))); -R11i.z = PV0i.w; -PV1i.z = R11i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), -(uf_blockVS6[1].x))); -R12i.z = PV0i.x; -PS1i = R12i.z; -// 12 -R126i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].y,intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y))); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].z,intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.w))); -PV0i.y = R127i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].x,intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -PV0i.z = R125i.z; -R8i.w = R126i.z; -R2i.x = PV1i.z; -PS0i = R2i.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R3i.z = R12i.z; -PS1i = R3i.z; -// 14 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 15 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PV1i.x = R9i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PV1i.y = R2i.y; -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -PV1i.w = R3i.w; -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.w))); -R5i.w = PV1i.y; -R11i.x = PV1i.w; -PS0i = R11i.x; -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 18 -R10i.x = PV1i.y; -PV0i.x = R10i.x; -R9i.y = PV1i.x; -PV0i.y = R9i.y; -R13i.z = PV1i.w; -PV0i.z = R13i.z; -// 19 -R0i.y = PV0i.x; -R2i.z = PV0i.y; -R2i.w = PV0i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(R0i.w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(R7i.x))); -PV0i.y = R125i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(R7i.z))); -PV0i.w = R127i.w; -// 1 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.w)); -R125i.w = R8i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R2i.x))); -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R2i.z)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R3i.z))); -R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R125i.w))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(R8i.z)); -PV0i.y = R126i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV0i.y))); -R14i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.y))); -R12i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV0i.y))); -// 6 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R10i.z))); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R4i.w))); -PV0i.y = R127i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); -PV0i.z = R126i.z; -R4i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(R125i.y)); -R0i.y = floatBitsToInt(intBitsToFloat(R12i.x) + intBitsToFloat(R126i.x)); -PS0i = R0i.y; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R11i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.z = floatBitsToInt(intBitsToFloat(R9i.w) + intBitsToFloat(R127i.w)); -PS1i = R11i.z; -// 8 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R5i.w),intBitsToFloat(R10i.x),intBitsToFloat(R12i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV1i.x)); -PS0i = R125i.w; -// 9 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R11i.x),intBitsToFloat(R13i.z),intBitsToFloat(R8i.w),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R12i.x) + intBitsToFloat(PV0i.x)); -// 10 -R12i.x = 0x3f800000; -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(R125i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R9i.w) + intBitsToFloat(PV1i.x)); -R126i.x = floatBitsToInt(-(uf_blockVS6[17].x) + intBitsToFloat(R4i.w)); -PS0i = R126i.x; -// 11 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(-(uf_blockVS6[17].y) + intBitsToFloat(backupReg0i)); -PV1i.z = floatBitsToInt(-(uf_blockVS6[17].z) + intBitsToFloat(R11i.z)); -R127i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + intBitsToFloat(PV0i.z)); -R127i.x = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = floatBitsToInt(-(intBitsToFloat(R11i.z)) + intBitsToFloat(PV1i.x)); -PS0i = R125i.w; -// 13 -PV1i.y = floatBitsToInt((0.0 > uf_blockVS7[8].x)?1.0:0.0); -PV1i.z = floatBitsToInt((uf_blockVS7[8].x > 0.0)?1.0:0.0); -R126i.w = 0x3f800000; -R13i.z = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R13i.z; -// 14 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PV0i.x = R126i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); -// 15 -R11i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R9i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -R125i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R9i.w = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].x); -// 16 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R0i.y),intBitsToFloat(R11i.z),intBitsToFloat(R126i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.y = tempi.x; -R126i.z = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -PS0i = R126i.z; -// 17 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(backupReg0i),intBitsToFloat(R11i.z),intBitsToFloat(R126i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS7[9].y) + intBitsToFloat(R126i.z))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(R126i.y) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -PV0i.w = PV1i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -// 19 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -R123i.z = floatBitsToInt((intBitsToFloat(R126i.y) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 20 -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -// 21 -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV0i.w))); -// 22 -PV0i.y = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV1i.z)); -// 23 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 24 -R3i.w = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R5i.y) + -(uf_blockVS7[60].w)); -PV0i.z = floatBitsToInt(min(intBitsToFloat(R13i.z), uf_blockVS7[116].x)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[116].x); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PS0i)); -R125i.z = floatBitsToInt(-(uf_blockVS7[60].y) + uf_blockVS7[61].y); -R126i.w = floatBitsToInt(-(uf_blockVS7[60].x) + uf_blockVS7[61].x); -// 2 -R126i.x = floatBitsToInt(-(uf_blockVS7[60].z) + uf_blockVS7[61].z); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(-(uf_blockVS7[60].w) + uf_blockVS7[61].w); -// 3 -R0i.x = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(PV0i.w)); -R4i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.z)); -R8i.z = floatBitsToInt(intBitsToFloat(R11i.z) + intBitsToFloat(PV0i.y)); -R4i.w = ((intBitsToFloat(R127i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.y) + -(uf_blockVS7[61].w)); -// 5 -R10i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R10i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.x)) + uf_blockVS7[60].z)); -R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.y)) + uf_blockVS7[60].y)); -R9i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.z)) + uf_blockVS7[60].x)); -// 6 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 7 -R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV0i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.y),intBitsToFloat(R8i.z),intBitsToFloat(R12i.x)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = tempi.x; -// 1 -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(R4i.y),intBitsToFloat(R8i.z),intBitsToFloat(R12i.x)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = R4i.x; -PV1i.y = R4i.x; -PV1i.z = R4i.x; -PV1i.w = R4i.x; -R126i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + 1.0); -PS1i = R126i.w; -// 2 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.y),intBitsToFloat(R8i.z),intBitsToFloat(R12i.x)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = tempi.x; -// 3 -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.y),intBitsToFloat(R8i.z),intBitsToFloat(R12i.x)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R13i.y = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].y, intBitsToFloat(R126i.w))); -R15i.y = floatBitsToInt((intBitsToFloat(R9i.z) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].x, intBitsToFloat(R126i.w))); -PV0i.w = PV1i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -PS0i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].z, intBitsToFloat(R126i.w))); -// 5 -R123i.x = floatBitsToInt((intBitsToFloat(R9i.z) * 0.0 + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R11i.x)) + intBitsToFloat(PS0i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R11i.x)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),intBitsToFloat(R11i.x)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -R14i.z = floatBitsToInt((intBitsToFloat(R9i.z) * 0.5 + intBitsToFloat(PV0i.w))); -PS1i = R14i.z; -// 6 -R13i.x = floatBitsToInt((intBitsToFloat(R0i.w) * 0.5 + intBitsToFloat(PV1i.x))); -R5i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].x,intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.w))); -R11i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].y,intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.z))); -R13i.w = floatBitsToInt((intBitsToFloat(R4i.x) * -(0.5) + intBitsToFloat(PV1i.x))); -R3i.z = floatBitsToInt(1.0 / intBitsToFloat(R15i.y)); -PS0i = R3i.z; -// 7 -PV1i.y = floatBitsToInt(intBitsToFloat(R14i.z) * intBitsToFloat(PS0i)); -R13i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].z,intBitsToFloat(R10i.x)) + intBitsToFloat(R126i.y))); -// 8 -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV0i.w = R123i.w; -// 9 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 10 -R2i.z = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -// 11 -R125i.z = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -// 12 -PV0i.y = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -// 13 -R126i.y = floatBitsToInt(-(uf_blockVS7[76].y) + uf_blockVS7[77].y); -R126i.z = floatBitsToInt(-(uf_blockVS7[76].x) + uf_blockVS7[77].x); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 14 -R127i.x = floatBitsToInt(-(uf_blockVS7[76].z) + uf_blockVS7[77].z); -PV0i.y = floatBitsToInt(-(uf_blockVS7[76].w) + uf_blockVS7[77].w); -R9i.w = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -// 15 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 16 -R11i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -R9i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -R8i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R11i.z; -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockVS8[0].x)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].y)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 1 -backupReg0i = R13i.z; -PV1i.x = floatBitsToInt((uf_blockVS7[8].z > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].z)); -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R126i.w; -PS1i = floatBitsToInt((0.0 > uf_blockVS7[8].z)?1.0:0.0); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS7[9].z) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].z); -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R125i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -PV1i.w = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS7[9].w) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.w))); -// 5 -R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -// 6 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.w))); -// 7 -R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[69].w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[68].w)); -// 1 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), uf_blockVS7[59].x)); -R126i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R9i.w)) + uf_blockVS7[68].x)); -R126i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R126i.w; -R14i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), uf_blockVS7[59].x)); -PS1i = R14i.w; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R16i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), uf_blockVS7[59].x)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R127i.w = floatBitsToInt(intBitsToFloat(R12i.x) + -(uf_blockVS7[76].w)); -PV0i.w = R127i.w; -// 3 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R11i.x)) + uf_blockVS7[76].y)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R9i.y)) + uf_blockVS7[76].x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV0i.x))); -R125i.w = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.w; -// 4 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R8i.w)) + uf_blockVS7[76].z)); -PV0i.y = floatBitsToInt(intBitsToFloat(R12i.x) + -(uf_blockVS7[77].w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.w = R127i.w; -// 5 -R124i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[69].x,intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].x, intBitsToFloat(PV0i.w))); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].y, intBitsToFloat(PV0i.w))); -// 6 -backupReg0i = R127i.w; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R17i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS8[0].w)); -PV0i.z = ((intBitsToFloat(R6i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].z, intBitsToFloat(backupReg0i))); -// 7 -PV1i.x = ((intBitsToFloat(R6i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R9i.y = ((PV0i.z == 0)?(R8i.x):(R16i.w)); -PV1i.z = ((intBitsToFloat(R6i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.x))); -R125i.w = ((intBitsToFloat(R6i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS1i = R125i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R126i.w))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R125i.z))); -PV0i.z = R123i.z; -R8i.w = ((PV1i.x == 0)?(R8i.y):(R15i.z)); -R4i.w = ((PV1i.z == 0)?(R8i.x):(R16i.w)); -PS0i = R4i.w; -// 9 -R12i.x = ((R125i.w == 0)?(R8i.y):(R15i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].z,intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].y,intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[77].x,intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -PS1i = ((intBitsToFloat(R6i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS8[1].z)); -R5i.y = ((PS1i == 0)?(R8i.x):(R16i.w)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockVS8[1].y)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[1].x)); -PS0i = ((intBitsToFloat(R6i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 11 -R11i.x = ((PS0i == 0)?(R8i.y):(R15i.z)); -R7i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.x))); -R7i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.z))); -R11i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R10i.x = floatBitsToInt(uf_blockVS7[84].x); -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -PV0i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -// 1 -PV1i.x = (PS0i == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = (PV0i.z == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PV1i.z = (PV0i.w == 0x00100000)?int(0xFFFFFFFF):int(0x0); -PV1i.w = (PV0i.y == 0x00080000)?int(0xFFFFFFFF):int(0x0); -R126i.z = floatBitsToInt(uf_blockVS7[5].y) & int(1); -PS1i = R126i.z; -// 2 -R9i.x = ((PV1i.w == 0)?(R8i.x):(R9i.y)); -R3i.y = ((PV1i.x == 0)?(R8i.y):(R12i.x)); -R4i.z = ((PV1i.y == 0)?(R8i.x):(R4i.w)); -R7i.w = ((PV1i.z == 0)?(R8i.y):(R8i.w)); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 3 -PV1i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -R2i.y = (int(1) != R126i.z)?int(0xFFFFFFFF):int(0x0); -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -PV1i.w = (PS0i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -R12i.x = int(uf_blockVS7[17].x); -PS1i = R12i.x; -// 4 -R3i.x = ((PV1i.w == 0)?(R8i.x):(R5i.y)); -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -PV0i.z = (PV1i.x == 0x01000000)?int(0xFFFFFFFF):int(0x0); -R125i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -R4i.w = int(uf_blockVS7[17].y); -PS0i = R4i.w; -// 5 -R2i.w = ((PV0i.z == 0)?(R8i.y):(R11i.x)); -PS1i = floatBitsToInt(float(R126i.z)); -// 6 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(R126i.y)); -// 7 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R125i.w)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.y; -// 9 -PV1i.x = 0 - PS0i; -R13i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 10 -PV0i.x = 0 - PS1i; -R8i.w = max(R126i.y, PV1i.x); -// 11 -R5i.w = max(R125i.y, PV0i.x); -} -if( activeMaskStackC[3] == true ) { -// 0 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS8[1].w)); -// 1 -R124i.x = int(-1) + R12i.x; -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -R125i.y = int(intBitsToFloat(R13i.z)); -PS1i = R125i.y; -// 2 -PV0i.x = 0 - PS1i; -PS0i = floatBitsToInt(float(PV1i.z)); -// 3 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R9i.w = max(R125i.y, PV0i.x); -R125i.z = floatBitsToInt(float(R12i.x)); -PS1i = R125i.z; -// 4 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt(float(R4i.w)); -PS0i = R126i.z; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R10i.y) * intBitsToFloat(PV0i.y)); -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 6 -PV0i.x = 0 - PS1i; -PS0i = int(intBitsToFloat(PV1i.x)); -// 7 -R127i.w = max(R125i.y, PV0i.x); -R127i.z = R8i.w * PS0i; -PS1i = R127i.z; -// 8 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.z)); -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(float(R12i.x)); -PS1i = R125i.y; -// 10 -R12i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R126i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R126i.w; -// 11 -PS1i = floatBitsToInt(float(PS0i)); -// 12 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i)); -R126i.x = floatBitsToInt(float(R126i.w)); -PS0i = R126i.x; -// 13 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R125i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R8i.w = floatBitsToInt(1.0 / abs(intBitsToFloat(R125i.y))); -PS1i = R8i.w; -// 14 -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.x)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.x)); -// 15 -R125i.x = int(1) - PS0i; -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R124i.w = PS0i * R124i.x; -PS1i = R124i.w; -// 16 -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R12i.x)) + intBitsToFloat(R125i.w))); -PV0i.z = R125i.z; -PS0i = floatBitsToInt(float(R126i.y)); -// 17 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R125i.y)))?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R125i.y))) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R124i.x = int(intBitsToFloat(R127i.x)); -PS1i = R124i.x; -// 18 -backupReg0i = R127i.w; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -R127i.w = ((intBitsToFloat(PV1i.x) == 0.0)?(R125i.z):(PV1i.y)); -PV0i.w = R127i.w; -R126i.y = backupReg0i * PS1i; -PS0i = R126i.y; -// 19 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.w)); -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 20 -R123i.y = ((-(intBitsToFloat(R127i.w)) > 0.0)?(PV1i.z):(R127i.w)); -PV0i.y = R123i.y; -PV0i.w = 0 - PS1i; -// 21 -R123i.x = ((-(intBitsToFloat(R126i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.x = R123i.x; -PV1i.z = max(R127i.x, PV0i.w); -// 22 -R123i.w = ((intBitsToFloat(R125i.y) == 0.0)?(R126i.x):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = PV1i.z * R124i.x; -// 23 -R125i.z = R126i.w + PS0i; -PS1i = int(intBitsToFloat(PV0i.w)); -// 24 -PS0i = R125i.x * PS1i; -// 25 -PV1i.z = PS0i + R124i.w; -R125i.x = R9i.w * R125i.z; -PS1i = R125i.x; -// 26 -PS0i = R5i.w * PV1i.z; -// 27 -PV1i.y = PS0i + R127i.z; -// 28 -PV0i.x = R125i.x + PV1i.y; -// 29 -PV1i.w = R126i.y + PV0i.x; -// 30 -R125i.z = floatBitsToInt(float(PV1i.w)); -PS0i = R125i.z; -// 31 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), abs(intBitsToFloat(PS0i)))); -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -// 32 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -// 33 -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R12i.x)) + intBitsToFloat(R124i.w))); -PV1i.z = R127i.z; -// 34 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R125i.y)))?1.0:0.0); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R125i.y))) + intBitsToFloat(PV1i.z)); -// 35 -R124i.w = ((intBitsToFloat(PV0i.x) == 0.0)?(R127i.z):(PV0i.y)); -PV1i.w = R124i.w; -// 36 -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.w)); -// 37 -R123i.y = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV0i.z):(R124i.w)); -PV1i.y = R123i.y; -// 38 -R123i.x = ((-(intBitsToFloat(R125i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.x = R123i.x; -// 39 -R123i.w = ((intBitsToFloat(R125i.y) == 0.0)?(R125i.z):(PV0i.x)); -PV1i.w = R123i.w; -// 40 -R125i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R125i.z; -// 41 -R125i.y = floatBitsToInt(float(PS0i)); -PS1i = R125i.y; -// 42 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R12i.x = floatBitsToInt(float(R125i.z)); -PS0i = R12i.x; -// 43 -R126i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -// 44 -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R125i.y))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -// 45 -R125i.x = floatBitsToInt((-(intBitsToFloat(PV0i.z)) * 4.0 + intBitsToFloat(R126i.y))); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 0.25); -R12i.z = ((R2i.y == 0)?(R6i.x):(R6i.y)); -// 46 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt((intBitsToFloat(PV1i.x) >= 4.0)?1.0:0.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0xc0800000)); -R9i.y = int(uf_blockVS7[26].x); -PS0i = R9i.y; -// 47 -R8i.y = ((intBitsToFloat(PV0i.z) == 0.0)?(R125i.x):(PV0i.w)); -R8i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R13i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R13i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R8i.y) + 4.0); -R5i.y = R13i.z + 0x00000012; -R8i.x = int(uf_blockVS7[26].y); -PS0i = R8i.x; -// 1 -R123i.w = ((-(intBitsToFloat(R8i.y)) > 0.0)?(PV0i.x):(R8i.y)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(float(R8i.w)); -// 2 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R123i.z = ((-(intBitsToFloat(R12i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.w)))):(PV1i.w)); -PV0i.z = R123i.z; -// 3 -R126i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PS1i = int(intBitsToFloat(PV0i.z)); -// 4 -PV0i.x = int(-1) + PS1i; -R126i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -R125i.z = 0xfffffffd + PS1i; -R124i.w = 0xfffffffe + PS1i; -PS0i = floatBitsToInt(float(PS1i)); -// 5 -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.x)); -// 6 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R124i.w)); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R125i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R125i.x; -// 8 -PV0i.x = 0 - PS1i; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -R124i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R124i.w; -// 9 -PV1i.x = 0 - PS0i; -PV1i.z = max(R125i.x, PV0i.x); -R127i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R127i.z; -// 10 -R12i.x = int(1) - PV1i.z; -PV0i.y = max(R124i.w, PV1i.x); -PV0i.z = 0 - PS1i; -PS0i = floatBitsToInt(float(R125i.z)); -// 11 -PV1i.x = max(R127i.z, PV0i.z); -R8i.y = int(1) - PV0i.y; -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R127i.z = int(intBitsToFloat(R126i.w)); -PS1i = R127i.z; -// 12 -PV0i.y = 0 - PS1i; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R8i.w = int(1) - PV1i.x; -PS0i = floatBitsToInt(float(R126i.y)); -// 13 -R10i.x = max(R127i.z, PV0i.y); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 14 -PV0i.x = 0 - PS1i; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -// 15 -PV1i.w = max(R126i.y, PV0i.x); -R11i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R11i.z; -// 16 -R13i.z = int(1) - PV1i.w; -} -if( activeMaskStackC[3] == true ) { -R5i.xyzw = floatBitsToInt(uf_blockVS7[R5i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -PV0i.y = 0 - R11i.z; -R126i.z = int(-1) + R9i.y; -R124i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R126i.y = R13i.z * R5i.w; -PS0i = R126i.y; -// 1 -R11i.x = max(R11i.z, PV0i.y); -R125i.x = R8i.w * R5i.z; -PS1i = R125i.x; -// 2 -R126i.w = R8i.y * R5i.y; -PS0i = R126i.w; -// 3 -PS1i = R12i.x * R5i.x; -// 4 -PV0i.y = R126i.w + PS1i; -PS0i = floatBitsToInt(float(R124i.w)); -// 5 -PV1i.x = R125i.x + PV0i.y; -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R126i.x)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R8i.w = R126i.y + PV1i.x; -R126i.w = floatBitsToInt(float(R9i.y)); -PS0i = R126i.w; -// 7 -R125i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -R127i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R127i.z; -// 8 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(R10i.y) * intBitsToFloat(PV1i.z)); -R125i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R125i.z; -// 9 -R5i.x = max(R127i.z, PV0i.x); -PV1i.y = 0 - PS0i; -PS1i = int(intBitsToFloat(PV0i.y)); -// 10 -R124i.x = max(R125i.z, PV1i.y); -R124i.w = R10i.x * PS1i; -PS0i = R124i.w; -// 11 -PS1i = floatBitsToInt(float(R8i.x)); -// 12 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 13 -PV1i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R125i.z = floatBitsToInt(float(R9i.y)); -PS1i = R125i.z; -// 14 -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R127i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R127i.x; -// 15 -PS1i = floatBitsToInt(float(PS0i)); -// 16 -PV0i.z = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PS1i)); -R125i.y = floatBitsToInt(float(R127i.x)); -PS0i = R125i.y; -// 17 -R126i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R123i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R123i.y; -R12i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R125i.z))); -PS1i = R12i.x; -// 18 -PV0i.w = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.y)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.y)); -// 19 -R8i.x = int(1) - PS0i; -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -R10i.x = PS0i * R126i.z; -PS1i = R10i.x; -// 20 -R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.z)),intBitsToFloat(R124i.y)) + intBitsToFloat(R126i.x))); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(float(R125i.x)); -// 21 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.w) >= abs(intBitsToFloat(R125i.z)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R125i.z))) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R127i.y = int(intBitsToFloat(R126i.y)); -PS1i = R127i.y; -// 22 -backupReg0i = R124i.x; -R124i.x = ((intBitsToFloat(PV1i.y) == 0.0)?(R126i.w):(PV1i.z)); -PV0i.x = R124i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -R126i.z = backupReg0i * PS1i; -PS0i = R126i.z; -// 23 -PV1i.w = floatBitsToInt(abs(intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.x)); -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 24 -PV0i.x = 0 - PS1i; -R123i.z = ((-(intBitsToFloat(R124i.x)) > 0.0)?(PV1i.w):(R124i.x)); -PV0i.z = R123i.z; -// 25 -R123i.y = ((-(intBitsToFloat(R125i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -PV1i.w = max(R126i.y, PV0i.x); -// 26 -R123i.x = ((intBitsToFloat(R125i.z) == 0.0)?(R125i.y):(PV1i.y)); -PV0i.x = R123i.x; -PS0i = PV1i.w * R127i.y; -// 27 -R126i.w = R127i.x + PS0i; -PS1i = int(intBitsToFloat(PV0i.x)); -// 28 -PS0i = R8i.x * PS1i; -// 29 -PV1i.w = PS0i + R10i.x; -R127i.y = R5i.x * R126i.w; -PS1i = R127i.y; -// 30 -PS0i = R11i.x * PV1i.w; -// 31 -PV1i.z = PS0i + R124i.w; -// 32 -PV0i.y = R127i.y + PV1i.z; -// 33 -PV1i.x = R126i.z + PV0i.y; -// 34 -R126i.w = floatBitsToInt(float(PV1i.x)); -PS0i = R126i.w; -// 35 -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), abs(intBitsToFloat(PS0i)))); -// 36 -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -// 37 -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.y)),intBitsToFloat(R124i.y)) + intBitsToFloat(R127i.x))); -PV1i.w = R124i.w; -// 38 -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.w) >= abs(intBitsToFloat(R125i.z)))?1.0:0.0); -PV0i.z = floatBitsToInt(-(abs(intBitsToFloat(R125i.z))) + intBitsToFloat(PV1i.w)); -// 39 -R127i.x = ((intBitsToFloat(PV0i.y) == 0.0)?(R124i.w):(PV0i.z)); -PV1i.x = R127i.x; -// 40 -PV0i.w = floatBitsToInt(abs(intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.x)); -// 41 -R123i.z = ((-(intBitsToFloat(R127i.x)) > 0.0)?(PV0i.w):(R127i.x)); -PV1i.z = R123i.z; -// 42 -R123i.y = ((-(intBitsToFloat(R126i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -// 43 -R123i.x = ((intBitsToFloat(R125i.z) == 0.0)?(R126i.w):(PV0i.y)); -PV1i.x = R123i.x; -// 44 -R126i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R126i.w; -// 45 -R125i.z = floatBitsToInt(float(PS0i)); -PS1i = R125i.z; -// 46 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R9i.y = floatBitsToInt(float(R126i.w)); -PS0i = R9i.y; -// 47 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -R12i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -// 48 -R5i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * 0.5 + intBitsToFloat(R125i.z))); -R5i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R5i.z) * 0.25); -R124i.y = floatBitsToInt((-(intBitsToFloat(R5i.w)) * 4.0 + intBitsToFloat(R12i.z))); -PV0i.y = R124i.y; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(0xc0800000)); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.y) >= 4.0)?1.0:0.0); -// 2 -R125i.z = ((intBitsToFloat(PV1i.w) == 0.0)?(R124i.y):(PV1i.x)); -PV0i.z = R125i.z; -PS0i = int(intBitsToFloat(PV1i.y)); -// 3 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 4.0); -R5i.z = PS0i + 0x0000001b; -PS1i = int(uf_blockVS7[48].z); -// 4 -R123i.x = ((-(intBitsToFloat(R125i.z)) > 0.0)?(PV1i.y):(R125i.z)); -PV0i.x = R123i.x; -R11i.z = floatBitsToInt(float(PS1i)); -PS0i = R11i.z; -// 5 -R123i.w = ((-(intBitsToFloat(R9i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.w = R123i.w; -R9i.y = floatBitsToInt(float(R8i.w)); -PS1i = R9i.y; -// 6 -PS0i = int(intBitsToFloat(PV1i.w)); -// 7 -R127i.x = 0xfffffffe + PS0i; -PV1i.y = int(-1) + PS0i; -R125i.z = floatBitsToInt(abs(intBitsToFloat(R11i.z))); -R126i.w = 0xfffffffd + PS0i; -PS1i = floatBitsToInt(float(PS0i)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.y)); -// 9 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.x)); -// 10 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R124i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R124i.y; -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.x))); -PV1i.y = 0 - PS0i; -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 12 -PV0i.x = 0 - PS1i; -PV0i.w = max(R124i.y, PV1i.y); -R124i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R124i.w; -// 13 -R5i.x = int(1) - PV0i.w; -PV1i.y = 0 - PS0i; -PV1i.z = max(R127i.x, PV0i.x); -PS1i = floatBitsToInt(float(R126i.w)); -// 14 -R11i.x = int(1) - PV1i.z; -PV0i.y = max(R124i.w, PV1i.y); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R8i.x = floatBitsToInt(float(R8i.w)); -PS0i = R8i.x; -// 15 -R12i.x = int(1) - PV0i.y; -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R11i.z))); -// 16 -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R8i.x)), intBitsToFloat(PS1i))); -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 17 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -PV1i.y = 0 - PS0i; -// 18 -PV0i.x = max(R126i.z, PV1i.y); -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R125i.z)) + intBitsToFloat(R124i.y))); -PV0i.z = R126i.z; -// 19 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R11i.z)))?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R11i.z))) + intBitsToFloat(PV0i.z)); -R8i.w = int(1) - PV0i.x; -// 20 -R5i.w = ((intBitsToFloat(PV1i.x) == 0.0)?(R126i.z):(PV1i.y)); -PV0i.w = R5i.w; -// 21 -R12i.z = floatBitsToInt(abs(intBitsToFloat(R11i.z)) + intBitsToFloat(PV0i.w)); -} -if( activeMaskStackC[3] == true ) { -R10i.xyzw = floatBitsToInt(uf_blockVS7[R5i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(R9i.y))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(R9i.y) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockVS7[45].x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -R125i.z = R8i.w * R10i.w; -PS0i = R125i.z; -// 1 -R124i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.w)); -R123i.y = ((-(intBitsToFloat(R5i.w)) > 0.0)?(R12i.z):(R5i.w)); -PV1i.y = R123i.y; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), uf_blockVS7[45].y)); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) * 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -R124i.y = R12i.x * R10i.z; -PS1i = R124i.y; -// 2 -R123i.x = ((-(intBitsToFloat(R8i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R127i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * 0.5 + intBitsToFloat(R9i.y))); -R127i.x = R11i.x * R10i.y; -PS0i = R127i.x; -// 3 -R126i.x = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV1i.z = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R123i.w = ((intBitsToFloat(R11i.z) == 0.0)?(R8i.x):(PV0i.x)); -PV1i.w = R123i.w; -PS1i = R5i.x * R10i.x; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),uf_blockVS7[46].z) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),uf_blockVS7[46].w) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PV0i.z = R127i.x + PS1i; -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(R124i.x)))); -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 5 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[45].z) + intBitsToFloat(PV0i.x))); -PV1i.y = R124i.y + PV0i.z; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[45].w) + intBitsToFloat(PV0i.y))); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[44].y) + intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R11i.z)); -// 6 -R125i.x = R125i.z + PV1i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 7 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R123i.y = ((R2i.y == 0)?(0):(int(1))); -PV1i.y = R123i.y; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 8 -R127i.x = (PV1i.y == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.x = R127i.x; -PV0i.y = (PV1i.y == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(PV1i.x)) + -(0.5))); -R127i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.z; -// 9 -backupReg0i = R126i.z; -R123i.x = ((PV0i.y == 0)?(R6i.x):(R6i.z)); -PV1i.x = R123i.x; -R124i.y = ((PV0i.x == 0)?(R6i.x):(R6i.y)); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV0i.z)) + -(0.5))); -R123i.w = ((PV0i.y == 0)?(R6i.y):(R6i.x)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(float(backupReg0i)); -// 10 -R123i.x = ((R127i.x == 0)?(PV1i.w):(R6i.z)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS1i)) + intBitsToFloat(R124i.w))); -PV0i.y = R123i.y; -R123i.z = ((R127i.x == 0)?(PV1i.x):(R6i.y)); -PV0i.z = R123i.z; -R124i.w = ((R127i.x == 0)?(R6i.y):(R6i.z)); -PS0i = floatBitsToInt(float(R127i.z)); -// 11 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(PV0i.z))); -R124i.x = floatBitsToInt(intBitsToFloat(R124i.x) * 2.0); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV0i.x))); -R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); -PS1i = int(uf_blockVS7[53].z); -// 12 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R126i.z)) + -(intBitsToFloat(PV1i.z)))); -PV0i.y = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -PV0i.w = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R126i.y = floatBitsToInt(float(PS1i)); -PS0i = R126i.y; -// 13 -backupReg0i = R127i.w; -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R126i.z = floatBitsToInt(-(intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.w)); -R127i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -R124i.x = floatBitsToInt(float(R125i.x)); -PS1i = R124i.x; -// 14 -backupReg0i = R124i.y; -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R124i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.w = floatBitsToInt(float(R125i.x)); -PS0i = R126i.w; -// 15 -backupReg0i = R124i.w; -R125i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R10i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R126i.z)))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.y))); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R126i.w)), intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R124i.x))); -PV0i.y = R123i.y; -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[49].y) + intBitsToFloat(R127i.w))); -R10i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[50].z) + intBitsToFloat(R124i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); -// 17 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[50].w) + intBitsToFloat(R124i.w))); -R126i.z = ((R2i.y == 0)?(0):(0x00000002)); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 18 -backupReg0i = R127i.x; -R127i.x = (PV1i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R125i.x))); -PV0i.y = R124i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -R7i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS1i))); -PV0i.w = R7i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 19 -backupReg0i = R4i.z; -PV1i.x = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV0i.y)); -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS0i))); -PV1i.y = R127i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + -(0.5))); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -PS1i = int(intBitsToFloat(PV0i.z)); -// 20 -backupReg0i = R124i.y; -PV0i.x = (R126i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(PV1i.y)) + -(0.5))); -R126i.z = ((intBitsToFloat(PV1i.w) == 0.0)?(backupReg0i):(PV1i.x)); -PV0i.z = R126i.z; -R8i.w = ((R127i.x == 0)?(R6i.x):(R6i.y)); -PS0i = floatBitsToInt(float(PS1i)); -// 21 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R124i.z))); -PV1i.y = R123i.y; -R123i.z = ((PV0i.x == 0)?(R6i.y):(R6i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.x == 0)?(R6i.x):(R6i.z)); -PV1i.w = R123i.w; -R11i.z = ((R127i.x == 0)?(R6i.y):(R6i.z)); -PS1i = R11i.z; -// 22 -backupReg0i = R6i.z; -R123i.x = ((-(intBitsToFloat(R126i.z)) > 0.0)?(PV1i.x):(R126i.z)); -PV0i.x = R123i.x; -R3i.y = ((R127i.x == 0)?(PV1i.w):(R6i.y)); -R6i.z = ((R127i.x == 0)?(PV1i.z):(backupReg0i)); -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R124i.y)) + -(intBitsToFloat(PV1i.y)))); -PS0i = int(uf_blockVS7[58].z); -// 23 -R123i.w = ((-(intBitsToFloat(R126i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.w = R123i.w; -R6i.x = floatBitsToInt(float(PS0i)); -PS1i = R6i.x; -// 24 -PV0i.x = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -R123i.z = ((intBitsToFloat(R126i.y) == 0.0)?(R126i.w):(PV1i.w)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 25 -R2i.y = ((intBitsToFloat(PV0i.x) == 0.0)?(0):(PV0i.w)); -R6i.w = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R6i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R6i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R6i.x)) + intBitsToFloat(R2i.y)); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R3i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(R6i.w))); -PV0i.w = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -PS0i = floatBitsToInt(float(R6i.y)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R10i.y))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R6i.z))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.w)); -R123i.w = ((-(intBitsToFloat(R2i.y)) > 0.0)?(PV0i.x):(R2i.y)); -PV1i.w = R123i.w; -R124i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R124i.y; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[54].x) + -(intBitsToFloat(PV1i.z)))); -R123i.z = ((intBitsToFloat(R6i.x) == 0.0)?(0):(PV1i.w)); -PV0i.z = R123i.z; -R10i.w = floatBitsToInt(intBitsToFloat(R9i.y) + 0.5); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 3 -R6i.xyz = floatBitsToInt(vec3(intBitsToFloat(PV0i.x),intBitsToFloat(R9i.x),intBitsToFloat(R5i.w)) + vec3(0.5,0.5,0.5)); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS0i))); -PV1i.w = R126i.w; -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 4 -backupReg0i = R11i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R3i.w) + -(uf_blockVS7[93].x)); -R11i.y = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV1i.w)) + -(0.5))); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + 0.0); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 5 -backupReg0i = R126i.y; -R124i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + -(uf_blockVS7[104].w)); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -PS1i = floatBitsToInt(float(backupReg0i)); -// 6 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.y))); -PV0i.y = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.y)) + -(0.5))); -R126i.w = floatBitsToInt(float(R124i.y)); -PS0i = R126i.w; -// 7 -PV1i.x = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -PV1i.z = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R11i.y)); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[54].y) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R8i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R4i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -R4i.z = clampFI32(R4i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R11i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[55].z) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[105].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[55].w) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R126i.z)) + intBitsToFloat(R125i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R124i.z)) + -(intBitsToFloat(PV1i.y)))); -PV0i.w = R123i.w; -// 11 -R5i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R5i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PV1i.z = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R126i.w = ((intBitsToFloat(R124i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R127i.x = ((intBitsToFloat(R125i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R127i.x; -// 12 -R125i.x = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 13 -PV1i.x = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[106].w)); -PV1i.z = R126i.z; -// 14 -R126i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R126i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[107].w)); -PV0i.z = R124i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[104].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 15 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R125i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R124i.w = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -PS1i = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -// 16 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[105].x)); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[108].w)); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS1i))); -PS0i = R125i.y; -// 17 -backupReg0i = R126i.w; -R124i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R126i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -// 18 -R127i.x = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 19 -PV1i.x = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS0i)); -R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.w))); -// 20 -backupReg0i = R126i.z; -R126i.z = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[109].w)); -PV0i.z = R126i.z; -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.y)) + uf_blockVS7[106].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 21 -R125i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R125i.x; -R9i.y = floatBitsToInt(fract(intBitsToFloat(R1i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R124i.w = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R127i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x42c80000)); -R127i.x = clampFI32(R127i.x); -PS1i = R127i.x; -// 22 -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[107].x)); -R10i.y = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[110].w)); -PV0i.y = R10i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PS1i))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS1i))); -PS0i = R1i.z; -// 23 -backupReg0i = R124i.x; -R124i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(R127i.x))); -// 24 -R127i.x = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 25 -PV1i.x = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS0i)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.w))); -// 26 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.w) + -(uf_blockVS7[111].w)); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + uf_blockVS7[108].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 27 -R9i.x = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R9i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R0i.w = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -// 28 -R3i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[109].x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R126i.w))); -// 29 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -// 30 -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R8i.w)) + intBitsToFloat(PV1i.x))); -R4i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R4i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R4i.x; -backupReg1i = R1i.y; -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), uf_blockVS11[5].z)); -R1i.y = floatBitsToInt(intBitsToFloat(R0i.w) * intBitsToFloat(backupReg0i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),uf_blockVS13[24].x) + -(uf_blockVS13[24].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R11i.y)) + intBitsToFloat(backupReg1i))); -PV0i.w = R123i.w; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R11i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R2i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[24].w, intBitsToFloat(PS0i))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.x))); -// 4 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 5 -R9i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),uf_blockVS13[25].w) + uf_blockVS13[25].w)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R0i.x))); -R125i.y = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R4i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R1i.y)) + uf_blockVS7[110].x)); -PV0i.w = R123i.w; -// 1 -R124i.x = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R8i.z))); -PV1i.x = R124i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.w))); -PV1i.z = R123i.z; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PV1i.x)); -R1i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R9i.x)) + intBitsToFloat(PV1i.z))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(R3i.z)); -// 4 -PV0i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); -R1i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R1i.w = clampFI32(R1i.w); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(uf_blockVS13[28].y + 1.0); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(PS0i) * 1.5); -R126i.x = clampFI32(R126i.x); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.z = R126i.z; -PV1i.w = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -// 2 -backupReg0i = R0i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w)); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.w = R123i.w; -R125i.z = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R2i.z))); -PS0i = R125i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xbe593484))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV0i.z)) + uf_blockVS13[27].x)); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x41700000)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.y))); -// 4 -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS13[26].w)); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R1i.w)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -backupReg0i = R124i.z; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.w))) + 1.0)); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS0i))); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0x41080000)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -R2i.y = 0; -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3daaaaab)); -R0i.w = ((0.0 >= intBitsToFloat(R4i.z))?int(0xFFFFFFFF):int(0x0)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 7 -R3i.x = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R0i.y = floatBitsToInt(intBitsToFloat(PS0i) + 0.5); -R8i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3e4ccccd))); -R1i.w = 0; -R3i.z = floatBitsToInt(exp2(intBitsToFloat(R124i.z))); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -R0i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R0i.xy)).xyz); -R2i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R2i.zy)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R3i.z; -PV0i.x = floatBitsToInt(min(intBitsToFloat(R8i.z), 1.0)); -R126i.y = 0; -R3i.z = ((R0i.w == 0)?(R3i.w):(R1i.w)); -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(backupReg0i)) + uf_blockVS13[23].z)); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R8i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS8[3].x,intBitsToFloat(R4i.z)) + 0.0)); -PS0i = R8i.x; -// 1 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.x))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.w)); -PV1i.w = clampFI32(PV1i.w); -R1i.x = 0; -PS1i = R1i.x; -// 2 -R10i.x = R12i.y; -R125i.y = PV1i.w; -R126i.z = PV1i.w; -R124i.w = ((R0i.w == 0)?(R1i.z):(R126i.y)); -R0i.y = R14i.y; -PS0i = R0i.y; -// 3 -R125i.x = ((R0i.w == 0)?(R13i.y):(R13i.y)); -R124i.y = ((R0i.w == 0)?(R5i.w):(R3i.x)); -R0i.z = R12i.w; -R127i.w = ((R0i.w == 0)?(R22i.z):(R22i.z)); -R125i.w = ((R0i.w == 0)?(R8i.x):(R1i.x)); -PS1i = R125i.w; -// 4 -R0i.x = ((R0i.w == 0)?(0):(0x3f800000)); -PV0i.x = R0i.x; -R123i.y = ((R0i.w == 0)?(0):(R9i.x)); -PV0i.y = R123i.y; -R127i.z = ((R0i.w == 0)?(R1i.y):(R1i.y)); -R123i.w = ((R0i.w == 0)?(0):(R9i.z)); -PV0i.w = R123i.w; -R126i.x = ((R0i.w == 0)?(0):(R4i.x)); -PS0i = R126i.x; -// 5 -R18i.x = ((PV0i.x == 0)?(R9i.z):(PV0i.w)); -R18i.y = ((PV0i.x == 0)?(R9i.x):(PV0i.y)); -R123i.z = ((R0i.w == 0)?(0):(R125i.y)); -PV1i.z = R123i.z; -R123i.w = ((R0i.w == 0)?(0):(R127i.y)); -PV1i.w = R123i.w; -R124i.z = ((R0i.w == 0)?(0):(R124i.x)); -PS1i = R124i.z; -// 6 -R19i.x = ((R0i.x == 0)?(R127i.y):(PV1i.w)); -R123i.y = ((R0i.w == 0)?(0):(R125i.z)); -PV0i.y = R123i.y; -R18i.z = ((R0i.x == 0)?(R125i.y):(PV1i.z)); -R18i.w = ((R0i.x == 0)?(R4i.x):(R126i.x)); -R122i.x = ((R0i.w == 0)?(0):(R126i.z)); -PS0i = R122i.x; -// 7 -backupReg0i = R124i.x; -R124i.x = ((R0i.w == 0)?(0):(R2i.y)); -R19i.y = ((R0i.x == 0)?(backupReg0i):(R124i.z)); -R19i.z = ((R0i.x == 0)?(R125i.z):(PV0i.y)); -R19i.w = ((R0i.x == 0)?(R126i.z):(PS0i)); -R126i.x = ((R0i.w == 0)?(0):(R2i.w)); -PS1i = R126i.x; -// 8 -R127i.x = ((R0i.w == 0)?(0):(R10i.x)); -R123i.y = ((R0i.w == 0)?(0):(R2i.z)); -PV0i.y = R123i.y; -R124i.z = ((R0i.w == 0)?(0):(R0i.y)); -R123i.w = ((R0i.w == 0)?(0):(R2i.x)); -PV0i.w = R123i.w; -R127i.y = ((R0i.w == 0)?(0):(R0i.z)); -PS0i = R127i.y; -// 9 -R20i.x = ((R0i.x == 0)?(R2i.x):(PV0i.w)); -R20i.y = ((R0i.x == 0)?(R2i.y):(R124i.x)); -R20i.z = ((R0i.x == 0)?(R2i.z):(PV0i.y)); -R5i.w = ((R0i.w == 0)?(0):(R10i.w)); -R126i.z = ((R0i.w == 0)?(0):(R5i.y)); -PS1i = R126i.z; -// 10 -R123i.x = ((R0i.w == 0)?(0):(R10i.w)); -PV0i.x = R123i.x; -R125i.y = ((R0i.w == 0)?(0):(R5i.z)); -R123i.z = ((R0i.w == 0)?(0):(R6i.y)); -PV0i.z = R123i.z; -R20i.w = ((R0i.x == 0)?(R2i.w):(R126i.x)); -R2i.w = ((R0i.w == 0)?(0):(R14i.z)); -PS0i = R2i.w; -// 11 -R23i.x = ((R0i.x == 0)?(R10i.w):(PV0i.x)); -R23i.y = ((R0i.x == 0)?(R6i.y):(PV0i.z)); -R125i.z = ((R0i.w == 0)?(0):(R6i.z)); -R123i.w = ((R0i.w == 0)?(0):(R5i.x)); -PV1i.w = R123i.w; -R126i.w = ((R0i.w == 0)?(R22i.y):(R1i.y)); -PS1i = R126i.w; -// 12 -R2i.x = ((R0i.x == 0)?(R5i.x):(PV1i.w)); -R2i.y = ((R0i.x == 0)?(R5i.y):(R126i.z)); -R123i.z = ((R0i.w == 0)?(0):(R6i.x)); -PV0i.z = R123i.z; -R10i.w = ((R0i.w == 0)?(0):(R13i.w)); -R126i.z = ((R0i.w == 0)?(R22i.z):(R22i.z)); -PS0i = R126i.z; -// 13 -R126i.x = ((R0i.w == 0)?(0):(R15i.y)); -R123i.y = ((R0i.w == 0)?(0):(R11i.w)); -PV1i.y = R123i.y; -R23i.z = ((R0i.x == 0)?(R6i.x):(PV0i.z)); -R23i.w = ((R0i.x == 0)?(R6i.z):(R125i.z)); -R122i.x = ((R0i.w == 0)?(0):(R7i.z)); -PS1i = R122i.x; -// 14 -R11i.x = ((R0i.x == 0)?(R11i.w):(PV1i.y)); -R11i.y = ((R0i.x == 0)?(R7i.z):(PS1i)); -R123i.z = ((R0i.w == 0)?(R22i.x):(R1i.x)); -PV0i.z = R123i.z; -R123i.w = ((R0i.w == 0)?(0):(R7i.y)); -PV0i.w = R123i.w; -R124i.x = ((R0i.w == 0)?(0):(R14i.w)); -PS0i = R124i.x; -// 15 -R22i.x = ((R0i.x == 0)?(R125i.w):(PV0i.z)); -R22i.y = ((R0i.x == 0)?(R127i.z):(R126i.w)); -R22i.z = ((R0i.x == 0)?(R127i.w):(R126i.z)); -PV1i.w = R12i.y; -R11i.z = ((R0i.x == 0)?(R7i.y):(PV0i.w)); -PS1i = R11i.z; -// 16 -backupReg0i = R13i.y; -R9i.x = ((R0i.x == 0)?(PV1i.w):(R127i.x)); -R13i.y = ((R0i.w == 0)?(0):(R17i.y)); -R123i.z = ((R0i.w == 0)?(0):(R7i.x)); -PV0i.z = R123i.z; -R127i.w = ((R0i.w == 0)?(0):(R16i.y)); -R127i.z = ((R0i.w == 0)?(R21i.w):(backupReg0i)); -PS0i = R127i.z; -// 17 -R123i.x = ((R0i.w == 0)?(R21i.y):(R126i.y)); -PV1i.x = R123i.x; -R123i.y = ((R0i.w == 0)?(R21i.x):(R1i.w)); -PV1i.y = R123i.y; -PV1i.z = R14i.y; -R11i.w = ((R0i.x == 0)?(R7i.x):(PV0i.z)); -PS1i = R12i.w; -// 18 -R21i.x = ((R0i.x == 0)?(R3i.z):(PV1i.y)); -R9i.y = ((R0i.x == 0)?(PV1i.z):(R124i.z)); -R9i.z = ((R0i.x == 0)?(PS1i):(R127i.y)); -R123i.w = ((R0i.w == 0)?(0):(R13i.x)); -PV0i.w = R123i.w; -R21i.y = ((R0i.x == 0)?(R124i.w):(PV1i.x)); -PS0i = R21i.y; -// 19 -R10i.x = ((R0i.x == 0)?(R13i.x):(PV0i.w)); -R10i.y = ((R0i.x == 0)?(R13i.w):(R10i.w)); -R10i.z = ((R0i.x == 0)?(R14i.z):(R2i.w)); -R2i.z = ((R0i.x == 0)?(R5i.z):(R125i.y)); -PS1i = R2i.z; -// 20 -R123i.x = ((R0i.w == 0)?(R21i.z):(R3i.x)); -PV0i.x = R123i.x; -R10i.w = ((R0i.x == 0)?(R15i.y):(R126i.x)); -R9i.w = ((R0i.x == 0)?(R5i.w):(R5i.w)); -PS0i = R9i.w; -// 21 -R21i.z = ((R0i.x == 0)?(R124i.y):(PV0i.x)); -R21i.w = ((R0i.x == 0)?(R125i.x):(R127i.z)); -// 22 -R123i.y = ((R0i.w == 0)?(0):(R14i.x)); -PV0i.y = R123i.y; -// 23 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg0i = R0i.x; -R0i.x = ((backupReg0i == 0)?(R14i.x):(PV0i.y)); -R0i.y = ((backupReg0i == 0)?(R14i.w):(R124i.x)); -R0i.z = ((backupReg0i == 0)?(R16i.y):(R127i.w)); -R0i.w = ((backupReg0i == 0)?(R17i.y):(R13i.y)); -PS1i = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R11i.x), intBitsToFloat(R11i.y), intBitsToFloat(R11i.z), intBitsToFloat(R11i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R10i.x), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/b9eeedc9f6628c36_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/b9eeedc9f6628c36_0000000000000000_vs.txt deleted file mode 100644 index b6c1117c..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/b9eeedc9f6628c36_0000000000000000_vs.txt +++ /dev/null @@ -1,2465 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader b9eeedc9f6628c36 // distant cloud and fog vs -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 11, std140) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -layout(binding = 14, std140) uniform uniformBlockVS14 -{ -vec4 uf_blockVS14[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -layout(location = 11) in uvec4 attrDataSem11; -layout(location = 12) in uvec4 attrDataSem12; -layout(location = 13) in uvec4 attrDataSem13; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem8; -layout(location = 6) out vec4 passParameterSem11; -layout(location = 7) out vec4 passParameterSem14; -layout(location = 8) out vec4 passParameterSem15; -layout(location = 9) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 5) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem8; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem7.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem12; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R12i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem4; -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R11i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R7i.z = floatBitsToInt(-(intBitsToFloat(R12i.y)) + 1.0); -R0i.w = 0; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R9i.w = floatBitsToInt(-(intBitsToFloat(R7i.w)) + uf_blockVS8[2].x); -R11i.w = floatBitsToInt(-(intBitsToFloat(R12i.x)) + 1.0); -PS1i = R11i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R9i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R2i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R2i.w = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R2i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R6i.w)); -// 1 -R0i.x = floatBitsToInt(float(PS0i)); -PS1i = R0i.x; -// 2 -backupReg0i = R0i.x; -predResult = (intBitsToFloat(R9i.w) >= intBitsToFloat(backupReg0i)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R0i.w = R1i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R0i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R127i.x = R1i.y; -R0i.y = R2i.x; -R0i.z = R3i.x; -R127i.w = R2i.y; -R127i.z = R3i.y; -PS0i = R127i.z; -// 1 -R126i.x = R1i.z; -R127i.y = R2i.z; -R126i.z = R3i.z; -// 2 -backupReg0i = R0i.y; -backupReg0i = R0i.y; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.w),intBitsToFloat(R127i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R6i.y; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -PS0i = R0i.w; -// 5 -R0i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R0i.y; -// 6 -predResult = (intBitsToFloat(R6i.y) > 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R6i.y)); -PS0i = R127i.y; -// 1 -R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS0i))); -PS1i = R15i.x; -// 2 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R127i.y))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R13i.x = 0; -PV0i.x = R13i.x; -// 1 -R14i.x = PV0i.x; -// 2 -R15i.x = R13i.x; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -predResult = (intBitsToFloat(R0i.w) > 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R0i.w)); -PS0i = R127i.x; -// 1 -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); -R15i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS0i))); -PS1i = R15i.y; -// 2 -R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R127i.x))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R14i.y = 0; -R15i.y = 0; -PS0i = R15i.y; -// 1 -R13i.y = 0; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -predResult = (intBitsToFloat(R0i.y) > 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R0i.y)); -PS0i = R127i.x; -// 1 -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS0i))); -R15i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS0i))); -PS1i = R15i.z; -// 2 -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R127i.x))); -} -activeMaskStack[3] = activeMaskStack[3] == false; -activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; -if( activeMaskStackC[4] == true ) { -// 0 -R14i.z = 0; -R15i.z = 0; -PS0i = R15i.z; -// 1 -R13i.z = 0; -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -R127i.z = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(R10i.z)); -R0i.w = 0x3f800000; -R1i.w = floatBitsToInt(uf_blockVS8[4].w); -PS0i = R1i.w; -// 1 -R126i.x = R10i.z; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -R126i.y = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R10i.y)); -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -R2i.w = floatBitsToInt(uf_blockVS8[5].w); -R3i.w = floatBitsToInt(uf_blockVS8[6].w); -PS1i = R3i.w; -// 2 -backupReg0i = R0i.w; -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg0i)))); -PV0i.x = R6i.x; -PV0i.y = R6i.x; -PV0i.z = R6i.x; -PV0i.w = R6i.x; -R127i.w = floatBitsToInt(1.0 / uf_blockVS7[9].x); -PS0i = R127i.w; -// 3 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),intBitsToFloat(R2i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg0i)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.y = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS7[10].y)); -PS1i = R127i.x; -// 4 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R3i.w)),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(backupReg0i)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R12i.z = tempi.x; -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00020000; -PS0i = R127i.y; -// 5 -R125i.x = floatBitsToInt(-(intBitsToFloat(R125i.z)) + 1.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(R127i.w)); -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00010000; -R127i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00040000; -R12i.w = floatBitsToInt(1.0 / intBitsToFloat(R0i.x)); -PS1i = R12i.w; -// 6 -backupReg0i = R127i.x; -R127i.x = R10i.y; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0); -R125i.y = floatBitsToInt(intBitsToFloat(R127i.z) * 0.5); -PV0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.y)); -R126i.w = floatBitsToInt(floor(intBitsToFloat(R126i.x))); -PS0i = floatBitsToInt(float(R127i.y)); -// 7 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R19i.z = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(R12i.w)); -PV1i.z = R19i.z; -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R126i.z)); -// 8 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R125i.x))); -PS0i = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -// 9 -backupReg0i = R126i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PS0i))); -R126i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * 0.5); -R3i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(PV0i.x)); -R125i.w = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R10i.z)); -PS1i = floatBitsToInt(float(R127i.w)); -// 10 -R3i.x = floatBitsToInt(intBitsToFloat(R125i.y) + -(0.5)); -R3i.x = floatBitsToInt(intBitsToFloat(R3i.x) * 2.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R124i.w = floatBitsToInt(floor(intBitsToFloat(R127i.x))); -R127i.w = int(intBitsToFloat(R127i.y)); -PS0i = R127i.w; -// 11 -PV1i.x = 0 - PS0i; -PV1i.y = floatBitsToInt((intBitsToFloat(R126i.w) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(R126i.w))?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.y))); -R127i.y = int(intBitsToFloat(R125i.x)); -PS1i = R127i.y; -// 12 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -R125i.y = R10i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R125i.y) * 2.0); -PV0i.z = max(R127i.w, PV1i.x); -PV0i.w = 0 - PS1i; -R125i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R125i.x; -// 13 -R126i.x = max(R127i.y, PV0i.w); -R127i.y = floatBitsToInt(intBitsToFloat(R125i.w) * 0.5); -R4i.z = floatBitsToInt(intBitsToFloat(R126i.y) + -(0.5)); -R4i.z = floatBitsToInt(intBitsToFloat(R4i.z) * 2.0); -PV1i.w = 0 - PS0i; -PS1i = floatBitsToInt(float(PV0i.z)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 14 -PV0i.x = floatBitsToInt(floor(intBitsToFloat(R125i.y))); -PV0i.y = floatBitsToInt((intBitsToFloat(R124i.w) > 0.0)?1.0:0.0); -R125i.z = max(R125i.x, PV1i.w); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(R124i.w))?1.0:0.0); -R3i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R127i.x))); -PS0i = R3i.y; -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.x) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PV0i.x))?1.0:0.0); -R0i.w = floatBitsToInt(intBitsToFloat(R127i.y) + -(0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -PS1i = floatBitsToInt(float(R126i.x)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 16 -PV0i.x = floatBitsToInt(max(intBitsToFloat(R10i.x), 0.0)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -R2i.z = floatBitsToInt(intBitsToFloat(R10i.y) + -(0.5)); -R1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(float(R125i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 17 -PV1i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), 0.0)); -R4i.y = floatBitsToInt(intBitsToFloat(R10i.x) + -(0.5)); -R1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(PV0i.y))); -R2i.w = floatBitsToInt(intBitsToFloat(R10i.z) + -(0.5)); -PS1i = floatBitsToInt(uf_blockVS7[13].y); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 18 -R1i.x = floatBitsToInt(intBitsToFloat(R11i.x) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(uf_blockVS7[13].x); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R6i.z = floatBitsToInt(intBitsToFloat(R10i.x) + 1.0); -R5i.w = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PS1i)); -R6i.y = floatBitsToInt(intBitsToFloat(R10i.y) + 1.0); -PS0i = R6i.y; -// 19 -PV1i.x = ((intBitsToFloat(R9i.w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -R0i.y = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV0i.y)); -R3i.w = floatBitsToInt(intBitsToFloat(R10i.z) + 1.0); -// 20 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R14i.x),intBitsToFloat(R14i.y),intBitsToFloat(R14i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.y = tempi.x; -R4i.w = ((PV1i.x == 0)?(R9i.w):(0x3f800000)); -PS0i = R4i.w; -// 21 -R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R13i.x),intBitsToFloat(R13i.y),intBitsToFloat(R13i.z),0.0))); -PV1i.x = R7i.x; -PV1i.y = R7i.x; -PV1i.z = R7i.x; -PV1i.w = R7i.x; -// 22 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R15i.x),intBitsToFloat(R15i.y),intBitsToFloat(R15i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.y = tempi.x; -R13i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(0x358637bd)); -PS0i = R13i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.x = floatBitsToInt(-(intBitsToFloat(R12i.z)) + uf_blockVS6[17].z); -PV0i.x = R124i.x; -R1i.y = floatBitsToInt(intBitsToFloat(R6i.x) + -(uf_blockVS6[17].x)); -R5i.z = floatBitsToInt(intBitsToFloat(R7i.y) + -(uf_blockVS6[17].y)); -R125i.w = floatBitsToInt(-(intBitsToFloat(R6i.x)) + uf_blockVS6[17].x); -PV0i.w = R125i.w; -R0i.z = floatBitsToInt(intBitsToFloat(R12i.z) + -(uf_blockVS6[17].z)); -PS0i = R0i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R3i.z) + -(uf_blockVS7[97].w)); -PV1i.y = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -R124i.z = floatBitsToInt(intBitsToFloat(R3i.z) + -(uf_blockVS7[96].w)); -R124i.w = floatBitsToInt((-(intBitsToFloat(PV0i.w)) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 2 -R2i.x = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.w)) * intBitsToFloat(PS1i)); -R125i.z = floatBitsToInt((0.0 > -(intBitsToFloat(R125i.w)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 3 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PV0i.y))?1.0:0.0); -R127i.y = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.y) > 0.0)?1.0:0.0); -tempResultf = log2(uf_blockVS7[114].w); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 4 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PS1i))); -R2i.y = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(R125i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -R124i.w = ((intBitsToFloat(PV1i.y) > 1.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R124i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); -// 5 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R126i.z))); -R5i.y = floatBitsToInt(((PV0i.w == 0)?(intBitsToFloat(PV0i.z)):(-(intBitsToFloat(PV0i.z))))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3fc90fdb)); -R123i.w = ((PV0i.w == 0)?(R127i.y):(PS0i)); -PV1i.w = R123i.w; -R126i.z = ((intBitsToFloat(R124i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R126i.z; -// 6 -backupReg0i = R126i.x; -R125i.x = ((R124i.w == 0)?(0):(PV1i.z)); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), uf_blockVS7[115].y)); -PV0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + 1.0); -R126i.x = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R126i.x; -// 7 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(backupReg0i)); -R125i.y = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(1.0))); -PV1i.y = R125i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[114].w) + 1.0); -R5i.x = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); -PS1i = R5i.x; -// 8 -backupReg0i = R127i.y; -backupReg1i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), uf_blockVS7[115].x)); -R127i.y = floatBitsToInt(uf_blockVS7[114].y + intBitsToFloat(backupReg0i)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(backupReg1i)) + 1.0); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.y))); -PV0i.w = R124i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(0x3edcf805) * intBitsToFloat(PV0i.w) + 1.0)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(0x3d6ee04d) * intBitsToFloat(PV0i.w) + intBitsToFloat(0x3f43b24e))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R3i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(R5i.x))); -PS1i = R126i.z; -// 10 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + uf_blockVS7[114].x); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS7[115].z)); -R125i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.y)), intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV1i.y)) + 1.0)); -PV0i.w = R123i.w; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R3i.y))); -PS0i = R124i.w; -// 11 -PV1i.x = ((0.0 > intBitsToFloat(R124i.x))?int(0xFFFFFFFF):int(0x0)); -R124i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R126i.z)); -PV1i.z = ((uf_blockVS7[114].w == 1.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = ((-(intBitsToFloat(R125i.w)) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 12 -R127i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R124i.w)); -R127i.y = ((PV1i.z == 0)?(R127i.z):(R9i.w)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].x, intBitsToFloat(R2i.x))); -// 13 -R3i.x = floatBitsToInt(uf_blockVS7[114].z + intBitsToFloat(R126i.y)); -PV1i.x = R3i.x; -R123i.y = ((intBitsToFloat(R125i.y) > 0.0)?(PV0i.z):(floatBitsToInt(-(intBitsToFloat(PV0i.z))))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R1i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), uf_blockVS7[113].y)); -R124i.w = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(R124i.y)); -PS1i = R124i.w; -// 14 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.z))); -R125i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.z)); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R125i.x))); -PV0i.w = R125i.w; -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.0); -PS0i = R127i.w; -// 15 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PV0i.w))?1.0:0.0); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.y))); -R127i.z = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.w) > 0.0)?1.0:0.0); -R124i.y = ((intBitsToFloat(R124i.x) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R124i.y; -// 16 -backupReg0i = R126i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), uf_blockVS7[113].x)); -R126i.y = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3fc90fdb)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R124i.w))); -R124i.w = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(backupReg0i)); -PS0i = R124i.w; -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(R126i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(R126i.w)); -R126i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R125i.y)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R2i.y)) + intBitsToFloat(PV0i.z)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.0); -PS1i = R127i.z; -// 18 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3fc90fdb)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), uf_blockVS7[113].z)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R127i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.y))); -PS0i = R125i.z; -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + 0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R127i.y))); -PS1i = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV0i.z)); -// 20 -R3i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.w)); -R123i.y = ((R0i.w == 0)?(PV1i.z):(0x40490fdb)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(R125i.z)); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.w = R123i.w; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R3i.z))); -PS0i = R4i.y; -// 21 -backupReg0i = R5i.x; -backupReg0i = R5i.x; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R3i.z))); -R5i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(backupReg0i))); -R1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(backupReg0i))); -R123i.w = ((R124i.y == 0)?(PV0i.y):(R126i.y)); -PV1i.w = R123i.w; -R4i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PS1i = R4i.x; -// 22 -backupReg0i = R0i.z; -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.y)),-(intBitsToFloat(R5i.z)),-(intBitsToFloat(backupReg0i)),-0.0),vec4(-(intBitsToFloat(R1i.y)),-(intBitsToFloat(R5i.z)),-(intBitsToFloat(backupReg0i)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R2i.y = tempi.x; -R3i.z = floatBitsToInt(intBitsToFloat(R126i.z) + -(intBitsToFloat(PV1i.w))); -PS0i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R2i.y; -R123i.x = floatBitsToInt((intBitsToFloat(R3i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R2i.y = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(R5i.y)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[3].y)); -R125i.w = floatBitsToInt((intBitsToFloat(R3i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -PS0i = floatBitsToInt(tempResultf); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R1i.y)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.z)), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R5i.z)), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), uf_blockVS7[13].z)); -R126i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PS1i = R126i.y; -// 2 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -PV0i.x = R3i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.y = R3i.y; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); -PV0i.z = R2i.z; -R0i.w = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R1i.z)); -R126i.z = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PS0i = R126i.z; -// 3 -backupReg0i = R126i.y; -R126i.x = floatBitsToInt(fract(intBitsToFloat(R125i.w))); -R126i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.x)); -R125i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(PV0i.y)); -R125i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R127i.z = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(PV0i.z)); -PS1i = R127i.z; -// 4 -backupReg0i = R0i.z; -backupReg0i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.y),intBitsToFloat(R5i.z),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(R1i.y),intBitsToFloat(R5i.z),intBitsToFloat(backupReg0i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.w = tempi.x; -R124i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3e22f983)); -PS0i = R124i.y; -// 5 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),intBitsToFloat(R127i.z),0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R124i.x = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(0x3e22f983)); -PS1i = R124i.x; -// 6 -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[3].y)); -R123i.z = floatBitsToInt((intBitsToFloat(R126i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.z = R123i.z; -R127i.z = floatBitsToInt(sqrt(intBitsToFloat(R124i.w))); -PS0i = R127i.z; -// 7 -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983)); -R126i.x = floatBitsToInt(cos((intBitsToFloat(R124i.y))/0.1591549367)); -PS1i = R126i.x; -// 8 -R125i.z = floatBitsToInt(sin((intBitsToFloat(R124i.x))/0.1591549367)); -PS0i = R125i.z; -// 9 -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R124i.w = floatBitsToInt(sqrt(intBitsToFloat(R127i.x))); -PS1i = R124i.w; -// 10 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 11 -R1i.w = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS0i)); -PV1i.w = R1i.w; -R127i.w = floatBitsToInt(sin((intBitsToFloat(R124i.y))/0.1591549367)); -PS1i = R127i.w; -// 12 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.w))); -PV0i.x = R5i.x; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R125i.z))); -R126i.y = floatBitsToInt(cos((intBitsToFloat(R124i.x))/0.1591549367)); -PS0i = R126i.y; -// 13 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -PV1i.x = R124i.x; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R0i.y))); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R124i.w = floatBitsToInt(sin((intBitsToFloat(R127i.y))/0.1591549367)); -PS1i = R124i.w; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R125i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); -R6i.w = floatBitsToInt(-(intBitsToFloat(PS1i))); -R127i.x = floatBitsToInt(cos((intBitsToFloat(R127i.y))/0.1591549367)); -PS0i = R127i.x; -// 15 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R0i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV0i.x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -PV1i.z = R0i.z; -R2i.w = floatBitsToInt(-(intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.y)); -PV1i.w = R2i.w; -R7i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.z)); -PS1i = R7i.w; -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R125i.w))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.x))); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PV1i.w))); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R0i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = R123i.y; -R1i.z = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R4i.x)) + intBitsToFloat(PS0i))); -PV1i.w = R123i.w; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(PV1i.w))); -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.y))); -PS0i = R16i.x; -// 19 -R8i.z = floatBitsToInt(uf_blockVS8[3].z); -R8i.w = floatBitsToInt(uf_blockVS8[3].w); -R16i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R1i.z)) + intBitsToFloat(PV0i.x))); -PS1i = R16i.z; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].z, intBitsToFloat(R2i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].y, intBitsToFloat(R2i.x))); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R2i.y)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), uf_blockVS11[2].x)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R0i.w)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), uf_blockVS11[2].x)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockVS11[2].x)); -PS1i = R126i.y; -// 2 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS11[1].w)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV1i.x))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R8i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R8i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 4 -R0i.x = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(PS1i)); -R0i.x = clampFI32(R0i.x); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R1i.w))); -PV0i.y = R2i.y; -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R1i.w))); -PV0i.z = R3i.z; -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R5i.w))); -// 6 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.y))); -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R7i.w)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -// 9 -R1i.xyz = floatBitsToInt(vec3(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R12i.z)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -PV1i.x = R1i.x; -PV1i.y = R1i.y; -PV1i.z = R1i.z; -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R127i.w)); -R127i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R125i.y)); -// 11 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(PV0i.x)); -// 12 -R0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.y)); -// 13 -predResult = (uf_blockVS11[5].y != 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.y = floatBitsToInt(uf_blockVS8[5].w); -PV0i.z = floatBitsToInt(uf_blockVS8[4].w); -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(R1i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(R1i.y))); -PV1i.w = floatBitsToInt(uf_blockVS8[6].w); -R127i.z = floatBitsToInt(1.0 / uf_blockVS11[5].y); -PS1i = R127i.z; -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(R1i.z))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(R127i.z)); -PV1i.y = clampFI32(PV1i.y); -// 6 -backupReg0i = R0i.x; -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R1i.y)); -R127i.w = floatBitsToInt(uf_blockVS8[4].w + uf_blockVS8[5].w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R2i.y)); -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), uf_blockVS11[0].z)); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[1].z, uf_blockVS11[0].w)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS11[0].w)); -// 2 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.y))); -PV0i.y = ((0.0 > intBitsToFloat(PV1i.z))?int(0xFFFFFFFF):int(0x0)); -PV0i.z = floatBitsToInt(uf_blockVS8[6].w + intBitsToFloat(R127i.w)); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.z)), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.z))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS8[2].x, uf_blockVS11[1].x)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3dd70a3d)); -R0i.z = ((PV0i.y == 0)?(PS0i):(PV0i.w)); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS11[1].y, uf_blockVS11[0].z)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R127i.x)); -// 5 -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.w)); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.x))); -// 6 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -// 7 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -// 8 -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -// 9 -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983)); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R9i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R9i.y),intBitsToFloat(R13i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = tempi.x; -PS0i = floatBitsToInt(sin((intBitsToFloat(PV1i.y))/0.1591549367)); -// 11 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(cos((intBitsToFloat(R127i.y))/0.1591549367)); -// 12 -R0i.y = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(sin((intBitsToFloat(R127i.z))/0.1591549367)); -// 13 -R0i.x = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.w)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.w))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(R127i.w))); -// 14 -backupReg0i = R1i.y; -R1i.x = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R1i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.z)); -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R9i.y),intBitsToFloat(R13i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R9i.y),intBitsToFloat(R13i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 16 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 17 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS0i))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PS0i))); -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS14[1].w)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].y, intBitsToFloat(PV0i.y))); -// 2 -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].z, intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].y, intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].x, intBitsToFloat(PV1i.x))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.z))); -// 4 -backupReg0i = R0i.x; -R0i.xyz = floatBitsToInt(vec3(intBitsToFloat(R0i.y),intBitsToFloat(R1i.y),intBitsToFloat(backupReg0i)) + vec3(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = R0i.y; -PV0i.z = R0i.z; -// 5 -R4i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(PV0i.x)); -PV1i.x = R4i.x; -R1i.y = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(PV0i.y)); -PV1i.y = R1i.y; -R3i.z = floatBitsToInt(-(intBitsToFloat(R12i.z)) + intBitsToFloat(PV0i.z)); -PV1i.z = R3i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -PV0i.z = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 9 -R4i.z = ((PV0i.z == 0)?(0):(R1i.x)); -// 10 -predResult = (R4i.z != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R1i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R1i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[95].x)); -PS0i = R127i.x; -// 1 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), uf_blockVS7[95].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), uf_blockVS7[95].x)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -R0i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(R3i.x)); -R6i.y = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(R3i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(R2i.z)); -R4i.w = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R0i.x)); -R5i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R0i.y)); -PS0i = R5i.y; -// 1 -R126i.x = 0x3f800000; -R0i.y = floatBitsToInt(uf_blockVS7[60].x); -R8i.z = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(R0i.z)); -PV1i.z = R8i.z; -R127i.w = 0x3f800000; -PV1i.w = R127i.w; -R0i.z = floatBitsToInt(uf_blockVS7[60].y); -PS1i = R0i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.z = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R7i.y = tempi.x; -// 4 -R11i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = R11i.x; -PV0i.y = R11i.x; -PV0i.z = R11i.x; -PV0i.w = R11i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R8i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -// 6 -R0i.x = floatBitsToInt(uf_blockVS7[60].z); -PV0i.y = PV1i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R12i.z = floatBitsToInt((intBitsToFloat(R11i.x) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R12i.z; -// 7 -R127i.y = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -R11i.z = floatBitsToInt((intBitsToFloat(R11i.x) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.z = R11i.z; -R123i.w = floatBitsToInt((intBitsToFloat(R11i.x) * 0.0 + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R8i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R8i.x; -// 8 -R13i.x = floatBitsToInt((intBitsToFloat(R9i.z) * 0.5 + intBitsToFloat(PV1i.w))); -R9i.y = floatBitsToInt((intBitsToFloat(R7i.y) * -(0.5) + intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -// 9 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 10 -R1i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[69].x) + uf_blockVS7[70].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 11 -R7i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 14 -PV0i.x = PV1i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -R127i.y = floatBitsToInt(-(uf_blockVS7[69].w) + uf_blockVS7[70].w); -R123i.z = floatBitsToInt((intBitsToFloat(R126i.z) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -// 15 -R126i.y = floatBitsToInt(-(uf_blockVS7[70].x) + uf_blockVS7[71].x); -R123i.w = floatBitsToInt((intBitsToFloat(R126i.z) * 0.5 + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[70].w) + uf_blockVS7[71].w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 17 -R1i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 18 -PV0i.x = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV1i.w)); -R2i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -// 19 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 20 -R6i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -// 21 -R2i.x = floatBitsToInt(uf_blockVS7[76].x); -R1i.w = floatBitsToInt(uf_blockVS7[76].y); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[0].y)); -PV0i.w = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(PS0i)); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].z)); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -// 2 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[9].z) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -backupReg0i = R127i.w; -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(PS1i)); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[10].x) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x))); -// 6 -R126i.z = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV0i.w = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -// 7 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.w))); -// 8 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[69].w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[68].w)); -// 1 -R127i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R1i.z)) + uf_blockVS7[68].x)); -R126i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.x)) + uf_blockVS7[69].x)); -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[71].w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[70].w)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -// 3 -backupReg0i = R127i.x; -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R2i.z)) + uf_blockVS7[70].x)); -R127i.z = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV0i.x))); -// 4 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[59].x)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PS1i))); -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS7[59].x)); -PS0i = R14i.z; -// 5 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.y))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS7[59].x)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt(uf_blockVS7[76].z); -// 6 -R125i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[85].w)); -PV0i.x = R125i.x; -PV0i.y = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R126i.w))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[84].w)); -PV0i.w = R127i.w; -// 7 -R126i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -R126i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 8 -R1i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[71].x,intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[86].w)); -PV0i.y = R125i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 9 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[87].w)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[84].x)); -PV1i.z = R123i.z; -R127i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PS0i))); -// 10 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(-(uf_blockVS7[85].x) + uf_blockVS7[86].x); -R126i.z = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R126i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 11 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[85].w) + uf_blockVS7[86].w); -// 12 -backupReg0i = R127i.w; -R127i.z = floatBitsToInt(-(uf_blockVS7[86].x) + uf_blockVS7[87].x); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 13 -PV1i.x = floatBitsToInt(-(uf_blockVS7[86].w) + uf_blockVS7[87].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[85].x)); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.x))); -// 16 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV1i.x)) + uf_blockVS7[86].x)); -PV0i.z = R123i.z; -// 17 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -// 18 -R1i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[87].x,intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS8[0].w)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockVS8[1].x)); -// 1 -PV1i.x = ((intBitsToFloat(R10i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS8[1].w)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[1].z)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[1].y)); -PS1i = ((intBitsToFloat(R10i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 2 -R14i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(R125i.y))); -R1i.y = ((PV1i.x == 0)?(R12i.x):(R11i.w)); -R15i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.z))); -R6i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.w))); -R0i.y = ((PS1i == 0)?(R12i.y):(R7i.z)); -PS0i = R0i.y; -// 3 -PV1i.x = ((intBitsToFloat(R10i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = ((intBitsToFloat(R10i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R2i.z = ((intBitsToFloat(R10i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = ((intBitsToFloat(R10i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R0i.x = R11i.w; -PS1i = R0i.x; -// 4 -R1i.x = ((PV1i.y == 0)?(R12i.x):(R11i.w)); -R2i.y = ((PV1i.w == 0)?(R12i.y):(R12i.y)); -R0i.z = ((PV1i.w == 0)?(R12i.x):(PS1i)); -R0i.w = ((PV1i.x == 0)?(R12i.y):(R7i.z)); -R9i.x = floatBitsToInt(uf_blockVS8[3].x); -PS0i = R9i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -// 1 -PV1i.x = (PV0i.y == 0x00080000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -PV1i.w = (PV0i.x == 0x00100000)?int(0xFFFFFFFF):int(0x0); -// 2 -R4i.x = ((PV1i.w == 0)?(R12i.y):(R0i.y)); -R0i.y = ((PV1i.x == 0)?(R12i.x):(R1i.y)); -PV0i.z = (PV1i.y == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PV0i.w = (PV1i.z == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 3 -PV1i.x = (PS0i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -R7i.z = ((PV0i.w == 0)?(R12i.y):(R0i.w)); -R2i.w = ((PV0i.z == 0)?(R12i.x):(R1i.x)); -PS1i = floatBitsToInt(uf_blockVS7[5].y) & int(1); -// 4 -R126i.x = ((PV1i.x == 0)?(R12i.y):(R2i.y)); -PV0i.x = R126i.x; -R125i.y = (PV1i.y == 0x01000000)?int(0xFFFFFFFF):int(0x0); -R6i.z = (int(1) != PS1i)?int(0xFFFFFFFF):int(0x0); -PV0i.z = R6i.z; -R127i.w = ((PV1i.x == 0)?(R12i.x):(R0i.z)); -PV0i.w = R127i.w; -R125i.x = int(uf_blockVS7[26].x); -PS0i = R125i.x; -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R123i.z = ((R2i.z == 0)?(PV0i.w):(PV0i.w)); -PV1i.z = R123i.z; -R124i.w = ((PV0i.z == 0)?(R10i.x):(R10i.y)); -R127i.z = int(uf_blockVS7[26].y); -PS1i = R127i.z; -// 6 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -R123i.y = ((R2i.z == 0)?(R126i.x):(PV1i.x)); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R3i.w = ((R125i.y == 0)?(R127i.w):(PV1i.z)); -PS0i = floatBitsToInt(float(PV1i.y)); -// 7 -R5i.x = ((R125i.y == 0)?(R126i.x):(PV0i.y)); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R125i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -PS1i = floatBitsToInt(float(PV0i.x)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R0i.w = int(-1) + R125i.x; -PS0i = floatBitsToInt(float(R126i.z)); -// 9 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 10 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 11 -PV1i.x = 0 - PS0i; -R126i.z = max(R127i.w, PV0i.x); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 12 -PV0i.x = 0 - PS1i; -R4i.z = max(R126i.w, PV1i.x); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PS0i = floatBitsToInt(float(R125i.w)); -// 13 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R3i.z = max(R127i.w, PV0i.x); -R126i.y = floatBitsToInt(float(R125i.x)); -PS1i = R126i.y; -// 14 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(float(R127i.z)); -PS0i = R125i.y; -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(PV0i.w)); -R124i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R124i.w; -// 16 -PV0i.x = 0 - PS1i; -PS0i = int(intBitsToFloat(PV1i.x)); -// 17 -R127i.z = max(R124i.w, PV0i.x); -R12i.y = R126i.z * PS0i; -PS1i = R12i.y; -// 18 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(PS0i)); -R1i.w = floatBitsToInt(float(R125i.x)); -PS1i = R1i.w; -// 20 -R3i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R0i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R0i.z; -// 21 -PS1i = floatBitsToInt(float(PS0i)); -// 22 -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PS1i)); -R1i.x = floatBitsToInt(float(R0i.z)); -PS0i = R1i.x; -// 23 -R123i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R126i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(1.0 / abs(intBitsToFloat(R1i.w))); -PS1i = R5i.z; -// 24 -PV0i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R1i.x)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.x)); -// 25 -backupReg0i = R0i.w; -R0i.x = int(1) - PS0i; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -R1i.z = PS0i * backupReg0i; -PS1i = R1i.z; -// 26 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(R126i.z))); -PV0i.y = R126i.y; -PS0i = floatBitsToInt(float(R126i.w)); -// 27 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R1i.w)))?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(R1i.w))) + intBitsToFloat(PV0i.y)); -R2i.x = int(intBitsToFloat(R126i.x)); -PS1i = R2i.x; -// 28 -R2i.z = ((intBitsToFloat(PV1i.x) == 0.0)?(R126i.y):(PV1i.w)); -PV0i.z = R2i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -R0i.w = R127i.z * PS1i; -PS0i = R0i.w; -// 29 -R2i.y = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.z)); -R12i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R12i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = 0 - R12i.x; -R123i.w = ((-(intBitsToFloat(R2i.z)) > 0.0)?(R2i.y):(R2i.z)); -PV0i.w = R123i.w; -// 1 -R123i.x = ((-(intBitsToFloat(R1i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.x = R123i.x; -PV1i.y = max(R12i.x, PV0i.z); -// 2 -R123i.z = ((intBitsToFloat(R1i.w) == 0.0)?(R1i.x):(PV1i.x)); -PV0i.z = R123i.z; -PS0i = PV1i.y * R2i.x; -// 3 -R126i.y = R0i.z + PS0i; -PS1i = int(intBitsToFloat(PV0i.z)); -// 4 -backupReg0i = R0i.x; -PS0i = backupReg0i * PS1i; -// 5 -PV1i.y = PS0i + R1i.z; -R126i.x = R3i.z * R126i.y; -PS1i = R126i.x; -// 6 -PS0i = R4i.z * PV1i.y; -// 7 -PV1i.w = PS0i + R12i.y; -// 8 -PV0i.x = R126i.x + PV1i.w; -// 9 -PV1i.z = R0i.w + PV0i.x; -// 10 -R125i.y = floatBitsToInt(float(PV1i.z)); -PS0i = R125i.y; -// 11 -R127i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), abs(intBitsToFloat(PS0i)))); -// 12 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -// 13 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R126i.y; -// 14 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) >= abs(intBitsToFloat(R1i.w)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(abs(intBitsToFloat(R1i.w))) + intBitsToFloat(PV1i.y)); -// 15 -R127i.z = ((intBitsToFloat(PV0i.x) == 0.0)?(R126i.y):(PV0i.w)); -PV1i.z = R127i.z; -// 16 -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.z)); -// 17 -R123i.w = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.w = R123i.w; -// 18 -R123i.x = ((-(intBitsToFloat(R125i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.w)))):(PV1i.w)); -PV0i.x = R123i.x; -// 19 -R123i.z = ((intBitsToFloat(R1i.w) == 0.0)?(R125i.y):(PV0i.x)); -PV1i.z = R123i.z; -// 20 -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 21 -R126i.w = floatBitsToInt(float(PS0i)); -PS1i = R126i.w; -// 22 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R125i.x = floatBitsToInt(float(R125i.y)); -PS0i = R125i.x; -// 23 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -// 24 -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * 0.5 + intBitsToFloat(R126i.w))); -PV0i.w = R123i.w; -// 25 -R126i.x = floatBitsToInt((-(intBitsToFloat(PV0i.y)) * 4.0 + intBitsToFloat(R124i.w))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -// 26 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.x) >= 4.0)?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0xc0800000)); -// 27 -R124i.w = ((intBitsToFloat(PV0i.y) == 0.0)?(R126i.x):(PV0i.z)); -PV1i.w = R124i.w; -PS1i = int(intBitsToFloat(PV0i.x)); -// 28 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + 4.0); -R1i.w = PS1i + 0x0000001b; -PS0i = int(uf_blockVS7[48].z); -// 29 -R123i.z = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV0i.x):(R124i.w)); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(float(PS0i)); -PS1i = R124i.w; -// 30 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -R123i.y = ((-(intBitsToFloat(R125i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -// 31 -R125i.y = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.x)); -PV1i.y = R125i.y; -PS1i = int(intBitsToFloat(PV0i.y)); -// 32 -PV0i.x = int(-1) + PS1i; -R126i.y = 0xfffffffd + PS1i; -R127i.z = 0xfffffffe + PS1i; -PV0i.w = floatBitsToInt(abs(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(float(PS1i)); -// 33 -R123i.x = ((-(intBitsToFloat(R125i.y)) > 0.0)?(PV0i.w):(R125i.y)); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.x)); -// 34 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R126i.z = ((intBitsToFloat(R124i.w) == 0.0)?(0):(PV1i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(float(R127i.z)); -// 35 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R125i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R125i.x; -// 36 -PV0i.x = 0 - PS1i; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.y))); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 37 -PV1i.x = 0 - PS0i; -PV1i.y = max(R125i.x, PV0i.x); -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 38 -R3i.x = int(1) - PV1i.y; -PV0i.y = 0 - PS1i; -PV0i.w = max(R127i.z, PV1i.x); -PS0i = floatBitsToInt(float(R126i.y)); -// 39 -PV1i.x = max(R125i.y, PV0i.y); -R2i.y = int(1) - PV0i.w; -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R3i.y = int(intBitsToFloat(R126i.z)); -PS1i = R3i.y; -// 40 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R5i.z = int(1) - PV1i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.w)); -// 41 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R124i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R124i.w; -// 42 -PV0i.x = 0 - PS1i; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R0i.w = floatBitsToInt(1.0 / uf_blockVS7[48].z); -PS0i = R0i.w; -// 43 -PV1i.z = max(R124i.w, PV0i.x); -R4i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R4i.y; -// 44 -R12i.y = int(1) - PV1i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockVS7[R1i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(R0i.w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), uf_blockVS7[45].y)); -R125i.y = floatBitsToInt(intBitsToFloat(R125i.y) * 2.0); -R127i.z = ((R6i.z == 0)?(0):(int(1))); -PV0i.z = R127i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS7[45].x)); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); -R126i.w = R12i.y * R1i.w; -PS0i = R126i.w; -// 1 -PV1i.x = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -R126i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + -(0.5))); -PV1i.w = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R125i.x = R5i.z * R1i.z; -PS1i = R125i.x; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R126i.z = R2i.y * R1i.y; -PS0i = R126i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),uf_blockVS7[46].w) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),uf_blockVS7[46].z) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(PV0i.z)))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[44].y) + intBitsToFloat(PV0i.x))); -PS1i = R3i.x * R1i.x; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[45].z) + intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[45].w) + intBitsToFloat(PV1i.x))); -PV0i.z = (R127i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV0i.w = R126i.z + PS1i; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 5 -PV1i.x = R125i.x + PV0i.w; -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS0i))); -PV1i.y = R125i.y; -R123i.z = ((PV0i.z == 0)?(R10i.x):(R10i.z)); -PV1i.z = R123i.z; -R127i.w = ((PV0i.z == 0)?(R10i.y):(R10i.x)); -PS1i = floatBitsToInt(float(R3i.y)); -// 6 -backupReg0i = R126i.x; -backupReg1i = R125i.z; -R126i.x = ((R126i.y == 0)?(PV1i.z):(R10i.y)); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PV1i.y)) + -(0.5))); -R125i.z = R126i.w + PV1i.x; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS1i)) + intBitsToFloat(backupReg1i))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(R4i.y)); -// 7 -backupReg0i = R124i.z; -R123i.x = ((R126i.y == 0)?(R127i.w):(R10i.z)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R124i.w))); -PV1i.y = R123i.y; -R124i.z = ((R126i.y == 0)?(R10i.x):(R10i.y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R127i.z = ((R126i.y == 0)?(R10i.y):(R10i.z)); -PS1i = R127i.z; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R124i.y)) + -(intBitsToFloat(PV1i.y)))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(R126i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV1i.x))); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); -PS0i = int(uf_blockVS7[53].z); -// 9 -PV1i.x = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + 0.5); -PV1i.z = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R126i.w = floatBitsToInt(float(PS0i)); -PS1i = R126i.w; -// 10 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.z)); -R126i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R126i.x = floatBitsToInt(float(R125i.z)); -PS0i = R126i.x; -// 11 -backupReg0i = R125i.z; -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R124i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.w))); -R125i.z = floatBitsToInt(float(backupReg0i)); -PS1i = R125i.z; -// 12 -backupReg0i = R127i.z; -R125i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R127i.y)))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.w))); -// 13 -PV1i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.z)), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[49].y) + intBitsToFloat(R126i.z))); -R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[50].z) + intBitsToFloat(R124i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.5 + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 14 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),uf_blockVS7[50].w) + intBitsToFloat(R127i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 15 -R10i.x = floatBitsToInt(intBitsToFloat(R19i.z) + 0.0); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS0i))); -PV1i.z = R124i.z; -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.x)) + intBitsToFloat(R125i.x))); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 16 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(R126i.w))) + intBitsToFloat(PV1i.w)); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.z)) + -(0.5))); -PV0i.z = floatBitsToInt((intBitsToFloat(PV1i.w) >= abs(intBitsToFloat(R126i.w)))?1.0:0.0); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -PS0i = int(intBitsToFloat(PV1i.y)); -// 17 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockVS7[58].x)); -R126i.y = ((intBitsToFloat(PV0i.z) == 0.0)?(R124i.w):(PV0i.x)); -PV1i.y = R126i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[58].y)); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(PV0i.w)) + -(0.5))); -PS1i = floatBitsToInt(float(PS0i)); -// 18 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y)); -R127i.y = floatBitsToInt(intBitsToFloat(R6i.x) + -(uf_blockVS7[93].x)); -R126i.z = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PS1i)) + intBitsToFloat(backupReg0i))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 19 -R123i.x = ((-(intBitsToFloat(R126i.y)) > 0.0)?(PV0i.x):(R126i.y)); -PV1i.x = R123i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R124i.w)) + -(intBitsToFloat(PV0i.w)))); -PV1i.z = R123i.z; -R3i.w = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[104].w)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 20 -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.z = ((-(intBitsToFloat(R125i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.x)))):(PV1i.x)); -PV0i.z = R123i.z; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.z)); -// 21 -R127i.x = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R123i.y = ((intBitsToFloat(R126i.w) == 0.0)?(R125i.z):(PV0i.z)); -PV1i.y = R123i.y; -R10i.w = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -R10i.w = clampFI32(R10i.w); -// 22 -PS0i = int(intBitsToFloat(PV1i.y)); -// 23 -R5i.x = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[106].w)); -R125i.z = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -R2i.w = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[105].w)); -PS1i = floatBitsToInt(float(PS0i)); -// 24 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.w))); -PV0i.x = R123i.x; -R10i.y = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 25 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); -R3i.y = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -R10i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R4i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS1i = R4i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R4i.y; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(R10i.z)) + uf_blockVS7[104].x)); -R4i.y = floatBitsToInt(intBitsToFloat(R6i.x) + 0.5); -R125i.z = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[107].w)); -PV0i.z = R125i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R10i.y) * intBitsToFloat(backupReg0i)); -R126i.w = ((intBitsToFloat(R3i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R126i.w; -// 1 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[105].x)); -R126i.y = ((intBitsToFloat(R2i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R126i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[108].w)); -PV1i.z = R124i.z; -R125i.w = ((intBitsToFloat(R5i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R125i.w; -R125i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.y; -// 2 -R126i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -PS0i = R127i.x; -// 3 -R125i.x = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 4 -PV0i.x = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R127i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(R3i.y) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.y))); -R126i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + 1.0); -PS0i = R126i.y; -// 5 -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.z)) + uf_blockVS7[106].x)); -R126i.w = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[109].w)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 6 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R125i.x; -R125i.y = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R7i.z = 0; -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -// 7 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[107].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.z = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[110].w)); -PV1i.z = R126i.z; -// 8 -R127i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R127i.x; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -PS0i = floatBitsToInt(intBitsToFloat(R11i.z) * intBitsToFloat(R11i.z)); -// 9 -R126i.x = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R123i.z = floatBitsToInt((intBitsToFloat(R9i.y) * intBitsToFloat(R9i.y) + intBitsToFloat(PS0i))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 10 -backupReg0i = R125i.y; -PV0i.x = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -R125i.y = floatBitsToInt((intBitsToFloat(R13i.x) * intBitsToFloat(R13i.x) + intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.y))); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R10i.x) + -(uf_blockVS7[111].w)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[108].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 12 -backupReg0i = R125i.y; -R10i.x = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R10i.x; -R125i.y = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 13 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[109].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R126i.y))); -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(PS0i))); -PS1i = R126i.x; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(R125i.w))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -R125i.w = 0; -PS0i = R125i.w; -// 15 -R127i.x = floatBitsToInt(uf_blockVS6[0].y); -R126i.y = floatBitsToInt(uf_blockVS6[1].y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -PV0i.x = floatBitsToInt(uf_blockVS6[2].y); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS1i)); -// 17 -backupReg0i = R124i.z; -backupReg0i = R124i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg0i)),vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(R125i.w))))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PS1i = R122i.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)) + uf_blockVS7[110].x)); -// 19 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R4i.w))); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.z) + intBitsToFloat(0x3edc28f6)); -PV1i.y = clampFI32(PV1i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R5i.y))); -R124i.z = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R8i.z))); -PS1i = R124i.z; -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(PS1i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.y)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R5i.x = floatBitsToInt(tempResultf); -PS0i = R5i.x; -// 21 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R12i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R10i.x)) + intBitsToFloat(PV0i.w))); -// 22 -R123i.y = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -// 23 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 24 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R5i.y),intBitsToFloat(R10i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.y = R127i.y; -// 2 -R125i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS13[37].x) + -(uf_blockVS13[37].y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS13[38].z, intBitsToFloat(R5i.x))); -R122i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PS0i = R122i.x; -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV0i.z)) + uf_blockVS13[27].x)); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS13[26].w)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R127i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[38].w),intBitsToFloat(PS1i)) + 1.0)); -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -PV1i.y = floatBitsToInt(uf_blockVS13[28].y + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS13[38].x, intBitsToFloat(PS0i))); -R125i.w = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R7i.x))); -tempResultf = log2(intBitsToFloat(PV0i.z)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * 1.5); -PV0i.z = clampFI32(PV0i.z); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R124i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x41700000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 8 -R5i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R125i.x))); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), uf_blockVS13[25].w)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); -// 10 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R126i.y))) + 1.0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R9i.y) * intBitsToFloat(R8i.x)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(PS1i)) + uf_blockVS13[23].z)); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R8i.w = 0; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R10i.y = ((0.0 >= intBitsToFloat(R10i.w))?int(0xFFFFFFFF):int(0x0)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -0.0); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R10i.w)) + 0.0)); -PS1i = R2i.x; -// 12 -R9i.x = PV1i.z; -R6i.y = PV1i.z; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(0x3e4ccccd))); -R1i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -PS0i = R1i.z; -// 13 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R3i.y = 0; -PV1i.y = R3i.y; -R10i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 1.0)); -R4i.w = 0; -R0i.x = 0; -PS1i = R0i.x; -// 14 -R1i.x = R16i.x; -R14i.y = R15i.y; -R0i.z = R16i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x40200000)); -R3i.w = ((R10i.y == 0)?(R9i.z):(PV1i.y)); -PS0i = R3i.w; -// 15 -backupReg0i = R7i.y; -R8i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3daaaaab)); -R7i.y = ((R10i.y == 0)?(R11i.x):(R1i.z)); -R9i.z = ((R10i.y == 0)?(backupReg0i):(R4i.w)); -R7i.w = ((R10i.y == 0)?(R5i.w):(R5i.w)); -R10i.w = ((R10i.y == 0)?(R2i.x):(R0i.x)); -PS1i = R10i.w; -} -if( activeMaskStackC[3] == true ) { -R5i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R5i.xy)).xyz); -R8i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R8i.xw)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R5i.z; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R10i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R10i.z))); -R5i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].z)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R10i.z))); -R10i.z = ((R10i.y == 0)?(R12i.y):(R12i.y)); -PS0i = R10i.z; -// 1 -R5i.x = ((R10i.y == 0)?(R18i.z):(R18i.z)); -R5i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].w)); -R6i.z = ((R10i.y == 0)?(0):(0x3f800000)); -PV1i.z = R6i.z; -R123i.w = ((R10i.y == 0)?(0):(R2i.w)); -PV1i.w = R123i.w; -R122i.x = ((R10i.y == 0)?(0):(R10i.x)); -PS1i = R122i.x; -// 2 -R20i.x = ((PV1i.z == 0)?(R2i.w):(PV1i.w)); -R20i.y = ((PV1i.z == 0)?(R10i.x):(PS1i)); -R123i.z = ((R10i.y == 0)?(0):(R6i.y)); -PV0i.z = R123i.z; -R123i.w = ((R10i.y == 0)?(0):(R7i.z)); -PV0i.w = R123i.w; -R122i.x = ((R10i.y == 0)?(0):(R126i.y)); -PS0i = R122i.x; -// 3 -R21i.x = ((R6i.z == 0)?(R126i.y):(PS0i)); -R126i.y = ((R10i.y == 0)?(0):(R125i.w)); -R20i.z = ((R6i.z == 0)?(R6i.y):(PV0i.z)); -R20i.w = ((R6i.z == 0)?(R7i.z):(PV0i.w)); -R127i.x = ((R10i.y == 0)?(0):(R9i.x)); -PS1i = R127i.x; -// 4 -R126i.x = ((R10i.y == 0)?(0):(R8i.w)); -R127i.y = ((R10i.y == 0)?(0):(R8i.z)); -R123i.z = ((R10i.y == 0)?(0):(R125i.x)); -PV0i.z = R123i.z; -R127i.w = ((R10i.y == 0)?(0):(R8i.x)); -R6i.y = ((R10i.y == 0)?(0):(R0i.z)); -PS0i = R6i.y; -// 5 -backupReg0i = R9i.x; -R9i.x = ((R10i.y == 0)?(0):(R1i.w)); -R21i.y = ((R6i.z == 0)?(R125i.x):(PV0i.z)); -PV1i.y = R21i.y; -R21i.z = ((R6i.z == 0)?(R125i.w):(R126i.y)); -R21i.w = ((R6i.z == 0)?(backupReg0i):(R127i.x)); -// 6 -R22i.x = ((R6i.z == 0)?(R8i.x):(R127i.w)); -R123i.z = ((R10i.y == 0)?(0):(R8i.y)); -PV0i.z = R123i.z; -R2i.w = ((R10i.y == 0)?(0):(R1i.x)); -R0i.y = ((R10i.y == 0)?(0):(R1i.z)); -PS0i = R0i.y; -// 7 -R22i.y = ((R6i.z == 0)?(R8i.y):(PV0i.z)); -R22i.z = ((R6i.z == 0)?(R8i.z):(R127i.y)); -R22i.w = ((R6i.z == 0)?(R8i.w):(R126i.x)); -// 8 -R8i.z = ((R10i.y == 0)?(0):(R14i.y)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[44].y, intBitsToFloat(R5i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[49].y,intBitsToFloat(R5i.z)) + intBitsToFloat(R4i.y))); -R124i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[44].y,intBitsToFloat(R5i.z)) + intBitsToFloat(R1i.y))); -PV0i.z = R124i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[49].y, intBitsToFloat(R5i.y))); -// 1 -R126i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS11[3].w,intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); -R123i.y = ((R10i.y == 0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockVS7[54].y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockVS11[3].w) + intBitsToFloat(R1i.w))); -PV1i.w = R127i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockVS7[54].y) + intBitsToFloat(R2i.y))); -PS1i = R1i.x; -// 2 -R23i.x = ((R6i.z == 0)?(R124i.z):(PV1i.y)); -R1i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS11[3].w,intBitsToFloat(PV1i.z)) + intBitsToFloat(R0i.w))); -PV0i.y = R1i.y; -R123i.z = ((R10i.y == 0)?(0):(PV1i.w)); -PV0i.z = R123i.z; -R123i.w = ((R10i.y == 0)?(0):(PS1i)); -PV0i.w = R123i.w; -R122i.x = ((R10i.y == 0)?(0):(R127i.y)); -PS0i = R122i.x; -// 3 -R19i.x = ((R6i.z == 0)?(R1i.x):(PV0i.w)); -R23i.y = ((R6i.z == 0)?(R127i.w):(PV0i.z)); -R23i.z = ((R6i.z == 0)?(R127i.y):(PS0i)); -R123i.w = ((R10i.y == 0)?(0):(PV0i.y)); -PV1i.w = R123i.w; -R122i.x = ((R10i.y == 0)?(0):(R126i.x)); -PS1i = R122i.x; -// 4 -R123i.x = ((R10i.y == 0)?(R18i.x):(R0i.x)); -PV0i.x = R123i.x; -R19i.y = ((R6i.z == 0)?(R1i.y):(PV1i.w)); -R124i.z = ((R10i.y == 0)?(R18i.z):(R18i.z)); -R23i.w = ((R6i.z == 0)?(R126i.x):(PS1i)); -R126i.z = ((R10i.y == 0)?(R17i.w):(R5i.w)); -PS0i = R126i.z; -// 5 -R18i.x = ((R6i.z == 0)?(R10i.w):(PV0i.x)); -R123i.y = ((R10i.y == 0)?(0):(R13i.x)); -PV1i.y = R123i.y; -R127i.z = ((R10i.y == 0)?(0):(R11i.z)); -R123i.w = ((R10i.y == 0)?(R18i.y):(R12i.y)); -PV1i.w = R123i.w; -R122i.x = ((R10i.y == 0)?(0):(R14i.x)); -PS1i = R122i.x; -// 6 -backupReg0i = R14i.x; -R24i.x = ((R6i.z == 0)?(R13i.x):(PV1i.y)); -R18i.y = ((R6i.z == 0)?(R10i.z):(PV1i.w)); -R18i.z = ((R6i.z == 0)?(R5i.x):(R124i.z)); -R123i.w = ((R10i.y == 0)?(0):(R9i.y)); -PV0i.w = R123i.w; -R14i.x = ((R6i.z == 0)?(backupReg0i):(PS1i)); -PS0i = R14i.x; -// 7 -R123i.x = ((R10i.y == 0)?(0):(R6i.w)); -PV1i.x = R123i.x; -R24i.y = ((R6i.z == 0)?(R9i.y):(PV0i.w)); -R24i.z = ((R6i.z == 0)?(R11i.z):(R127i.z)); -R125i.w = ((R10i.y == 0)?(0):(R15i.x)); -PS1i = R16i.x; -// 8 -R16i.x = ((R6i.z == 0)?(PS1i):(R2i.w)); -R14i.y = ((R6i.z == 0)?(R6i.w):(PV1i.x)); -R123i.z = ((R10i.y == 0)?(0):(R12i.z)); -PV0i.z = R123i.z; -R127i.w = ((R10i.y == 0)?(0):(R11i.y)); -R122i.x = ((R10i.y == 0)?(0):(R13i.z)); -PS0i = R122i.x; -// 9 -R25i.x = ((R6i.z == 0)?(R13i.z):(PS0i)); -R123i.y = ((R10i.y == 0)?(R17i.x):(R3i.y)); -PV1i.y = R123i.y; -R123i.z = ((R10i.y == 0)?(R17i.y):(R4i.w)); -PV1i.z = R123i.z; -R24i.w = ((R6i.z == 0)?(R12i.z):(PV0i.z)); -// 10 -R17i.x = ((R6i.z == 0)?(R3i.w):(PV1i.y)); -R17i.y = ((R6i.z == 0)?(R9i.z):(PV1i.z)); -R123i.z = ((R10i.y == 0)?(0):(R14i.z)); -PV0i.z = R123i.z; -PV0i.w = R15i.y; -// 11 -R16i.y = ((R6i.z == 0)?(PV0i.w):(R8i.z)); -R25i.y = ((R6i.z == 0)?(R14i.z):(PV0i.z)); -PS1i = R25i.y; -// 12 -R126i.x = ((R10i.y == 0)?(0):(R13i.y)); -PV0i.y = R16i.z; -R123i.w = ((R10i.y == 0)?(0):(R15i.z)); -PV0i.w = R123i.w; -// 13 -R16i.z = ((R6i.z == 0)?(PV0i.y):(R6i.y)); -R14i.w = ((R6i.z == 0)?(R11i.y):(R127i.w)); -R14i.z = ((R6i.z == 0)?(R15i.z):(PV0i.w)); -PS1i = R14i.z; -// 14 -R123i.x = ((R10i.y == 0)?(R17i.z):(R1i.z)); -PV0i.x = R123i.x; -R25i.z = ((R6i.z == 0)?(R13i.y):(R126i.x)); -R25i.w = ((R6i.z == 0)?(R15i.x):(R125i.w)); -// 15 -R17i.z = ((R6i.z == 0)?(R7i.y):(PV0i.x)); -R17i.w = ((R6i.z == 0)?(R7i.w):(R126i.z)); -R16i.w = ((R6i.z == 0)?(R9i.x):(R9i.x)); -PS1i = R16i.w; -// 16 -R19i.z = ((R6i.z == 0)?(R1i.z):(R0i.y)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R25i.x), intBitsToFloat(R25i.y), intBitsToFloat(R25i.z), intBitsToFloat(R25i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R24i.x), intBitsToFloat(R24i.y), intBitsToFloat(R24i.z), intBitsToFloat(R24i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y), intBitsToFloat(R16i.z), intBitsToFloat(R16i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/ea77e7f80b23e7b7_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/ea77e7f80b23e7b7_0000000000000000_vs.txt deleted file mode 100644 index 69953b7c..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/ea77e7f80b23e7b7_0000000000000000_vs.txt +++ /dev/null @@ -1,2748 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea77e7f80b23e7b7 -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 11, std140) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -layout(location = 8) in uvec4 attrDataSem8; -layout(location = 9) in uvec4 attrDataSem9; -layout(location = 10) in uvec4 attrDataSem10; -layout(location = 11) in uvec4 attrDataSem11; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem8; -layout(location = 6) out vec4 passParameterSem11; -layout(location = 7) out vec4 passParameterSem14; -layout(location = 8) out vec4 passParameterSem15; -layout(location = 9) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 5) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R26i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem5.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem4; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem8; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R10i.z = floatBitsToInt(-(intBitsToFloat(R10i.y)) + 1.0); -R2i.w = 0; -R3i.w = floatBitsToInt(1.0); -PS0i = R3i.w; -// 1 -R15i.w = floatBitsToInt(-(intBitsToFloat(R5i.w)) + uf_blockVS8[2].x); -R10i.w = floatBitsToInt(-(intBitsToFloat(R10i.x)) + 1.0); -PS1i = R10i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R15i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R21i.x = 0; -R21i.y = 0; -R21i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R5i.w = R3i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R5i.w = R2i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R5i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R4i.w)); -// 1 -R4i.x = floatBitsToInt(float(PS0i)); -PS1i = R4i.x; -// 2 -predResult = (intBitsToFloat(R15i.w) >= intBitsToFloat(R4i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R21i.x = 0; -R21i.y = 0; -R21i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R22i.x = 0; -PS0i = R22i.x; -// 1 -R2i.w = R3i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R2i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(max(intBitsToFloat(R8i.x), 0.0)); -PV0i.y = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), uf_blockVS7[10].y)); -PV0i.w = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -PV1i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), 0.0)); -PV1i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.y))); -PV1i.z = R126i.z; -R126i.w = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -R13i.x = floatBitsToInt(1.0 / intBitsToFloat(R4i.x)); -PS1i = R13i.x; -// 2 -backupReg0i = R9i.x; -R9i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.y)); -R16i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -PV0i.w = R16i.w; -R127i.z = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -PS0i = R127i.z; -// 3 -R127i.x = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.y))); -// 4 -R125i.x = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.y))); -R125i.w = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.z)); -PV1i.y = R125i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R126i.z = floatBitsToInt(-(uf_blockVS7[97].z) + uf_blockVS7[98].z); -PS1i = R126i.z; -// 6 -R126i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(uf_blockVS7[96].w)); -PV0i.x = R126i.x; -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(uf_blockVS7[97].w)); -// 7 -PV1i.x = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R127i.z))); -R127i.z = floatBitsToInt(intBitsToFloat(R125i.y) + -(uf_blockVS7[98].w)); -PS1i = R127i.z; -// 8 -R124i.x = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(PV1i.w)); -R0i.y = ((intBitsToFloat(R126i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R124i.z = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(PV1i.y)); -R127i.w = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 9 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(-(uf_blockVS7[98].x) + uf_blockVS7[99].x); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R126i.x = floatBitsToInt(-(uf_blockVS7[98].y) + uf_blockVS7[99].y); -PS1i = R126i.x; -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt(-(uf_blockVS7[98].z) + uf_blockVS7[99].z); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(-(uf_blockVS7[98].w) + uf_blockVS7[99].w); -// 11 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(PV0i.w)); -R127i.y = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(PV0i.x)); -R125i.z = ((intBitsToFloat(backupReg0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R125i.w = floatBitsToInt(uf_blockVS7[97].z + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 12 -backupReg0i = R126i.y; -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(PS1i)); -R126i.y = ((intBitsToFloat(R127i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R126i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(intBitsToFloat(R125i.y) + -(uf_blockVS7[99].w)); -// 13 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x))); -R127i.z = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -// 14 -R126i.x = floatBitsToInt(uf_blockVS7[98].z + intBitsToFloat(PV1i.w)); -R125i.y = floatBitsToInt(uf_blockVS7[98].y + intBitsToFloat(PV1i.x)); -R126i.z = floatBitsToInt(uf_blockVS7[98].x + intBitsToFloat(PV1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); -PS0i = R124i.y; -// 15 -backupReg0i = R126i.y; -R0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].x, intBitsToFloat(R127i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].y, intBitsToFloat(R127i.z))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[99].z, intBitsToFloat(R127i.z))); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -PS1i = R125i.x; -// 16 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.z))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R124i.y))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R124i.y))); -PS0i = R127i.z; -// 17 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R0i.y)) + 1.0); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + 1.0); -PV1i.z = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.y)); -R4i.w = 0x3f800000; -R127i.x = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(R8i.z)); -PS1i = R127i.x; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(PV1i.x))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(PV1i.x))); -R125i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(PV1i.x))); -R124i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * 0.5); -PS0i = R124i.y; -// 19 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg0i) * 0.5); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R8i.z)); -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R125i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * 0.5); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R125i.y)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.z)); -R124i.x = floatBitsToInt(intBitsToFloat(R124i.y) + -(0.5)); -R124i.x = floatBitsToInt(intBitsToFloat(R124i.x) * 2.0); -PS0i = R124i.x; -// 21 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV0i.x)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.x) + -(0.5)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); -R2i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(0.5)); -R2i.w = floatBitsToInt(intBitsToFloat(R2i.w) * 2.0); -PS1i = R2i.w; -// 22 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV1i.y)); -R3i.w = floatBitsToInt(intBitsToFloat(R8i.x) + -(0.5)); -R4i.x = floatBitsToInt(intBitsToFloat(R8i.y) + -(0.5)); -PS0i = R4i.x; -// 23 -R5i.x = floatBitsToInt(intBitsToFloat(R8i.z) + -(0.5)); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.y)); -PV1i.w = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), uf_blockVS7[115].x)); -// 24 -backupReg0i = R9i.x; -backupReg1i = R9i.z; -backupReg2i = R9i.y; -R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); -R9i.y = floatBitsToInt(intBitsToFloat(PS1i) + uf_blockVS7[114].x); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.y))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PV1i.z))); -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), uf_blockVS7[115].y)); -PS0i = R0i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R9i.z; -backupReg1i = R0i.w; -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), uf_blockVS8[3].y)); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[3].w)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[3].z)); -// 1 -R12i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,0.0))); -PV1i.x = R12i.x; -PV1i.y = R12i.x; -PV1i.z = R12i.x; -PV1i.w = R12i.x; -PS1i = R8i.y; -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.y = tempi.x; -R124i.x = floatBitsToInt(floor(intBitsToFloat(PS1i))); -PS0i = R124i.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = R127i.z; -// 4 -R2i.x = floatBitsToInt(uf_blockVS7[114].y + intBitsToFloat(R0i.x)); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(R124i.x))?1.0:0.0); -R11i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x358637bd)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), uf_blockVS7[115].z)); -PS0i = R8i.z; -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 5 -R9i.x = floatBitsToInt(uf_blockVS7[114].z + intBitsToFloat(PV0i.w)); -R2i.y = floatBitsToInt(intBitsToFloat(R127i.z) + -(intBitsToFloat(PV0i.y))); -R127i.z = floatBitsToInt(floor(intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -// 6 -R14i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV0i.x = R14i.x; -PV0i.y = R14i.x; -PV0i.z = R14i.x; -PV0i.w = R14i.x; -R124i.w = floatBitsToInt((intBitsToFloat(PV1i.z) > 0.0)?1.0:0.0); -PS0i = R124i.w; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R11i.y = tempi.x; -PS1i = floatBitsToInt((0.0 > intBitsToFloat(R127i.z))?1.0:0.0); -// 8 -backupReg0i = R1i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(backupReg0i),intBitsToFloat(R4i.w)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R1i.z = tempi.x; -R0i.x = floatBitsToInt(intBitsToFloat(R124i.w) + -(intBitsToFloat(PS1i))); -PS0i = R0i.x; -// 9 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockVS7[113].x)); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[113].y)); -PV1i.z = R8i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 2.0); -// 10 -PV0i.w = floatBitsToInt(floor(intBitsToFloat(PV1i.z))); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PV0i.w))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.w) > 0.0)?1.0:0.0); -// 12 -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00010000; -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00020000; -R124i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00040000; -// 1 -PS1i = floatBitsToInt(float(PV0i.x)); -// 2 -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[113].z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R127i.z)); -// 3 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R124i.w)); -// 4 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 5 -PV1i.x = 0 - PS0i; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -R124i.w = int(intBitsToFloat(PV0i.z)); -PS1i = R124i.w; -// 6 -PV0i.x = 0 - PS1i; -PV0i.y = max(R127i.z, PV1i.x); -R126i.w = ((uf_blockVS7[114].w == 1.0)?int(0xFFFFFFFF):int(0x0)); -R126i.y = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.y; -// 7 -PV1i.x = max(R124i.w, PV0i.x); -PV1i.y = 0 - PS0i; -PS1i = floatBitsToInt(float(PV0i.y)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 8 -R124i.x = floatBitsToInt(-(uf_blockVS7[114].w) + 1.0); -PV0i.z = max(R126i.y, PV1i.y); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R2i.y))); -PS0i = floatBitsToInt(float(PV1i.x)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 9 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(backupReg0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(float(PV0i.z)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 10 -R126i.x = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PV1i.x)); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV1i.y))); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(PV0i.z)); -R125i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R4i.x)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.y))); -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(PS1i)); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R0i.y)); -R124i.w = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV1i.x)); -tempResultf = log2(uf_blockVS7[114].w); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 13 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS0i))); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R126i.z)); -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(R124i.x)); -PS1i = R126i.z; -// 14 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 15 -PV1i.y = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -// 16 -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(R126i.z)); -// 17 -R123i.y = ((R126i.w == 0)?(PV0i.w):(R15i.w)); -PV1i.y = R123i.y; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV1i.y))); -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); -// 20 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(uf_blockVS7[13].x); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.w = R123i.w; -// 21 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -R0i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(uf_blockVS7[13].y); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 22 -R3i.x = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PS1i)); -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -// 23 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983)); -R126i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3e22f983)); -PV1i.z = R127i.z; -// 24 -R125i.w = floatBitsToInt(sin((intBitsToFloat(PV1i.z))/0.1591549367)); -PS0i = R125i.w; -// 25 -R127i.y = floatBitsToInt(cos((intBitsToFloat(R127i.z))/0.1591549367)); -PS1i = R127i.y; -// 26 -R124i.x = floatBitsToInt(sin((intBitsToFloat(R126i.y))/0.1591549367)); -PS0i = R124i.x; -// 27 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS0i))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R127i.z = floatBitsToInt(cos((intBitsToFloat(R126i.y))/0.1591549367)); -PS1i = R127i.z; -// 28 -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -PV0i.y = R125i.y; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -R3i.w = floatBitsToInt(sin((intBitsToFloat(R126i.x))/0.1591549367)); -PS0i = R3i.w; -// 29 -R9i.x = floatBitsToInt(-(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.z))); -R126i.y = floatBitsToInt(cos((intBitsToFloat(R126i.x))/0.1591549367)); -PS1i = R126i.y; -// 30 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -R9i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.z)); -R3i.z = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y)); -R2i.w = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); -PS0i = R4i.w; -// 31 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(R126i.y))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R126i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R127i.x))); -// 32 -R2i.x = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV1i.z)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R14i.x) + -(uf_blockVS6[17].x)); -PV0i.x = R127i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R11i.y) + -(uf_blockVS6[17].y)); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R1i.z) + -(uf_blockVS6[17].z)); -PV0i.z = R127i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(R14i.x)) + uf_blockVS6[17].x); -R126i.y = floatBitsToInt(-(intBitsToFloat(R11i.y)) + uf_blockVS6[17].y); -PS0i = R126i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.z = floatBitsToInt(-(intBitsToFloat(R1i.z)) + uf_blockVS6[17].z); -PS1i = R125i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R125i.y)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.x)), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.z)), intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 4 -R1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(PV1i.y))); -PV0i.x = R1i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(PV1i.x))); -PV0i.y = R1i.y; -R12i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[13].z, intBitsToFloat(PV1i.w))); -PV0i.z = R12i.z; -R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R126i.z; -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV0i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.z)); -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R125i.w),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -R9i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(R126i.z)); -PV0i.w = R9i.w; -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -R127i.w = floatBitsToInt(tempResultf); -PS0i = R127i.w; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV0i.w))); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PV0i.w))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); -PS1i = R125i.y; -// 10 -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R127i.w))); -PV0i.x = R124i.x; -R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV1i.x))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R0i.y))); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R3i.x))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), -(uf_blockVS6[1].z))); -// 11 -R127i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].y,intBitsToFloat(PV0i.x)) + intBitsToFloat(PS0i))); -R4i.y = R126i.z; -PV1i.y = R4i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), -(uf_blockVS6[1].x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), -(uf_blockVS6[1].y))); -R2i.z = R125i.y; -PS1i = R2i.z; -// 12 -R11i.x = R124i.x; -PV0i.x = R11i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].z,intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS6[1].x,intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.w))); -PV0i.z = R125i.z; -R127i.w = PV1i.y; -R126i.x = PS1i; -PS0i = R126i.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R125i.w = PV0i.x; -PS1i = R125i.w; -// 14 -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R126i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(R127i.w))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R127i.w))); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 15 -backupReg0i = R126i.y; -backupReg1i = R125i.z; -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); -PV1i.x = R3i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R126i.x))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); -PV1i.w = R5i.w; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R125i.w))); -PS1i = R126i.w; -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV1i.x))); -R6i.w = PV1i.y; -R5i.x = PV1i.w; -PS0i = R5i.x; -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R124i.x)) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.w)),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R127i.w))); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R125i.w))); -PS1i = R7i.z; -// 18 -backupReg0i = R0i.x; -R7i.x = PV1i.y; -PV0i.x = R7i.x; -R7i.y = PV1i.x; -PV0i.y = R7i.y; -R0i.z = PV1i.w; -PV0i.z = R0i.z; -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R126i.x))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R124i.y))); -// 19 -R126i.x = PV0i.y; -PV1i.x = R126i.x; -R125i.y = PV0i.z; -PV1i.y = R125i.y; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R9i.x)) + intBitsToFloat(PS0i))); -R127i.w = PV0i.x; -PV1i.w = R127i.w; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R124i.y))); -PS1i = R0i.y; -// 20 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(backupReg0i))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(R127i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.z))); -PV0i.w = R123i.w; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R125i.z))); -PS0i = R127i.y; -// 21 -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.w))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.w))); -PV1i.y = R123i.y; -R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.y))); -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R124i.y))); -// 22 -backupReg0i = R3i.w; -backupReg1i = R4i.x; -R2i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R5i.w)) + intBitsToFloat(PV1i.y))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(PS1i))); -PV0i.y = R123i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R126i.y)) + intBitsToFloat(R127i.y))); -R3i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(R3i.x)) + intBitsToFloat(R125i.x))); -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(backupReg1i)) + intBitsToFloat(R126i.z))); -PS0i = R4i.x; -// 23 -backupReg0i = R3i.z; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(R125i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(R124i.z))); -PV1i.y = R123i.y; -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); -// 24 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R4i.w)) + intBitsToFloat(R0i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(R3i.x)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(R7i.z))); -PV0i.w = R123i.w; -// 25 -backupReg0i = R0i.x; -backupReg1i = R9i.y; -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.w))); -R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),intBitsToFloat(backupReg1i)) + intBitsToFloat(PV0i.x))); -R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV0i.y))); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV0i.z))); -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R7i.y),intBitsToFloat(R4i.y),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = R126i.x; -PV0i.y = R126i.x; -PV0i.z = R126i.x; -PV0i.w = R126i.x; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R0i.x))); -PS0i = R126i.y; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R7i.x),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R3i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.w = tempi.x; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.w)) + intBitsToFloat(R5i.w))); -PS1i = R125i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R0i.z),intBitsToFloat(R11i.x),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R9i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 3 -R0i.x = floatBitsToInt(intBitsToFloat(R14i.x) + intBitsToFloat(R126i.x)); -R0i.y = floatBitsToInt(intBitsToFloat(R11i.y) + intBitsToFloat(R127i.w)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R2i.x)) + intBitsToFloat(R126i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R4i.z)) + intBitsToFloat(R9i.z))); -PV1i.w = R123i.w; -R0i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -PS1i = R0i.z; -// 4 -R18i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(R125i.x))); -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(PV1i.w))); -R14i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.z))); -// 5 -R2i.xyz = floatBitsToInt(vec3(-(intBitsToFloat(R14i.x)),-(intBitsToFloat(R11i.y)),-(intBitsToFloat(R1i.z))) + vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))); -PV1i.x = R2i.x; -PV1i.y = R2i.y; -PV1i.z = R2i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R5i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(R12i.x),intBitsToFloat(R5i.y),intBitsToFloat(R11i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -R124i.z = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 9 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS0i))); -R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PS0i))); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R12i.x),intBitsToFloat(R5i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(R12i.x),intBitsToFloat(R5i.y),intBitsToFloat(R11i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 11 -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 12 -PV0i.x = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 13 -R4i.z = ((R124i.z == 0)?(0):(PV0i.x)); -// 14 -predResult = (R4i.z != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), uf_blockVS7[95].x)); -PS0i = R127i.x; -// 1 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), uf_blockVS7[95].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockVS7[95].x)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PS1i))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -// 5 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -R0i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R2i.x = floatBitsToInt(intBitsToFloat(R14i.x) + intBitsToFloat(R1i.x)); -PV0i.x = R2i.x; -R9i.y = floatBitsToInt(intBitsToFloat(R11i.y) + intBitsToFloat(R1i.y)); -PV0i.y = R9i.y; -R2i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(R12i.z)); -PV0i.z = R2i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R0i.x)); -R126i.w = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R0i.y)); -PS0i = R126i.w; -// 1 -PV1i.x = floatBitsToInt(-(uf_blockVS6[17].x) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(uf_blockVS6[17].y) + intBitsToFloat(PV0i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(R0i.z)); -R3i.w = 0x3f800000; -PS1i = floatBitsToInt(-(uf_blockVS6[17].z) + intBitsToFloat(PV0i.z)); -// 2 -backupReg0i = R127i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PS1i),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PS1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.w = floatBitsToInt(-(intBitsToFloat(R2i.x)) + intBitsToFloat(backupReg0i)); -PS0i = R127i.w; -// 3 -R127i.x = floatBitsToInt((uf_blockVS7[8].x > 0.0)?1.0:0.0); -R127i.y = floatBitsToInt(-(intBitsToFloat(R2i.z)) + intBitsToFloat(R127i.z)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(R126i.w)); -R126i.w = 0x3f800000; -PV1i.w = R126i.w; -R0i.x = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R0i.x; -// 4 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R9i.y),intBitsToFloat(R2i.z),intBitsToFloat(PV1i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = tempi.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R9i.w)); -// 5 -PV1i.x = floatBitsToInt((0.0 > uf_blockVS7[8].x)?1.0:0.0); -R0i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -R0i.z = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R0i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].x); -// 6 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -R127i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV1i.x))); -PV0i.z = R127i.z; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R9i.y),intBitsToFloat(R2i.z),intBitsToFloat(R126i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PS1i = R127i.y; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS7[9].y) + intBitsToFloat(R127i.x))); -PV0i.x = R123i.x; -PV0i.y = PV1i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R123i.w = floatBitsToInt((intBitsToFloat(R125i.w) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(R125i.w) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PS1i)); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV0i.y))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.x))); -// 12 -PV0i.w = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV1i.x)); -// 13 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 14 -R5i.y = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(min(intBitsToFloat(backupReg0i), uf_blockVS7[116].x)); -R126i.z = floatBitsToInt(intBitsToFloat(R2i.w) + -(uf_blockVS7[60].w)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[116].x); -// 1 -R127i.x = floatBitsToInt(-(uf_blockVS7[60].y) + uf_blockVS7[61].y); -R127i.y = floatBitsToInt(-(uf_blockVS7[60].x) + uf_blockVS7[61].x); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -// 2 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(-(uf_blockVS7[60].z) + uf_blockVS7[61].z); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(-(uf_blockVS7[60].w) + uf_blockVS7[61].w); -// 3 -R7i.x = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(PV0i.y)); -R7i.y = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PV0i.x)); -R6i.z = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(PV0i.w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS1i)); -R0i.y = ((intBitsToFloat(R126i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(intBitsToFloat(R2i.w) + -(uf_blockVS7[61].w)); -// 5 -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[60].y)); -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.x)) + uf_blockVS7[60].x)); -R2i.z = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R2i.z; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[60].z)); -// 6 -R2i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R6i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R5i.z = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R6i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R2i.w))); -PS1i = R126i.z; -// 2 -backupReg0i = R0i.y; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R6i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.w = tempi.x; -R127i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -PS0i = R127i.y; -// 3 -R11i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R6i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = R11i.x; -PV1i.y = R11i.x; -PV1i.z = R11i.x; -PV1i.w = R11i.x; -// 4 -R12i.x = floatBitsToInt((intBitsToFloat(R9i.w) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].x, intBitsToFloat(R127i.y))); -PV0i.z = PV1i.x; -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) / 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].y, intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[60].z, intBitsToFloat(R127i.y))); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R9i.w) * 0.0 + intBitsToFloat(PV0i.z))); -PV1i.z = R123i.z; -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(PS0i))); -R13i.w = floatBitsToInt((intBitsToFloat(R9i.w) * 0.5 + intBitsToFloat(PV0i.z))); -PS1i = R13i.w; -// 6 -R2i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].x,intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.y))); -R11i.y = floatBitsToInt((intBitsToFloat(R5i.z) * 0.5 + intBitsToFloat(PV1i.z))); -R11i.z = floatBitsToInt((intBitsToFloat(R6i.y) * -(0.5) + intBitsToFloat(PV1i.z))); -R0i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].y,intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -R11i.w = floatBitsToInt(1.0 / intBitsToFloat(R12i.x)); -PS0i = R11i.w; -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(R13i.w) * intBitsToFloat(PS0i)); -R2i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[61].z,intBitsToFloat(R2i.z)) + intBitsToFloat(R125i.w))); -// 8 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV0i.z = R123i.z; -// 9 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 10 -R9i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -// 11 -R127i.x = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -// 12 -PV0i.w = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -// 13 -R126i.x = floatBitsToInt(-(uf_blockVS7[76].x) + uf_blockVS7[77].x); -R125i.w = floatBitsToInt(-(uf_blockVS7[76].y) + uf_blockVS7[77].y); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 14 -PV0i.x = floatBitsToInt(-(uf_blockVS7[76].w) + uf_blockVS7[77].w); -R0i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(-(uf_blockVS7[76].z) + uf_blockVS7[77].z); -// 15 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 16 -R4i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -R0i.z = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS1i)); -R3i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R2i.x; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].x)); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[0].y)); -PV0i.z = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PV0i.w = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 1 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), uf_blockVS8[0].z)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt((uf_blockVS7[8].z > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt((0.0 > uf_blockVS7[8].z)?1.0:0.0); -// 2 -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R126i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PS1i))); -PV0i.y = R126i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS7[9].z) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].z); -// 3 -R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -PV1i.w = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -// 4 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS7[9].w) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); -// 5 -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.w))); -// 6 -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.y))); -// 7 -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.w))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.z) + -(uf_blockVS7[68].w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R2i.z) + -(uf_blockVS7[69].w)); -// 1 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R0i.y)) + uf_blockVS7[68].x)); -R126i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R126i.y; -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockVS7[59].x)); -R125i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R125i.w; -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), uf_blockVS7[59].x)); -PS1i = R12i.y; -// 2 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[59].x)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R126i.w = floatBitsToInt(intBitsToFloat(R3i.z) + -(uf_blockVS7[76].w)); -PV0i.w = R126i.w; -// 3 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.w)) + uf_blockVS7[76].x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R0i.z)) + uf_blockVS7[76].y)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.x))); -R127i.y = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R127i.y; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(uf_blockVS7[77].w)); -PV0i.y = R125i.y; -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R4i.y)) + uf_blockVS7[76].z)); -R125i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -// 5 -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(R3i.z) + -(uf_blockVS7[78].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[69].x,intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -// 6 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].x, intBitsToFloat(R125i.w))); -R124i.z = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R124i.z; -R14i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[0].w)); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].y, intBitsToFloat(R125i.w))); -PS0i = R126i.w; -// 7 -R125i.x = floatBitsToInt(-(uf_blockVS7[77].x) + uf_blockVS7[78].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.x))); -PV1i.z = R125i.z; -R127i.w = floatBitsToInt(-(uf_blockVS7[77].y) + uf_blockVS7[78].y); -// 8 -backupReg0i = R127i.x; -backupReg1i = R126i.y; -backupReg2i = R126i.z; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg1i))); -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg2i),intBitsToFloat(PV1i.z)) + intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt(-(uf_blockVS7[77].z) + uf_blockVS7[78].z); -PS0i = floatBitsToInt(-(uf_blockVS7[77].w) + uf_blockVS7[78].w); -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[76].z, intBitsToFloat(R125i.w))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 10 -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.x) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.z))); -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[77].x)); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[77].z)); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.z)) + uf_blockVS7[77].y)); -PV1i.w = R123i.w; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(R126i.z))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(R126i.y))); -PV0i.z = R123i.z; -PV0i.w = ((intBitsToFloat(R8i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS0i = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 13 -R0i.x = ((PV0i.w == 0)?(R10i.x):(R10i.w)); -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[78].z,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[78].y,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[78].x,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -R2i.x = ((PS0i == 0)?(R10i.y):(R10i.z)); -PS1i = R2i.x; -// 14 -PV0i.x = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS8[1].z)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockVS8[1].y)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS8[1].x)); -PS0i = ((intBitsToFloat(R8i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 15 -R3i.x = ((PV0i.x == 0)?(R10i.x):(R10i.w)); -R14i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.y))); -R12i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.z))); -R12i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.w))); -R3i.z = ((PS0i == 0)?(R10i.y):(R10i.z)); -PS1i = R3i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -PV0i.w = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -R124i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.z = R124i.z; -PV1i.w = (PV0i.y == 0x00080000)?int(0xFFFFFFFF):int(0x0); -// 2 -R5i.x = ((PV1i.w == 0)?(R10i.x):(R0i.x)); -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS7[10].x) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -PS0i = ((intBitsToFloat(R8i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 3 -PV1i.x = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -R127i.y = ((PS0i == 0)?(R10i.x):(R10i.w)); -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PV1i.w = (PV0i.z == 0x00100000)?int(0xFFFFFFFF):int(0x0); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -R5i.w = ((PV1i.w == 0)?(R10i.y):(R2i.x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 5 -PV1i.x = (PV0i.y == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = (PV0i.z == 0x00200000)?int(0xFFFFFFFF):int(0x0); -R124i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(uf_blockVS7[84].w)); -R2i.y = ((PV1i.x == 0)?(R10i.y):(R3i.z)); -R4i.z = ((PV1i.y == 0)?(R10i.x):(R3i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + -(uf_blockVS7[85].w)); -PS0i = (PS1i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -// 7 -R6i.x = ((PS0i == 0)?(R10i.x):(R127i.y)); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R124i.z)) + uf_blockVS7[84].x)); -R124i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R124i.z; -R127i.w = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -// 8 -PV0i.x = ((intBitsToFloat(R8i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R126i.z = (PS1i == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = floatBitsToInt(uf_blockVS7[5].y) & int(1); -// 9 -R123i.x = ((PV0i.x == 0)?(R10i.y):(R10i.z)); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PV0i.w))); -R6i.w = (int(1) != PS0i)?int(0xFFFFFFFF):int(0x0); -R3i.x = int(uf_blockVS7[17].x); -PS1i = R3i.x; -// 10 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -R7i.w = ((R126i.z == 0)?(R10i.y):(PV1i.x)); -R0i.w = int(uf_blockVS7[17].y); -PS0i = R0i.w; -// 11 -R10i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[85].x,intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(float(PV0i.z)); -// 12 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -// 13 -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(float(PV0i.z)); -// 14 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R127i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R127i.y; -// 15 -PV1i.x = 0 - PS0i; -R3i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -// 16 -R3i.w = max(R127i.y, PV1i.x); -} -if( activeMaskStackC[3] == true ) { -// 0 -R14i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), uf_blockVS8[1].w)); -// 1 -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -R125i.y = int(-1) + R3i.x; -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -R127i.y = int(intBitsToFloat(R3i.z)); -PS1i = R127i.y; -// 2 -PV0i.x = 0 - PS1i; -R124i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -PS0i = floatBitsToInt(float(PV1i.z)); -// 3 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R4i.w = max(R127i.y, PV0i.x); -PS1i = floatBitsToInt(float(R127i.x)); -// 4 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.z = floatBitsToInt(float(R3i.x)); -PS0i = R126i.z; -// 5 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R127i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R127i.y; -// 6 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(R13i.x) * intBitsToFloat(PV1i.y)); -R126i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.y; -// 7 -PV1i.x = 0 - PS0i; -R2i.w = max(R127i.y, PV0i.x); -PS1i = int(intBitsToFloat(PV0i.y)); -// 8 -R126i.w = max(R126i.y, PV1i.x); -R124i.z = R3i.w * PS1i; -PS0i = R124i.z; -// 9 -PS1i = floatBitsToInt(float(R0i.w)); -// 10 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS0i)); -R126i.y = floatBitsToInt(float(R3i.x)); -PS1i = R126i.y; -// 12 -R3i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R125i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R125i.w; -// 13 -PS1i = floatBitsToInt(float(PS0i)); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(PS1i)); -R125i.x = floatBitsToInt(float(R125i.w)); -PS0i = R125i.x; -// 15 -R123i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R127i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R0i.w = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.y))); -PS1i = R0i.w; -// 16 -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.x)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.x)); -// 17 -R124i.x = int(1) - PS0i; -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R124i.w = PS0i * R125i.y; -PS1i = R124i.w; -// 18 -R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.w))); -PV0i.z = R126i.z; -PS0i = floatBitsToInt(float(R124i.y)); -// 19 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R126i.x = int(intBitsToFloat(R127i.x)); -PS1i = R126i.x; -// 20 -backupReg0i = R126i.w; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -R126i.w = ((intBitsToFloat(PV1i.x) == 0.0)?(R126i.z):(PV1i.y)); -PV0i.w = R126i.w; -R124i.y = backupReg0i * PS1i; -PS0i = R124i.y; -// 21 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.w)); -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 22 -R123i.y = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV1i.z):(R126i.w)); -PV0i.y = R123i.y; -PV0i.w = 0 - PS1i; -// 23 -R123i.x = ((-(intBitsToFloat(R125i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.x = R123i.x; -PV1i.z = max(R127i.x, PV0i.w); -// 24 -R123i.w = ((intBitsToFloat(R126i.y) == 0.0)?(R125i.x):(PV1i.x)); -PV0i.w = R123i.w; -PS0i = PV1i.z * R126i.x; -// 25 -R126i.z = R125i.w + PS0i; -PS1i = int(intBitsToFloat(PV0i.w)); -// 26 -PS0i = R124i.x * PS1i; -// 27 -PV1i.z = PS0i + R124i.w; -R124i.x = R2i.w * R126i.z; -PS1i = R124i.x; -// 28 -PS0i = R4i.w * PV1i.z; -// 29 -PV1i.y = PS0i + R124i.z; -// 30 -PV0i.x = R124i.x + PV1i.y; -// 31 -PV1i.w = R124i.y + PV0i.x; -// 32 -R126i.z = floatBitsToInt(float(PV1i.w)); -PS0i = R126i.z; -// 33 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), abs(intBitsToFloat(PS0i)))); -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -// 34 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -// 35 -R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R3i.x)) + intBitsToFloat(R124i.w))); -PV1i.z = R124i.z; -// 36 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV1i.z)); -// 37 -R124i.w = ((intBitsToFloat(PV0i.x) == 0.0)?(R124i.z):(PV0i.y)); -PV1i.w = R124i.w; -// 38 -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.w)); -// 39 -R123i.y = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV0i.z):(R124i.w)); -PV1i.y = R123i.y; -// 40 -R123i.x = ((-(intBitsToFloat(R126i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.x = R123i.x; -// 41 -R123i.w = ((intBitsToFloat(R126i.y) == 0.0)?(R126i.z):(PV0i.x)); -PV1i.w = R123i.w; -// 42 -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 43 -R126i.y = floatBitsToInt(float(PS0i)); -PS1i = R126i.y; -// 44 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R2i.x = floatBitsToInt(float(R126i.z)); -PS0i = R2i.x; -// 45 -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -// 46 -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R126i.y))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -// 47 -R3i.x = floatBitsToInt((-(intBitsToFloat(PV0i.z)) * 4.0 + intBitsToFloat(R124i.y))); -PV1i.x = R3i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 0.25); -R0i.z = ((R6i.w == 0)?(R8i.x):(R8i.y)); -// 48 -R10i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -R3i.z = floatBitsToInt((intBitsToFloat(PV1i.x) >= 4.0)?1.0:0.0); -R0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0xc0800000)); -R0i.y = int(uf_blockVS7[26].x); -PS0i = R0i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.y = ((intBitsToFloat(R3i.z) == 0.0)?(R3i.x):(R0i.w)); -PV0i.y = R124i.y; -PS0i = int(intBitsToFloat(R10i.x)); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + 4.0); -R10i.y = PS0i + 0x00000012; -PV1i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R0i.x = int(uf_blockVS7[26].y); -PS1i = R0i.x; -// 2 -R123i.w = ((-(intBitsToFloat(R124i.y)) > 0.0)?(PV1i.x):(R124i.y)); -PV0i.w = R123i.w; -R126i.z = floatBitsToInt(float(PV1i.w)); -PS0i = R126i.z; -// 3 -R124i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R123i.z = ((-(intBitsToFloat(R2i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.z = R123i.z; -// 4 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(R126i.z))?1.0:0.0); -PS0i = int(intBitsToFloat(PV1i.z)); -// 5 -backupReg0i = R124i.y; -PV1i.x = int(-1) + PS0i; -R124i.y = 0xfffffffe + PS0i; -R126i.z = 0xfffffffd + PS0i; -R125i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(float(PS0i)); -// 6 -R126i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.x)); -// 7 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R124i.y)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R124i.x; -// 9 -PV1i.x = 0 - PS0i; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -R124i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.w; -// 10 -PV0i.x = 0 - PS1i; -PV0i.z = max(R124i.x, PV1i.x); -R124i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R124i.z; -// 11 -R2i.x = int(1) - PV0i.z; -PV1i.y = max(R124i.w, PV0i.x); -PV1i.z = 0 - PS0i; -PS1i = floatBitsToInt(float(R126i.z)); -// 12 -PV0i.x = max(R124i.z, PV1i.z); -R4i.y = int(1) - PV1i.y; -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.z = int(intBitsToFloat(R125i.w)); -PS0i = R124i.z; -// 13 -PV1i.y = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.w))); -R0i.w = int(1) - PV0i.x; -PS1i = floatBitsToInt(float(R126i.x)); -// 14 -R3i.x = max(R124i.z, PV1i.y); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R124i.y; -// 15 -PV1i.x = 0 - PS0i; -R4i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -// 16 -PV0i.w = max(R124i.y, PV1i.x); -// 17 -R3i.z = int(1) - PV0i.w; -} -if( activeMaskStackC[3] == true ) { -R10i.xyzw = floatBitsToInt(uf_blockVS7[R10i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -R126i.y = int(-1) + R0i.y; -R124i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R124i.y = R3i.z * R10i.w; -PS0i = R124i.y; -// 1 -R126i.x = R0i.w * R10i.z; -PS1i = R126i.x; -// 2 -R125i.w = R4i.y * R10i.y; -PS0i = R125i.w; -// 3 -PS1i = R2i.x * R10i.x; -// 4 -PV0i.y = R125i.w + PS1i; -R124i.z = int(intBitsToFloat(R4i.w)); -PS0i = R124i.z; -// 5 -PV1i.x = R126i.x + PV0i.y; -PV1i.y = 0 - PS0i; -PS1i = floatBitsToInt(float(R124i.w)); -// 6 -R10i.x = max(R124i.z, PV1i.y); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R10i.w = R124i.y + PV1i.x; -PS0i = floatBitsToInt(float(R124i.x)); -// 7 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -R124i.w = floatBitsToInt(float(backupReg0i)); -PS1i = R124i.w; -// 8 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -R124i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R124i.z; -// 9 -PV1i.x = 0 - PS0i; -PV1i.y = floatBitsToInt(intBitsToFloat(R13i.x) * intBitsToFloat(PV0i.z)); -R126i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R126i.z; -// 10 -R2i.x = max(R124i.z, PV1i.x); -PV0i.y = 0 - PS1i; -PS0i = int(intBitsToFloat(PV1i.y)); -// 11 -R125i.x = max(R126i.z, PV0i.y); -R125i.w = R3i.x * PS0i; -PS1i = R125i.w; -// 12 -backupReg0i = R0i.x; -PS0i = floatBitsToInt(float(backupReg0i)); -// 13 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 14 -backupReg0i = R0i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(float(backupReg0i)); -PS0i = R126i.z; -// 15 -R127i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 16 -PS0i = floatBitsToInt(float(PS1i)); -// 17 -PV1i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PS0i)); -R124i.y = floatBitsToInt(float(R127i.x)); -PS1i = R124i.y; -// 18 -R124i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R123i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R123i.y; -R4i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.z))); -PS0i = R4i.x; -// 19 -PV1i.w = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.y)), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(PV0i.y)); -// 20 -R0i.x = int(1) - PS1i; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -R3i.x = PS1i * R126i.y; -PS0i = R3i.x; -// 21 -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R127i.y)) + intBitsToFloat(R124i.x))); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(float(R127i.z)); -// 22 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.w) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV0i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R125i.y = int(intBitsToFloat(R126i.x)); -PS0i = R125i.y; -// 23 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV0i.y) == 0.0)?(R124i.w):(PV0i.z)); -PV1i.x = R125i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R127i.z = backupReg0i * PS0i; -PS1i = R127i.z; -// 24 -PV0i.w = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.x)); -R126i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.y; -// 25 -PV1i.x = 0 - PS0i; -R123i.z = ((-(intBitsToFloat(R125i.x)) > 0.0)?(PV0i.w):(R125i.x)); -PV1i.z = R123i.z; -// 26 -R123i.y = ((-(intBitsToFloat(R124i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -PV0i.w = max(R126i.y, PV1i.x); -// 27 -R123i.x = ((intBitsToFloat(R126i.z) == 0.0)?(R124i.y):(PV0i.y)); -PV1i.x = R123i.x; -PS1i = PV0i.w * R125i.y; -// 28 -R124i.w = R127i.x + PS1i; -PS0i = int(intBitsToFloat(PV1i.x)); -// 29 -backupReg0i = R0i.x; -PS1i = backupReg0i * PS0i; -// 30 -PV0i.w = PS1i + R3i.x; -R125i.y = R2i.x * R124i.w; -PS0i = R125i.y; -// 31 -PS1i = R10i.x * PV0i.w; -// 32 -PV0i.z = PS1i + R125i.w; -// 33 -PV1i.y = R125i.y + PV0i.z; -// 34 -PV0i.x = R127i.z + PV1i.y; -// 35 -R124i.w = floatBitsToInt(float(PV0i.x)); -PS1i = R124i.w; -// 36 -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), abs(intBitsToFloat(PS1i)))); -// 37 -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -// 38 -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.x))); -PV0i.w = R125i.w; -// 39 -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.w) >= abs(intBitsToFloat(R126i.z)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R126i.z))) + intBitsToFloat(PV0i.w)); -// 40 -R127i.x = ((intBitsToFloat(PV1i.y) == 0.0)?(R125i.w):(PV1i.z)); -PV0i.x = R127i.x; -// 41 -PV1i.w = floatBitsToInt(abs(intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.x)); -// 42 -R123i.z = ((-(intBitsToFloat(R127i.x)) > 0.0)?(PV1i.w):(R127i.x)); -PV0i.z = R123i.z; -// 43 -R123i.y = ((-(intBitsToFloat(R124i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -// 44 -R123i.x = ((intBitsToFloat(R126i.z) == 0.0)?(R124i.w):(PV1i.y)); -PV0i.x = R123i.x; -// 45 -R124i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.w; -// 46 -R0i.z = floatBitsToInt(float(PS1i)); -PS0i = R0i.z; -// 47 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R0i.y = floatBitsToInt(float(R124i.w)); -PS1i = R0i.y; -// 48 -R4i.x = floatBitsToInt(abs(intBitsToFloat(PS1i)) * 0.25); -R10i.z = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R4i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.x))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R123i.z = floatBitsToInt((intBitsToFloat(R4i.w) * 0.5 + intBitsToFloat(R0i.z))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(R4i.x))); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * 0.25); -R127i.y = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * 4.0 + intBitsToFloat(R10i.z))); -PV1i.y = R127i.y; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xc0800000)); -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.y) >= 4.0)?1.0:0.0); -// 3 -R126i.z = ((intBitsToFloat(PV0i.w) == 0.0)?(R127i.y):(PV0i.x)); -PV1i.z = R126i.z; -PS1i = int(intBitsToFloat(PV0i.y)); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 4.0); -R10i.z = PS1i + 0x0000001b; -PS0i = int(uf_blockVS7[48].z); -// 5 -R123i.x = ((-(intBitsToFloat(R126i.z)) > 0.0)?(PV0i.y):(R126i.z)); -PV1i.x = R123i.x; -R2i.z = floatBitsToInt(float(PS0i)); -PS1i = R2i.z; -// 6 -R123i.w = ((-(intBitsToFloat(R0i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.x)))):(PV1i.x)); -PV0i.w = R123i.w; -R0i.y = floatBitsToInt(float(R10i.w)); -PS0i = R0i.y; -// 7 -PS1i = int(intBitsToFloat(PV0i.w)); -// 8 -R127i.x = 0xfffffffe + PS1i; -PV0i.y = int(-1) + PS1i; -R126i.z = floatBitsToInt(abs(intBitsToFloat(R2i.z))); -R124i.w = 0xfffffffd + PS1i; -PS0i = floatBitsToInt(float(PS1i)); -// 9 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.y)); -// 10 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(float(R127i.x)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R127i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R127i.y; -// 12 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -PV0i.y = 0 - PS1i; -R127i.x = int(intBitsToFloat(PV1i.y)); -PS0i = R127i.x; -// 13 -PV1i.x = 0 - PS0i; -PV1i.w = max(R127i.y, PV0i.y); -R125i.w = int(intBitsToFloat(PV0i.x)); -PS1i = R125i.w; -// 14 -R2i.x = int(1) - PV1i.w; -PV0i.y = 0 - PS1i; -PV0i.z = max(R127i.x, PV1i.x); -PS0i = floatBitsToInt(float(R124i.w)); -// 15 -R10i.x = int(1) - PV0i.z; -PV1i.y = max(R125i.w, PV0i.y); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R0i.x = floatBitsToInt(float(R10i.w)); -PS1i = R0i.x; -// 16 -R4i.x = int(1) - PV1i.y; -R127i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R2i.z))); -// 17 -PV1i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R0i.x)), intBitsToFloat(PS0i))); -R127i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R127i.z; -// 18 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -PV0i.y = 0 - PS1i; -// 19 -PV1i.x = max(R127i.z, PV0i.y); -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R126i.z)) + intBitsToFloat(R127i.y))); -PV1i.z = R127i.z; -// 20 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R2i.z)))?1.0:0.0); -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R2i.z))) + intBitsToFloat(PV1i.z)); -R10i.w = int(1) - PV1i.x; -// 21 -R4i.w = ((intBitsToFloat(PV0i.x) == 0.0)?(R127i.z):(PV0i.y)); -PV1i.w = R4i.w; -// 22 -R0i.z = floatBitsToInt(abs(intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.w)); -} -if( activeMaskStackC[3] == true ) { -R3i.xyzw = floatBitsToInt(uf_blockVS7[R10i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(R0i.y))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(backupReg0i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), uf_blockVS7[45].x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -R126i.z = R10i.w * R3i.w; -PS0i = R126i.z; -// 1 -R125i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.w)); -R123i.y = ((-(intBitsToFloat(R4i.w)) > 0.0)?(R0i.z):(R4i.w)); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), uf_blockVS7[45].y)); -R127i.z = floatBitsToInt(intBitsToFloat(R127i.z) * 2.0); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -R127i.y = R4i.x * R3i.z; -PS1i = R127i.y; -// 2 -backupReg0i = R0i.y; -R123i.x = ((-(intBitsToFloat(R0i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R124i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * 0.5 + intBitsToFloat(backupReg0i))); -R127i.x = R10i.x * R3i.y; -PS0i = R127i.x; -// 3 -R126i.x = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.y)); -PV1i.y = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV1i.z = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R123i.w = ((intBitsToFloat(R2i.z) == 0.0)?(R0i.x):(PV0i.x)); -PV1i.w = R123i.w; -PS1i = R2i.x * R3i.x; -// 4 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS7[46].z) + intBitsToFloat(PV1i.y))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockVS7[46].w) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PV0i.z = R127i.x + PS1i; -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(R125i.x)))); -R127i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R127i.z; -// 5 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[45].z) + intBitsToFloat(PV0i.x))); -PV1i.y = R127i.y + PV0i.z; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[45].w) + intBitsToFloat(PV0i.y))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[44].y) + intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R2i.z)); -// 6 -R124i.x = R126i.z + PV1i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 7 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS0i))); -PV1i.x = R126i.x; -R123i.y = ((R6i.w == 0)?(0):(int(1))); -PV1i.y = R123i.y; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 8 -R127i.x = (PV1i.y == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.x = R127i.x; -PV0i.y = (PV1i.y == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -PV0i.z = R124i.z; -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.x)) + -(0.5))); -R126i.z = int(intBitsToFloat(PV1i.w)); -PS0i = R126i.z; -// 9 -backupReg0i = R127i.z; -R123i.x = ((PV0i.y == 0)?(R8i.x):(R8i.z)); -PV1i.x = R123i.x; -R127i.y = ((PV0i.x == 0)?(R8i.x):(R8i.y)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(PV0i.z)) + -(0.5))); -R123i.w = ((PV0i.y == 0)?(R8i.y):(R8i.x)); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(float(backupReg0i)); -// 10 -R123i.x = ((R127i.x == 0)?(PV1i.w):(R8i.z)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.w))); -PV0i.y = R123i.y; -R123i.z = ((R127i.x == 0)?(PV1i.x):(R8i.y)); -PV0i.z = R123i.z; -R125i.w = ((R127i.x == 0)?(R8i.y):(R8i.z)); -PS0i = floatBitsToInt(float(R126i.z)); -// 11 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(PV0i.z))); -R125i.x = floatBitsToInt(intBitsToFloat(R125i.x) * 2.0); -R10i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y))); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R124i.w))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) * 2.0); -PS1i = int(uf_blockVS7[53].z); -// 12 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R127i.z)) + -(intBitsToFloat(PV1i.z)))); -PV0i.y = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -PV0i.w = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R126i.y = floatBitsToInt(float(PS1i)); -PS0i = R126i.y; -// 13 -backupReg0i = R126i.w; -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R127i.z = floatBitsToInt(-(intBitsToFloat(R125i.x)) + intBitsToFloat(PV0i.w)); -R126i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -R125i.x = floatBitsToInt(float(R124i.x)); -PS1i = R125i.x; -// 14 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R124i.w = floatBitsToInt(float(R124i.x)); -PS0i = R124i.w; -// 15 -backupReg0i = R125i.w; -R124i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R127i.z)))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -R125i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.y))); -// 16 -PV0i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.w)), intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R125i.x))); -PV0i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[49].y) + intBitsToFloat(R126i.w))); -R5i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[50].z) + intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); -// 17 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[50].w) + intBitsToFloat(R125i.w))); -R127i.z = ((R6i.w == 0)?(0):(0x00000002)); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 18 -backupReg0i = R127i.x; -R127i.x = (PV1i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R124i.x))); -PV0i.y = R127i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -R6i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS1i))); -PV0i.w = R6i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 19 -backupReg0i = R4i.z; -PV1i.x = floatBitsToInt(-(abs(intBitsToFloat(R126i.y))) + intBitsToFloat(PV0i.y)); -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS0i))); -PV1i.y = R125i.y; -R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + -(0.5))); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R126i.y)))?1.0:0.0); -PS1i = int(intBitsToFloat(PV0i.z)); -// 20 -backupReg0i = R127i.y; -PV0i.x = (R127i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(PV1i.y)) + -(0.5))); -R127i.z = ((intBitsToFloat(PV1i.w) == 0.0)?(backupReg0i):(PV1i.x)); -PV0i.z = R127i.z; -R4i.w = ((R127i.x == 0)?(R8i.x):(R8i.y)); -PS0i = floatBitsToInt(float(PS1i)); -// 21 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.z)); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R125i.z))); -PV1i.y = R123i.y; -R123i.z = ((PV0i.x == 0)?(R8i.y):(R8i.x)); -PV1i.z = R123i.z; -R123i.w = ((PV0i.x == 0)?(R8i.x):(R8i.z)); -PV1i.w = R123i.w; -R2i.z = ((R127i.x == 0)?(R8i.y):(R8i.z)); -PS1i = R2i.z; -// 22 -backupReg0i = R8i.z; -R123i.x = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV1i.x):(R127i.z)); -PV0i.x = R123i.x; -R2i.y = ((R127i.x == 0)?(PV1i.w):(R8i.y)); -R8i.z = ((R127i.x == 0)?(PV1i.z):(backupReg0i)); -R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.y)) + -(intBitsToFloat(PV1i.y)))); -PS0i = int(uf_blockVS7[58].z); -// 23 -R123i.w = ((-(intBitsToFloat(R124i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.w = R123i.w; -R8i.x = floatBitsToInt(float(PS0i)); -PS1i = R8i.x; -// 24 -PV0i.x = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -R123i.z = ((intBitsToFloat(R126i.y) == 0.0)?(R124i.w):(PV1i.w)); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 25 -R0i.y = ((intBitsToFloat(PV0i.x) == 0.0)?(0):(PV0i.w)); -R8i.w = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R8i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R8i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R8i.x)) + intBitsToFloat(R0i.y)); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R2i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(R8i.w))); -PV0i.w = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -PS0i = floatBitsToInt(float(R8i.y)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R3i.y))); -PV1i.x = R123i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R8i.z))); -R125i.y = floatBitsToInt(intBitsToFloat(R125i.y) * 2.0); -PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.w)); -R123i.w = ((-(intBitsToFloat(R0i.y)) > 0.0)?(PV0i.x):(R0i.y)); -PV1i.w = R123i.w; -R124i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R124i.y; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.w)),uf_blockVS7[54].x) + -(intBitsToFloat(PV1i.z)))); -R123i.z = ((intBitsToFloat(R8i.x) == 0.0)?(0):(PV1i.w)); -PV0i.z = R123i.z; -R6i.w = floatBitsToInt(intBitsToFloat(R10i.y) + 0.5); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 3 -R2i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R2i.y = floatBitsToInt(intBitsToFloat(R5i.x) + 0.5); -R8i.z = floatBitsToInt(intBitsToFloat(R3i.w) + 0.5); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS0i))); -PV1i.w = R124i.w; -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 4 -R127i.x = floatBitsToInt(intBitsToFloat(R5i.y) + -(uf_blockVS7[93].x)); -R5i.y = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(PV1i.w)) + -(0.5))); -R126i.w = floatBitsToInt(intBitsToFloat(R16i.w) + 0.0); -PV0i.w = R126i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 5 -backupReg0i = R126i.y; -R125i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + -(uf_blockVS7[104].w)); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS0i))); -PV1i.y = R126i.y; -PS1i = floatBitsToInt(float(backupReg0i)); -// 6 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV1i.y)) + -(0.5))); -R124i.w = floatBitsToInt(float(R124i.y)); -PS0i = R124i.w; -// 7 -PV1i.x = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -PV1i.z = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R5i.y)); -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[54].y) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R4i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -R4i.z = clampFI32(R4i.z); -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[55].z) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[105].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),uf_blockVS7[55].w) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R124i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(R125i.z)) + -(intBitsToFloat(PV1i.y)))); -PV0i.w = R123i.w; -// 11 -R17i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R16i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); -PV1i.z = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R124i.w = ((intBitsToFloat(R125i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R127i.x = ((intBitsToFloat(R124i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R127i.x; -// 12 -R124i.x = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 13 -PV1i.x = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R127i.z = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[106].w)); -PV1i.z = R127i.z; -// 14 -R126i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R126i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[107].w)); -PV0i.z = R125i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[104].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 15 -backupReg0i = R124i.x; -R124i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS0i)); -R125i.w = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -PS1i = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -// 16 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[105].x)); -R125i.y = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[108].w)); -PV0i.y = R125i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -PS0i = R127i.y; -// 17 -backupReg0i = R124i.w; -R125i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R125i.x; -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R124i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -// 18 -R127i.x = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 19 -PV1i.x = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.w))); -// 20 -backupReg0i = R127i.z; -R127i.z = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[109].w)); -PV0i.z = R127i.z; -R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.y)) + uf_blockVS7[106].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 21 -R124i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R1i.y = floatBitsToInt(fract(intBitsToFloat(R1i.w))); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R125i.w = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R127i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x42c80000)); -R127i.x = clampFI32(R127i.x); -PS1i = R127i.x; -// 22 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[107].x)); -R0i.y = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[110].w)); -PV0i.y = R0i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS1i))); -PS0i = R1i.z; -// 23 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R125i.x; -R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.w), intBitsToFloat(R127i.x))); -// 24 -R127i.x = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 25 -PV1i.x = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.w))); -// 26 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + -(uf_blockVS7[111].w)); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV1i.y)) + uf_blockVS7[108].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 27 -R8i.x = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R8i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R9i.w = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -// 28 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[109].x)); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R124i.w))); -// 29 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.z))); -PV1i.x = R123i.x; -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -// 30 -R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(PV1i.x))); -R1i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R1i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R1i.x; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS11[5].z)); -R1i.y = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(backupReg0i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),uf_blockVS13[24].x) + -(uf_blockVS13[24].y))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(R5i.y)) + intBitsToFloat(R6i.y))); -PV0i.w = R123i.w; -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(R10i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[24].w, intBitsToFloat(PS0i))); -R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R5i.z)) + intBitsToFloat(PV0i.x))); -// 4 -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); -// 5 -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),uf_blockVS13[25].w) + uf_blockVS13[25].w)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R7i.x))); -R127i.y = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R7i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R1i.y)) + uf_blockVS7[110].x)); -PV0i.w = R123i.w; -// 1 -R125i.x = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R6i.z))); -PV1i.x = R125i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.w))); -PV1i.z = R123i.z; -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(PV1i.x)); -R5i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R8i.x)) + intBitsToFloat(PV1i.z))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),1.0,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R11i.z) * intBitsToFloat(R11i.w)); -// 4 -R11i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 5 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); -R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS0i))); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.x),intBitsToFloat(R3i.y),intBitsToFloat(R6i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(uf_blockVS13[28].y + 1.0); -// 1 -R126i.x = floatBitsToInt(intBitsToFloat(PS0i) * 1.5); -R126i.x = clampFI32(R126i.x); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.w)); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV0i.w = R123i.w; -R124i.z = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R9i.x))); -PS0i = R124i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xbe593484))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV0i.z)) + uf_blockVS13[27].x)); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x41700000)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.y))); -// 4 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), uf_blockVS13[26].w)); -PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f22f983)); -R123i.z = floatBitsToInt((intBitsToFloat(R11i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(0x3fc90da4))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -backupReg0i = R125i.z; -R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(PV0i.w))) + 1.0)); -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS0i))); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -R3i.y = 0; -R3i.z = ((0.0 >= intBitsToFloat(R4i.z))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x41080000)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 7 -R3i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3daaaaab)); -R9i.y = floatBitsToInt(intBitsToFloat(PS0i) + 0.5); -R5i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3e4ccccd))); -R1i.w = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R6i.z = floatBitsToInt(exp2(intBitsToFloat(R125i.z))); -PS1i = R6i.z; -} -if( activeMaskStackC[3] == true ) { -R9i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R9i.xy)).xyz); -R0i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R3i.xy)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R6i.z; -PV0i.x = floatBitsToInt(min(intBitsToFloat(R5i.z), 1.0)); -R127i.y = 0; -R6i.z = 0; -R123i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(backupReg0i)) + uf_blockVS13[23].z)); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -R3i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS8[3].x,intBitsToFloat(R4i.z)) + 0.0)); -PS0i = R3i.x; -// 1 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PV0i.x))); -R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PV0i.x))); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.w)); -PV1i.w = clampFI32(PV1i.w); -R4i.x = 0; -PS1i = R4i.x; -// 2 -R5i.x = R18i.x; -R125i.y = PV1i.w; -R126i.z = PV1i.w; -R9i.w = ((R3i.z == 0)?(R3i.w):(R127i.y)); -R3i.y = R15i.y; -PS0i = R3i.y; -// 3 -R15i.x = ((R3i.z == 0)?(R11i.x):(R11i.x)); -R4i.y = ((R3i.z == 0)?(R5i.w):(R1i.w)); -R4i.z = R14i.z; -R3i.w = ((R3i.z == 0)?(R5i.y):(R5i.y)); -R10i.y = ((R3i.z == 0)?(R22i.z):(R22i.z)); -PS1i = R10i.y; -// 4 -R9i.x = ((R3i.z == 0)?(0):(R0i.y)); -R1i.y = ((R3i.z == 0)?(0):(R0i.w)); -R10i.z = ((R3i.z == 0)?(R1i.z):(R6i.z)); -R5i.w = ((R3i.z == 0)?(R3i.x):(R4i.x)); -PV0i.w = R5i.w; -R127i.w = ((R3i.z == 0)?(0):(R8i.x)); -PS0i = R127i.w; -// 5 -R126i.x = ((R3i.z == 0)?(0):(R2i.z)); -R126i.y = ((R3i.z == 0)?(0):(R1i.x)); -R125i.z = ((R3i.z == 0)?(0):(R125i.y)); -R10i.w = ((R3i.z == 0)?(0):(PV0i.w)); -R125i.x = ((R3i.z == 0)?(0):(R9i.y)); -PS1i = R125i.x; -// 6 -R16i.x = ((R3i.z == 0)?(0):(R3i.y)); -R124i.y = ((R3i.z == 0)?(0):(R6i.w)); -R127i.z = ((R3i.z == 0)?(0):(R124i.z)); -R124i.w = ((R3i.z == 0)?(0):(R127i.x)); -R124i.x = ((R3i.z == 0)?(0):(R0i.x)); -PS0i = R124i.x; -// 7 -R3i.x = ((R3i.z == 0)?(0):(R5i.x)); -R3i.y = ((R3i.z == 0)?(0):(R126i.z)); -R9i.z = ((R3i.z == 0)?(0):(R17i.x)); -R126i.w = ((R3i.z == 0)?(0):(R16i.y)); -R7i.x = ((R3i.z == 0)?(0):(R2i.y)); -PS1i = R7i.x; -// 8 -R5i.x = ((R3i.z == 0)?(R22i.y):(R5i.y)); -R6i.y = ((R3i.z == 0)?(0):(R13i.w)); -R1i.z = ((R3i.z == 0)?(0):(R0i.z)); -R125i.w = ((R3i.z == 0)?(0):(R2i.x)); -R7i.y = ((R3i.z == 0)?(R22i.x):(R4i.x)); -PS0i = R7i.y; -// 9 -R6i.x = ((R3i.z == 0)?(0):(R11i.y)); -R5i.y = ((R3i.z == 0)?(0):(R12i.w)); -R13i.z = ((R3i.z == 0)?(0):(R4i.z)); -R7i.w = ((R3i.z == 0)?(0):(R12i.x)); -R13i.x = ((R3i.z == 0)?(0):(R14i.y)); -PS1i = R13i.x; -// 10 -R4i.x = ((R3i.z == 0)?(0):(R14i.w)); -R8i.y = ((R3i.z == 0)?(0):(R12i.y)); -R5i.z = ((R3i.z == 0)?(0):(R17i.z)); -R4i.w = ((R3i.z == 0)?(0):(R14i.x)); -R10i.x = ((R3i.z == 0)?(0):(R13i.y)); -PS0i = R10i.x; -// 11 -backupReg0i = R11i.x; -R11i.x = ((R3i.z == 0)?(R21i.x):(R127i.y)); -R127i.y = ((R3i.z == 0)?(0):(0x3f800000)); -PV1i.y = R127i.y; -R4i.z = ((R3i.z == 0)?(0):(R8i.z)); -R8i.w = ((R3i.z == 0)?(R21i.w):(backupReg0i)); -R11i.w = ((R3i.z == 0)?(R22i.z):(R22i.z)); -PS1i = R11i.w; -// 12 -R23i.x = ((PV1i.y == 0)?(R2i.z):(R126i.x)); -R23i.y = ((PV1i.y == 0)?(R8i.x):(R127i.w)); -R23i.z = ((PV1i.y == 0)?(R125i.y):(R125i.z)); -R23i.w = ((PV1i.y == 0)?(R1i.x):(R126i.y)); -R25i.x = ((PV1i.y == 0)?(R6i.w):(R124i.y)); -PS0i = R25i.x; -// 13 -R24i.x = ((R127i.y == 0)?(R9i.y):(R125i.x)); -R24i.y = ((R127i.y == 0)?(R127i.x):(R124i.w)); -R24i.z = ((R127i.y == 0)?(R124i.z):(R127i.z)); -R124i.w = R18i.x; -R24i.w = ((R127i.y == 0)?(R126i.z):(R3i.y)); -PS1i = R24i.w; -// 14 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -R0i.x = ((R127i.y == 0)?(backupReg0i):(R124i.x)); -R0i.y = ((R127i.y == 0)?(backupReg1i):(R9i.x)); -R0i.z = ((R127i.y == 0)?(backupReg2i):(R1i.z)); -R127i.w = R14i.z; -// 15 -backupReg0i = R0i.w; -backupReg1i = R17i.x; -R17i.x = ((R127i.y == 0)?(R124i.w):(R3i.x)); -PV1i.x = R17i.x; -R25i.y = ((R127i.y == 0)?(R2i.y):(R7i.x)); -R0i.w = ((R127i.y == 0)?(backupReg0i):(R1i.y)); -R18i.x = ((R127i.y == 0)?(backupReg1i):(R9i.z)); -PS1i = R18i.x; -// 16 -R18i.y = ((R127i.y == 0)?(R16i.y):(R126i.w)); -R25i.z = ((R127i.y == 0)?(R2i.x):(R125i.w)); -R25i.w = ((R127i.y == 0)?(R8i.z):(R4i.z)); -R22i.x = ((R127i.y == 0)?(R5i.w):(R7i.y)); -PS0i = R22i.x; -// 17 -R19i.x = ((R127i.y == 0)?(R11i.y):(R6i.x)); -R22i.y = ((R127i.y == 0)?(R3i.w):(R5i.x)); -R22i.z = ((R127i.y == 0)?(R10i.y):(R11i.w)); -R123i.w = ((R3i.z == 0)?(0):(R7i.z)); -PV1i.w = R123i.w; -R124i.x = ((R3i.z == 0)?(R21i.z):(R1i.w)); -PS1i = R124i.x; -// 18 -R20i.x = ((R127i.y == 0)?(R12i.w):(R5i.y)); -R123i.y = ((R3i.z == 0)?(0):(R11i.z)); -PV0i.y = R123i.y; -R26i.x = ((R127i.y == 0)?(R7i.z):(PV1i.w)); -PS0i = R26i.x; -// 19 -R21i.x = ((R127i.y == 0)?(R9i.w):(R11i.x)); -R19i.y = ((R127i.y == 0)?(R11i.z):(PV0i.y)); -R19i.z = ((R127i.y == 0)?(R13i.w):(R6i.y)); -R19i.w = ((R127i.y == 0)?(R12i.x):(R7i.w)); -R18i.z = ((R127i.y == 0)?(R17i.z):(R5i.z)); -PS1i = R18i.z; -// 20 -R26i.y = ((R127i.y == 0)?(R12i.y):(R8i.y)); -// 21 -R123i.y = ((R3i.z == 0)?(0):(R12i.z)); -PV1i.y = R123i.y; -R26i.z = ((R127i.y == 0)?(R13i.y):(R10i.x)); -R26i.w = ((R127i.y == 0)?(R14i.w):(R4i.x)); -// 22 -R123i.x = ((R3i.z == 0)?(R21i.y):(R6i.z)); -PV0i.x = R123i.x; -R20i.y = ((R127i.y == 0)?(R12i.z):(PV1i.y)); -R20i.z = ((R127i.y == 0)?(R14i.y):(R13i.x)); -R20i.w = ((R127i.y == 0)?(R14i.x):(R4i.w)); -// 23 -PV1i.x = R15i.y; -R21i.y = ((R127i.y == 0)?(R10i.z):(PV0i.x)); -R21i.z = ((R127i.y == 0)?(R4i.y):(R124i.x)); -R21i.w = ((R127i.y == 0)?(R15i.x):(R8i.w)); -// 24 -R17i.y = ((R127i.y == 0)?(PV1i.x):(R16i.x)); -R17i.z = ((R127i.y == 0)?(R127i.w):(R13i.z)); -R17i.w = ((R127i.y == 0)?(R10i.w):(R10i.w)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R26i.x), intBitsToFloat(R26i.y), intBitsToFloat(R26i.z), intBitsToFloat(R26i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R25i.x), intBitsToFloat(R25i.y), intBitsToFloat(R25i.z), intBitsToFloat(R25i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R24i.x), intBitsToFloat(R24i.y), intBitsToFloat(R24i.z), intBitsToFloat(R24i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/fc4a738a3df2bcce_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/fc4a738a3df2bcce_0000000000000000_vs.txt deleted file mode 100644 index d934847e..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/fc4a738a3df2bcce_0000000000000000_vs.txt +++ /dev/null @@ -1,2737 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc4a738a3df2bcce // guardian explosion plasma smoke vs -layout(binding = 6, std140) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -layout(binding = 7, std140) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -layout(binding = 8, std140) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -layout(binding = 11, std140) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -layout(binding = 13, std140) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -layout(binding = 14, std140) uniform uniformBlockVS14 -{ -vec4 uf_blockVS14[1024]; -}; - -uniform vec2 uf_windowSpaceToClipSpaceTransform; -uniform float uf_alphaTestRef; -layout(binding = 40) uniform sampler2D textureUnitVS8;// Tex8 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler26 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 45) uniform sampler2D textureUnitVS13;// Tex13 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler31 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 1) in uvec4 attrDataSem1; -layout(location = 2) in uvec4 attrDataSem2; -layout(location = 3) in uvec4 attrDataSem3; -layout(location = 4) in uvec4 attrDataSem4; -layout(location = 5) in uvec4 attrDataSem5; -layout(location = 6) in uvec4 attrDataSem6; -layout(location = 7) in uvec4 attrDataSem7; -out gl_PerVertex -{ - vec4 gl_Position; - float gl_PointSize; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem5; -layout(location = 5) out vec4 passParameterSem8; -layout(location = 7) out vec4 passParameterSem11; -layout(location = 8) out vec4 passParameterSem14; -layout(location = 9) out vec4 passParameterSem15; -layout(location = 10) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 6) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R25i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem4; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R23i.y = floatBitsToInt(-(intBitsToFloat(R5i.w)) + uf_blockVS8[2].x); -R0i.w = 0; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -predResult = (0.0 > intBitsToFloat(R23i.y)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R20i.x = 0; -PS0i = R20i.x; -// 1 -R2i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R2i.w = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R2i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R4i.w)); -// 1 -R4i.z = floatBitsToInt(float(PS0i)); -PS1i = R4i.z; -// 2 -predResult = (intBitsToFloat(R23i.y) >= intBitsToFloat(R4i.z)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R19i.x = 0; -R19i.y = 0; -R19i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R20i.x = 0; -PS0i = R20i.x; -// 1 -R0i.w = R1i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R0i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[10].y)); -PV0i.w = floatBitsToInt(max(intBitsToFloat(R7i.x), 0.0)); -R5i.y = int(intBitsToFloat(R6i.w)); -PS0i = R5i.y; -// 1 -PV1i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 0.0)); -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 2 -R5i.x = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(PV1i.z)); -PV0i.y = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R125i.w = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -R13i.y = floatBitsToInt(1.0 / intBitsToFloat(R4i.z)); -PS0i = R13i.y; -// 3 -R127i.y = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -R11i.z = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS0i)); -PV1i.z = R11i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.y)); -// 4 -PV0i.x = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R126i.z))); -// 5 -R127i.x = floatBitsToInt(-(uf_blockVS7[97].x) + uf_blockVS7[98].x); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.z))); -R127i.w = floatBitsToInt(-(uf_blockVS7[97].y) + uf_blockVS7[98].y); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 6 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt(-(uf_blockVS7[97].w) + uf_blockVS7[98].w); -R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -R124i.z = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.y)); -PV0i.z = R124i.z; -R126i.w = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS1i)); -// 7 -R126i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(uf_blockVS7[96].w)); -PV1i.x = R126i.x; -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(uf_blockVS7[97].w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 8 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.y))); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R126i.w))); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R126i.y = floatBitsToInt(intBitsToFloat(R124i.z) + -(uf_blockVS7[98].w)); -PS0i = R126i.y; -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.y))); -R124i.y = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV0i.x)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.w))); -R0i.w = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(PV0i.z)); -R126i.w = floatBitsToInt(intBitsToFloat(R124i.z) + -(uf_blockVS7[99].w)); -PS1i = R126i.w; -// 10 -R0i.x = floatBitsToInt(uf_blockVS7[97].x + intBitsToFloat(PV1i.x)); -R125i.y = floatBitsToInt(intBitsToFloat(R124i.z) + -(uf_blockVS7[100].w)); -PV0i.y = R125i.y; -R4i.z = ((intBitsToFloat(R126i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R125i.w = floatBitsToInt(uf_blockVS7[97].y + intBitsToFloat(PV1i.z)); -R127i.x = ((intBitsToFloat(R126i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R127i.x; -// 11 -R126i.x = floatBitsToInt(-(uf_blockVS7[98].y) + uf_blockVS7[99].y); -R127i.y = ((intBitsToFloat(R126i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R127i.y; -R126i.z = floatBitsToInt(-(uf_blockVS7[98].x) + uf_blockVS7[99].x); -R127i.w = ((intBitsToFloat(R126i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -R0i.z = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R0i.z; -// 12 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(-(uf_blockVS7[98].w) + uf_blockVS7[99].w); -R125i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -PS0i = R125i.x; -// 13 -backupReg0i = R127i.y; -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt(-(uf_blockVS7[99].x) + uf_blockVS7[100].x); -R125i.z = floatBitsToInt(-(uf_blockVS7[99].y) + uf_blockVS7[100].y); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 14 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[99].w) + uf_blockVS7[100].w); -PV0i.z = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS1i)); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.z))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R125i.x))); -PS0i = R1i.w; -// 15 -R127i.x = floatBitsToInt(-(uf_blockVS7[100].x) + uf_blockVS7[101].x); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.x))); -R127i.z = floatBitsToInt(-(uf_blockVS7[100].y) + uf_blockVS7[101].y); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 16 -R126i.x = floatBitsToInt(uf_blockVS7[98].y + intBitsToFloat(PV1i.y)); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(uf_blockVS7[98].x + intBitsToFloat(PV1i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(intBitsToFloat(R124i.z) + -(uf_blockVS7[101].w)); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.y))); -R127i.y = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R127i.y; -PV1i.z = floatBitsToInt(-(uf_blockVS7[100].w) + uf_blockVS7[101].w); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.w))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R124i.x))); -PS1i = R126i.y; -// 18 -R4i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[101].x, intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(uf_blockVS7[99].x + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(uf_blockVS7[99].y + intBitsToFloat(PV1i.w)); -R2i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[101].y, intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 19 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R127i.w))); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(PS0i)); -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R127i.w))); -PS1i = R8i.z; -// 20 -backupReg0i = R0i.z; -backupReg1i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R124i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.w))); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R124i.w))); -PS0i = R125i.y; -// 21 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R1i.w))); -PV1i.y = floatBitsToInt(uf_blockVS7[100].y + intBitsToFloat(PV0i.x)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R124i.w))); -PV1i.w = floatBitsToInt(uf_blockVS7[100].x + intBitsToFloat(PV0i.z)); -PS1i = floatBitsToInt(-(intBitsToFloat(R4i.z)) + 1.0); -// 22 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R1i.w))); -R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R127i.w))); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R127i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(PS1i))); -PS0i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(PS1i))); -// 23 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(R7i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.w)); -R3i.w = 0x3f800000; -PS1i = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(R7i.z)); -// 24 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * 0.5); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) * 0.5); -PV0i.w = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(R7i.z)); -// 25 -R0i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.y)); -R0i.y = floatBitsToInt(intBitsToFloat(PS0i) * 0.5); -R4i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV0i.w)); -R0i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -R9i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -(0.5)); -R9i.z = floatBitsToInt(intBitsToFloat(R9i.z) * 2.0); -PS1i = R9i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(intBitsToFloat(R0i.y) + -(0.5)); -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.z) + intBitsToFloat(R0i.x)); -R8i.z = floatBitsToInt(intBitsToFloat(R7i.x) + -(0.5)); -PV0i.w = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(R4i.z)); -R1i.w = floatBitsToInt(intBitsToFloat(R7i.y) + -(0.5)); -PS0i = R1i.w; -// 1 -backupReg0i = R4i.y; -backupReg1i = R0i.w; -PV1i.x = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(PV0i.y)); -R4i.y = floatBitsToInt(intBitsToFloat(R7i.z) + -(0.5)); -PV1i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS7[115].x)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), uf_blockVS7[115].y)); -// 2 -backupReg0i = R4i.x; -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + uf_blockVS7[114].x); -PV0i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV1i.x)); -R5i.z = floatBitsToInt(uf_blockVS7[114].y + intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.z)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), uf_blockVS7[115].z)); -// 3 -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.y))); -R8i.y = floatBitsToInt(uf_blockVS7[114].z + intBitsToFloat(PS0i)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00010000; -R127i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00020000; -PS1i = R127i.z; -// 4 -R126i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00040000; -PS0i = floatBitsToInt(float(PV1i.w)); -// 5 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.z)); -// 6 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(float(R126i.x)); -// 7 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R127i.z = int(intBitsToFloat(PV0i.w)); -PS1i = R127i.z; -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PV0i.y = 0 - PS1i; -R126i.x = int(intBitsToFloat(PV1i.z)); -PS0i = R126i.x; -// 9 -PV1i.x = 0 - PS0i; -PV1i.y = max(R127i.z, PV0i.y); -R127i.y = int(intBitsToFloat(PV0i.x)); -PS1i = R127i.y; -// 10 -PV0i.x = 0 - PS1i; -PV0i.w = max(R126i.x, PV1i.x); -R2i.w = floatBitsToInt(float(PV1i.y)); -R2i.w = floatBitsToInt(intBitsToFloat(R2i.w) * 2.0); -PS0i = R2i.w; -// 11 -R9i.z = max(R127i.y, PV0i.x); -R4i.z = floatBitsToInt(float(PV0i.w)); -R4i.z = floatBitsToInt(intBitsToFloat(R4i.z) * 2.0); -PS1i = R4i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.z; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS8[3].y)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), uf_blockVS8[3].z)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[3].y)); -// 1 -R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,0.0))); -PV1i.x = R5i.x; -PV1i.y = R5i.x; -PV1i.z = R5i.x; -PV1i.w = R5i.x; -R124i.x = floatBitsToInt(float(R9i.z)); -R124i.x = floatBitsToInt(intBitsToFloat(R124i.x) * 2.0); -PS1i = R124i.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.y = tempi.x; -PS0i = R7i.y; -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(floor(intBitsToFloat(PS0i))); -// 4 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R9i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x358637bd)); -PV0i.w = R7i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -// 5 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(floor(intBitsToFloat(PV0i.w))); -// 6 -R126i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R2i.w)), intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.z) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PV1i.z))?1.0:0.0); -// 7 -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -// 8 -R127i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R4i.z)), intBitsToFloat(PV1i.w))); -// 9 -R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV1i.x = R9i.x; -PV1i.y = R9i.x; -PV1i.z = R9i.x; -PV1i.w = R9i.x; -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.y = tempi.x; -PS0i = R7i.x; -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 11 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(R3i.w)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R10i.z = tempi.x; -PS1i = floatBitsToInt(floor(intBitsToFloat(PS0i))); -// 12 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R126i.x))); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(R126i.x))); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R127i.y))); -// 13 -backupReg0i = R127i.y; -R126i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(PV0i.z)); -R127i.y = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.w))); -R125i.w = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(backupReg0i))); -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS7[113].y)); -PV0i.y = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), uf_blockVS7[113].x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R124i.x)), intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), uf_blockVS7[113].z)); -PS0i = R127i.z; -// 15 -R124i.x = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV0i.z)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV0i.w))); -R124i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(PV0i.x)); -tempResultf = log2(uf_blockVS7[114].w); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 16 -R126i.x = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(PV1i.z)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R23i.y), intBitsToFloat(PS1i))); -R125i.z = ((uf_blockVS7[114].w == 1.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(PV1i.y)); -R127i.w = floatBitsToInt(-(uf_blockVS7[114].w) + 1.0); -PS0i = R127i.w; -// 17 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R127i.z)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); -// 18 -PV0i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.w)); -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 20 -R123i.y = ((R125i.z == 0)?(PV1i.x):(R23i.y)); -PV0i.y = R123i.y; -// 21 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.y))); -// 22 -PV0i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV1i.w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV1i.z)); -// 23 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV1i.w = R123i.w; -// 24 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -// 25 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.y = R123i.y; -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV1i.w = R123i.w; -// 26 -R3i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e22f983)); -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x3e22f983)); -R125i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983)); -PV0i.z = R125i.z; -// 27 -R1i.x = floatBitsToInt(sin((intBitsToFloat(PV0i.z))/0.1591549367)); -PS1i = R1i.x; -// 28 -R3i.y = floatBitsToInt(cos((intBitsToFloat(R125i.z))/0.1591549367)); -PS0i = R3i.y; -// 29 -PV1i.z = (R5i.y == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.w = (R5i.y == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R1i.w = floatBitsToInt(sin((intBitsToFloat(R127i.y))/0.1591549367)); -PS1i = R1i.w; -// 30 -R123i.x = ((PV1i.z == 0)?(0x3f800000):(0xbf800000)); -PV0i.x = R123i.x; -R123i.y = ((PV1i.z == 0)?(0xbf800000):(0xbf800000)); -PV0i.y = R123i.y; -R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS1i))); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS1i))); -R3i.z = floatBitsToInt(cos((intBitsToFloat(R127i.y))/0.1591549367)); -PS0i = R3i.z; -// 31 -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); -R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -R5i.z = ((R124i.w == 0)?(PV0i.y):(0x3f800000)); -R3i.w = ((R124i.w == 0)?(PV0i.x):(0xbf800000)); -R2i.x = floatBitsToInt(sin((intBitsToFloat(R3i.x))/0.1591549367)); -PS1i = R2i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -R125i.x = floatBitsToInt(-(intBitsToFloat(R2i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R4i.x))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R8i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R8i.z))); -R127i.y = floatBitsToInt(cos((intBitsToFloat(R3i.x))/0.1591549367)); -PS0i = R127i.y; -// 1 -R126i.x = floatBitsToInt(-(intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.w)); -R124i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(PV0i.z)); -R126i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PV0i.y)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS0i))); -R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); -PS1i = R4i.x; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R2i.w))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R127i.y))); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS7[13].z)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R127i.y))); -R124i.x = floatBitsToInt(intBitsToFloat(R9i.x) + -(uf_blockVS6[17].x)); -PS0i = R124i.x; -// 3 -R127i.x = (R5i.y == 0x00000003)?int(0xFFFFFFFF):int(0x0); -R127i.y = floatBitsToInt(intBitsToFloat(R10i.y) + -(uf_blockVS6[17].y)); -PV1i.y = R127i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R10i.z) + -(uf_blockVS6[17].z)); -PV1i.z = R127i.z; -R1i.w = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(PV0i.x)); -// 4 -tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),-0.0),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(uf_blockVS7[13].x); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); -// 5 -PV1i.x = floatBitsToInt(uf_blockVS7[13].y); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) / 2.0); -R5i.y = ((R127i.x == 0)?(R5i.z):(0x3f800000)); -R5i.z = ((R127i.x == 0)?(R3i.w):(0x3f800000)); -R124i.w = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PS0i)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.y)), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R124i.x)), intBitsToFloat(PS1i))); -R124i.z = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.z)), intBitsToFloat(PS1i))); -R126i.w = floatBitsToInt(uf_blockVS6[12].x); -PS0i = R126i.w; -// 7 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.y))); -PV1i.x = R10i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.x))); -R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV0i.w))); -R3i.w = floatBitsToInt(uf_blockVS6[13].x); -R125i.y = floatBitsToInt(uf_blockVS6[14].x); -PS1i = R125i.y; -// 8 -backupReg0i = R124i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); -PS0i = R124i.x; -// 9 -R127i.x = floatBitsToInt(uf_blockVS6[12].y); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R1i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R12i.z)); -R127i.w = floatBitsToInt(uf_blockVS6[13].y); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R124i.x = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -PS0i = R124i.x; -// 11 -R126i.y = floatBitsToInt(uf_blockVS6[12].z); -PV1i.y = R126i.y; -R125i.z = floatBitsToInt(uf_blockVS6[14].y); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 12 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(uf_blockVS6[13].z); -PV0i.x = R124i.x; -R4i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(backupReg0i)); -PV0i.y = R4i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.y))); -R125i.w = floatBitsToInt(uf_blockVS6[14].z); -PV0i.w = R125i.w; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PV1i.y))); -PS0i = R127i.y; -// 13 -backupReg0i = R0i.y; -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.x))); -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV0i.y))); -PV1i.z = R2i.z; -R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.y))); -PV1i.w = R5i.w; -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.w))); -// 14 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R124i.z))); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R124i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.z))); -PV0i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i))); -PS0i = R122i.x; -// 15 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R124i.x))); -R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PS0i))); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.w),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.z))); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.y))); -PS1i = R122i.x; -// 16 -R8i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.x)),intBitsToFloat(R126i.w)) + intBitsToFloat(PS1i))); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R127i.z = 0x3f800000; -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R125i.w))); -// 17 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R126i.y))); -R3i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.x)),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R124i.x))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R125i.w))); -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R8i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.x))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i))); -PV0i.w = R123i.w; -// 19 -backupReg0i = R0i.w; -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.w))); -R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.x))); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R1i.x))); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R1i.x))); -// 20 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R4i.x)) + intBitsToFloat(PS1i))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -// 21 -backupReg0i = R124i.y; -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R4i.w)) + intBitsToFloat(PV0i.z))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R1i.x))); -// 22 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -// 23 -backupReg0i = R126i.z; -R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x))); -PV1i.z = R126i.z; -// 24 -tempi.x = floatBitsToInt(dot(vec4(uf_blockVS6[12].x,uf_blockVS6[12].y,uf_blockVS6[12].z,uf_blockVS6[12].w),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(PV1i.z),intBitsToFloat(R127i.z)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 25 -tempi.x = floatBitsToInt(dot(vec4(uf_blockVS6[13].x,uf_blockVS6[13].y,uf_blockVS6[13].z,uf_blockVS6[13].w),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R4i.z = tempi.x; -R3i.x = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(PV0i.x)); -PS1i = R3i.x; -// 26 -tempi.x = floatBitsToInt(dot(vec4(uf_blockVS6[14].x,uf_blockVS6[14].y,uf_blockVS6[14].z,uf_blockVS6[14].w),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R0i.y = tempi.x; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockVS11[0].x) + 0.0)); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),uf_blockVS11[0].x) + 0.0)); -// 1 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R8i.z)) + intBitsToFloat(R2i.x))); -PV1i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R3i.z)) + intBitsToFloat(R8i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R0i.z))); -PV1i.w = R123i.w; -// 2 -R15i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R0i.x)) + intBitsToFloat(PV1i.w))); -R18i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R2i.w)) + intBitsToFloat(PV1i.z))); -R17i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(R4i.z)); -PV0i.w = R126i.w; -R127i.z = floatBitsToInt(intBitsToFloat(R10i.z) + intBitsToFloat(R0i.y)); -PS0i = R127i.z; -// 3 -PV1i.y = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.w)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R2i.z)); -// 4 -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.w)), intBitsToFloat(PV0i.w))); -PV1i.z = ((0.0 > intBitsToFloat(PV0i.w))?int(0xFFFFFFFF):int(0x0)); -// 6 -R123i.w = ((PV1i.z == 0)?(PV1i.x):(PV1i.y)); -PV0i.w = R123i.w; -// 7 -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), uf_blockVS14[1].w)); -// 8 -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), uf_blockVS11[2].y)); -// 9 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].x, intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].z, intBitsToFloat(PV0i.y))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].y, intBitsToFloat(PV0i.y))); -// 10 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV1i.z))); -// 11 -R2i.xyz = floatBitsToInt(vec3(intBitsToFloat(R3i.x),intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -PV1i.x = R2i.x; -PV1i.y = R2i.y; -PV1i.z = R2i.z; -// 12 -R0i.xyz = floatBitsToInt(vec3(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R10i.y)),-(intBitsToFloat(R10i.z))) + vec3(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z))); -PV0i.x = R0i.x; -PV0i.y = R0i.y; -PV0i.z = R0i.z; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 14 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 15 -R126i.w = ((intBitsToFloat(PS0i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 16 -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS1i))); -R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS1i))); -// 17 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 18 -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 19 -PV1i.x = ((intBitsToFloat(PS0i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 20 -R0i.w = ((R126i.w == 0)?(0):(PV1i.x)); -// 21 -predResult = (R0i.w != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -backupReg2i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[95].x)); -PS0i = R127i.x; -// 1 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), uf_blockVS7[95].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), uf_blockVS7[95].x)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.y; -backupReg2i = R0i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(PS1i))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R3i.y),intBitsToFloat(R1i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -// 5 -backupReg0i = R2i.x; -backupReg1i = R2i.y; -backupReg2i = R2i.z; -R2i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R1i.x = floatBitsToInt(intBitsToFloat(R9i.x) + intBitsToFloat(R10i.x)); -PV0i.x = R1i.x; -R9i.y = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(R1i.y)); -PV0i.y = R9i.y; -R1i.z = floatBitsToInt(intBitsToFloat(R10i.z) + intBitsToFloat(R12i.z)); -PV0i.z = R1i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R2i.x)); -R127i.x = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(R2i.y)); -PS0i = R127i.x; -// 1 -PV1i.x = floatBitsToInt(-(uf_blockVS6[17].x) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(-(uf_blockVS6[17].y) + intBitsToFloat(PV0i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(R12i.z) + intBitsToFloat(R2i.z)); -R1i.w = 0x3f800000; -PS1i = floatBitsToInt(-(uf_blockVS6[17].z) + intBitsToFloat(PV0i.z)); -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PS1i),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PS1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.x = floatBitsToInt(-(intBitsToFloat(R1i.x)) + intBitsToFloat(R127i.w)); -PS0i = R126i.x; -// 3 -R2i.x = floatBitsToInt(uf_blockVS7[60].x); -R127i.y = floatBitsToInt(-(intBitsToFloat(R1i.z)) + intBitsToFloat(R127i.z)); -R127i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(R127i.x)); -R127i.w = 0x3f800000; -PV1i.w = R127i.w; -R0i.w = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -PS1i = R0i.w; -// 4 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R9i.y),intBitsToFloat(R1i.z),intBitsToFloat(PV1i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = R127i.x; -PV0i.y = R127i.x; -PV0i.z = R127i.x; -PV0i.w = R127i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R4i.y)); -// 5 -R0i.x = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS0i)); -R0i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -R0i.z = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R2i.w = floatBitsToInt(uf_blockVS7[60].y); -R3i.z = floatBitsToInt(uf_blockVS7[60].z); -PS1i = R3i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R9i.y),intBitsToFloat(R1i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.x) * 0.0 + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -PV1i.y = PV0i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) / 2.0); -R2i.z = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -// 8 -R123i.w = floatBitsToInt((intBitsToFloat(R127i.x) * 0.5 + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(PS0i)); -// 10 -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV1i.y))); -// 11 -PV1i.x = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV0i.w)); -// 12 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 13 -R2i.y = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.w; -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PV0i.y = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(min(intBitsToFloat(backupReg0i), uf_blockVS7[116].x)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[116].x); -// 1 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.x = R127i.x; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS1i)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PS0i = R127i.z; -// 3 -R9i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV0i.y)); -R10i.y = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(PV0i.w)); -R8i.z = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[9].z) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -// 4 -PV0i.x = floatBitsToInt(fract(intBitsToFloat(PV1i.w))); -// 5 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); -// 6 -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R8i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R9i.w = tempi.x; -// 1 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R8i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = tempi.x; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R8i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R12i.y = tempi.x; -// 3 -R13i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R10i.y),intBitsToFloat(R8i.z),intBitsToFloat(R1i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = R13i.x; -PV1i.y = R13i.x; -PV1i.z = R13i.x; -PV1i.w = R13i.x; -// 4 -backupReg0i = R0i.w; -R10i.x = floatBitsToInt((intBitsToFloat(R12i.y) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.x = R10i.x; -R127i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[68].w)); -PV0i.y = R127i.y; -R127i.z = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -PV0i.w = PV1i.x; -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); -R126i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[69].w)); -PS0i = R126i.y; -// 5 -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R15i.y = floatBitsToInt((intBitsToFloat(R12i.y) * 0.5 + intBitsToFloat(PV0i.w))); -PV1i.y = R15i.y; -R123i.z = floatBitsToInt((intBitsToFloat(R12i.y) * 0.0 + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(-(uf_blockVS7[69].x) + uf_blockVS7[70].x); -R11i.y = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -PS1i = R11i.y; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[69].w) + uf_blockVS7[70].w); -R13i.z = floatBitsToInt((intBitsToFloat(R9i.w) * 0.5 + intBitsToFloat(PV1i.z))); -R12i.w = floatBitsToInt((intBitsToFloat(R9i.z) * -(0.5) + intBitsToFloat(PV1i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -R126i.z = ((intBitsToFloat(R126i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R126i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[70].w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x)) + uf_blockVS7[68].x)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -R8i.y = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -R125i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R125i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[69].x)); -// 10 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R0i.y = floatBitsToInt(uf_blockVS7[76].x); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(R125i.y))); -R0i.w = floatBitsToInt(uf_blockVS7[76].y); -// 11 -R0i.x = floatBitsToInt(uf_blockVS7[76].z); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.x))); -PV1i.w = ((intBitsToFloat(R7i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 12 -R3i.x = floatBitsToInt(((PV1i.w == 0)?(intBitsToFloat(R6i.x)):(-(intBitsToFloat(R6i.x))))); -R125i.y = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -PV0i.z = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 13 -R1i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[70].x,intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.w))); -R1i.w = floatBitsToInt(((PV0i.z == 0)?(intBitsToFloat(R6i.y)):(-(intBitsToFloat(R6i.y))))); -// 14 -PV0i.w = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -// 15 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -R2i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS1i)); -} -if( activeMaskStackC[3] == true ) { -// 0 -R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS8[0].w)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), uf_blockVS8[0].y)); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockVS8[0].x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), uf_blockVS8[0].z)); -// 1 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), uf_blockVS8[1].x)); -R17i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), uf_blockVS7[59].x)); -R16i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), uf_blockVS7[59].x)); -R15i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), uf_blockVS7[59].x)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[1].y)); -// 2 -R11i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), uf_blockVS8[1].z)); -R15i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PS1i))); -PV0i.w = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PS0i = ((intBitsToFloat(R7i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 3 -R0i.x = floatBitsToInt(((PV0i.w == 0)?(intBitsToFloat(R6i.x)):(-(intBitsToFloat(R6i.x))))); -R16i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV0i.y))); -R3i.z = floatBitsToInt(((PS0i == 0)?(intBitsToFloat(R6i.y)):(-(intBitsToFloat(R6i.y))))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -PV0i.w = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 1 -PV1i.x = (PV0i.y == 0x00080000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -PV1i.z = R125i.z; -PV1i.w = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS0i)); -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[10].x) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -PV0i.z = (PV1i.y == 0x00100000)?int(0xFFFFFFFF):int(0x0); -R3i.w = ((PV1i.x == 0)?(R6i.x):(R3i.x)); -PS0i = (PS1i == 0x00200000)?int(0xFFFFFFFF):int(0x0); -// 3 -R5i.x = ((PV0i.z == 0)?(R6i.y):(R1i.w)); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.x))); -R0i.z = ((PS0i == 0)?(R6i.x):(R0i.x)); -PV1i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -PS1i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 4 -PV0i.x = (PV1i.w == 0x00400000)?int(0xFFFFFFFF):int(0x0); -R126i.y = (PS1i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -PV0i.z = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R1i.y = ((PV0i.x == 0)?(R6i.y):(R3i.z)); -R123i.z = floatBitsToInt(((PV0i.z == 0)?(intBitsToFloat(R6i.x)):(-(intBitsToFloat(R6i.x))))); -PV1i.z = R123i.z; -R127i.w = (PS0i == 0x01000000)?int(0xFFFFFFFF):int(0x0); -PS1i = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[85].w)); -R123i.y = floatBitsToInt(((PS1i == 0)?(intBitsToFloat(R6i.y)):(-(intBitsToFloat(R6i.y))))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(uf_blockVS7[84].w)); -R5i.w = ((R126i.y == 0)?(R6i.x):(PV1i.z)); -// 7 -R8i.x = ((R127i.w == 0)?(R6i.y):(PV0i.y)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R2i.z)) + uf_blockVS7[84].x)); -R125i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R125i.z; -R127i.w = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(uf_blockVS7[5].y) & int(1); -// 8 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R1i.z = (int(1) != PS1i)?int(0xFFFFFFFF):int(0x0); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000010; -R1i.w = int(uf_blockVS7[17].x); -PS0i = R1i.w; -// 9 -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.y))); -R0i.x = int(uf_blockVS7[17].y); -PS1i = R0i.x; -// 10 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -PS0i = floatBitsToInt(float(R126i.w)); -// 11 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R6i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[85].x,intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y))); -// 12 -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000020; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -// 13 -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 14 -PV0i.w = 0 - PS1i; -PS0i = floatBitsToInt(float(R127i.x)); -// 15 -R6i.x = max(R126i.y, PV0i.w); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -// 16 -R2i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R13i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), uf_blockVS8[1].w)); -// 1 -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000080; -R127i.y = int(-1) + R1i.w; -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000040; -R126i.y = int(intBitsToFloat(R2i.z)); -PS1i = R126i.y; -// 2 -R124i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x02000000; -PV0i.w = 0 - PS1i; -PS0i = floatBitsToInt(float(PV1i.z)); -// 3 -R1i.x = max(R126i.y, PV0i.w); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.x)); -// 4 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R125i.z = floatBitsToInt(float(R1i.w)); -PS0i = R125i.z; -// 5 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R23i.y), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R13i.y) * intBitsToFloat(PV1i.y)); -PV0i.w = 0 - PS1i; -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 7 -R3i.x = max(R126i.y, PV0i.w); -PV1i.w = 0 - PS0i; -PS1i = int(intBitsToFloat(PV0i.x)); -// 8 -R125i.x = max(R125i.y, PV1i.w); -R127i.z = R6i.x * PS1i; -PS0i = R127i.z; -// 9 -backupReg0i = R0i.x; -PS1i = floatBitsToInt(float(backupReg0i)); -// 10 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 11 -PV1i.w = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS0i)); -R125i.y = floatBitsToInt(float(R1i.w)); -PS1i = R125i.y; -// 12 -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R124i.x = int(intBitsToFloat(PV1i.w)); -PS0i = R124i.x; -// 13 -PS1i = floatBitsToInt(float(PS0i)); -// 14 -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(float(R124i.x)); -PS0i = R127i.w; -// 15 -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R123i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R123i.w; -R2i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(R125i.y))); -PS1i = R2i.x; -// 16 -PV0i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R127i.w)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.w)); -// 17 -R0i.x = int(1) - PS0i; -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R6i.x = PS0i * R127i.y; -PS1i = R6i.x; -// 18 -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R124i.w)) + intBitsToFloat(R127i.x))); -PV0i.z = R125i.z; -PS0i = floatBitsToInt(float(R124i.y)); -// 19 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(-(abs(intBitsToFloat(R125i.y))) + intBitsToFloat(PV0i.z)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.z) >= abs(intBitsToFloat(R125i.y)))?1.0:0.0); -R125i.w = int(intBitsToFloat(R126i.x)); -PS1i = R125i.w; -// 20 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV1i.w) == 0.0)?(R125i.z):(PV1i.y)); -PV0i.x = R125i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R124i.y = backupReg0i * PS1i; -PS0i = R124i.y; -// 21 -PV1i.z = floatBitsToInt(abs(intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x)); -R126i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R126i.w; -// 22 -PV0i.x = 0 - PS1i; -R123i.y = ((-(intBitsToFloat(R125i.x)) > 0.0)?(PV1i.z):(R125i.x)); -PV0i.y = R123i.y; -// 23 -PV1i.z = max(R126i.w, PV0i.x); -R123i.w = ((-(intBitsToFloat(R127i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -// 24 -R123i.x = ((intBitsToFloat(R125i.y) == 0.0)?(R127i.w):(PV1i.w)); -PV0i.x = R123i.x; -PS0i = PV1i.z * R125i.w; -// 25 -R125i.z = R124i.x + PS0i; -PS1i = int(intBitsToFloat(PV0i.x)); -// 26 -backupReg0i = R0i.x; -PS0i = backupReg0i * PS1i; -// 27 -PV1i.z = PS0i + R6i.x; -R127i.w = R3i.x * R125i.z; -PS1i = R127i.w; -// 28 -PS0i = R1i.x * PV1i.z; -// 29 -PV1i.y = PS0i + R127i.z; -// 30 -PV0i.w = R127i.w + PV1i.y; -// 31 -PV1i.x = R124i.y + PV0i.w; -// 32 -R125i.z = floatBitsToInt(float(PV1i.x)); -PS0i = R125i.z; -// 33 -R124i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), abs(intBitsToFloat(PS0i)))); -// 34 -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -// 35 -R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.w)),intBitsToFloat(R124i.w)) + intBitsToFloat(R124i.x))); -PV1i.z = R127i.z; -// 36 -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R125i.y))) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R125i.y)))?1.0:0.0); -// 37 -R124i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(R127i.z):(PV0i.y)); -PV1i.x = R124i.x; -// 38 -PV0i.z = floatBitsToInt(abs(intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.x)); -// 39 -R123i.y = ((-(intBitsToFloat(R124i.x)) > 0.0)?(PV0i.z):(R124i.x)); -PV1i.y = R123i.y; -// 40 -R123i.w = ((-(intBitsToFloat(R125i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.y)))):(PV1i.y)); -PV0i.w = R123i.w; -// 41 -R123i.x = ((intBitsToFloat(R125i.y) == 0.0)?(R125i.z):(PV0i.w)); -PV1i.x = R123i.x; -// 42 -R125i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R125i.z; -// 43 -R125i.y = floatBitsToInt(float(PS0i)); -PS1i = R125i.y; -// 44 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R6i.w = floatBitsToInt(float(R125i.z)); -PS0i = R6i.w; -// 45 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -R124i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -// 46 -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * 0.5 + intBitsToFloat(R125i.y))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -// 47 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * 0.25); -R3i.z = ((R1i.z == 0)?(R7i.x):(R7i.y)); -R1i.w = floatBitsToInt((-(intBitsToFloat(PV0i.z)) * 4.0 + intBitsToFloat(R124i.y))); -PV1i.w = R1i.w; -// 48 -R2i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0xc0800000)); -R6i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R2i.z = floatBitsToInt((intBitsToFloat(PV1i.w) >= 4.0)?1.0:0.0); -R0i.y = int(uf_blockVS7[26].x); -PS0i = R0i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.y = ((intBitsToFloat(R2i.z) == 0.0)?(R1i.w):(R2i.x)); -PV0i.y = R124i.y; -PS0i = int(intBitsToFloat(R6i.y)); -// 1 -PV1i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R6i.y = PS0i + 0x00000012; -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + 4.0); -R0i.w = int(uf_blockVS7[26].y); -PS1i = R0i.w; -// 2 -R123i.x = ((-(intBitsToFloat(R124i.y)) > 0.0)?(PV1i.w):(R124i.y)); -PV0i.x = R123i.x; -R125i.z = floatBitsToInt(float(PV1i.x)); -PS0i = R125i.z; -// 3 -R124i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R123i.z = ((-(intBitsToFloat(R6i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.x)))):(PV0i.x)); -PV1i.z = R123i.z; -// 4 -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(R125i.z))?1.0:0.0); -PS0i = int(intBitsToFloat(PV1i.z)); -// 5 -R125i.x = floatBitsToInt(intBitsToFloat(R124i.y) + -(intBitsToFloat(PV0i.w))); -R124i.y = 0xfffffffe + PS0i; -R125i.z = 0xfffffffd + PS0i; -PV1i.w = int(-1) + PS0i; -PS1i = floatBitsToInt(float(PS0i)); -// 6 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R125i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PS0i = floatBitsToInt(float(PV1i.w)); -// 7 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R124i.y)); -// 8 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -R124i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R124i.w; -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.y = 0 - PS0i; -R124i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R124i.x; -// 10 -PV0i.x = 0 - PS1i; -PV0i.z = max(R124i.w, PV1i.y); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 11 -R3i.x = int(1) - PV0i.z; -PV1i.y = max(R124i.x, PV0i.x); -PV1i.z = 0 - PS0i; -PS1i = floatBitsToInt(float(R125i.z)); -// 12 -R1i.x = int(1) - PV1i.y; -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.w = max(R127i.z, PV1i.z); -R127i.z = int(intBitsToFloat(R125i.x)); -PS0i = R127i.z; -// 13 -R2i.x = int(1) - PV0i.w; -PV1i.y = 0 - PS0i; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(float(R125i.y)); -// 14 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R1i.w = max(R127i.z, PV1i.y); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 15 -R0i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.w = 0 - PS0i; -// 16 -PV0i.x = max(R125i.y, PV1i.w); -// 17 -R2i.z = int(1) - PV0i.x; -} -if( activeMaskStackC[3] == true ) { -R6i.xyzw = floatBitsToInt(uf_blockVS7[R6i.y].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R124i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R124i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -R126i.z = int(-1) + R0i.y; -R125i.y = R2i.z * R6i.w; -PS0i = R125i.y; -// 1 -R124i.w = R2i.x * R6i.z; -PS1i = R124i.w; -// 2 -R125i.x = R1i.x * R6i.y; -PS0i = R125i.x; -// 3 -PS1i = R3i.x * R6i.x; -// 4 -PV0i.y = R125i.x + PS1i; -R127i.z = int(intBitsToFloat(R0i.x)); -PS0i = R127i.z; -// 5 -PV1i.y = 0 - PS0i; -PV1i.w = R124i.w + PV0i.y; -PS1i = floatBitsToInt(float(R124i.x)); -// 6 -R3i.x = R125i.y + PV1i.w; -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R2i.w = max(R127i.z, PV1i.y); -PS0i = floatBitsToInt(float(R124i.y)); -// 7 -backupReg0i = R0i.y; -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.z))); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R124i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R124i.x = floatBitsToInt(float(backupReg0i)); -PS1i = R124i.x; -// 8 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.w))); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R23i.y), intBitsToFloat(PS1i))); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 9 -PV1i.x = 0 - PS0i; -PV1i.y = floatBitsToInt(intBitsToFloat(R13i.y) * intBitsToFloat(PV0i.z)); -R125i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R125i.z; -// 10 -PV0i.y = 0 - PS1i; -R6i.w = max(R127i.z, PV1i.x); -PS0i = int(intBitsToFloat(PV1i.y)); -// 11 -R127i.w = max(R125i.z, PV0i.y); -R126i.x = R1i.w * PS0i; -PS1i = R126i.x; -// 12 -PS0i = floatBitsToInt(float(R0i.w)); -// 13 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 14 -backupReg0i = R0i.y; -PV0i.y = floatBitsToInt(intBitsToFloat(R23i.y) * intBitsToFloat(PS1i)); -R125i.z = floatBitsToInt(float(backupReg0i)); -PS0i = R125i.z; -// 15 -R126i.y = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R125i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R125i.w; -// 16 -PS0i = floatBitsToInt(float(PS1i)); -// 17 -PV1i.z = floatBitsToInt(-(intBitsToFloat(R124i.x)) + intBitsToFloat(PS0i)); -R124i.y = floatBitsToInt(float(R125i.w)); -PS1i = R124i.y; -// 18 -R123i.y = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = R123i.y; -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(1.0 / abs(intBitsToFloat(R125i.z))); -PS0i = R0i.w; -// 19 -PV1i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R124i.y)), intBitsToFloat(PS0i))); -PS1i = int(intBitsToFloat(PV0i.y)); -// 20 -R125i.x = int(1) - PS1i; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R126i.w = PS1i * R126i.z; -PS0i = R126i.w; -// 21 -R124i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R124i.w))); -PV1i.x = R124i.x; -PS1i = floatBitsToInt(float(R124i.z)); -// 22 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.x) >= abs(intBitsToFloat(R125i.z)))?1.0:0.0); -PV0i.z = floatBitsToInt(-(abs(intBitsToFloat(R125i.z))) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R127i.y = int(intBitsToFloat(R125i.y)); -PS0i = R127i.y; -// 23 -backupReg0i = R127i.w; -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(intBitsToFloat(PV0i.x))); -R127i.w = ((intBitsToFloat(PV0i.y) == 0.0)?(R124i.x):(PV0i.z)); -PV1i.w = R127i.w; -R124i.z = backupReg0i * PS0i; -PS1i = R124i.z; -// 24 -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.w)); -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 25 -R123i.z = ((-(intBitsToFloat(R127i.w)) > 0.0)?(PV0i.x):(R127i.w)); -PV1i.z = R123i.z; -PV1i.w = 0 - PS0i; -// 26 -PV0i.x = max(R125i.y, PV1i.w); -R123i.y = ((-(intBitsToFloat(R124i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -// 27 -R123i.w = ((intBitsToFloat(R125i.z) == 0.0)?(R124i.y):(PV0i.y)); -PV1i.w = R123i.w; -PS1i = PV0i.x * R127i.y; -// 28 -R124i.x = R125i.w + PS1i; -PS0i = int(intBitsToFloat(PV1i.w)); -// 29 -PS1i = R125i.x * PS0i; -// 30 -PV0i.x = PS1i + R126i.w; -R127i.y = R6i.w * R124i.x; -PS0i = R127i.y; -// 31 -PS1i = R2i.w * PV0i.x; -// 32 -PV0i.z = PS1i + R126i.x; -// 33 -PV1i.y = R127i.y + PV0i.z; -// 34 -PV0i.w = R124i.z + PV1i.y; -// 35 -R124i.x = floatBitsToInt(float(PV0i.w)); -PS1i = R124i.x; -// 36 -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), abs(intBitsToFloat(PS1i)))); -R126i.w = floatBitsToInt(abs(intBitsToFloat(PS1i))); -// 37 -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -// 38 -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.y)),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.w))); -PV0i.x = R126i.x; -// 39 -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.x) >= abs(intBitsToFloat(R125i.z)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R125i.z))) + intBitsToFloat(PV0i.x)); -// 40 -R126i.w = ((intBitsToFloat(PV1i.y) == 0.0)?(R126i.x):(PV1i.z)); -PV0i.w = R126i.w; -// 41 -PV1i.x = floatBitsToInt(abs(intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.w)); -// 42 -R123i.z = ((-(intBitsToFloat(R126i.w)) > 0.0)?(PV1i.x):(R126i.w)); -PV0i.z = R123i.z; -// 43 -R123i.y = ((-(intBitsToFloat(R124i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -PV1i.y = R123i.y; -// 44 -R123i.w = ((intBitsToFloat(R125i.z) == 0.0)?(R124i.x):(PV1i.y)); -PV0i.w = R123i.w; -// 45 -R124i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R124i.x; -// 46 -R3i.z = floatBitsToInt(float(PS1i)); -PS0i = R3i.z; -// 47 -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R0i.y = floatBitsToInt(float(R124i.x)); -PS1i = R0i.y; -// 48 -R0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.w))); -R6i.z = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R0i.w = floatBitsToInt(abs(intBitsToFloat(PS1i)) * 0.25); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(R0i.w))); -R123i.z = floatBitsToInt((intBitsToFloat(backupReg0i) * 0.5 + intBitsToFloat(R3i.z))); -PV0i.z = R123i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) * 0.25); -R126i.y = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * 4.0 + intBitsToFloat(R6i.z))); -PV1i.y = R126i.y; -// 2 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) >= 4.0)?1.0:0.0); -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0xc0800000)); -// 3 -R125i.z = ((intBitsToFloat(PV0i.x) == 0.0)?(R126i.y):(PV0i.w)); -PV1i.z = R125i.z; -PS1i = int(intBitsToFloat(PV0i.y)); -// 4 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 4.0); -R6i.z = PS1i + 0x0000001b; -PS0i = int(uf_blockVS7[48].z); -// 5 -R123i.w = ((-(intBitsToFloat(R125i.z)) > 0.0)?(PV0i.y):(R125i.z)); -PV1i.w = R123i.w; -R2i.z = floatBitsToInt(float(PS0i)); -PS1i = R2i.z; -// 6 -R123i.x = ((-(intBitsToFloat(R0i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.w)))):(PV1i.w)); -PV0i.x = R123i.x; -R0i.y = floatBitsToInt(float(R3i.x)); -PS0i = R0i.y; -// 7 -PS1i = int(intBitsToFloat(PV0i.x)); -// 8 -R124i.x = 0xfffffffd + PS1i; -PV0i.y = int(-1) + PS1i; -R125i.z = floatBitsToInt(abs(intBitsToFloat(R2i.z))); -R126i.w = 0xfffffffe + PS1i; -PS0i = floatBitsToInt(float(PS1i)); -// 9 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.y)); -// 10 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(float(R126i.w)); -// 11 -PV1i.x = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R126i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R126i.y; -// 12 -PV0i.x = 0 - PS1i; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.x))); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 13 -PV1i.x = max(R126i.y, PV0i.x); -PV1i.y = 0 - PS0i; -R126i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R126i.x; -// 14 -R1i.x = int(1) - PV1i.x; -PV0i.y = 0 - PS1i; -PV0i.z = max(R126i.w, PV1i.y); -PS0i = floatBitsToInt(float(R124i.x)); -// 15 -R6i.x = int(1) - PV0i.z; -PV1i.y = max(R126i.x, PV0i.y); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R2i.w = floatBitsToInt(float(R3i.x)); -PS1i = R2i.w; -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R126i.y = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R0i.w = int(1) - PV1i.y; -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R2i.z))); -// 17 -PV1i.z = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R2i.w)), intBitsToFloat(PS0i))); -R124i.z = int(intBitsToFloat(PV0i.x)); -PS1i = R124i.z; -// 18 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -PV0i.y = 0 - PS1i; -// 19 -backupReg0i = R125i.z; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R126i.y))); -PV1i.z = R125i.z; -PV1i.w = max(R124i.z, PV0i.y); -// 20 -R3i.x = int(1) - PV1i.w; -PV0i.y = floatBitsToInt(-(abs(intBitsToFloat(R2i.z))) + intBitsToFloat(PV1i.z)); -PV0i.w = floatBitsToInt((intBitsToFloat(PV1i.z) >= abs(intBitsToFloat(R2i.z)))?1.0:0.0); -// 21 -R0i.x = ((intBitsToFloat(PV0i.w) == 0.0)?(R125i.z):(PV0i.y)); -PV1i.x = R0i.x; -// 22 -R3i.z = floatBitsToInt(abs(intBitsToFloat(R2i.z)) + intBitsToFloat(PV1i.x)); -} -if( activeMaskStackC[3] == true ) { -R4i.xyzw = floatBitsToInt(uf_blockVS7[R6i.z].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt((intBitsToFloat(R0i.y) > 0.0)?1.0:0.0); -R123i.y = ((-(intBitsToFloat(backupReg0i)) > 0.0)?(R3i.z):(backupReg0i)); -PV0i.y = R123i.y; -R125i.z = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -PV0i.w = floatBitsToInt((0.0 > intBitsToFloat(R0i.y))?1.0:0.0); -R126i.z = R3i.x * R4i.w; -PS0i = R126i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[45].x)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), uf_blockVS7[45].y)); -R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); -R123i.w = ((-(intBitsToFloat(R2i.w)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.y)))):(PV0i.y)); -PV1i.w = R123i.w; -R127i.y = R0i.w * R4i.z; -PS1i = R127i.y; -// 2 -R126i.x = ((intBitsToFloat(R2i.z) == 0.0)?(R2i.w):(PV1i.w)); -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(R125i.z)); -R125i.z = floatBitsToInt((intBitsToFloat(PV1i.x) * 0.5 + intBitsToFloat(R0i.y))); -PV0i.w = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R126i.w = R6i.x * R4i.y; -PS0i = R126i.w; -// 3 -PV1i.x = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV1i.y = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R127i.z = floatBitsToInt(intBitsToFloat(R3i.w) + 0.5); -R125i.w = floatBitsToInt(-(intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.w)); -PS1i = R1i.x * R4i.x; -// 4 -backupReg0i = R126i.y; -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[46].z) + intBitsToFloat(PV1i.x))); -PV0i.x = R123i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R23i.y)),uf_blockVS7[44].x) + -(intBitsToFloat(backupReg0i)))); -PV0i.z = R126i.w + PS1i; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockVS7[46].w) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -R124i.z = int(intBitsToFloat(R126i.x)); -PS0i = R124i.z; -// 5 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[44].y) + intBitsToFloat(R125i.w))); -PV1i.y = R127i.y + PV0i.z; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[45].z) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[45].w) + intBitsToFloat(PV0i.w))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R2i.z)); -// 6 -PV0i.x = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -R124i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R2i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -R127i.w = R126i.z + PV1i.y; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].z); -// 7 -PV1i.x = floatBitsToInt(trunc(intBitsToFloat(PV0i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + -(0.5)); -R123i.z = ((R1i.z == 0)?(0):(int(1))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 8 -PV0i.x = (PV1i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS1i))); -R125i.w = (PV1i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PV0i.w = R125i.w; -R126i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R126i.z; -// 9 -R124i.x = ((PV0i.w == 0)?(R7i.x):(R7i.y)); -R123i.y = ((PV0i.x == 0)?(R7i.y):(R7i.x)); -PV1i.y = R123i.y; -R123i.z = ((PV0i.x == 0)?(R7i.x):(R7i.z)); -PV1i.z = R123i.z; -R124i.w = ((PV0i.w == 0)?(R7i.y):(R7i.z)); -PS1i = floatBitsToInt(float(R124i.z)); -// 10 -backupReg0i = R126i.z; -R123i.x = ((R125i.w == 0)?(PV1i.y):(R7i.z)); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R126i.y))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R123i.w = ((R125i.w == 0)?(PV1i.z):(R7i.y)); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(backupReg0i)); -// 11 -PV1i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(PV0i.w))); -PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.x))); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV0i.x))); -R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) * 2.0); -PS1i = int(uf_blockVS7[53].z); -// 12 -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R126i.z)); -PV0i.y = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.z)),intBitsToFloat(R127i.y)) + -(intBitsToFloat(PV1i.z)))); -PV0i.z = R123i.z; -R10i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R124i.y)) + intBitsToFloat(PV1i.y))); -R1i.x = floatBitsToInt(float(PS1i)); -PS0i = R1i.x; -// 13 -R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R2i.z)) + intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y)); -R125i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R126i.z = floatBitsToInt(float(R127i.w)); -PS1i = R126i.z; -// 14 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -R4i.y = floatBitsToInt(float(R127i.w)); -PS0i = R4i.y; -// 15 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R124i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.w))); -R2i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R23i.y)),uf_blockVS7[49].x) + -(intBitsToFloat(backupReg0i)))); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.y))); -PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(R1i.x))); -// 16 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * 0.5 + intBitsToFloat(R126i.z))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R4i.y)), intBitsToFloat(PS1i))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[50].z) + intBitsToFloat(R124i.x))); -PV0i.z = R123i.z; -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[49].y) + intBitsToFloat(R127i.y))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R1i.x)); -// 17 -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[50].w) + intBitsToFloat(R124i.y))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -R3i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 18 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.z)),intBitsToFloat(R125i.z)) + intBitsToFloat(backupReg0i))); -PV0i.x = R126i.x; -R6i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS1i))); -R4i.z = floatBitsToInt(intBitsToFloat(R0i.z) + 0.5); -PV0i.w = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 19 -backupReg0i = R124i.x; -R124i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt((intBitsToFloat(PV0i.x) >= abs(intBitsToFloat(R1i.x)))?1.0:0.0); -PV1i.z = floatBitsToInt(-(abs(intBitsToFloat(R1i.x))) + intBitsToFloat(PV0i.x)); -R126i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + 1.0); -PS1i = int(intBitsToFloat(PV0i.w)); -// 20 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(intBitsToFloat(R1i.y) + -(0.5)); -R123i.z = ((R1i.z == 0)?(0):(0x00000002)); -PV0i.z = R123i.z; -R127i.w = ((intBitsToFloat(PV1i.y) == 0.0)?(backupReg0i):(PV1i.z)); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(float(PS1i)); -// 21 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(PS0i)) + intBitsToFloat(R124i.w))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(abs(intBitsToFloat(R1i.x)) + intBitsToFloat(PV0i.w)); -R125i.z = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -PV1i.z = R125i.z; -PV1i.w = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -R0i.y = int(uf_blockVS7[58].z); -PS1i = R0i.y; -// 22 -R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(R126i.x)) + -(intBitsToFloat(PV1i.x)))); -PV0i.x = R123i.x; -R123i.y = ((PV1i.w == 0)?(R7i.x):(R7i.z)); -PV0i.y = R123i.y; -R123i.z = ((-(intBitsToFloat(R127i.w)) > 0.0)?(PV1i.y):(R127i.w)); -PV0i.z = R123i.z; -R123i.w = ((PV1i.w == 0)?(R7i.y):(R7i.x)); -PV0i.w = R123i.w; -R5i.x = ((PV1i.z == 0)?(R7i.x):(R7i.y)); -PS0i = R5i.x; -// 23 -backupReg0i = R7i.z; -backupReg0i = R7i.z; -R7i.x = ((-(intBitsToFloat(R4i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.z)))):(PV0i.z)); -R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.x))); -R7i.z = ((R125i.z == 0)?(PV0i.y):(R7i.y)); -R7i.w = ((R125i.z == 0)?(PV0i.w):(backupReg0i)); -R1i.z = ((R125i.z == 0)?(R7i.y):(backupReg0i)); -PS1i = R1i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R123i.w = ((intBitsToFloat(R1i.x) == 0.0)?(R4i.y):(R7i.x)); -PV0i.w = R123i.w; -R126i.w = floatBitsToInt(float(R0i.y)); -PS0i = R126i.w; -// 1 -PV1i.x = floatBitsToInt(-(abs(intBitsToFloat(PS0i))) + 0.0); -PV1i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS0i)))?1.0:0.0); -PS1i = int(intBitsToFloat(PV0i.w)); -// 2 -PV0i.x = floatBitsToInt(uf_blockVS7[54].z + uf_blockVS7[55].x); -R124i.y = ((intBitsToFloat(PV1i.z) == 0.0)?(0):(PV1i.x)); -PV0i.y = R124i.y; -R125i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].y, intBitsToFloat(R7i.w))); -R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) * 2.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[55].x, intBitsToFloat(R7i.z))); -PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); -PS0i = floatBitsToInt(float(PS1i)); -// 3 -R126i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.x)); -PV1i.y = floatBitsToInt(uf_blockVS7[54].w + uf_blockVS7[55].y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PS0i)) + intBitsToFloat(R2i.z))); -PV1i.z = R123i.z; -PV1i.w = floatBitsToInt(abs(intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 4 -R123i.x = ((-(intBitsToFloat(R124i.y)) > 0.0)?(PV1i.w):(R124i.y)); -PV0i.x = R123i.x; -R124i.y = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(PV1i.y)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R4i.z)) + intBitsToFloat(PV1i.z))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * 0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 5 -R123i.x = ((intBitsToFloat(R126i.w) == 0.0)?(0):(PV0i.x)); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.w))); -R10i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.z)),intBitsToFloat(R3i.w)) + intBitsToFloat(PV0i.z))); -R126i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].x, intBitsToFloat(PS0i))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 6 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R23i.y)),uf_blockVS7[54].x) + -(intBitsToFloat(backupReg0i)))); -R126i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[58].y, intBitsToFloat(PS1i))); -R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[54].y) + intBitsToFloat(R124i.y))); -R127i.w = floatBitsToInt(intBitsToFloat(R5i.w) + 0.5); -R124i.y = int(intBitsToFloat(PV1i.x)); -PS0i = R124i.y; -// 7 -backupReg0i = R127i.y; -R124i.x = floatBitsToInt(intBitsToFloat(R8i.x) + -(0.5)); -R4i.y = floatBitsToInt(intBitsToFloat(R11i.z) + 0.0); -PV1i.z = floatBitsToInt(uf_blockVS7[56].x + uf_blockVS7[56].z); -PV1i.w = floatBitsToInt(uf_blockVS7[56].y + uf_blockVS7[56].w); -R127i.y = int(intBitsToFloat(backupReg0i)); -PS1i = R127i.y; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].w,intBitsToFloat(R1i.z)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[56].z,intBitsToFloat(R5i.x)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(intBitsToFloat(R2i.y) + -(uf_blockVS7[93].x)); -R124i.w = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -PS0i = floatBitsToInt(float(R124i.y)); -// 9 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[55].z) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.y),uf_blockVS7[55].w) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[104].w)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PS0i)) + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(float(R127i.y)); -// 10 -R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.z))); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.w)); -// 11 -R16i.x = R11i.z; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(R124i.x)) + -(intBitsToFloat(PV0i.y)))); -PV1i.y = R123i.y; -R12i.z = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -R12i.z = clampFI32(R12i.z); -R11i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.w)),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.w))); -R127i.w = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -PS1i = R127i.w; -// 12 -R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R126i.x)) + intBitsToFloat(PV1i.y))); -R126i.z = floatBitsToInt(-(uf_blockVS7[104].y) + uf_blockVS7[105].y); -// 13 -PV1i.x = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R126i.y = floatBitsToInt(-(uf_blockVS7[104].z) + uf_blockVS7[105].z); -R124i.z = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[105].w)); -// 14 -R125i.z = floatBitsToInt(-(uf_blockVS7[105].y) + uf_blockVS7[106].y); -R126i.w = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[105].z) + uf_blockVS7[106].z); -PS1i = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -// 16 -R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.x)) + uf_blockVS7[104].z)); -R2i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.y)) + uf_blockVS7[104].y)); -R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[104].x)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -PV1i.y = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[106].w)); -R126i.y = floatBitsToInt(-(uf_blockVS7[106].z) + uf_blockVS7[107].z); -PS1i = R126i.y; -// 18 -R7i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV1i.x)) + uf_blockVS7[105].z)); -R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV1i.y)) + uf_blockVS7[105].y)); -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV1i.z)) + uf_blockVS7[105].x)); -// 19 -R125i.z = floatBitsToInt(-(uf_blockVS7[106].y) + uf_blockVS7[107].y); -R127i.w = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -// 20 -PV0i.x = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R127i.y = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[107].w)); -R4i.z = ((intBitsToFloat(R127i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -// 21 -R125i.x = ((intBitsToFloat(R124i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R124i.z = floatBitsToInt(-(uf_blockVS7[107].y) + uf_blockVS7[108].y); -R124i.w = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 22 -PV0i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[107].z) + uf_blockVS7[108].z); -PS0i = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -// 23 -R124i.x = ((intBitsToFloat(R126i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.x)) + uf_blockVS7[106].z)); -R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.y)) + uf_blockVS7[106].y)); -R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.z)) + uf_blockVS7[106].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 24 -PV0i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS1i)); -R7i.w = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[108].w)); -PV0i.w = R7i.w; -R2i.y = floatBitsToInt(-(uf_blockVS7[108].z) + uf_blockVS7[109].z); -PS0i = R2i.y; -// 25 -R126i.x = ((intBitsToFloat(R127i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[107].z)); -R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[107].y)); -R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.z)) + uf_blockVS7[107].x)); -R8i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R8i.x; -// 26 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R1i.z = floatBitsToInt(-(uf_blockVS7[108].y) + uf_blockVS7[109].y); -R5i.w = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -PS0i = floatBitsToInt(-(intBitsToFloat(R124i.x)) + 1.0); -// 27 -PV1i.x = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -R6i.y = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[109].w)); -PV1i.y = R6i.y; -R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.y))); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.x))); -R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS0i))); -PS1i = R1i.x; -// 28 -R5i.x = ((intBitsToFloat(PV1i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R0i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + 1.0); -R0i.z = floatBitsToInt(-(uf_blockVS7[109].y) + uf_blockVS7[110].y); -R4i.w = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -R3i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -PS0i = R3i.w; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(R3i.w)); -PV0i.y = floatBitsToInt(intBitsToFloat(R1i.z) * intBitsToFloat(R3i.w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R5i.w) * intBitsToFloat(R3i.w)); -R127i.w = floatBitsToInt(-(uf_blockVS7[109].z) + uf_blockVS7[110].z); -PS0i = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -// 1 -PV1i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV0i.x)) + uf_blockVS7[108].z)); -R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV0i.y)) + uf_blockVS7[108].y)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.w),intBitsToFloat(PV0i.z)) + uf_blockVS7[108].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); -// 2 -PV0i.x = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.z) * intBitsToFloat(PS1i)); -R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS1i)); -R126i.x = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[110].w)); -PS0i = R126i.x; -// 3 -R124i.x = ((intBitsToFloat(PS0i) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R124i.x; -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV0i.w)) + uf_blockVS7[109].z)); -R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV0i.y)) + uf_blockVS7[109].y)); -R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV0i.x)) + uf_blockVS7[109].x)); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R0i.y))); -PS1i = R124i.z; -// 4 -R125i.x = floatBitsToInt(-(intBitsToFloat(R4i.z)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -R125i.z = floatBitsToInt(-(uf_blockVS7[110].y) + uf_blockVS7[111].y); -R127i.w = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -// 5 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV0i.y))); -R127i.y = floatBitsToInt(-(uf_blockVS7[110].z) + uf_blockVS7[111].z); -PV1i.z = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -PV1i.w = floatBitsToInt(intBitsToFloat(R4i.y) + -(uf_blockVS7[111].w)); -// 6 -backupReg0i = R125i.x; -backupReg0i = R125i.x; -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(backupReg0i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].z, intBitsToFloat(backupReg0i))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].y, intBitsToFloat(backupReg0i))); -R124i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R124i.w; -// 7 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(PS0i)); -PS1i = R126i.y; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R1i.x)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(R124i.w)); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + uf_blockVS7[110].x)); -PS0i = R124i.w; -// 9 -backupReg0i = R126i.x; -backupReg0i = R126i.x; -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.y)) + uf_blockVS7[110].y)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.w)) + uf_blockVS7[110].z)); -PS1i = R126i.y; -// 10 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + 1.0); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -R0i.w = 0; -PS0i = R0i.w; -// 11 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.y))); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockVS13[24].x) + -(uf_blockVS13[24].y))); -R122i.x = clampFI32(R122i.x); -PS1i = R122i.x; -// 12 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.y))); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R122i.x = clampFI32(R122i.x); -PS0i = R122i.x; -// 13 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.y))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -PV1i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV0i.w)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.x = floatBitsToInt(tempResultf); -PS1i = R126i.x; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].z,intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.y))); -PV0i.y = R123i.y; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].y,intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -tempResultf = log2(intBitsToFloat(PV1i.x)); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R126i.y = floatBitsToInt(tempResultf); -PS0i = R126i.y; -// 15 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS0i))); -R6i.y = PV0i.x; -R1i.z = PV0i.y; -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS13[24].w, intBitsToFloat(backupReg0i))); -R0i.y = PV0i.w; -PS1i = R0i.y; -// 16 -R125i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(R126i.y))); -PV0i.y = floatBitsToInt(uf_blockVS13[28].y + 1.0); -R124i.w = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R8i.y))); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); -// 17 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * 1.5); -PV1i.x = clampFI32(PV1i.x); -R8i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PS0i)),uf_blockVS13[25].w) + uf_blockVS13[25].w)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 18 -R8i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41700000)); -PS0i = floatBitsToInt(exp2(intBitsToFloat(R125i.x))); -// 19 -R123i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(PS0i)) + uf_blockVS13[23].z)); -R123i.z = clampFI32(R123i.z); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(PS1i)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + -0.0); -PV0i.z = clampFI32(PV0i.z); -// 21 -R6i.x = PV0i.z; -R5i.y = PV0i.z; -PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.x), intBitsToFloat(0x3e4ccccd))); -// 22 -R0i.z = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -// 1 -R125i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R9i.x))); -PV1i.y = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.z)); -R127i.z = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R10i.y))); -R124i.w = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R8i.z))); -PV1i.w = R124i.w; -// 2 -R123i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV1i.y)) + uf_blockVS13[27].x)); -R123i.x = clampFI32(R123i.x); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PV1i.w)); -// 3 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(R127i.z) + intBitsToFloat(PS0i))); -PV1i.x = R123i.x; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockVS13[26].w)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(R12i.w) * intBitsToFloat(R11i.y)); -R123i.y = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -// 5 -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.w = clampFI32(R123i.w); -PV0i.w = R123i.w; -// 7 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + 1.0); -// 8 -R125i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + 0.5); -PV0i.x = R125i.x; -R11i.y = 0; -R6i.z = ((0.0 >= intBitsToFloat(R12i.z))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0x41080000)); -R3i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -PS0i = R3i.z; -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PV1i.x = R123i.x; -R7i.y = 0; -PV1i.y = R7i.y; -R11i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3daaaaab)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R5i.w = 0; -PS1i = R5i.w; -// 10 -R17i.x = 0; -R1i.y = ((R6i.z == 0)?(R9i.z):(PS1i)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(0xbe593484))); -PV0i.z = R123i.z; -R16i.w = ((R6i.z == 0)?(R9i.w):(PV1i.y)); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.w))); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.z)) + intBitsToFloat(0x3fc90da4))); -PV1i.y = R123i.y; -R7i.z = ((R6i.z == 0)?(R12i.y):(R3i.z)); -R3i.w = ((R6i.z == 0)?(R6i.y):(R6i.y)); -R0i.x = R15i.x; -PS1i = R0i.x; -// 12 -R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.y))) + 1.0)); -R2i.y = R18i.y; -R2i.z = R17i.z; -R17i.w = ((R6i.z == 0)?(R13i.x):(R13i.x)); -R3i.y = ((R6i.z == 0)?(R20i.z):(R20i.z)); -PS0i = R3i.y; -} -if( activeMaskStackC[3] == true ) { -R8i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R8i.xy)).xyz); -R14i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R11i.zy)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.z; -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(R0i.z))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(R0i.z))); -PV0i.y = R11i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].z)); -R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(backupReg0i))); -R8i.x = ((R6i.z == 0)?(0):(R8i.w)); -PS0i = R8i.x; -// 1 -R1i.x = ((R6i.z == 0)?(0):(R0i.w)); -R8i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].w)); -R8i.z = ((R6i.z == 0)?(0):(R5i.y)); -R6i.w = ((R6i.z == 0)?(0):(R1i.w)); -R9i.x = ((R6i.z == 0)?(0):(PV0i.y)); -PS1i = R9i.x; -// 2 -R3i.x = ((R6i.z == 0)?(0):(R14i.y)); -R12i.y = ((R6i.z == 0)?(0):(R6i.x)); -R11i.z = ((R6i.z == 0)?(0):(R4i.w)); -R2i.w = ((R6i.z == 0)?(0):(R5i.x)); -R9i.z = ((R6i.z == 0)?(0):(R14i.z)); -PS0i = R9i.z; -// 3 -backupReg0i = R0i.x; -R0i.x = ((R6i.z == 0)?(0):(R14i.x)); -R9i.y = ((R6i.z == 0)?(0):(R14i.w)); -R5i.z = ((R6i.z == 0)?(0):(backupReg0i)); -R7i.w = ((R6i.z == 0)?(0):(R2i.y)); -R4i.y = ((R6i.z == 0)?(0):(R0i.w)); -PS1i = R4i.y; -// 4 -backupReg0i = R2i.z; -R2i.x = ((R6i.z == 0)?(0):(R0i.y)); -R10i.y = ((R6i.z == 0)?(0):(R16i.x)); -R2i.z = ((R6i.z == 0)?(0):(backupReg0i)); -// 5 -backupReg0i = R4i.z; -R4i.z = ((R6i.z == 0)?(0):(backupReg0i)); -R9i.w = floatBitsToInt(uf_blockVS11[3].w); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[44].y, intBitsToFloat(R8i.y))); -R125i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[49].y,intBitsToFloat(R0i.z)) + intBitsToFloat(R10i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[44].y,intBitsToFloat(R0i.z)) + intBitsToFloat(R10i.w))); -PV0i.z = R127i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[49].y, intBitsToFloat(R8i.y))); -// 1 -backupReg0i = R0i.z; -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R13i.y))); -R126i.y = ((R6i.z == 0)?(0):(PV0i.z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[54].y, intBitsToFloat(R8i.y))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R9i.w)) + intBitsToFloat(R4i.x))); -PV1i.w = R124i.w; -R4i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[54].y,intBitsToFloat(backupReg0i)) + intBitsToFloat(R11i.w))); -PS1i = R4i.x; -// 2 -backupReg0i = R7i.x; -R7i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS8[3].x,intBitsToFloat(R12i.z)) + 0.0)); -PV0i.x = R7i.x; -R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(backupReg0i))); -PV0i.y = R2i.y; -R126i.z = ((R6i.z == 0)?(0):(PS1i)); -R125i.w = ((R6i.z == 0)?(0):(PV1i.w)); -R126i.w = ((R6i.z == 0)?(0):(R125i.y)); -PS0i = R126i.w; -// 3 -R126i.x = ((R6i.z == 0)?(0):(PV0i.y)); -R127i.y = ((R6i.z == 0)?(0):(R1i.z)); -R125i.z = ((R6i.z == 0)?(0):(R127i.x)); -R127i.w = ((R6i.z == 0)?(PV0i.x):(R17i.x)); -R124i.z = ((R6i.z == 0)?(0):(R16i.w)); -PS1i = R124i.z; -// 4 -R124i.x = ((R6i.z == 0)?(R20i.y):(R6i.y)); -R124i.y = ((R6i.z == 0)?(R20i.x):(R17i.x)); -R12i.z = ((R6i.z == 0)?(0):(0x3f800000)); -PV0i.z = R12i.z; -R9i.w = ((R6i.z == 0)?(R20i.z):(R20i.z)); -R7i.x = ((R6i.z == 0)?(0):(R12i.w)); -PS0i = R7i.x; -// 5 -R21i.x = ((PV0i.z == 0)?(R8i.w):(R8i.x)); -R21i.y = ((PV0i.z == 0)?(R1i.w):(R6i.w)); -R21i.z = ((PV0i.z == 0)?(R5i.y):(R8i.z)); -R1i.w = ((R6i.z == 0)?(0):(R13i.z)); -R22i.x = ((PV0i.z == 0)?(R11i.y):(R9i.x)); -PS1i = R22i.x; -// 6 -R125i.x = R18i.y; -R22i.y = ((R12i.z == 0)?(R5i.x):(R2i.w)); -R22i.z = ((R12i.z == 0)?(R4i.w):(R11i.z)); -R21i.w = ((R12i.z == 0)?(R0i.w):(R1i.x)); -R22i.w = ((R12i.z == 0)?(R6i.x):(R12i.y)); -PS0i = R22i.w; -// 7 -R18i.x = ((R12i.z == 0)?(R14i.x):(R0i.x)); -R18i.y = ((R12i.z == 0)?(R14i.y):(R3i.x)); -R24i.x = ((R12i.z == 0)?(R127i.z):(R126i.y)); -PS1i = R24i.x; -// 8 -R25i.x = ((R12i.z == 0)?(R16i.x):(R10i.y)); -PV0i.y = R15i.x; -R18i.z = ((R12i.z == 0)?(R14i.z):(R9i.z)); -R18i.w = ((R12i.z == 0)?(R14i.w):(R9i.y)); -R24i.y = ((R12i.z == 0)?(R124i.w):(R125i.w)); -PS0i = R24i.y; -// 9 -R9i.x = ((R12i.z == 0)?(PV0i.y):(R5i.z)); -R9i.y = ((R12i.z == 0)?(R125i.x):(R7i.w)); -R24i.z = ((R12i.z == 0)?(R125i.y):(R126i.w)); -R0i.x = ((R12i.z == 0)?(R4i.x):(R126i.z)); -PS1i = R0i.x; -// 10 -backupReg0i = R0i.y; -R20i.x = ((R12i.z == 0)?(R127i.w):(R124i.y)); -R0i.y = ((R12i.z == 0)?(R2i.y):(R126i.x)); -R24i.w = ((R12i.z == 0)?(R127i.x):(R125i.z)); -R25i.y = ((R12i.z == 0)?(backupReg0i):(R2i.x)); -PS0i = R25i.y; -// 11 -R14i.x = ((R12i.z == 0)?(R13i.z):(R1i.w)); -R20i.y = ((R12i.z == 0)?(R3i.w):(R124i.x)); -R25i.z = ((R12i.z == 0)?(R1i.z):(R127i.y)); -R20i.z = ((R12i.z == 0)?(R3i.y):(R9i.w)); -PS1i = R20i.z; -// 12 -R124i.x = ((R6i.z == 0)?(0):(R13i.w)); -R14i.y = ((R12i.z == 0)?(R12i.w):(R7i.x)); -R123i.z = ((R6i.z == 0)?(0):(R10i.x)); -PV0i.z = R123i.z; -R123i.w = ((R6i.z == 0)?(0):(R15i.y)); -PV0i.w = R123i.w; -R127i.w = ((R6i.z == 0)?(0):(R16i.y)); -PS0i = R127i.w; -// 13 -R123i.x = ((R6i.z == 0)?(0):(R15i.z)); -PV1i.x = R123i.x; -R123i.y = ((R6i.z == 0)?(0):(R11i.x)); -PV1i.y = R123i.y; -R14i.z = ((R12i.z == 0)?(R15i.y):(PV0i.w)); -R14i.w = ((R12i.z == 0)?(R10i.x):(PV0i.z)); -R127i.x = ((R6i.z == 0)?(0):(R17i.y)); -PS1i = R127i.x; -// 14 -R10i.x = ((R12i.z == 0)?(R11i.x):(PV1i.y)); -R10i.y = ((R12i.z == 0)?(R15i.z):(PV1i.x)); -R10i.z = ((R12i.z == 0)?(R16i.y):(R127i.w)); -R10i.w = ((R12i.z == 0)?(R13i.w):(R124i.x)); -R125i.z = ((R6i.z == 0)?(0):(R12i.x)); -PS0i = R125i.z; -// 15 -R123i.x = ((R6i.z == 0)?(R19i.x):(R7i.y)); -PV1i.x = R123i.x; -R123i.y = ((R6i.z == 0)?(0):(R16i.z)); -PV1i.y = R123i.y; -R126i.z = ((R6i.z == 0)?(R19i.y):(R5i.w)); -R123i.w = ((R6i.z == 0)?(0):(R15i.w)); -PV1i.w = R123i.w; -// 16 -R11i.x = ((R12i.z == 0)?(R16i.z):(PV1i.y)); -R11i.y = ((R12i.z == 0)?(R17i.y):(R127i.x)); -R11i.z = ((R12i.z == 0)?(R15i.w):(PV1i.w)); -R11i.w = ((R12i.z == 0)?(R12i.x):(R125i.z)); -R19i.x = ((R12i.z == 0)?(R16i.w):(PV1i.x)); -PS0i = R19i.x; -// 17 -R19i.y = ((R12i.z == 0)?(R1i.y):(R126i.z)); -R126i.z = ((R6i.z == 0)?(R19i.w):(R13i.x)); -// 18 -R123i.w = ((R6i.z == 0)?(R19i.z):(R3i.z)); -PV0i.w = R123i.w; -// 19 -R19i.z = ((R12i.z == 0)?(R7i.z):(PV0i.w)); -R19i.w = ((R12i.z == 0)?(R17i.w):(R126i.z)); -// 20 -PV0i.w = R17i.z; -R25i.w = ((R12i.z == 0)?(R16i.w):(R124i.z)); -PS0i = R25i.w; -// 21 -R9i.z = ((R12i.z == 0)?(PV0i.w):(R2i.z)); -R9i.w = ((R12i.z == 0)?(R4i.y):(R4i.y)); -// 22 -R0i.z = ((R12i.z == 0)?(R4i.z):(R4i.z)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -gl_Position = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem0 = vec4(intBitsToFloat(R11i.x), intBitsToFloat(R11i.y), intBitsToFloat(R11i.z), intBitsToFloat(R11i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R10i.x), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem5 = vec4(intBitsToFloat(R25i.x), intBitsToFloat(R25i.y), intBitsToFloat(R25i.z), intBitsToFloat(R25i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R24i.x), intBitsToFloat(R24i.y), intBitsToFloat(R24i.z), intBitsToFloat(R24i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/rules.txt b/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/rules.txt deleted file mode 100644 index b73a1f34..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_ExplosionSmoke/rules.txt +++ /dev/null @@ -1,8 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Explosion Smoke workaround (NVIDIA GPU and OpenGL) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/GPU specific workarounds for OpenGL/NVIDIA: Explosion Smoke" -description = Workaround for the smoke and explosion particles on NVIDIA when using OpenGL and Shader Mul Accuracy is set to true in the game profile. Found by rajkosto, Xalphenos, and Darkemaste. -vendorFilter = nvidia -rendererFilter = opengl -version = 4 diff --git a/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/73ddf96c9094eb92_0000000000000000_vs.txt b/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/73ddf96c9094eb92_0000000000000000_vs.txt deleted file mode 100644 index 32aead36..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/73ddf96c9094eb92_0000000000000000_vs.txt +++ /dev/null @@ -1,2337 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_separate_shader_objects : enable -#ifdef VULKAN -#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation) -#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0 -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw) -#define gl_VertexID gl_VertexIndex -#define gl_InstanceID gl_InstanceIndex -#else -#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location) -#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140) -#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation) -#define SET_POSITION(_v) gl_Position = _v -#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw) -#endif -// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. - -// shader 73ddf96c9094eb92 -UNIFORM_BUFFER_LAYOUT(6, 0, 2) uniform uniformBlockVS6 -{ -vec4 uf_blockVS6[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(7, 0, 3) uniform uniformBlockVS7 -{ -vec4 uf_blockVS7[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(8, 0, 4) uniform uniformBlockVS8 -{ -vec4 uf_blockVS8[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(11, 0, 5) uniform uniformBlockVS11 -{ -vec4 uf_blockVS11[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(13, 0, 6) uniform uniformBlockVS13 -{ -vec4 uf_blockVS13[1024]; -}; - -UNIFORM_BUFFER_LAYOUT(14, 0, 7) uniform uniformBlockVS14 -{ -vec4 uf_blockVS14[1024]; -}; - -TEXTURE_LAYOUT(40, 0, 0) uniform sampler2D textureUnitVS8; -TEXTURE_LAYOUT(45, 0, 1) uniform sampler2D textureUnitVS13; -ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0; -ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1; -ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2; -ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3; -ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4; -ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5; -ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6; -ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7; -ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8; -ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9; -ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10; -out gl_PerVertex -{ - vec4 gl_Position; -}; -layout(location = 0) out vec4 passParameterSem0; -layout(location = 1) out vec4 passParameterSem1; -layout(location = 2) out vec4 passParameterSem3; -layout(location = 4) out vec4 passParameterSem8; -layout(location = 6) out vec4 passParameterSem11; -layout(location = 7) out vec4 passParameterSem14; -layout(location = 8) out vec4 passParameterSem15; -layout(location = 9) out vec4 passParameterSem16; -layout(location = 3) out vec4 passParameterSem4; -layout(location = 5) out vec4 passParameterSem9; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ return min(a*b,min(abs(a)*3.40282347E+38F,abs(b)*3.40282347E+38F)); } -void main() -{ -ivec4 R0i = ivec4(0); -ivec4 R1i = ivec4(0); -ivec4 R2i = ivec4(0); -ivec4 R3i = ivec4(0); -ivec4 R4i = ivec4(0); -ivec4 R5i = ivec4(0); -ivec4 R6i = ivec4(0); -ivec4 R7i = ivec4(0); -ivec4 R8i = ivec4(0); -ivec4 R9i = ivec4(0); -ivec4 R10i = ivec4(0); -ivec4 R11i = ivec4(0); -ivec4 R12i = ivec4(0); -ivec4 R13i = ivec4(0); -ivec4 R14i = ivec4(0); -ivec4 R15i = ivec4(0); -ivec4 R16i = ivec4(0); -ivec4 R17i = ivec4(0); -ivec4 R18i = ivec4(0); -ivec4 R19i = ivec4(0); -ivec4 R20i = ivec4(0); -ivec4 R21i = ivec4(0); -ivec4 R22i = ivec4(0); -ivec4 R23i = ivec4(0); -ivec4 R24i = ivec4(0); -ivec4 R122i = ivec4(0); -ivec4 R123i = ivec4(0); -ivec4 R124i = ivec4(0); -ivec4 R125i = ivec4(0); -ivec4 R126i = ivec4(0); -ivec4 R127i = ivec4(0); -uvec4 attrDecoder; -int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; -ivec4 PV0i = ivec4(0), PV1i = ivec4(0); -int PS0i = 0, PS1i = 0; -ivec4 tempi = ivec4(0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -bool activeMaskStack[4]; -bool activeMaskStackC[5]; -activeMaskStack[0] = false; -activeMaskStack[1] = false; -activeMaskStack[2] = false; -activeMaskStackC[0] = false; -activeMaskStackC[1] = false; -activeMaskStackC[2] = false; -activeMaskStackC[3] = false; -activeMaskStack[0] = true; -activeMaskStackC[0] = true; -activeMaskStackC[1] = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); -attrDecoder = attrDataSem5; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R6i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder.xyz = attrDataSem4.xyz; -attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); -attrDecoder.w = 0; -R5i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); -attrDecoder = attrDataSem10; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R10i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem9; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R9i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem0; -R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem1; -R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem2; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem3; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R4i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem7; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R8i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -attrDecoder = attrDataSem6; -attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24)); -R7i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w)); -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -R16i.z = floatBitsToInt(-(intBitsToFloat(R9i.y)) + 1.0); -R0i.w = 0; -R1i.w = floatBitsToInt(1.0); -PS0i = R1i.w; -// 1 -R8i.w = floatBitsToInt(-(intBitsToFloat(R4i.w)) + uf_blockVS8[2].x); -R9i.w = floatBitsToInt(-(intBitsToFloat(R9i.x)) + 1.0); -PS1i = R9i.w; -// 2 -predResult = (0.0 > intBitsToFloat(R8i.w)); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R2i.w = R1i.w; -} -activeMaskStack[1] = activeMaskStack[1] == false; -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -// 0 -R2i.w = R0i.w; -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -if( activeMaskStackC[1] == true ) { -activeMaskStack[1] = activeMaskStack[0]; -activeMaskStackC[2] = activeMaskStackC[1]; -// 0 -predResult = (R2i.w == 0); -activeMaskStack[1] = predResult; -activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; -} -else { -activeMaskStack[1] = false; -activeMaskStackC[2] = false; -} -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -PS0i = int(intBitsToFloat(R3i.w)); -// 1 -R11i.x = floatBitsToInt(float(PS0i)); -PS1i = R11i.x; -// 2 -predResult = (intBitsToFloat(R8i.w) >= intBitsToFloat(R11i.x)); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R17i.x = 0; -R17i.y = 0; -R17i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -R18i.x = 0; -PS0i = R18i.x; -// 1 -R0i.w = R1i.w; -} -activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; -if( activeMaskStackC[2] == true ) { -activeMaskStack[2] = activeMaskStack[1]; -activeMaskStackC[3] = activeMaskStackC[2]; -// 0 -predResult = (R0i.w == 0); -activeMaskStack[2] = predResult; -activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; -} -else { -activeMaskStack[2] = false; -activeMaskStackC[3] = false; -} -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt((uf_blockVS7[9].x > 0.0)?1.0:0.0); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[10].y)); -R127i.z = floatBitsToInt((0.0 > uf_blockVS7[9].x)?1.0:0.0); -R0i.w = 0x3f800000; -PV0i.w = R0i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[9].x); -// 1 -R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(PV0i.w)),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,uf_blockVS8[4].w))); -PV1i.x = R4i.x; -PV1i.y = R4i.x; -PV1i.z = R4i.x; -PV1i.w = R4i.x; -R126i.z = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -PS1i = R126i.z; -// 2 -backupReg0i = R0i.w; -backupReg1i = R127i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,uf_blockVS8[5].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R16i.y = tempi.x; -R127i.x = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(R127i.z))); -PS0i = R127i.x; -// 3 -backupReg0i = R0i.w; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z),intBitsToFloat(backupReg0i)),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,uf_blockVS8[6].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R9i.z = tempi.x; -PS1i = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(R126i.z)); -// 4 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00020000; -R127i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00010000; -PV0i.z = floatBitsToInt(fract(intBitsToFloat(PS1i))); -R127i.w = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -R19i.x = floatBitsToInt(1.0 / intBitsToFloat(R11i.x)); -PS0i = R19i.x; -// 5 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00040000; -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); -R126i.z = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(R7i.z)); -R10i.w = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -PV1i.w = R10i.w; -PS1i = floatBitsToInt(float(PV0i.x)); -// 6 -R126i.x = R7i.z; -R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); -PV0i.y = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.z = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R127i.w))); -PS0i = floatBitsToInt(float(R127i.y)); -// 7 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(PV0i.y))); -R1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.y)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.x)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R126i.w = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(R7i.y)); -R127i.w = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.w; -// 9 -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) * 0.5); -R126i.y = R7i.y; -R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); -PV1i.z = 0 - PS0i; -R125i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -R127i.x = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.x; -// 10 -PV0i.x = floatBitsToInt(floor(intBitsToFloat(R126i.x))); -R127i.y = max(R127i.w, PV1i.z); -R126i.z = floatBitsToInt(intBitsToFloat(R126i.w) * 0.5); -R127i.w = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(R7i.z)); -R1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); -R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); -PS0i = R1i.x; -// 11 -backupReg0i = R126i.y; -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.x) > 0.0)?1.0:0.0); -R126i.y = floatBitsToInt(floor(intBitsToFloat(backupReg0i))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PV0i.x))?1.0:0.0); -PV1i.w = 0 - R127i.x; -R127i.z = int(intBitsToFloat(R125i.w)); -PS1i = R127i.z; -// 12 -backupReg0i = R127i.w; -backupReg1i = R126i.z; -PV0i.x = R7i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); -R125i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R126i.z = max(R127i.x, PV1i.w); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * 0.5); -R0i.y = floatBitsToInt(intBitsToFloat(backupReg1i) + -(0.5)); -R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) * 2.0); -PS0i = R0i.y; -// 13 -PV1i.x = floatBitsToInt((intBitsToFloat(R126i.y) > 0.0)?1.0:0.0); -PV1i.y = 0 - R127i.z; -R125i.z = floatBitsToInt(floor(intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(R126i.y))?1.0:0.0); -PS1i = floatBitsToInt(float(R127i.y)); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); -// 14 -R127i.x = max(R127i.z, PV1i.y); -R3i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS1i)), intBitsToFloat(R125i.y))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.w))); -R0i.w = floatBitsToInt(intBitsToFloat(R127i.w) + -(0.5)); -R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 2.0); -PS0i = floatBitsToInt(float(R126i.z)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 15 -PV1i.x = floatBitsToInt(max(intBitsToFloat(R7i.x), 0.0)); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(R125i.z))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(R125i.z) > 0.0)?1.0:0.0); -R1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(PV0i.z))); -R4i.y = floatBitsToInt(intBitsToFloat(R7i.y) + -(0.5)); -PS1i = R4i.y; -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt(min(intBitsToFloat(PV1i.x), 0.0)); -R1i.z = floatBitsToInt(intBitsToFloat(R7i.x) + -(0.5)); -R2i.w = floatBitsToInt(intBitsToFloat(R7i.z) + -(0.5)); -PS0i = floatBitsToInt(float(R127i.x)); -PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 2.0); -// 17 -backupReg0i = R8i.x; -R8i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); -R10i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(PV0i.x))); -PV1i.z = floatBitsToInt(uf_blockVS7[13].y); -PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) / 2.0); -PV1i.w = floatBitsToInt(uf_blockVS7[13].x); -PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) / 2.0); -R13i.y = floatBitsToInt(intBitsToFloat(R7i.x) + 1.0); -PS1i = R13i.y; -// 18 -R3i.x = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV1i.w)); -R14i.y = floatBitsToInt(intBitsToFloat(R7i.y) + 1.0); -R4i.z = floatBitsToInt(intBitsToFloat(R7i.z) + 1.0); -R3i.w = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(PV1i.z)); -PS0i = ((intBitsToFloat(R8i.w) == 0.0)?int(0xFFFFFFFF):int(0x0)); -// 19 -R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[6].x,uf_blockVS8[6].y,uf_blockVS8[6].z,0.0))); -PV1i.x = R127i.x; -PV1i.y = R127i.x; -PV1i.z = R127i.x; -PV1i.w = R127i.x; -R10i.z = ((PS0i == 0)?(R8i.w):(0x3f800000)); -PS1i = R10i.z; -// 20 -R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[4].x,uf_blockVS8[4].y,uf_blockVS8[4].z,0.0))); -PV0i.x = R6i.x; -PV0i.y = R6i.x; -PV0i.z = R6i.x; -PV0i.w = R6i.x; -// 21 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z),-0.0),vec4(uf_blockVS8[5].x,uf_blockVS8[5].y,uf_blockVS8[5].z,0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R6i.y = tempi.x; -R11i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(0x358637bd)); -PS1i = R11i.z; -} -if( activeMaskStackC[3] == true ) { -// 0 -R0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + -(uf_blockVS6[17].x)); -R11i.y = floatBitsToInt(intBitsToFloat(R16i.y) + -(uf_blockVS6[17].y)); -R124i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + uf_blockVS6[17].z); -PV0i.z = R124i.z; -R125i.w = floatBitsToInt(-(intBitsToFloat(R4i.x)) + uf_blockVS6[17].x); -PV0i.w = R125i.w; -R3i.z = floatBitsToInt(intBitsToFloat(R9i.z) + -(uf_blockVS6[17].z)); -PS0i = R3i.z; -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(R1i.y) + -(uf_blockVS7[97].w)); -R124i.y = floatBitsToInt(intBitsToFloat(R1i.y) + -(uf_blockVS7[96].w)); -PV1i.z = floatBitsToInt(-(uf_blockVS7[96].w) + uf_blockVS7[97].w); -R127i.w = floatBitsToInt((-(intBitsToFloat(PV0i.w)) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R125i.w)) * intBitsToFloat(PS1i)); -R12i.y = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -R125i.z = floatBitsToInt((0.0 > -(intBitsToFloat(R125i.w)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(uf_blockVS7[96].x) + uf_blockVS7[97].x); -R124i.w = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -PS0i = R124i.w; -// 3 -R127i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -PV1i.x = R127i.x; -R125i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(PS0i)); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PV0i.x))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.x) > 0.0)?1.0:0.0); -tempResultf = max(0.0, uf_blockVS7[114].w); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 4 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -R0i.z = floatBitsToInt(intBitsToFloat(R127i.w) + -(intBitsToFloat(R125i.z))); -R127i.w = ((intBitsToFloat(PV1i.x) > 1.0)?int(0xFFFFFFFF):int(0x0)); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 5 -R124i.x = floatBitsToInt(((PV0i.w == 0)?(intBitsToFloat(PV0i.y)):(-(intBitsToFloat(PV0i.y))))); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3fc90fdb)); -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R125i.y))); -R123i.w = ((PV0i.w == 0)?(R127i.x):(PS0i)); -PV1i.w = R123i.w; -R127i.x = ((intBitsToFloat(R124i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R127i.x; -// 6 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS7[115].y)); -PV0i.y = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); -R126i.z = ((R127i.w == 0)?(0):(PV1i.y)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(R12i.y)) + 1.0); -R127i.z = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); -PS0i = R127i.z; -// 7 -backupReg0i = R125i.z; -R125i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(1.0))); -PV1i.x = R125i.x; -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.w))); -R125i.z = floatBitsToInt(uf_blockVS7[96].x + intBitsToFloat(backupReg0i)); -PV1i.w = floatBitsToInt(-(uf_blockVS7[114].w) + 1.0); -R2i.y = floatBitsToInt(-(intBitsToFloat(R127i.x)) + 1.0); -PS1i = R2i.y; -// 8 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), uf_blockVS7[115].x)); -R126i.y = floatBitsToInt(uf_blockVS7[114].y + intBitsToFloat(backupReg0i)); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R127i.z)) + 1.0); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); -PV0i.w = R127i.w; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 9 -R123i.x = floatBitsToInt((intBitsToFloat(0x3d6ee04d) * intBitsToFloat(PV0i.w) + intBitsToFloat(0x3f43b24e))); -PV1i.x = R123i.x; -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(PS0i)); -R123i.z = floatBitsToInt((intBitsToFloat(0x3edcf805) * intBitsToFloat(PV0i.w) + 1.0)); -PV1i.z = R123i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R1i.y))); -R127i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].x, intBitsToFloat(R2i.y))); -PS1i = R127i.x; -// 10 -backupReg0i = R126i.x; -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS7[115].z)); -R125i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.x)), intBitsToFloat(PV1i.z))); -R125i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + uf_blockVS7[114].x); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.x)) + 1.0)); -PV0i.w = R123i.w; -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R3i.y))); -PS0i = R127i.w; -// 11 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(backupReg0i)); -PV1i.y = ((uf_blockVS7[114].w == 1.0)?int(0xFFFFFFFF):int(0x0)); -PV1i.z = ((0.0 > intBitsToFloat(R124i.z))?int(0xFFFFFFFF):int(0x0)); -PV1i.w = ((-(intBitsToFloat(R125i.w)) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 12 -backupReg0i = R126i.x; -R126i.x = ((PV1i.y == 0)?(R127i.y):(R8i.w)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); -R127i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(R127i.w)); -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -R2i.z = floatBitsToInt(uf_blockVS7[114].z + intBitsToFloat(backupReg0i)); -PS0i = R2i.z; -// 13 -R123i.x = ((intBitsToFloat(R125i.x) > 0.0)?(PV0i.y):(floatBitsToInt(-(intBitsToFloat(PV0i.y))))); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].x, intBitsToFloat(R12i.y))); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R1i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), uf_blockVS7[113].y)); -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R10i.y))); -PS1i = R125i.x; -// 14 -backupReg0i = R127i.x; -backupReg1i = R126i.z; -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(backupReg0i)); -R126i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV1i.z)); -R126i.z = floatBitsToInt(-(uf_blockVS7[96].y) + uf_blockVS7[97].y); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg1i))); -PV0i.w = R126i.w; -R127i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + 0.0); -PS0i = R127i.w; -// 15 -R124i.x = floatBitsToInt(-(uf_blockVS7[96].z) + uf_blockVS7[97].z); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R126i.x))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PV0i.w))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PV0i.w) > 0.0)?1.0:0.0); -R1i.x = ((intBitsToFloat(R124i.z) == 0.0)?int(0xFFFFFFFF):int(0x0)); -PS1i = R1i.x; -// 16 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R0i.z) * intBitsToFloat(0x3fc90fdb)); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), uf_blockVS7[113].x)); -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(backupReg0i))); -R125i.w = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(R125i.x)); -PS0i = R125i.w; -// 17 -backupReg0i = R0i.z; -PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(R124i.w)); -R125i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R127i.y)); -PV1i.z = floatBitsToInt(intBitsToFloat(R124i.x) * intBitsToFloat(R124i.w)); -PV1i.w = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 0.0); -PS1i = R127i.y; -// 18 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), uf_blockVS7[113].z)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3fc90fdb)); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); -R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.z))); -PS0i = R124i.x; -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(R126i.w) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(uf_blockVS7[96].y + intBitsToFloat(PV0i.y)); -// 20 -R123i.x = ((R0i.w == 0)?(PV1i.y):(0x40490fdb)); -PV0i.x = R123i.x; -R4i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.w)); -PV0i.z = floatBitsToInt(uf_blockVS7[96].z + intBitsToFloat(R124i.x)); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.w = R123i.w; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R1i.y))); -PS0i = R0i.z; -// 21 -backupReg0i = R2i.y; -backupReg0i = R2i.y; -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R1i.y))); -R2i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].z, intBitsToFloat(backupReg0i))); -R1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[96].y, intBitsToFloat(backupReg0i))); -R123i.w = ((R1i.x == 0)?(PV0i.x):(R127i.x)); -PV1i.w = R123i.w; -R2i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -PS1i = R2i.z; -// 22 -R1i.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(R11i.y)),-(intBitsToFloat(R3i.z)),-0.0),vec4(-(intBitsToFloat(R0i.x)),-(intBitsToFloat(R11i.y)),-(intBitsToFloat(R3i.z)),0.0))); -PV0i.x = R1i.x; -PV0i.y = R1i.x; -PV0i.z = R1i.x; -PV0i.w = R1i.x; -R1i.y = floatBitsToInt(intBitsToFloat(R125i.y) + -(intBitsToFloat(PV1i.w))); -PS0i = R1i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[3].y)); -R123i.y = floatBitsToInt((intBitsToFloat(R1i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -R0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R1i.z)); -R126i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3e22f983) + 0.5)); -tempResultf = 1.0 / sqrt(intBitsToFloat(R1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(PS0i))); -PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R11i.y)), intBitsToFloat(PS0i))); -PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R3i.z)), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), uf_blockVS7[13].z)); -R127i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PS1i = R127i.x; -// 2 -backupReg0i = R2i.z; -R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); -PV0i.x = R8i.x; -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); -PV0i.y = R0i.y; -R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); -PV0i.z = R2i.z; -R0i.w = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(R2i.y)); -R125i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PS0i = R125i.y; -// 3 -backupReg0i = R127i.x; -R127i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.x)); -R127i.y = floatBitsToInt(intBitsToFloat(R11i.y) + intBitsToFloat(PV0i.y)); -R127i.z = floatBitsToInt(fract(intBitsToFloat(R126i.w))); -R126i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -R126i.z = floatBitsToInt(intBitsToFloat(R3i.z) + intBitsToFloat(PV0i.z)); -PS1i = R126i.z; -// 4 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R11i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R11i.y),intBitsToFloat(R3i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R125i.w = tempi.x; -R124i.x = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(0x3e22f983)); -PS0i = R124i.x; -// 5 -backupReg0i = R126i.z; -backupReg0i = R126i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R126i.z = tempi.x; -R124i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x3e22f983)); -PS1i = R124i.z; -// 6 -R123i.y = floatBitsToInt((intBitsToFloat(R127i.z) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[3].y)); -R127i.y = floatBitsToInt(sqrt(intBitsToFloat(R125i.w))); -PS0i = R127i.y; -// 7 -R127i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3e22f983)); -R125i.z = floatBitsToInt(cos((intBitsToFloat(R124i.x))/0.1591549367)); -PS1i = R125i.z; -// 8 -R125i.y = floatBitsToInt(sin((intBitsToFloat(R124i.z))/0.1591549367)); -PS0i = R125i.y; -// 9 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -R125i.w = floatBitsToInt(sqrt(intBitsToFloat(R126i.z))); -PS1i = R125i.w; -// 10 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 11 -R1i.w = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -PV1i.w = R1i.w; -R127i.w = floatBitsToInt(sin((intBitsToFloat(R124i.x))/0.1591549367)); -PS1i = R127i.w; -// 12 -R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.w))); -PV0i.x = R10i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R125i.y))); -R124i.x = floatBitsToInt(cos((intBitsToFloat(R124i.z))/0.1591549367)); -PS0i = R124i.x; -// 13 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R3i.x))); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -PV1i.z = R127i.z; -R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); -R125i.w = floatBitsToInt(sin((intBitsToFloat(R127i.x))/0.1591549367)); -PS1i = R125i.w; -// 14 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.y))); -R4i.w = floatBitsToInt(-(intBitsToFloat(PS1i))); -R124i.z = floatBitsToInt(cos((intBitsToFloat(R127i.x))/0.1591549367)); -PS0i = R124i.z; -// 15 -R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); -R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); -PV1i.y = R11i.y; -R3i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.z)); -R2i.w = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.x)); -PV1i.w = R2i.w; -R6i.w = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.y)); -PS1i = R6i.w; -// 16 -R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R124i.z))); -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(R124i.z))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R126i.w))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.w))); -// 17 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R3i.z))); -R1i.y = floatBitsToInt(-(intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z)); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R4i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(PS0i))); -PV1i.w = R123i.w; -// 18 -R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(PV1i.z))); -R15i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(PV1i.w))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R0i.x)) + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -// 19 -R5i.z = floatBitsToInt(uf_blockVS8[3].z); -R5i.w = floatBitsToInt(uf_blockVS8[3].w); -R24i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R1i.y)) + intBitsToFloat(PV0i.z))); -PS1i = R24i.z; -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].y, intBitsToFloat(R12i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[97].z, intBitsToFloat(R12i.y))); -// 1 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R0i.w)); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R0i.z)); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), uf_blockVS11[2].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.y), uf_blockVS11[2].x)); -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), uf_blockVS11[2].x)); -PS1i = R126i.x; -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), uf_blockVS11[1].w)); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PV1i.y))); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R5i.w))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R5i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 4 -R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.w))); -PV0i.y = R3i.y; -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R1i.w))); -PV0i.z = R0i.z; -R1i.w = floatBitsToInt(intBitsToFloat(R10i.z) * intBitsToFloat(PS1i)); -R1i.w = clampFI32(R1i.w); -// 5 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(PV0i.z))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R3i.w))); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.x))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PV1i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV1i.x))); -// 7 -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R0i.x)) + intBitsToFloat(PV0i.x))); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R4i.w)) + intBitsToFloat(PV0i.w))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y)) + intBitsToFloat(PV1i.z))); -PV0i.x = R123i.x; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(PV1i.w))); -PV0i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y)) + intBitsToFloat(PV1i.y))); -PV0i.w = R123i.w; -// 9 -R0i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(PV0i.x)); -PV1i.x = R0i.x; -R1i.y = floatBitsToInt(intBitsToFloat(R16i.y) + intBitsToFloat(PV0i.z)); -PV1i.y = R1i.y; -R1i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(PV0i.w)); -PV1i.z = R1i.z; -// 10 -R127i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R127i.w)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R124i.z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(PV0i.z)); -// 12 -R0i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV1i.x)); -// 13 -predResult = (uf_blockVS11[5].y != 0.0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -PV0i.y = floatBitsToInt(uf_blockVS8[5].w); -PV0i.z = floatBitsToInt(uf_blockVS8[4].w); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(uf_blockVS8[6].w); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + -(intBitsToFloat(backupReg0i))); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(R1i.y))); -R126i.y = floatBitsToInt(1.0 / uf_blockVS11[5].y); -PS1i = R126i.y; -// 2 -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(R1i.z))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); -// 5 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(R126i.y)); -PV1i.x = clampFI32(PV1i.x); -// 6 -backupReg0i = R1i.w; -R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(uf_blockVS8[4].w + uf_blockVS8[5].w); -PV0i.y = floatBitsToInt(-(intBitsToFloat(R16i.y)) + intBitsToFloat(R1i.y)); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R3i.y)); -// 1 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS11[0].w)); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS11[0].z)); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS11[1].z, uf_blockVS11[0].w)); -PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(PS0i)); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.w)), intBitsToFloat(PV1i.w))); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.z))); -PV0i.z = ((0.0 > intBitsToFloat(PV1i.w))?int(0xFFFFFFFF):int(0x0)); -PV0i.w = floatBitsToInt(uf_blockVS8[6].w + intBitsToFloat(R127i.x)); -PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.w))); -// 3 -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS8[2].x, uf_blockVS11[1].x)); -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3dd70a3d)); -R0i.w = ((PV0i.z == 0)?(PS0i):(PV0i.x)); -// 4 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R127i.y)); -PV0i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[1].y, uf_blockVS11[0].z)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.x)); -// 5 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.y))); -PV1i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.w)); -PV1i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV0i.x)); -// 6 -R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.y = R123i.y; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e22f983) + 0.5)); -PV0i.z = R123i.z; -// 7 -PV1i.x = floatBitsToInt(fract(intBitsToFloat(PV0i.y))); -PV1i.y = floatBitsToInt(fract(intBitsToFloat(PV0i.z))); -// 8 -R123i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.x = R123i.x; -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c90fdb) + intBitsToFloat(0xc0490fdb))); -PV0i.w = R123i.w; -// 9 -R127i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e22f983)); -PV1i.z = R127i.z; -R127i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e22f983)); -// 10 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -PS0i = floatBitsToInt(sin((intBitsToFloat(PV1i.z))/0.1591549367)); -// 11 -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.y))); -PS1i = floatBitsToInt(cos((intBitsToFloat(R127i.z))/0.1591549367)); -// 12 -backupReg0i = R0i.x; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); -R0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.w)); -PS0i = floatBitsToInt(sin((intBitsToFloat(R127i.w))/0.1591549367)); -// 13 -R0i.x = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(PV0i.x)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R126i.x))); -PS1i = floatBitsToInt(sqrt(intBitsToFloat(R126i.z))); -// 14 -R1i.x = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -R1i.z = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV1i.w)); -// 15 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R11i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 16 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); -PS0i = floatBitsToInt(tempResultf); -// 17 -R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); -R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PS0i))); -} -if( activeMaskStackC[3] == true ) { -activeMaskStack[3] = activeMaskStack[2]; -activeMaskStackC[4] = activeMaskStackC[3]; -// 0 -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS14[1].w)); -// 1 -PV1i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].y, intBitsToFloat(PV0i.z))); -// 2 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].x, intBitsToFloat(PV1i.y))); -PV0i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].z, intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS14[1].y, intBitsToFloat(PV1i.y))); -// 3 -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.w))); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.x))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.z))); -// 4 -R3i.xyz = floatBitsToInt(vec3(intBitsToFloat(R0i.z),intBitsToFloat(R1i.z),intBitsToFloat(R0i.x)) + vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.w))); -PV0i.x = R3i.x; -PV0i.y = R3i.y; -PV0i.z = R3i.z; -// 5 -R0i.x = floatBitsToInt(-(intBitsToFloat(R4i.x)) + intBitsToFloat(PV0i.x)); -PV1i.x = R0i.x; -R2i.y = floatBitsToInt(-(intBitsToFloat(R16i.y)) + intBitsToFloat(PV0i.y)); -PV1i.y = R2i.y; -R0i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV0i.z)); -PV1i.z = R0i.z; -// 6 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 7 -PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); -// 8 -PV0i.w = ((intBitsToFloat(PS1i) > 0.0)?int(0xFFFFFFFF):int(0x0)); -// 9 -R0i.w = ((PV0i.w == 0)?(0):(R1i.x)); -// 10 -predResult = (R0i.w != 0); -activeMaskStack[3] = predResult; -activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; -} -else { -activeMaskStack[3] = false; -activeMaskStackC[4] = false; -} -if( activeMaskStackC[4] == true ) { -// 0 -backupReg0i = R0i.x; -backupReg0i = R0i.x; -backupReg1i = R0i.z; -backupReg1i = R0i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i),0.0))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), uf_blockVS7[95].x)); -PS0i = R127i.x; -// 1 -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), uf_blockVS7[95].x)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), uf_blockVS7[95].x)); -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); -PS1i = floatBitsToInt(tempResultf); -// 2 -backupReg0i = R0i.x; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R2i.x),intBitsToFloat(R1i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.x))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.z))); -// 5 -backupReg0i = R3i.x; -backupReg1i = R3i.y; -backupReg2i = R3i.z; -R3i.xyz = floatBitsToInt(vec3(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)) + vec3(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w))); -} -activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; -if( activeMaskStackC[3] == true ) { -// 0 -R127i.x = floatBitsToInt(intBitsToFloat(R4i.x) + intBitsToFloat(R8i.x)); -R6i.y = floatBitsToInt(intBitsToFloat(R16i.y) + intBitsToFloat(R0i.y)); -R127i.z = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(R2i.z)); -R4i.w = floatBitsToInt(intBitsToFloat(R8i.x) + intBitsToFloat(R3i.x)); -R5i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(R3i.y)); -PS0i = R5i.y; -// 1 -R126i.x = 0x3f800000; -R0i.y = floatBitsToInt(uf_blockVS7[60].x); -R9i.z = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(R3i.z)); -PV1i.z = R9i.z; -R127i.w = 0x3f800000; -PV1i.w = R127i.w; -R0i.z = floatBitsToInt(uf_blockVS7[60].y); -PS1i = R0i.z; -// 2 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)),vec4(uf_blockVS6[8].x,uf_blockVS6[8].y,uf_blockVS6[8].z,uf_blockVS6[8].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R10i.z = tempi.x; -// 3 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R9i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[9].x,uf_blockVS6[9].y,uf_blockVS6[9].z,uf_blockVS6[9].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R8i.y = tempi.x; -// 4 -R12i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R9i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = R12i.x; -PV0i.y = R12i.x; -PV0i.z = R12i.x; -PV0i.w = R12i.x; -// 5 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.w),intBitsToFloat(R5i.y),intBitsToFloat(R9i.z),intBitsToFloat(R127i.w)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R5i.w = tempi.x; -// 6 -R0i.x = floatBitsToInt(uf_blockVS7[60].z); -PV0i.y = PV1i.x; -PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0); -R12i.z = floatBitsToInt((intBitsToFloat(R12i.x) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R12i.z; -// 7 -R127i.y = floatBitsToInt(-(uf_blockVS7[68].x) + uf_blockVS7[69].x); -R11i.z = floatBitsToInt((intBitsToFloat(R12i.x) * 0.5 + intBitsToFloat(PV0i.y))); -PV1i.z = R11i.z; -R123i.w = floatBitsToInt((intBitsToFloat(R12i.x) * 0.0 + intBitsToFloat(PV0i.y))); -PV1i.w = R123i.w; -R10i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -PS1i = R10i.x; -// 8 -R13i.x = floatBitsToInt((intBitsToFloat(R10i.z) * 0.5 + intBitsToFloat(PV1i.w))); -R11i.y = floatBitsToInt((intBitsToFloat(R8i.y) * -(0.5) + intBitsToFloat(PV1i.w))); -PV0i.z = floatBitsToInt(-(uf_blockVS7[68].w) + uf_blockVS7[69].w); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -// 9 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),uf_blockVS6[18].w) + -(uf_blockVS6[18].y))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 10 -R1i.z = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(-(uf_blockVS7[69].x) + uf_blockVS7[70].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); -// 11 -R8i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS0i)); -// 12 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[10].x,uf_blockVS6[10].y,uf_blockVS6[10].z,uf_blockVS6[10].w))); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -R126i.z = tempi.x; -// 13 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.z),intBitsToFloat(R126i.x)),vec4(uf_blockVS6[11].x,uf_blockVS6[11].y,uf_blockVS6[11].z,uf_blockVS6[11].w))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -// 14 -PV0i.x = PV1i.x; -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -R127i.y = floatBitsToInt(-(uf_blockVS7[69].w) + uf_blockVS7[70].w); -R123i.z = floatBitsToInt((intBitsToFloat(R126i.z) * 0.0 + intBitsToFloat(PV1i.x))); -PV0i.z = R123i.z; -// 15 -R126i.y = floatBitsToInt(-(uf_blockVS7[70].x) + uf_blockVS7[71].x); -R123i.w = floatBitsToInt((intBitsToFloat(R126i.z) * 0.5 + intBitsToFloat(PV0i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); -// 16 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PV0i.y = floatBitsToInt(-(uf_blockVS7[70].w) + uf_blockVS7[71].w); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); -// 17 -R1i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(PS0i)); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS6[18].w, intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 18 -PV0i.x = floatBitsToInt(-(uf_blockVS6[18].y) + intBitsToFloat(PV1i.w)); -R2i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS1i)); -// 19 -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 20 -R6i.x = floatBitsToInt(-(uf_blockVS6[18].z) * intBitsToFloat(PS1i)); -// 21 -R2i.x = floatBitsToInt(uf_blockVS7[76].x); -R1i.w = floatBitsToInt(uf_blockVS7[76].y); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R0i.y; -backupReg1i = R0i.z; -PV0i.x = floatBitsToInt((uf_blockVS7[8].y > 0.0)?1.0:0.0); -R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].x)); -R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), uf_blockVS8[0].y)); -PV0i.w = floatBitsToInt((0.0 > uf_blockVS7[8].y)?1.0:0.0); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[8].y); -// 1 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS8[0].z)); -R126i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.w))); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt((uf_blockVS7[8].w > 0.0)?1.0:0.0); -// 2 -PV0i.x = floatBitsToInt((0.0 > uf_blockVS7[8].w)?1.0:0.0); -R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[9].z) + intBitsToFloat(PV1i.x))); -PV0i.w = R123i.w; -// 3 -backupReg0i = R127i.w; -PV1i.z = floatBitsToInt(fract(intBitsToFloat(PV0i.w))); -R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[8].w); -// 4 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.z))); -PV0i.y = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS1i)); -// 5 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[10].x) + intBitsToFloat(PV0i.y))); -PV1i.x = R123i.x; -R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x))); -// 6 -R126i.z = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); -PV0i.w = floatBitsToInt(fract(intBitsToFloat(PV1i.x))); -// 7 -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.w))); -// 8 -R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.y))); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[69].w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[68].w)); -// 1 -R127i.x = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R1i.z)) + uf_blockVS7[68].x)); -R126i.z = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R126i.z; -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.x)) + uf_blockVS7[69].x)); -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[71].w)); -PV0i.z = floatBitsToInt(intBitsToFloat(R0i.w) + -(uf_blockVS7[70].w)); -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -// 3 -backupReg0i = R127i.x; -R127i.x = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R2i.z)) + uf_blockVS7[70].x)); -R127i.z = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.z = R127i.z; -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[68].x, intBitsToFloat(PV0i.x))); -// 4 -backupReg0i = R0i.y; -PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); -R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), uf_blockVS7[59].x)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PS1i))); -R14i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), uf_blockVS7[59].x)); -PS0i = R14i.z; -// 5 -backupReg0i = R127i.z; -PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV0i.y))); -R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS7[59].x)); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.x))); -R0i.w = floatBitsToInt(uf_blockVS7[76].z); -// 6 -R125i.x = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[85].w)); -PV0i.x = R125i.x; -PV0i.y = floatBitsToInt(-(uf_blockVS7[84].w) + uf_blockVS7[85].w); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R126i.w))); -PV0i.z = R123i.z; -R127i.w = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[84].w)); -PV0i.w = R127i.w; -// 7 -R126i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R126i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(-(uf_blockVS7[84].x) + uf_blockVS7[85].x); -R126i.w = ((intBitsToFloat(PV0i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); -// 8 -R1i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS7[71].x,intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.y))); -R125i.y = floatBitsToInt(intBitsToFloat(R0i.x) + -(uf_blockVS7[86].w)); -PV0i.y = R125i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); -// 9 -backupReg0i = R0i.x; -PV1i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + -(uf_blockVS7[87].w)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV0i.z))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[84].x)); -PV1i.z = R123i.z; -R127i.w = ((intBitsToFloat(PV0i.y) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R127i.w; -PS1i = floatBitsToInt(mul_nonIEEE(uf_blockVS7[84].x, intBitsToFloat(PS0i))); -// 10 -R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(-(uf_blockVS7[85].x) + uf_blockVS7[86].x); -R126i.z = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.z = R126i.z; -PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -// 11 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.w))); -PV1i.w = floatBitsToInt(-(uf_blockVS7[85].w) + uf_blockVS7[86].w); -// 12 -backupReg0i = R127i.w; -R127i.z = floatBitsToInt(-(uf_blockVS7[86].x) + uf_blockVS7[87].x); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); -// 13 -PV1i.x = floatBitsToInt(-(uf_blockVS7[86].w) + uf_blockVS7[87].w); -PV1i.y = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.y)) + uf_blockVS7[85].x)); -PV0i.x = R123i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(PS0i)); -R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.x))); -// 16 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV1i.x)) + uf_blockVS7[86].x)); -PV0i.z = R123i.z; -// 17 -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.w))); -PV1i.z = R123i.z; -// 18 -R1i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[87].x,intBitsToFloat(R126i.z)) + intBitsToFloat(PV1i.z))); -} -if( activeMaskStackC[3] == true ) { -// 0 -R15i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), uf_blockVS8[0].w)); -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), uf_blockVS8[1].x)); -// 1 -PV1i.x = ((intBitsToFloat(R7i.x) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R12i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), uf_blockVS8[1].w)); -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), uf_blockVS8[1].z)); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), uf_blockVS8[1].y)); -PS1i = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -// 2 -R14i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(R125i.y))); -R1i.y = ((PV1i.x == 0)?(R9i.x):(R9i.w)); -R15i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.z))); -R6i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[59].x, intBitsToFloat(PV1i.w))); -R0i.y = ((PS1i == 0)?(R9i.y):(R16i.z)); -PS0i = R0i.y; -// 3 -PV1i.x = ((intBitsToFloat(R7i.w) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.y = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R2i.z = ((intBitsToFloat(R7i.z) > 0.5)?int(0xFFFFFFFF):int(0x0)); -PV1i.w = ((intBitsToFloat(R7i.y) > 0.5)?int(0xFFFFFFFF):int(0x0)); -R0i.x = R9i.w; -PS1i = R0i.x; -// 4 -R1i.x = ((PV1i.y == 0)?(R9i.x):(R9i.w)); -R2i.y = ((PV1i.w == 0)?(R9i.y):(R9i.y)); -R0i.z = ((PV1i.w == 0)?(R9i.x):(PS1i)); -R0i.w = ((PV1i.x == 0)?(R9i.y):(R16i.z)); -R11i.x = floatBitsToInt(uf_blockVS8[3].x); -PS0i = R11i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00100000; -PV0i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00080000; -// 1 -PV1i.x = (PV0i.y == 0x00080000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00200000; -PV1i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00400000; -PV1i.w = (PV0i.x == 0x00100000)?int(0xFFFFFFFF):int(0x0); -// 2 -R4i.x = ((PV1i.w == 0)?(R9i.y):(R0i.y)); -R0i.y = ((PV1i.x == 0)?(R9i.x):(R1i.y)); -PV0i.z = (PV1i.y == 0x00200000)?int(0xFFFFFFFF):int(0x0); -PV0i.w = (PV1i.z == 0x00400000)?int(0xFFFFFFFF):int(0x0); -PS0i = floatBitsToInt(uf_blockVS7[5].x) & 0x00800000; -// 3 -PV1i.x = (PS0i == 0x00800000)?int(0xFFFFFFFF):int(0x0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x01000000; -R8i.z = ((PV0i.w == 0)?(R9i.y):(R0i.w)); -R2i.w = ((PV0i.z == 0)?(R9i.x):(R1i.x)); -PS1i = floatBitsToInt(uf_blockVS7[5].y) & int(1); -// 4 -R126i.x = ((PV1i.x == 0)?(R9i.y):(R2i.y)); -PV0i.x = R126i.x; -R125i.y = (PV1i.y == 0x01000000)?int(0xFFFFFFFF):int(0x0); -R6i.z = (int(1) != PS1i)?int(0xFFFFFFFF):int(0x0); -PV0i.z = R6i.z; -R127i.w = ((PV1i.x == 0)?(R9i.x):(R0i.z)); -PV0i.w = R127i.w; -R125i.x = int(uf_blockVS7[26].x); -PS0i = R125i.x; -// 5 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -PV1i.y = floatBitsToInt(uf_blockVS7[5].x) & 0x00000100; -R123i.z = ((R2i.z == 0)?(PV0i.w):(PV0i.w)); -PV1i.z = R123i.z; -R124i.w = ((PV0i.z == 0)?(R7i.x):(R7i.y)); -R127i.z = int(uf_blockVS7[26].y); -PS1i = R127i.z; -// 6 -PV0i.x = floatBitsToInt(uf_blockVS7[5].x) & 0x00000200; -R123i.y = ((R2i.z == 0)?(R126i.x):(PV1i.x)); -PV0i.y = R123i.y; -R126i.z = floatBitsToInt(uf_blockVS7[5].x) & 0x00000400; -R3i.w = ((R125i.y == 0)?(R127i.w):(PV1i.z)); -PS0i = floatBitsToInt(float(PV1i.y)); -// 7 -R5i.x = ((R125i.y == 0)?(R126i.x):(PV0i.y)); -PV1i.y = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R125i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x00000800; -PS1i = floatBitsToInt(float(PV0i.x)); -// 8 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R0i.w = int(-1) + R125i.x; -PS0i = floatBitsToInt(float(R126i.z)); -// 9 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 10 -PV0i.x = 0 - PS1i; -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R126i.w = int(intBitsToFloat(PV1i.y)); -PS0i = R126i.w; -// 11 -PV1i.x = 0 - PS0i; -R126i.z = max(R127i.w, PV0i.x); -R127i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R127i.w; -// 12 -PV0i.x = 0 - PS1i; -R4i.z = max(R126i.w, PV1i.x); -R126i.w = floatBitsToInt(uf_blockVS7[5].x) & 0x04000000; -PS0i = floatBitsToInt(float(R125i.w)); -// 13 -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R3i.z = max(R127i.w, PV0i.x); -R126i.y = floatBitsToInt(float(R125i.x)); -PS1i = R126i.y; -// 14 -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PS1i))); -R125i.y = floatBitsToInt(float(R127i.z)); -PS0i = R125i.y; -// 15 -PV1i.x = floatBitsToInt(intBitsToFloat(R19i.x) * intBitsToFloat(PV0i.w)); -R124i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R124i.w; -// 16 -PV0i.x = 0 - PS1i; -PS0i = int(intBitsToFloat(PV1i.x)); -// 17 -R127i.z = max(R124i.w, PV0i.x); -R9i.y = R126i.z * PS0i; -PS1i = R9i.y; -// 18 -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); -// 19 -PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(PS0i)); -R1i.w = floatBitsToInt(float(R125i.x)); -PS1i = R1i.w; -// 20 -R3i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R0i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R0i.z; -// 21 -PS1i = floatBitsToInt(float(PS0i)); -// 22 -PV0i.w = floatBitsToInt(-(intBitsToFloat(R126i.y)) + intBitsToFloat(PS1i)); -R1i.x = floatBitsToInt(float(R0i.z)); -PS0i = R1i.x; -// 23 -R123i.x = ((intBitsToFloat(PV0i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.x = R123i.x; -R126i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -R5i.z = floatBitsToInt(1.0 / abs(intBitsToFloat(R1i.w))); -PS1i = R5i.z; -// 24 -PV0i.y = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R1i.x)), intBitsToFloat(PS1i))); -PS0i = int(intBitsToFloat(PV1i.x)); -// 25 -backupReg0i = R0i.w; -R0i.x = int(1) - PS0i; -PV1i.w = floatBitsToInt(trunc(intBitsToFloat(PV0i.y))); -R1i.z = PS0i * backupReg0i; -PS1i = R1i.z; -// 26 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R3i.x)) + intBitsToFloat(R126i.z))); -PV0i.y = R126i.y; -PS0i = floatBitsToInt(float(R126i.w)); -// 27 -PV1i.x = floatBitsToInt((intBitsToFloat(PV0i.y) >= abs(intBitsToFloat(R1i.w)))?1.0:0.0); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt(-(abs(intBitsToFloat(R1i.w))) + intBitsToFloat(PV0i.y)); -R2i.x = int(intBitsToFloat(R126i.x)); -PS1i = R2i.x; -// 28 -R2i.z = ((intBitsToFloat(PV1i.x) == 0.0)?(R126i.y):(PV1i.w)); -PV0i.z = R2i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -R0i.w = R127i.z * PS1i; -PS0i = R0i.w; -// 29 -R2i.y = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV0i.z)); -R9i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R9i.x; -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.z = 0 - R9i.x; -R123i.w = ((-(intBitsToFloat(R2i.z)) > 0.0)?(R2i.y):(R2i.z)); -PV0i.w = R123i.w; -// 1 -R123i.x = ((-(intBitsToFloat(R1i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV0i.w)))):(PV0i.w)); -PV1i.x = R123i.x; -PV1i.y = max(R9i.x, PV0i.z); -// 2 -R123i.z = ((intBitsToFloat(R1i.w) == 0.0)?(R1i.x):(PV1i.x)); -PV0i.z = R123i.z; -PS0i = PV1i.y * R2i.x; -// 3 -R126i.y = R0i.z + PS0i; -PS1i = int(intBitsToFloat(PV0i.z)); -// 4 -backupReg0i = R0i.x; -PS0i = backupReg0i * PS1i; -// 5 -PV1i.y = PS0i + R1i.z; -R126i.x = R3i.z * R126i.y; -PS1i = R126i.x; -// 6 -PS0i = R4i.z * PV1i.y; -// 7 -PV1i.w = PS0i + R9i.y; -// 8 -PV0i.x = R126i.x + PV1i.w; -// 9 -PV1i.z = R0i.w + PV0i.x; -// 10 -R125i.y = floatBitsToInt(float(PV1i.z)); -PS0i = R125i.y; -// 11 -R127i.z = floatBitsToInt(abs(intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), abs(intBitsToFloat(PS0i)))); -// 12 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.w))); -// 13 -R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R3i.x)) + intBitsToFloat(R127i.z))); -PV1i.y = R126i.y; -// 14 -PV0i.x = floatBitsToInt((intBitsToFloat(PV1i.y) >= abs(intBitsToFloat(R1i.w)))?1.0:0.0); -PV0i.w = floatBitsToInt(-(abs(intBitsToFloat(R1i.w))) + intBitsToFloat(PV1i.y)); -// 15 -R127i.z = ((intBitsToFloat(PV0i.x) == 0.0)?(R126i.y):(PV0i.w)); -PV1i.z = R127i.z; -// 16 -PV0i.y = floatBitsToInt(abs(intBitsToFloat(R1i.w)) + intBitsToFloat(PV1i.z)); -// 17 -R123i.w = ((-(intBitsToFloat(R127i.z)) > 0.0)?(PV0i.y):(R127i.z)); -PV1i.w = R123i.w; -// 18 -R123i.x = ((-(intBitsToFloat(R125i.y)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.w)))):(PV1i.w)); -PV0i.x = R123i.x; -// 19 -R123i.z = ((intBitsToFloat(R1i.w) == 0.0)?(R125i.y):(PV0i.x)); -PV1i.z = R123i.z; -// 20 -R125i.y = int(intBitsToFloat(PV1i.z)); -PS0i = R125i.y; -// 21 -R126i.w = floatBitsToInt(float(PS0i)); -PS1i = R126i.w; -// 22 -PV0i.x = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -PV0i.z = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -R125i.x = floatBitsToInt(float(R125i.y)); -PS0i = R125i.x; -// 23 -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(intBitsToFloat(PV0i.z))); -PV1i.z = floatBitsToInt(abs(intBitsToFloat(PS0i)) * 0.25); -R124i.w = floatBitsToInt(abs(intBitsToFloat(PS0i))); -// 24 -PV0i.y = floatBitsToInt(trunc(intBitsToFloat(PV1i.z))); -R123i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * 0.5 + intBitsToFloat(R126i.w))); -PV0i.w = R123i.w; -// 25 -R126i.x = floatBitsToInt((-(intBitsToFloat(PV0i.y)) * 4.0 + intBitsToFloat(R124i.w))); -PV1i.x = R126i.x; -PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * 0.25); -// 26 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.y))); -PV0i.y = floatBitsToInt((intBitsToFloat(PV1i.x) >= 4.0)?1.0:0.0); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0xc0800000)); -// 27 -R124i.w = ((intBitsToFloat(PV0i.y) == 0.0)?(R126i.x):(PV0i.z)); -PV1i.w = R124i.w; -PS1i = int(intBitsToFloat(PV0i.x)); -// 28 -PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + 4.0); -R1i.w = PS1i + 0x0000001b; -PS0i = int(uf_blockVS7[48].z); -// 29 -R123i.z = ((-(intBitsToFloat(R124i.w)) > 0.0)?(PV0i.x):(R124i.w)); -PV1i.z = R123i.z; -R124i.w = floatBitsToInt(float(PS0i)); -PS1i = R124i.w; -// 30 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(PS1i))) + 0.0); -R123i.y = ((-(intBitsToFloat(R125i.x)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.z)))):(PV1i.z)); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt((0.0 >= abs(intBitsToFloat(PS1i)))?1.0:0.0); -// 31 -R125i.y = ((intBitsToFloat(PV0i.z) == 0.0)?(0):(PV0i.x)); -PV1i.y = R125i.y; -PS1i = int(intBitsToFloat(PV0i.y)); -// 32 -PV0i.x = int(-1) + PS1i; -R126i.y = 0xfffffffd + PS1i; -R127i.z = 0xfffffffe + PS1i; -PV0i.w = floatBitsToInt(abs(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.y)); -PS0i = floatBitsToInt(float(PS1i)); -// 33 -R123i.x = ((-(intBitsToFloat(R125i.y)) > 0.0)?(PV0i.w):(R125i.y)); -PV1i.x = R123i.x; -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PS1i = floatBitsToInt(float(PV0i.x)); -// 34 -PV0i.x = floatBitsToInt((0.0 > intBitsToFloat(PS1i))?1.0:0.0); -PV0i.y = floatBitsToInt((intBitsToFloat(PS1i) > 0.0)?1.0:0.0); -R126i.z = ((intBitsToFloat(R124i.w) == 0.0)?(0):(PV1i.x)); -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.y))); -PS0i = floatBitsToInt(float(R127i.z)); -// 35 -PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + -(intBitsToFloat(PV0i.x))); -PV1i.y = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -PV1i.w = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -R125i.x = int(intBitsToFloat(PV0i.w)); -PS1i = R125i.x; -// 36 -PV0i.x = 0 - PS1i; -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(PV1i.y))); -R127i.z = int(intBitsToFloat(PV1i.x)); -PS0i = R127i.z; -// 37 -PV1i.x = 0 - PS0i; -PV1i.y = max(R125i.x, PV0i.x); -R125i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R125i.y; -// 38 -R3i.x = int(1) - PV1i.y; -PV0i.y = 0 - PS1i; -PV0i.w = max(R127i.z, PV1i.x); -PS0i = floatBitsToInt(float(R126i.y)); -// 39 -PV1i.x = max(R125i.y, PV0i.y); -R2i.y = int(1) - PV0i.w; -PV1i.z = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.w = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R3i.y = int(intBitsToFloat(R126i.z)); -PS1i = R3i.y; -// 40 -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + -(intBitsToFloat(PV1i.w))); -R5i.z = int(1) - PV1i.x; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.w)); -// 41 -PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.0); -R124i.w = int(intBitsToFloat(PV0i.y)); -PS1i = R124i.w; -// 42 -PV0i.x = 0 - PS1i; -PV0i.z = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R0i.w = floatBitsToInt(1.0 / uf_blockVS7[48].z); -PS0i = R0i.w; -// 43 -PV1i.z = max(R124i.w, PV0i.x); -R4i.y = int(intBitsToFloat(PV0i.z)); -PS1i = R4i.y; -// 44 -R9i.y = int(1) - PV1i.z; -} -if( activeMaskStackC[3] == true ) { -R1i.xyzw = floatBitsToInt(uf_blockVS7[R1i.w].xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -R126i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].x, intBitsToFloat(R0i.w))); -PV0i.x = R126i.x; -R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), uf_blockVS7[45].y)); -R125i.y = floatBitsToInt(intBitsToFloat(R125i.y) * 2.0); -R127i.z = ((R6i.z == 0)?(0):(int(1))); -PV0i.z = R127i.z; -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), uf_blockVS7[45].x)); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); -R126i.w = R9i.y * R1i.w; -PS0i = R126i.w; -// 1 -PV1i.x = floatBitsToInt(uf_blockVS7[44].z + uf_blockVS7[45].x); -R126i.y = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); -R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(PV0i.x)) + -(0.5))); -PV1i.w = floatBitsToInt(uf_blockVS7[44].w + uf_blockVS7[45].y); -R125i.x = R5i.z * R1i.z; -PS1i = R125i.x; -// 2 -PV0i.x = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.w)); -PV0i.y = floatBitsToInt(uf_blockVS7[46].x + uf_blockVS7[46].z); -PV0i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(uf_blockVS7[46].y + uf_blockVS7[46].w); -R126i.z = R2i.y * R1i.y; -PS0i = R126i.z; -// 3 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),uf_blockVS7[46].w) + intBitsToFloat(PV0i.w))); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),uf_blockVS7[46].z) + intBitsToFloat(PV0i.y))); -PV1i.y = R123i.y; -R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),uf_blockVS7[44].x) + -(intBitsToFloat(PV0i.z)))); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[44].y) + intBitsToFloat(PV0i.x))); -PS1i = R3i.x * R1i.x; -// 4 -R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[45].z) + intBitsToFloat(PV1i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[45].w) + intBitsToFloat(PV1i.x))); -PV0i.z = (R127i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); -PV0i.w = R126i.z + PS1i; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[48].w); -// 5 -PV1i.x = R125i.x + PV0i.w; -R125i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[48].y, intBitsToFloat(PS0i))); -PV1i.y = R125i.y; -R123i.z = ((PV0i.z == 0)?(R7i.x):(R7i.z)); -PV1i.z = R123i.z; -R127i.w = ((PV0i.z == 0)?(R7i.y):(R7i.x)); -PS1i = floatBitsToInt(float(R3i.y)); -// 6 -backupReg0i = R126i.x; -backupReg1i = R125i.z; -R126i.x = ((R126i.y == 0)?(PV1i.z):(R7i.y)); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PV1i.y)) + -(0.5))); -R125i.z = R126i.w + PV1i.x; -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS1i)) + intBitsToFloat(backupReg1i))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(float(R4i.y)); -// 7 -backupReg0i = R124i.z; -R123i.x = ((R126i.y == 0)?(R127i.w):(R7i.z)); -PV1i.x = R123i.x; -R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.y)),intBitsToFloat(PS0i)) + intBitsToFloat(R124i.w))); -PV1i.y = R123i.y; -R124i.z = ((R126i.y == 0)?(R7i.x):(R7i.y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); -R127i.z = ((R126i.y == 0)?(R7i.y):(R7i.z)); -PS1i = R127i.z; -// 8 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R124i.y)) + -(intBitsToFloat(PV1i.y)))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].x, intBitsToFloat(R126i.x))); -R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); -R124i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[50].y, intBitsToFloat(PV1i.x))); -R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); -PS0i = int(uf_blockVS7[53].z); -// 9 -PV1i.x = floatBitsToInt(uf_blockVS7[49].w + uf_blockVS7[50].y); -R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + 0.5); -PV1i.z = floatBitsToInt(uf_blockVS7[49].z + uf_blockVS7[50].x); -R1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -R126i.w = floatBitsToInt(float(PS0i)); -PS1i = R126i.w; -// 10 -backupReg0i = R127i.y; -R127i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(-(intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.z)); -R126i.z = floatBitsToInt(-(intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(uf_blockVS7[51].x + uf_blockVS7[51].z); -R126i.x = floatBitsToInt(float(R125i.z)); -PS0i = R126i.x; -// 11 -backupReg0i = R125i.z; -PV1i.x = floatBitsToInt((intBitsToFloat(PS0i) > 0.0)?1.0:0.0); -PV1i.y = floatBitsToInt(uf_blockVS7[51].y + uf_blockVS7[51].w); -PV1i.z = floatBitsToInt((0.0 > intBitsToFloat(PS0i))?1.0:0.0); -R124i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].z,intBitsToFloat(R124i.z)) + intBitsToFloat(PV0i.w))); -R125i.z = floatBitsToInt(float(backupReg0i)); -PS1i = R125i.z; -// 12 -backupReg0i = R127i.z; -R125i.x = floatBitsToInt(abs(intBitsToFloat(PS1i))); -PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(intBitsToFloat(PV1i.z))); -R127i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[51].w,intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); -R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.w)),uf_blockVS7[49].x) + -(intBitsToFloat(R127i.y)))); -PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(R126i.w))); -// 13 -PV1i.x = floatBitsToInt(mul_nonIEEE(abs(intBitsToFloat(R125i.z)), intBitsToFloat(PS0i))); -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[49].y) + intBitsToFloat(R126i.z))); -R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[50].z) + intBitsToFloat(R124i.w))); -R123i.w = floatBitsToInt((intBitsToFloat(PV0i.y) * 0.5 + intBitsToFloat(R126i.x))); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); -// 14 -PV0i.x = floatBitsToInt(trunc(intBitsToFloat(PV1i.x))); -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.w),uf_blockVS7[50].w) + intBitsToFloat(R127i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(PS1i)); -PS0i = floatBitsToInt(1.0 / uf_blockVS7[53].z); -// 15 -R7i.x = floatBitsToInt(intBitsToFloat(R10i.w) + 0.0); -PV1i.y = floatBitsToInt(trunc(intBitsToFloat(PV0i.z))); -R124i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].x, intBitsToFloat(PS0i))); -PV1i.z = R124i.z; -R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.x)) + intBitsToFloat(R125i.x))); -PV1i.w = R124i.w; -PS1i = floatBitsToInt(1.0 / uf_blockVS7[53].w); -// 16 -PV0i.x = floatBitsToInt(-(abs(intBitsToFloat(R126i.w))) + intBitsToFloat(PV1i.w)); -R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.z)) + -(0.5))); -PV0i.z = floatBitsToInt((intBitsToFloat(PV1i.w) >= abs(intBitsToFloat(R126i.w)))?1.0:0.0); -R127i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[53].y, intBitsToFloat(PS1i))); -PV0i.w = R127i.w; -PS0i = int(intBitsToFloat(PV1i.y)); -// 17 -R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), uf_blockVS7[58].x)); -R126i.y = ((intBitsToFloat(PV0i.z) == 0.0)?(R124i.w):(PV0i.x)); -PV1i.y = R126i.y; -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), uf_blockVS7[58].y)); -R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PV0i.w)) + -(0.5))); -PS1i = floatBitsToInt(float(PS0i)); -// 18 -backupReg0i = R127i.y; -PV0i.x = floatBitsToInt(abs(intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.y)); -R127i.y = floatBitsToInt(intBitsToFloat(R6i.x) + -(uf_blockVS7[93].x)); -R126i.z = floatBitsToInt(-(uf_blockVS7[93].x) + uf_blockVS7[93].y); -R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PS1i)) + intBitsToFloat(backupReg0i))); -PV0i.w = R123i.w; -PS0i = floatBitsToInt(1.0 / uf_blockVS7[58].z); -// 19 -R123i.x = ((-(intBitsToFloat(R126i.y)) > 0.0)?(PV0i.x):(R126i.y)); -PV1i.x = R123i.x; -R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R127i.x))); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R124i.w)) + -(intBitsToFloat(PV0i.w)))); -PV1i.z = R123i.z; -R3i.w = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[104].w)); -PS1i = floatBitsToInt(1.0 / uf_blockVS7[58].w); -// 20 -R4i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + 0.5); -R126i.y = floatBitsToInt(-(uf_blockVS7[104].x) + uf_blockVS7[105].x); -R123i.z = ((-(intBitsToFloat(R125i.z)) > 0.0)?(floatBitsToInt(-(intBitsToFloat(PV1i.x)))):(PV1i.x)); -PV0i.z = R123i.z; -R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.z))); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.z)); -// 21 -R127i.x = floatBitsToInt(-(uf_blockVS7[104].w) + uf_blockVS7[105].w); -R123i.y = ((intBitsToFloat(R126i.w) == 0.0)?(R125i.z):(PV0i.z)); -PV1i.y = R123i.y; -R7i.w = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(PS0i)); -R7i.w = clampFI32(R7i.w); -// 22 -PS0i = int(intBitsToFloat(PV1i.y)); -// 23 -R5i.x = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[106].w)); -R125i.z = floatBitsToInt(-(uf_blockVS7[105].w) + uf_blockVS7[106].w); -R2i.w = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[105].w)); -PS1i = floatBitsToInt(float(PS0i)); -// 24 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R125i.w))); -PV0i.x = R123i.x; -R7i.y = floatBitsToInt(-(uf_blockVS7[105].x) + uf_blockVS7[106].x); -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); -// 25 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); -R3i.y = floatBitsToInt(-(uf_blockVS7[106].x) + uf_blockVS7[107].x); -R7i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(PS0i)); -R4i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); -PS1i = R4i.y; -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R4i.y; -R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(R7i.z)) + uf_blockVS7[104].x)); -R4i.y = floatBitsToInt(intBitsToFloat(R6i.x) + 0.5); -R125i.z = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[107].w)); -PV0i.z = R125i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(R7i.y) * intBitsToFloat(backupReg0i)); -R126i.w = ((intBitsToFloat(R3i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS0i = R126i.w; -// 1 -R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[105].x)); -R126i.y = ((intBitsToFloat(R2i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.y = R126i.y; -R124i.z = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[108].w)); -PV1i.z = R124i.z; -R125i.w = ((intBitsToFloat(R5i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV1i.w = R125i.w; -R125i.y = ((intBitsToFloat(PV0i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PS1i = R125i.y; -// 2 -R126i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R126i.x; -PV0i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); -PV0i.w = floatBitsToInt(-(uf_blockVS7[106].w) + uf_blockVS7[107].w); -R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -PS0i = R127i.x; -// 3 -R125i.x = floatBitsToInt(-(uf_blockVS7[107].x) + uf_blockVS7[108].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV0i.y))); -R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.z))); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 4 -PV0i.x = floatBitsToInt(-(uf_blockVS7[107].w) + uf_blockVS7[108].w); -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R127i.x))); -PV0i.z = floatBitsToInt(intBitsToFloat(R3i.y) * intBitsToFloat(PS1i)); -R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.y))); -R126i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + 1.0); -PS0i = R126i.y; -// 5 -R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.z)) + uf_blockVS7[106].x)); -R126i.w = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[109].w)); -PV1i.w = R126i.w; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 6 -backupReg0i = R125i.x; -R125i.x = ((intBitsToFloat(PV1i.w) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R125i.x; -R125i.y = floatBitsToInt(-(uf_blockVS7[108].x) + uf_blockVS7[109].x); -R8i.z = 0; -PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -// 7 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.w)) + uf_blockVS7[107].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R126i.z = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[110].w)); -PV1i.z = R126i.z; -// 8 -R127i.x = ((intBitsToFloat(PV1i.z) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R127i.x; -R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(-(uf_blockVS7[108].w) + uf_blockVS7[109].w); -PS0i = floatBitsToInt(intBitsToFloat(R11i.z) * intBitsToFloat(R11i.z)); -// 9 -R126i.x = floatBitsToInt(-(uf_blockVS7[109].x) + uf_blockVS7[110].x); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R123i.z = floatBitsToInt((intBitsToFloat(R11i.y) * intBitsToFloat(R11i.y) + intBitsToFloat(PS0i))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 10 -backupReg0i = R125i.y; -PV0i.x = floatBitsToInt(-(uf_blockVS7[109].w) + uf_blockVS7[110].w); -R125i.y = floatBitsToInt((intBitsToFloat(R13i.x) * intBitsToFloat(R13i.x) + intBitsToFloat(PV1i.z))); -PV0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(PS1i)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV1i.y))); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R7i.x) + -(uf_blockVS7[111].w)); -R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV0i.z)) + uf_blockVS7[108].x)); -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); -// 12 -backupReg0i = R125i.y; -R7i.x = ((intBitsToFloat(PV1i.x) >= 0.0)?(floatBitsToInt(1.0)):(0)); -PV0i.x = R7i.x; -R125i.y = floatBitsToInt(-(uf_blockVS7[110].x) + uf_blockVS7[111].x); -PV0i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(PS1i)); -tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); -R125i.w = floatBitsToInt(tempResultf); -PS0i = R125i.w; -// 13 -R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + uf_blockVS7[109].x)); -PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); -R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PS0i))); -PV1i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[104].x, intBitsToFloat(R126i.y))); -R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(PS0i))); -PS1i = R126i.x; -// 14 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV1i.w))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(R125i.w))); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV1i.y))); -PV0i.w = floatBitsToInt(-(uf_blockVS7[110].w) + uf_blockVS7[111].w); -R125i.w = 0; -PS0i = R125i.w; -// 15 -R127i.x = floatBitsToInt(uf_blockVS6[0].y); -R126i.y = floatBitsToInt(uf_blockVS6[1].y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); -// 16 -PV0i.x = floatBitsToInt(uf_blockVS6[2].y); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.z))); -PV0i.y = R123i.y; -R127i.z = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(PS1i)); -// 17 -backupReg0i = R124i.z; -backupReg0i = R124i.z; -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg0i)),vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(R125i.w))))); -PV1i.x = tempi.x; -PV1i.y = tempi.x; -PV1i.z = tempi.x; -PV1i.w = tempi.x; -R124i.z = tempi.x; -R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y))); -PS1i = R122i.x; -// 18 -R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(R125i.z)) + intBitsToFloat(PS1i))); -PV0i.x = R123i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)) + uf_blockVS7[110].x)); -// 19 -backupReg0i = R125i.x; -R125i.x = floatBitsToInt(uf_blockVS6[17].x + -(intBitsToFloat(R4i.w))); -PV1i.y = floatBitsToInt(intBitsToFloat(R124i.z) + intBitsToFloat(0x3edc28f6)); -PV1i.y = clampFI32(PV1i.y); -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R2i.w)) + intBitsToFloat(PV0i.x))); -PV1i.z = R123i.z; -R127i.w = floatBitsToInt(uf_blockVS6[17].y + -(intBitsToFloat(R5i.y))); -R124i.z = floatBitsToInt(uf_blockVS6[17].z + -(intBitsToFloat(R9i.z))); -PS1i = R124i.z; -// 20 -PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(PS1i)); -R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R7i.z)) + intBitsToFloat(PV1i.z))); -PV0i.w = R123i.w; -tempResultf = max(0.0, intBitsToFloat(PV1i.y)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -R5i.x = floatBitsToInt(tempResultf); -PS0i = R5i.x; -// 21 -R123i.x = floatBitsToInt((intBitsToFloat(R127i.w) * intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.x))); -PV1i.x = R123i.x; -R9i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[111].x,intBitsToFloat(R7i.x)) + intBitsToFloat(PV0i.w))); -// 22 -R123i.y = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x))); -PV0i.y = R123i.y; -// 23 -tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); -PS1i = floatBitsToInt(tempResultf); -// 24 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); -R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); -R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); -} -if( activeMaskStackC[3] == true ) { -// 0 -tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R5i.y),intBitsToFloat(R7i.z),-0.0),vec4(uf_blockVS13[28].x,uf_blockVS13[28].y,uf_blockVS13[28].z,0.0))); -tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) / 2.0); -PV0i.x = tempi.x; -PV0i.y = tempi.x; -PV0i.z = tempi.x; -PV0i.w = tempi.x; -// 1 -PV1i.x = floatBitsToInt(min(uf_blockVS6[17].y, uf_blockVS13[27].z)); -R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + 0.5); -PV1i.y = R127i.y; -// 2 -R125i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS13[37].x) + -(uf_blockVS13[37].y))); -R123i.y = clampFI32(R123i.y); -PV0i.y = R123i.y; -PV0i.z = floatBitsToInt(-(intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.x)); -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS13[38].z, intBitsToFloat(R5i.x))); -R122i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626))); -PS0i = R122i.x; -// 3 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),uf_blockVS13[22].x) + -(uf_blockVS13[22].y))); -R123i.y = clampFI32(R123i.y); -PV1i.y = R123i.y; -R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PS0i)) + intBitsToFloat(0xbe593484))); -PV1i.z = R123i.z; -R123i.w = floatBitsToInt((mul_nonIEEE(uf_blockVS13[27].y,intBitsToFloat(PV0i.z)) + uf_blockVS13[27].x)); -R123i.w = clampFI32(R123i.w); -PV1i.w = R123i.w; -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); -// 4 -R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), uf_blockVS13[26].w)); -R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(0x3fc90da4))); -PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); -R127i.w = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[38].w),intBitsToFloat(PS1i)) + 1.0)); -tempResultf = max(0.0, intBitsToFloat(PV1i.x)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS0i = floatBitsToInt(tempResultf); -// 5 -PV1i.y = floatBitsToInt(uf_blockVS13[28].y + 1.0); -PV1i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS13[38].x, intBitsToFloat(PS0i))); -R125i.w = floatBitsToInt((uf_blockVS13[28].y * 1.0 + intBitsToFloat(R8i.x))); -tempResultf = max(0.0, intBitsToFloat(PV0i.z)); -tempResultf = log2(tempResultf); -if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; -PS1i = floatBitsToInt(tempResultf); -// 6 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].y, intBitsToFloat(PS1i))); -R127i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS13[23].x, intBitsToFloat(PS1i))); -PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * 1.5); -PV0i.z = clampFI32(PV0i.z); -PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); -// 7 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); -R124i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x41700000)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); -PS1i = floatBitsToInt(intBitsToFloat(PS1i) / 2.0); -// 8 -R5i.y = floatBitsToInt(intBitsToFloat(PS1i) + 0.5); -PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); -PS0i = floatBitsToInt(sqrt(intBitsToFloat(R125i.x))); -// 9 -PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f22f983)); -R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), uf_blockVS13[25].w)); -PS1i = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); -// 10 -R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R126i.y))) + 1.0)); -PV0i.y = floatBitsToInt(intBitsToFloat(R11i.y) * intBitsToFloat(R10i.x)); -R123i.z = floatBitsToInt((mul_nonIEEE(-(uf_blockVS13[23].z),intBitsToFloat(PS1i)) + uf_blockVS13[23].z)); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -R10i.w = 0; -PS0i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); -// 11 -PV1i.x = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(PS0i)); -R7i.y = ((0.0 >= intBitsToFloat(R7i.w))?int(0xFFFFFFFF):int(0x0)); -PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + -0.0); -PV1i.z = clampFI32(PV1i.z); -PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); -R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),intBitsToFloat(R7i.w)) + 0.0)); -PS1i = R2i.x; -// 12 -R11i.x = PV1i.z; -R6i.y = PV1i.z; -R123i.z = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3f333333) + intBitsToFloat(0x3e19999a))); -R123i.z = clampFI32(R123i.z); -PV0i.z = R123i.z; -PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.x), intBitsToFloat(0x3e4ccccd))); -R1i.z = floatBitsToInt(uf_blockVS6[18].y * intBitsToFloat(0x40a00000)); -PS0i = R1i.z; -// 13 -PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); -R3i.y = 0; -PV1i.y = R3i.y; -R7i.z = floatBitsToInt(min(intBitsToFloat(PV0i.w), 1.0)); -R4i.w = 0; -R0i.x = 0; -PS1i = R0i.x; -// 14 -R1i.x = R16i.x; -R14i.y = R15i.y; -R0i.z = R24i.z; -PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x40200000)); -R3i.w = ((R7i.y == 0)?(R10i.z):(PV1i.y)); -PS0i = R3i.w; -// 15 -backupReg0i = R8i.y; -R10i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3daaaaab)); -R8i.y = ((R7i.y == 0)?(R12i.x):(R1i.z)); -R9i.z = ((R7i.y == 0)?(backupReg0i):(R4i.w)); -R8i.w = ((R7i.y == 0)?(R5i.w):(R5i.w)); -R7i.w = ((R7i.y == 0)?(R2i.x):(R0i.x)); -PS1i = R7i.w; -} -if( activeMaskStackC[3] == true ) { -R5i.xyz = floatBitsToInt(texture(textureUnitVS8, intBitsToFloat(R5i.xy)).xyz); -R10i.xyzw = floatBitsToInt(texture(textureUnitVS13, intBitsToFloat(R10i.xw)).xyzw); -} -if( activeMaskStackC[3] == true ) { -// 0 -backupReg0i = R5i.z; -R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(R7i.z))); -R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R7i.z))); -R5i.z = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].z)); -R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R7i.z))); -R7i.z = ((R7i.y == 0)?(R9i.y):(R9i.y)); -PS0i = R7i.z; -// 1 -R5i.x = ((R7i.y == 0)?(R18i.z):(R18i.z)); -R5i.y = floatBitsToInt(mul_nonIEEE(uf_blockVS11[2].w, uf_blockVS14[0].w)); -R6i.z = ((R7i.y == 0)?(0):(0x3f800000)); -PV1i.z = R6i.z; -R123i.w = ((R7i.y == 0)?(0):(R2i.w)); -PV1i.w = R123i.w; -R122i.x = ((R7i.y == 0)?(0):(R7i.x)); -PS1i = R122i.x; -// 2 -R19i.x = ((PV1i.z == 0)?(R2i.w):(PV1i.w)); -R19i.y = ((PV1i.z == 0)?(R7i.x):(PS1i)); -R123i.z = ((R7i.y == 0)?(0):(R6i.y)); -PV0i.z = R123i.z; -R123i.w = ((R7i.y == 0)?(0):(R8i.z)); -PV0i.w = R123i.w; -R122i.x = ((R7i.y == 0)?(0):(R126i.y)); -PS0i = R122i.x; -// 3 -R20i.x = ((R6i.z == 0)?(R126i.y):(PS0i)); -R126i.y = ((R7i.y == 0)?(0):(R125i.w)); -R19i.z = ((R6i.z == 0)?(R6i.y):(PV0i.z)); -R19i.w = ((R6i.z == 0)?(R8i.z):(PV0i.w)); -R127i.x = ((R7i.y == 0)?(0):(R11i.x)); -PS1i = R127i.x; -// 4 -R126i.x = ((R7i.y == 0)?(0):(R10i.w)); -R127i.y = ((R7i.y == 0)?(0):(R10i.z)); -R123i.z = ((R7i.y == 0)?(0):(R125i.x)); -PV0i.z = R123i.z; -R127i.w = ((R7i.y == 0)?(0):(R10i.x)); -R6i.y = ((R7i.y == 0)?(0):(R0i.z)); -PS0i = R6i.y; -// 5 -backupReg0i = R11i.x; -R11i.x = ((R7i.y == 0)?(0):(R1i.w)); -R20i.y = ((R6i.z == 0)?(R125i.x):(PV0i.z)); -PV1i.y = R20i.y; -R20i.z = ((R6i.z == 0)?(R125i.w):(R126i.y)); -R20i.w = ((R6i.z == 0)?(backupReg0i):(R127i.x)); -// 6 -R21i.x = ((R6i.z == 0)?(R10i.x):(R127i.w)); -R123i.z = ((R7i.y == 0)?(0):(R10i.y)); -PV0i.z = R123i.z; -R2i.w = ((R7i.y == 0)?(0):(R1i.x)); -R0i.y = ((R7i.y == 0)?(0):(R1i.z)); -PS0i = R0i.y; -// 7 -R21i.y = ((R6i.z == 0)?(R10i.y):(PV0i.z)); -R21i.z = ((R6i.z == 0)?(R10i.z):(R127i.y)); -R21i.w = ((R6i.z == 0)?(R10i.w):(R126i.x)); -// 8 -R10i.z = ((R7i.y == 0)?(0):(R14i.y)); -} -if( activeMaskStackC[3] == true ) { -// 0 -PV0i.x = floatBitsToInt(mul_nonIEEE(uf_blockVS7[44].y, intBitsToFloat(R5i.y))); -R127i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS7[49].y,intBitsToFloat(R5i.z)) + intBitsToFloat(R4i.y))); -R124i.z = floatBitsToInt((mul_nonIEEE(uf_blockVS7[44].y,intBitsToFloat(R5i.z)) + intBitsToFloat(R1i.y))); -PV0i.z = R124i.z; -PV0i.w = floatBitsToInt(mul_nonIEEE(uf_blockVS7[49].y, intBitsToFloat(R5i.y))); -// 1 -R126i.x = floatBitsToInt((mul_nonIEEE(uf_blockVS11[3].w,intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.x))); -R123i.y = ((R7i.y == 0)?(0):(PV0i.z)); -PV1i.y = R123i.y; -PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), uf_blockVS7[54].y)); -R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),uf_blockVS11[3].w) + intBitsToFloat(R1i.w))); -PV1i.w = R127i.w; -R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),uf_blockVS7[54].y) + intBitsToFloat(R2i.y))); -PS1i = R1i.x; -// 2 -R22i.x = ((R6i.z == 0)?(R124i.z):(PV1i.y)); -R1i.y = floatBitsToInt((mul_nonIEEE(uf_blockVS11[3].w,intBitsToFloat(PV1i.z)) + intBitsToFloat(R0i.w))); -PV0i.y = R1i.y; -R123i.z = ((R7i.y == 0)?(0):(PV1i.w)); -PV0i.z = R123i.z; -R123i.w = ((R7i.y == 0)?(0):(PS1i)); -PV0i.w = R123i.w; -R122i.x = ((R7i.y == 0)?(0):(R127i.y)); -PS0i = R122i.x; -// 3 -R4i.x = ((R6i.z == 0)?(R1i.x):(PV0i.w)); -R22i.y = ((R6i.z == 0)?(R127i.w):(PV0i.z)); -R22i.z = ((R6i.z == 0)?(R127i.y):(PS0i)); -R123i.w = ((R7i.y == 0)?(0):(PV0i.y)); -PV1i.w = R123i.w; -R122i.x = ((R7i.y == 0)?(0):(R126i.x)); -PS1i = R122i.x; -// 4 -R123i.x = ((R7i.y == 0)?(R18i.x):(R0i.x)); -PV0i.x = R123i.x; -R4i.y = ((R6i.z == 0)?(R1i.y):(PV1i.w)); -R124i.z = ((R7i.y == 0)?(R18i.z):(R18i.z)); -R22i.w = ((R6i.z == 0)?(R126i.x):(PS1i)); -R126i.z = ((R7i.y == 0)?(R17i.w):(R5i.w)); -PS0i = R126i.z; -// 5 -R18i.x = ((R6i.z == 0)?(R7i.w):(PV0i.x)); -R123i.y = ((R7i.y == 0)?(0):(R13i.x)); -PV1i.y = R123i.y; -R127i.z = ((R7i.y == 0)?(0):(R11i.z)); -R123i.w = ((R7i.y == 0)?(R18i.y):(R9i.y)); -PV1i.w = R123i.w; -R122i.x = ((R7i.y == 0)?(0):(R14i.x)); -PS1i = R122i.x; -// 6 -backupReg0i = R14i.x; -R23i.x = ((R6i.z == 0)?(R13i.x):(PV1i.y)); -R18i.y = ((R6i.z == 0)?(R7i.z):(PV1i.w)); -R18i.z = ((R6i.z == 0)?(R5i.x):(R124i.z)); -R123i.w = ((R7i.y == 0)?(0):(R11i.y)); -PV0i.w = R123i.w; -R14i.x = ((R6i.z == 0)?(backupReg0i):(PS1i)); -PS0i = R14i.x; -// 7 -R123i.x = ((R7i.y == 0)?(0):(R6i.w)); -PV1i.x = R123i.x; -R23i.y = ((R6i.z == 0)?(R11i.y):(PV0i.w)); -R23i.z = ((R6i.z == 0)?(R11i.z):(R127i.z)); -R125i.w = ((R7i.y == 0)?(0):(R15i.x)); -PS1i = R16i.x; -// 8 -R10i.x = ((R6i.z == 0)?(PS1i):(R2i.w)); -R14i.y = ((R6i.z == 0)?(R6i.w):(PV1i.x)); -R123i.z = ((R7i.y == 0)?(0):(R12i.z)); -PV0i.z = R123i.z; -R127i.w = ((R7i.y == 0)?(0):(R12i.y)); -R122i.x = ((R7i.y == 0)?(0):(R13i.z)); -PS0i = R122i.x; -// 9 -R24i.x = ((R6i.z == 0)?(R13i.z):(PS0i)); -R123i.y = ((R7i.y == 0)?(R17i.x):(R3i.y)); -PV1i.y = R123i.y; -R123i.z = ((R7i.y == 0)?(R17i.y):(R4i.w)); -PV1i.z = R123i.z; -R23i.w = ((R6i.z == 0)?(R12i.z):(PV0i.z)); -// 10 -R17i.x = ((R6i.z == 0)?(R3i.w):(PV1i.y)); -R17i.y = ((R6i.z == 0)?(R9i.z):(PV1i.z)); -R123i.z = ((R7i.y == 0)?(0):(R14i.z)); -PV0i.z = R123i.z; -PV0i.w = R15i.y; -// 11 -R10i.y = ((R6i.z == 0)?(PV0i.w):(R10i.z)); -R24i.y = ((R6i.z == 0)?(R14i.z):(PV0i.z)); -PS1i = R24i.y; -// 12 -R126i.x = ((R7i.y == 0)?(0):(R13i.y)); -PV0i.y = R24i.z; -R123i.w = ((R7i.y == 0)?(0):(R15i.z)); -PV0i.w = R123i.w; -// 13 -R10i.z = ((R6i.z == 0)?(PV0i.y):(R6i.y)); -R14i.w = ((R6i.z == 0)?(R12i.y):(R127i.w)); -R14i.z = ((R6i.z == 0)?(R15i.z):(PV0i.w)); -PS1i = R14i.z; -// 14 -R123i.x = ((R7i.y == 0)?(R17i.z):(R1i.z)); -PV0i.x = R123i.x; -R24i.z = ((R6i.z == 0)?(R13i.y):(R126i.x)); -R24i.w = ((R6i.z == 0)?(R15i.x):(R125i.w)); -// 15 -R17i.z = ((R6i.z == 0)?(R8i.y):(PV0i.x)); -R17i.w = ((R6i.z == 0)?(R8i.w):(R126i.z)); -R10i.w = ((R6i.z == 0)?(R11i.x):(R11i.x)); -PS1i = R10i.w; -// 16 -R4i.z = ((R6i.z == 0)?(R1i.z):(R0i.y)); -} -activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; -// export -//gl_Position = vec4(intBitsToFloat(R17i.x), intBitsToFloat(R17i.y), intBitsToFloat(R17i.z), intBitsToFloat(R17i.w)); -SET_POSITION(vec4(0.0)); -// export -passParameterSem0 = vec4(intBitsToFloat(R24i.x), intBitsToFloat(R24i.y), intBitsToFloat(R24i.z), intBitsToFloat(R24i.w)); -// export -passParameterSem1 = vec4(intBitsToFloat(R14i.x), intBitsToFloat(R14i.y), intBitsToFloat(R14i.z), intBitsToFloat(R14i.w)); -// export -passParameterSem3 = vec4(intBitsToFloat(R23i.x), intBitsToFloat(R23i.y), intBitsToFloat(R23i.z), intBitsToFloat(R23i.w)); -// export -passParameterSem8 = vec4(intBitsToFloat(R22i.x), intBitsToFloat(R22i.y), intBitsToFloat(R22i.z), intBitsToFloat(R22i.w)); -// export -passParameterSem11 = vec4(intBitsToFloat(R10i.x), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)); -// export -passParameterSem14 = vec4(intBitsToFloat(R21i.x), intBitsToFloat(R21i.y), intBitsToFloat(R21i.z), intBitsToFloat(R21i.w)); -// export -passParameterSem15 = vec4(intBitsToFloat(R20i.x), intBitsToFloat(R20i.y), intBitsToFloat(R20i.z), intBitsToFloat(R20i.w)); -// export -passParameterSem16 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); -// export -passParameterSem4 = vec4(intBitsToFloat(R18i.x), intBitsToFloat(R18i.y), intBitsToFloat(R18i.z), intBitsToFloat(R18i.z)); -// export -passParameterSem9 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.z)); -} diff --git a/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/rules.txt b/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/rules.txt deleted file mode 100644 index 0575acbb..00000000 --- a/Workarounds/BreathOfTheWild_Nvidia_StretchedClouds/rules.txt +++ /dev/null @@ -1,8 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = Stretched Clouds workaround (NVIDIA GPU and OpenGL) -path = "The Legend of Zelda: Breath of the Wild/Workarounds/GPU specific workarounds for OpenGL/NVIDIA: Stretched Clouds" -description = Workaround for some low-hanging clouds appearing to be stretched if you're using OpenGL and an NVIDIA GPU. Made by Exzap. -vendorFilter = nvidia -rendererFilter = opengl -version = 4