From c6ac4ecbec10f46e0a4ac664a12b60c5b19a765b Mon Sep 17 00:00:00 2001 From: Michael Date: Tue, 17 Oct 2017 22:14:03 -0700 Subject: [PATCH] [BotW] remove packs that have build script --- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Enthusiast/BreathOfTheWild_2880p/rules.txt | 233 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Enthusiast/BreathOfTheWild_4320p/rules.txt | 232 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Enthusiast/BreathOfTheWild_5760p/rules.txt | 232 ------- Performance/BreathOfTheWild_360p/rules.txt | 128 ---- Performance/BreathOfTheWild_540p/rules.txt | 128 ---- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_1080p/rules.txt | 247 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_1080pUW/patches.txt | 95 --- Quality/BreathOfTheWild_1080pUW/rules.txt | 241 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_1440p/rules.txt | 247 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_1440pUW/patches.txt | 95 --- Quality/BreathOfTheWild_1440pUW/rules.txt | 247 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_1800p/rules.txt | 241 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_2160p/rules.txt | 247 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_2160pUW/patches.txt | 95 --- Quality/BreathOfTheWild_2160pUW/rules.txt | 241 ------- .../0b9b8f5dfa16ad58_0000000000000000_vs.txt | 111 --- .../0bcd653c18367d59_0000000000000000_vs.txt | 215 ------ .../0d6127fbed646d2b_0000000000000000_vs.txt | 179 ----- .../0f2b9ee517917425_00000000000003c9_ps.txt | 656 ------------------ .../1a14de8e58d5b30a_0000000000000000_vs.txt | 224 ------ .../22c410044398c7af_0000000000000000_vs.txt | 79 --- .../2a2f55a2b2d64474_0000000000000000_vs.txt | 83 --- .../381d034349896360_0000000000000000_vs.txt | 108 --- .../4721609a424e9a1f_0000000000000000_vs.txt | 190 ----- .../5c1761d13feccdff_0000000000000000_vs.txt | 79 --- .../5c975b0e3dac0562_0000000000000000_vs.txt | 87 --- .../75a85b0cbcab764b_0000000000000000_vs.txt | 87 --- .../771e24915acbb074_0000000000000000_vs.txt | 93 --- .../81eb264a750163d9_0000000000000000_vs.txt | 107 --- .../8cab2ed476b991ea_0000000000000000_vs.txt | 85 --- .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 --- .../bb50d2ee4fa87bc2_0000000000000000_vs.txt | 172 ----- .../c92c1c4c0a2fb839_0000000000001e49_ps.txt | 157 ----- .../c9f2fd37115b0ee1_0000000000000000_vs.txt | 199 ------ .../ea9a49a6185cf1e5_0000000000000000_vs.txt | 107 --- .../f14bb57cd5c9cb77_00000000000003c9_ps.txt | 188 ----- .../f69e84515ae56e70_0000000000000000_vs.txt | 93 --- .../fc3e63a2007625f8_0000000000000000_vs.txt | 108 --- Quality/BreathOfTheWild_Switch/rules.txt | 235 ------- 269 files changed, 41783 deletions(-) delete mode 100644 Enthusiast/BreathOfTheWild_2880p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_2880p/rules.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_4320p/rules.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Enthusiast/BreathOfTheWild_5760p/rules.txt delete mode 100644 Performance/BreathOfTheWild_360p/rules.txt delete mode 100644 Performance/BreathOfTheWild_540p/rules.txt delete mode 100644 Quality/BreathOfTheWild_1080p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080p/rules.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/patches.txt delete mode 100644 Quality/BreathOfTheWild_1080pUW/rules.txt delete mode 100644 Quality/BreathOfTheWild_1440p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440p/rules.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/patches.txt delete mode 100644 Quality/BreathOfTheWild_1440pUW/rules.txt delete mode 100644 Quality/BreathOfTheWild_1800p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1800p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1800p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_1800p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_1800p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_1800p/rules.txt delete mode 100644 Quality/BreathOfTheWild_2160p/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160p/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160p/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160p/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160p/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160p/rules.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/patches.txt delete mode 100644 Quality/BreathOfTheWild_2160pUW/rules.txt delete mode 100644 Quality/BreathOfTheWild_Switch/0b9b8f5dfa16ad58_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/0bcd653c18367d59_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/0d6127fbed646d2b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/0f2b9ee517917425_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_Switch/1a14de8e58d5b30a_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/22c410044398c7af_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/2a2f55a2b2d64474_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/381d034349896360_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/4721609a424e9a1f_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/5c1761d13feccdff_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/5c975b0e3dac0562_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/75a85b0cbcab764b_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/771e24915acbb074_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/81eb264a750163d9_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/8cab2ed476b991ea_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/a5b3a5e5ab2938bc_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_Switch/bb50d2ee4fa87bc2_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/c92c1c4c0a2fb839_0000000000001e49_ps.txt delete mode 100644 Quality/BreathOfTheWild_Switch/c9f2fd37115b0ee1_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/ea9a49a6185cf1e5_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/f14bb57cd5c9cb77_00000000000003c9_ps.txt delete mode 100644 Quality/BreathOfTheWild_Switch/f69e84515ae56e70_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/fc3e63a2007625f8_0000000000000000_vs.txt delete mode 100644 Quality/BreathOfTheWild_Switch/rules.txt diff --git a/Enthusiast/BreathOfTheWild_2880p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 3ce3a35f..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_2880p/0bcd653c18367d59_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index c5bc78d6..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/0d6127fbed646d2b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 8877db40..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Enthusiast/BreathOfTheWild_2880p/0f2b9ee517917425_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_2880p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Enthusiast/BreathOfTheWild_2880p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index d9a8f3cb..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/22c410044398c7af_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index b5c69401..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 22cff640..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/381d034349896360_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 5b51784c..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_2880p/4721609a424e9a1f_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index d63cbbc0..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/5c1761d13feccdff_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index bec51b27..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Enthusiast/BreathOfTheWild_2880p/5c975b0e3dac0562_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 73d96800..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/75a85b0cbcab764b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 9536a994..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/771e24915acbb074_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index ed93d69b..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/81eb264a750163d9_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 042715cc..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_2880p/8cab2ed476b991ea_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 1f8a4a58..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Enthusiast/BreathOfTheWild_2880p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_2880p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index f9a9d4ad..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_2880p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 4ec0fc65..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_2880p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index bf67b802..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_2880p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index d8ad7dd2..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 426aa85c..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_2880p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Enthusiast/BreathOfTheWild_2880p/f69e84515ae56e70_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 1be114a7..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_2880p/fc3e63a2007625f8_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_2880p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 8ddf280f..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 4.0; -const float resYScale = 4.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_2880p/rules.txt b/Enthusiast/BreathOfTheWild_2880p/rules.txt deleted file mode 100644 index da5d5626..00000000 --- a/Enthusiast/BreathOfTheWild_2880p/rules.txt +++ /dev/null @@ -1,233 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 5120x2880" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 5120 -overwriteHeight = 2880 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 5120 -overwriteHeight = 2880 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 5120 -overwriteHeight = 2884 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 5120 -overwriteHeight = 2432 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 5120 #Scale to TV, not performance target -overwriteHeight = 2880 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1440 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 2560 -overwriteHeight = 1160 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 2560 -overwriteHeight = 1152 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 1280 -overwriteHeight = 720 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 1280 -#overwriteHeight = 580 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 1280 -#overwriteHeight = 576 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 720 -overwriteHeight = 360 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 320 -overwriteHeight = 180 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 321 -overwriteHeight = 176 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 180 -overwriteHeight = 99 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 2880 -overwriteHeight = 1440 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 5120 -overwriteHeight = 1600 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 3840 -overwriteHeight = 2160 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 2448 -overwriteHeight = 512 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 2256 -overwriteHeight = 512 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 988 -overwriteHeight = 108 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 2264 -overwriteHeight = 864 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 2048 -overwriteHeight = 1152 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 768 -overwriteHeight = 768 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 6000 -overwriteHeight = 2880 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 7680 -overwriteHeight = 3648 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 1980 -overwriteHeight = 1420 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 2220 -overwriteHeight = 1420 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 2700 -overwriteHeight = 1420 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 1664 -overwriteHeight = 933 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x1f -#overwriteWidth = 3840 -#overwriteHeight = 2160 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 1440 #x4 -overwriteHeight = 1440 #x4 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 2880 #x4 -overwriteHeight = 2880 #x4 \ No newline at end of file diff --git a/Enthusiast/BreathOfTheWild_4320p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 338fed93..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_4320p/0bcd653c18367d59_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 810af786..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/0d6127fbed646d2b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index c0c821de..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Enthusiast/BreathOfTheWild_4320p/0f2b9ee517917425_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_4320p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Enthusiast/BreathOfTheWild_4320p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 0aafd8bf..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/22c410044398c7af_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 8f578c17..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 3b4e1d45..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/381d034349896360_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 5e4c69dd..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_4320p/4721609a424e9a1f_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 2102b08a..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/5c1761d13feccdff_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 9dc7c1ed..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Enthusiast/BreathOfTheWild_4320p/5c975b0e3dac0562_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 96415818..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/75a85b0cbcab764b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index e210ed32..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/771e24915acbb074_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 81464a16..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/81eb264a750163d9_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index da417dde..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_4320p/8cab2ed476b991ea_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 027f8276..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Enthusiast/BreathOfTheWild_4320p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_4320p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index b8bb6c4a..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_4320p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 7879ee1f..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_4320p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index f97ce80f..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_4320p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 8d547125..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index c2505078..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_4320p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Enthusiast/BreathOfTheWild_4320p/f69e84515ae56e70_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 96369f81..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_4320p/fc3e63a2007625f8_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_4320p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index dd0b1093..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 6.0; -const float resYScale = 6.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_4320p/rules.txt b/Enthusiast/BreathOfTheWild_4320p/rules.txt deleted file mode 100644 index 022ca3e6..00000000 --- a/Enthusiast/BreathOfTheWild_4320p/rules.txt +++ /dev/null @@ -1,232 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 7680x4320" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 7680 -overwriteHeight = 4320 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 7680 -overwriteHeight = 4320 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 7680 -overwriteHeight = 4326 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 7680 -overwriteHeight = 3648 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 7680 #Scale to TV, not performance target -overwriteHeight = 4320 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 3840 -overwriteHeight = 2160 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 3840 -overwriteHeight = 1740 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 3840 -overwriteHeight = 1728 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 1920 -overwriteHeight = 1080 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 1920 -#overwriteHeight = 870 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 1920 -#overwriteHeight = 864 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 480 -overwriteHeight = 270 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 480 -overwriteHeight = 264 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 240 -overwriteHeight = 132 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 4320 -overwriteHeight = 2160 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 7680 -overwriteHeight = 2400 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 5760 -overwriteHeight = 3240 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 3708 -overwriteHeight = 768 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 3384 -overwriteHeight = 768 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 1482 -overwriteHeight = 312 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 3396 -overwriteHeight = 1296 -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 2880 -overwriteHeight = 1620 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 3072 -overwriteHeight = 1728 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 1152 -overwriteHeight = 1152 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 9000 -overwriteHeight = 4320 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 11520 -overwriteHeight = 5472 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 2970 -overwriteHeight = 2130 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 3330 -overwriteHeight = 2130 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 4050 -overwriteHeight = 2130 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 2496 -overwriteHeight = 1400 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x1f -#overwriteWidth = 3840 -#overwriteHeight = 2160 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 2160 #x6 -overwriteHeight = 2160 #x6 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 4320 #x6 -overwriteHeight = 4320 #x6 \ No newline at end of file diff --git a/Enthusiast/BreathOfTheWild_5760p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 6c0a8205..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_5760p/0bcd653c18367d59_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 3ad71857..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/0d6127fbed646d2b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index ee77dc07..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Enthusiast/BreathOfTheWild_5760p/0f2b9ee517917425_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_5760p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Enthusiast/BreathOfTheWild_5760p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index bca9128a..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/22c410044398c7af_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 684342ef..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 39e527bc..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/381d034349896360_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 275ded05..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_5760p/4721609a424e9a1f_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 1eba95f1..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/5c1761d13feccdff_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 27b72b43..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Enthusiast/BreathOfTheWild_5760p/5c975b0e3dac0562_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 45d5c448..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/75a85b0cbcab764b_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 2004c709..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/771e24915acbb074_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 31aefdb8..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/81eb264a750163d9_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index c55b91df..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_5760p/8cab2ed476b991ea_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 18f4474e..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Enthusiast/BreathOfTheWild_5760p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_5760p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index f829cddd..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_5760p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 29441070..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Enthusiast/BreathOfTheWild_5760p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index c4aa91bc..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Enthusiast/BreathOfTheWild_5760p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 738afd29..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index c51f6295..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Enthusiast/BreathOfTheWild_5760p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Enthusiast/BreathOfTheWild_5760p/f69e84515ae56e70_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index b58468c8..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Enthusiast/BreathOfTheWild_5760p/fc3e63a2007625f8_0000000000000000_vs.txt b/Enthusiast/BreathOfTheWild_5760p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index f1957453..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 8.0; -const float resYScale = 8.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Enthusiast/BreathOfTheWild_5760p/rules.txt b/Enthusiast/BreathOfTheWild_5760p/rules.txt deleted file mode 100644 index c9ac3cd0..00000000 --- a/Enthusiast/BreathOfTheWild_5760p/rules.txt +++ /dev/null @@ -1,232 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 10240x5760" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 10240 -overwriteHeight = 5760 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 10240 -overwriteHeight = 5760 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 10240 -overwriteHeight = 5768 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 10240 -overwriteHeight = 4864 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 10240 #Scale to TV, not performance target -overwriteHeight = 5760 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 5120 -overwriteHeight = 2880 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 5120 -overwriteHeight = 2320 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 5120 -overwriteHeight = 2304 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 2560 -overwriteHeight = 1440 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth 2560 -#overwriteHeight = 1160 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 2560 -#overwriteHeight = 1152 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 1281 -overwriteHeight = 721 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 640 -overwriteHeight = 360 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 640 -overwriteHeight = 352 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 320 -overwriteHeight = 176 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 5760 -overwriteHeight = 2880 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 10240 -overwriteHeight = 3200 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 7680 -overwriteHeight = 4230 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 4896 -overwriteHeight = 1024 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 4512 -overwriteHeight = 1024 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 1976 -overwriteHeight = 216 -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 4528 -overwriteHeight = 1728 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 3840 -overwriteHeight = 2160 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 4096 -overwriteHeight = 2304 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 1536 -overwriteHeight = 1536 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 12000 -overwriteHeight = 5760 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 15360 -overwriteHeight = 7296 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 3960 -overwriteHeight = 2840 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 4440 -overwriteHeight = 2840 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 5400 -overwriteHeight = 2840 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 3328 -overwriteHeight = 1867 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x1f -#overwriteWidth = 3840 -#overwriteHeight = 2160 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 2880 #x8 -overwriteHeight = 2880 #x8 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 5760 #x8 -overwriteHeight = 5760 #x8 \ No newline at end of file diff --git a/Performance/BreathOfTheWild_360p/rules.txt b/Performance/BreathOfTheWild_360p/rules.txt deleted file mode 100644 index 953c85c8..00000000 --- a/Performance/BreathOfTheWild_360p/rules.txt +++ /dev/null @@ -1,128 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 640x360" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008 # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 640 -overwriteHeight = 360 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 640 -overwriteHeight = 361 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 640 -overwriteHeight = 304 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 576 -overwriteHeight = 324 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -tileModesExcluded = 0x001 -overwriteWidth = 320 -overwriteHeight = 180 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 320 -overwriteHeight = 145 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 320 -overwriteHeight = 144 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 320 -overwriteHeight = 181 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -formats = 0x001 -overwriteWidth = 160 -overwriteHeight = 90 - -[TextureRedefine] #q-res2 -width = 320 -height = 145 -overwriteWidth = 160 -overwriteHeight = 73 - -[TextureRedefine] #q-res3 -width = 320 -height = 144 -overwriteWidth = 160 -overwriteHeight = 72 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 80 -overwriteHeight = 46 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 40 -overwriteHeight = 23 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 40 -overwriteHeight = 22 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 20 -overwriteHeight = 11 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 360 -overwriteHeight = 181 - -[TextureRedefine] #Gamepad -width = 854 -height = 480 -formatsExcluded = 0x034 -#overwriteWidth = 427 -#overwriteHeight = 240 - -[TextureRedefine] -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 180 -overwriteHeight = 180 - -[TextureRedefine] -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 360 -overwriteHeight = 360 \ No newline at end of file diff --git a/Performance/BreathOfTheWild_540p/rules.txt b/Performance/BreathOfTheWild_540p/rules.txt deleted file mode 100644 index 81b23f77..00000000 --- a/Performance/BreathOfTheWild_540p/rules.txt +++ /dev/null @@ -1,128 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 960x540" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008 # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 960 -overwriteHeight = 541 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 960 -overwriteHeight = 456 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -formatsExcluded = 0x008 # exclude the intro background texture -overwriteWidth = 864 -overwriteHeight = 486 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -tileModesExcluded = 0x001 -overwriteWidth = 480 -overwriteHeight = 270 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 480 -overwriteHeight = 218 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 480 -overwriteHeight = 216 - -[TextureRedefine] #half-res3 -width = 640 -height = 361 -overwriteWidth = 480 -overwriteHeight = 271 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -formats = 0x001 -overwriteWidth = 240 -overwriteHeight = 135 - -[TextureRedefine] #q-res2 -width = 320 -height = 145 -overwriteWidth = 240 -overwriteHeight = 109 - -[TextureRedefine] #q-res3 -width = 320 -height = 144 -overwriteWidth = 240 -overwriteHeight = 108 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 120 -overwriteHeight = 68 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 60 -overwriteHeight = 34 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 60 -overwriteHeight = 33 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 30 -overwriteHeight = 17 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 540 -overwriteHeight = 270 - -[TextureRedefine] #Gamepad -width = 854 -height = 480 -formatsExcluded = 0x034 -#overwriteWidth = 427 -#overwriteHeight = 240 - -[TextureRedefine] -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 180 -overwriteHeight = 180 - -[TextureRedefine] -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 360 -overwriteHeight = 360 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1080p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index ade55cf4..00000000 --- a/Quality/BreathOfTheWild_1080p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080p/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 056a942a..00000000 --- a/Quality/BreathOfTheWild_1080p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 5f5d84da..00000000 --- a/Quality/BreathOfTheWild_1080p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_1080p/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1080p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_1080p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_1080p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 4a5e2c84..00000000 --- a/Quality/BreathOfTheWild_1080p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index c15d3f52..00000000 --- a/Quality/BreathOfTheWild_1080p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 13714c17..00000000 --- a/Quality/BreathOfTheWild_1080p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 5cb0224f..00000000 --- a/Quality/BreathOfTheWild_1080p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080p/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 678a8491..00000000 --- a/Quality/BreathOfTheWild_1080p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 24915b11..00000000 --- a/Quality/BreathOfTheWild_1080p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_1080p/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index fc5302c1..00000000 --- a/Quality/BreathOfTheWild_1080p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 8c155114..00000000 --- a/Quality/BreathOfTheWild_1080p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 8315d9ae..00000000 --- a/Quality/BreathOfTheWild_1080p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 9cbbacd8..00000000 --- a/Quality/BreathOfTheWild_1080p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080p/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 6e097fac..00000000 --- a/Quality/BreathOfTheWild_1080p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_1080p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1080p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index e0dbda68..00000000 --- a/Quality/BreathOfTheWild_1080p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1080p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index f82c28cb..00000000 --- a/Quality/BreathOfTheWild_1080p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1080p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index ad4351c5..00000000 --- a/Quality/BreathOfTheWild_1080p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1080p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 003a73c3..00000000 --- a/Quality/BreathOfTheWild_1080p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 484ea0cf..00000000 --- a/Quality/BreathOfTheWild_1080p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_1080p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1080p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_1080p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_1080p/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index afe3c20e..00000000 --- a/Quality/BreathOfTheWild_1080p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080p/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index de800610..00000000 --- a/Quality/BreathOfTheWild_1080p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 1.5; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080p/rules.txt b/Quality/BreathOfTheWild_1080p/rules.txt deleted file mode 100644 index 6a8f0dfc..00000000 --- a/Quality/BreathOfTheWild_1080p/rules.txt +++ /dev/null @@ -1,247 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 1920x1080" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 1920 -overwriteHeight = 1082 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 1920 -overwriteHeight = 912 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 1728 -overwriteHeight = 972 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 960 -overwriteHeight = 435 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 960 -overwriteHeight = 432 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 960 -overwriteHeight = 541 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 480 -overwriteHeight = 270 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 480 -#overwriteHeight = 218 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 480 -#overwriteHeight = 216 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 240 -overwriteHeight = 135 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 120 -overwriteHeight = 68 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 120 -overwriteHeight = 66 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 60 -overwriteHeight = 33 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 1080 -overwriteHeight = 540 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 1920 -overwriteHeight = 600 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 1440 -overwriteHeight = 810 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 927 -overwriteHeight = 192 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 846 -overwriteHeight = 192 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 371 -overwriteHeight = 78 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 849 -overwriteHeight = 324 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 720 -overwriteHeight = 405 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 768 -overwriteHeight = 432 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 288 -overwriteHeight = 288 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 2250 -overwriteHeight = 1080 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 2880 -overwriteHeight = 1368 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 743 -overwriteHeight = 533 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 833 -overwriteHeight = 533 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 1013 -overwriteHeight = 533 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 624 -overwriteHeight = 350 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 480 -overwriteHeight = 270 - -[TextureRedefine] #title menu background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 480 -overwriteHeight = 270 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 540 #x1.5 -overwriteHeight = 540 #x1.5 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1080 #x1.5 -overwriteHeight = 1080 #x1.5 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1080pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 80daf1cb..00000000 --- a/Quality/BreathOfTheWild_1080pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080pUW/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 48325bdc..00000000 --- a/Quality/BreathOfTheWild_1080pUW/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 6b243450..00000000 --- a/Quality/BreathOfTheWild_1080pUW/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_1080pUW/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1080pUW/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_1080pUW/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_1080pUW/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index ea20cf85..00000000 --- a/Quality/BreathOfTheWild_1080pUW/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 6364c366..00000000 --- a/Quality/BreathOfTheWild_1080pUW/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 7b2500aa..00000000 --- a/Quality/BreathOfTheWild_1080pUW/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index b1164a04..00000000 --- a/Quality/BreathOfTheWild_1080pUW/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080pUW/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 919dda09..00000000 --- a/Quality/BreathOfTheWild_1080pUW/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index ce1596d0..00000000 --- a/Quality/BreathOfTheWild_1080pUW/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_1080pUW/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 512eda52..00000000 --- a/Quality/BreathOfTheWild_1080pUW/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 41ce4089..00000000 --- a/Quality/BreathOfTheWild_1080pUW/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 44537d9b..00000000 --- a/Quality/BreathOfTheWild_1080pUW/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 984a935e..00000000 --- a/Quality/BreathOfTheWild_1080pUW/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080pUW/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 3af227f5..00000000 --- a/Quality/BreathOfTheWild_1080pUW/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_1080pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1080pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index 7680c7a1..00000000 --- a/Quality/BreathOfTheWild_1080pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1080pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index d6eb0f8c..00000000 --- a/Quality/BreathOfTheWild_1080pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1080pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 73c07948..00000000 --- a/Quality/BreathOfTheWild_1080pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1080pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index f9e745bf..00000000 --- a/Quality/BreathOfTheWild_1080pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 05157952..00000000 --- a/Quality/BreathOfTheWild_1080pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_1080pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1080pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_1080pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_1080pUW/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index f042c0e3..00000000 --- a/Quality/BreathOfTheWild_1080pUW/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1080pUW/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1080pUW/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 3c5ad1a5..00000000 --- a/Quality/BreathOfTheWild_1080pUW/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 2.0; -const float resYScale = 1.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1080pUW/patches.txt b/Quality/BreathOfTheWild_1080pUW/patches.txt deleted file mode 100644 index c363423e..00000000 --- a/Quality/BreathOfTheWild_1080pUW/patches.txt +++ /dev/null @@ -1,95 +0,0 @@ -[BotwAspectsV33] -moduleMatches = 0xD91A406D -# rodata constants -0x10197FC0 = .float 2.370 -0x102CCFC0 = .float 2.370 -0x10331374 = .float 2.370 -_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 2.370 -0x102CCFC8 = .float 2.370 -0x103313A4 = .float 2.370 -_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 2.370 -0x102CD450 = .float 2.370 -0x1033182C = .float 2.370 -_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 2.370 -0x102D4E30 = .float 2.370 -0x103391B4 = .float 2.370 -_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 2.370 -0x102DF8A0 = .float 2.370 -0x1034122C = .float 2.370 -_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 2.370 -0x102DFB38 = .float 2.370 -0x103414D4 = .float 2.370 -_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) \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1080pUW/rules.txt b/Quality/BreathOfTheWild_1080pUW/rules.txt deleted file mode 100644 index 29cf1fb3..00000000 --- a/Quality/BreathOfTheWild_1080pUW/rules.txt +++ /dev/null @@ -1,241 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 2560x1080 (21:9)" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1080 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1080 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 2560 -overwriteHeight = 1082 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 2560 -overwriteHeight = 912 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 2304 -overwriteHeight = 972 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 1280 -overwriteHeight = 540 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 1280 -overwriteHeight = 435 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 1280 -overwriteHeight = 432 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 1280 -overwriteHeight = 541 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 640 -overwriteHeight = 270 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 640 -#overwriteHeight = 218 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 640 -#overwriteHeight = 216 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 320 -overwriteHeight = 135 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 160 -overwriteHeight = 68 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 160 -overwriteHeight = 66 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 80 -overwriteHeight = 33 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 1440 -overwriteHeight = 540 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 2560 -overwriteHeight = 800 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 1920 -overwriteHeight = 810 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 1224 -overwriteHeight = 192 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 1128 -overwriteHeight = 192 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 494 -overwriteHeight = 78 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 1132 -overwriteHeight = 324 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 960 -overwriteHeight = 405 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 1024 -overwriteHeight = 432 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 384 -overwriteHeight = 288 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 3000 -overwriteHeight = 1080 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 3840 -overwriteHeight = 1368 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 990 -overwriteHeight = 533 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 1110 -overwriteHeight = 533 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 1350 -overwriteHeight = 533 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 832 -overwriteHeight = 350 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 640 -overwriteHeight = 270 - -[TextureRedefine] #title menu background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 640 -overwriteHeight = 270 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 540 #x1.5 -overwriteHeight = 540 #x1.5 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1080 #x1.5 -overwriteHeight = 1080 #x1.5 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1440p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 2146be9b..00000000 --- a/Quality/BreathOfTheWild_1440p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440p/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 8cef5810..00000000 --- a/Quality/BreathOfTheWild_1440p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 596b58b6..00000000 --- a/Quality/BreathOfTheWild_1440p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_1440p/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1440p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_1440p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_1440p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 7cc15f4f..00000000 --- a/Quality/BreathOfTheWild_1440p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 37417c13..00000000 --- a/Quality/BreathOfTheWild_1440p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index a37f5a60..00000000 --- a/Quality/BreathOfTheWild_1440p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index e0b5975e..00000000 --- a/Quality/BreathOfTheWild_1440p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440p/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index d08eef5b..00000000 --- a/Quality/BreathOfTheWild_1440p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 52029baf..00000000 --- a/Quality/BreathOfTheWild_1440p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_1440p/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index c33b50a6..00000000 --- a/Quality/BreathOfTheWild_1440p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index ceb3e1c7..00000000 --- a/Quality/BreathOfTheWild_1440p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 45561db2..00000000 --- a/Quality/BreathOfTheWild_1440p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 92d5297d..00000000 --- a/Quality/BreathOfTheWild_1440p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440p/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index a4482179..00000000 --- a/Quality/BreathOfTheWild_1440p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_1440p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1440p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index 8b497401..00000000 --- a/Quality/BreathOfTheWild_1440p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1440p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 689c7802..00000000 --- a/Quality/BreathOfTheWild_1440p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1440p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index c36d9433..00000000 --- a/Quality/BreathOfTheWild_1440p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1440p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index db6bbe96..00000000 --- a/Quality/BreathOfTheWild_1440p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 81404cfa..00000000 --- a/Quality/BreathOfTheWild_1440p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_1440p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1440p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_1440p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_1440p/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index eec97690..00000000 --- a/Quality/BreathOfTheWild_1440p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440p/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 1722ee50..00000000 --- a/Quality/BreathOfTheWild_1440p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 2.0; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440p/rules.txt b/Quality/BreathOfTheWild_1440p/rules.txt deleted file mode 100644 index 872f6e10..00000000 --- a/Quality/BreathOfTheWild_1440p/rules.txt +++ /dev/null @@ -1,247 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 2560x1440" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1440 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1440 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 2560 -overwriteHeight = 1442 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 2560 -overwriteHeight = 1216 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 2560 #Scale to TV, not performance target -overwriteHeight = 1440 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 1280 -overwriteHeight = 720 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 1280 -overwriteHeight = 580 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 1280 -overwriteHeight = 576 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 1280 -overwriteHeight = 721 - -[TextureRedefine] #q-res1, main bloom, AO -width = 320 -height = 180 -overwriteWidth = 640 -overwriteHeight = 360 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 640 -#overwriteHeight = 290 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 640 -#overwriteHeight = 288 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 320 -overwriteHeight = 180 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 160 -overwriteHeight = 90 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 160 -overwriteHeight = 88 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 80 -overwriteHeight = 44 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 1440 -overwriteHeight = 720 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 2560 -overwriteHeight = 800 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 1224 -overwriteHeight = 256 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 1128 -overwriteHeight = 256 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 494 -overwriteHeight = 104 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 1132 -overwriteHeight = 432 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 1024 -overwriteHeight = 576 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 384 -overwriteHeight = 384 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 3000 -overwriteHeight = 1440 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 3840 -overwriteHeight = 1824 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 990 -overwriteHeight = 710 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 1110 -overwriteHeight = 710 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 1350 -overwriteHeight = 710 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 832 -overwriteHeight = 467 - -[TextureRedefine] #inventory and title menu background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 640 -overwriteHeight = 360 - -[TextureRedefine] #inventory and title menu background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 640 -overwriteHeight = 360 - -[TextureRedefine] #lines on map and camera rune removal -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 720 #x2 -overwriteHeight = 720 #x2 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1440 #x2 -overwriteHeight = 1440 #x2 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1440pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 3a6fa0b8..00000000 --- a/Quality/BreathOfTheWild_1440pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440pUW/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 690ae15b..00000000 --- a/Quality/BreathOfTheWild_1440pUW/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 04412b18..00000000 --- a/Quality/BreathOfTheWild_1440pUW/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_1440pUW/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1440pUW/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_1440pUW/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_1440pUW/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index c46593ea..00000000 --- a/Quality/BreathOfTheWild_1440pUW/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 9b03cddf..00000000 --- a/Quality/BreathOfTheWild_1440pUW/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 29584c23..00000000 --- a/Quality/BreathOfTheWild_1440pUW/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 2a0ddb48..00000000 --- a/Quality/BreathOfTheWild_1440pUW/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440pUW/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index beb28cf2..00000000 --- a/Quality/BreathOfTheWild_1440pUW/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 8ae31323..00000000 --- a/Quality/BreathOfTheWild_1440pUW/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_1440pUW/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 571adcac..00000000 --- a/Quality/BreathOfTheWild_1440pUW/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index ec911fdb..00000000 --- a/Quality/BreathOfTheWild_1440pUW/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index a88b7136..00000000 --- a/Quality/BreathOfTheWild_1440pUW/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 436f788b..00000000 --- a/Quality/BreathOfTheWild_1440pUW/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440pUW/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 9838233e..00000000 --- a/Quality/BreathOfTheWild_1440pUW/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_1440pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1440pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index d82cd88f..00000000 --- a/Quality/BreathOfTheWild_1440pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1440pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 876c01aa..00000000 --- a/Quality/BreathOfTheWild_1440pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1440pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 66c46242..00000000 --- a/Quality/BreathOfTheWild_1440pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1440pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 1f0f5d10..00000000 --- a/Quality/BreathOfTheWild_1440pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 085ca479..00000000 --- a/Quality/BreathOfTheWild_1440pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_1440pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1440pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_1440pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_1440pUW/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 29de8f2f..00000000 --- a/Quality/BreathOfTheWild_1440pUW/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1440pUW/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1440pUW/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 693a4fa5..00000000 --- a/Quality/BreathOfTheWild_1440pUW/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 2.6875; -const float resYScale = 2.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1440pUW/patches.txt b/Quality/BreathOfTheWild_1440pUW/patches.txt deleted file mode 100644 index 6e4afb36..00000000 --- a/Quality/BreathOfTheWild_1440pUW/patches.txt +++ /dev/null @@ -1,95 +0,0 @@ -[BotwAspectsV33] -moduleMatches = 0xD91A406D -# rodata constants -0x10197FC0 = .float 2.388 -0x102CCFC0 = .float 2.388 -0x10331374 = .float 2.388 -_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 2.388 -0x102CCFC8 = .float 2.388 -0x103313A4 = .float 2.388 -_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 2.388 -0x102CD450 = .float 2.388 -0x1033182C = .float 2.388 -_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 2.388 -0x102D4E30 = .float 2.388 -0x103391B4 = .float 2.388 -_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 2.388 -0x102DF8A0 = .float 2.388 -0x1034122C = .float 2.388 -_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 2.388 -0x102DFB38 = .float 2.388 -0x103414D4 = .float 2.388 -_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) \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1440pUW/rules.txt b/Quality/BreathOfTheWild_1440pUW/rules.txt deleted file mode 100644 index 1ea22868..00000000 --- a/Quality/BreathOfTheWild_1440pUW/rules.txt +++ /dev/null @@ -1,247 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 3440x1440 (21:9)" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 3440 -overwriteHeight = 1440 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 3440 -overwriteHeight = 1440 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 3440 -overwriteHeight = 1442 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 3440 -overwriteHeight = 1216 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 3440 #Scale to TV, not performance target -overwriteHeight = 1440 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 1720 -overwriteHeight = 720 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 1720 -overwriteHeight = 580 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 1720 -overwriteHeight = 576 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 1720 -overwriteHeight = 721 - -[TextureRedefine] #q-res1, main bloom, AO -width = 320 -height = 180 -overwriteWidth = 860 -overwriteHeight = 360 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 860 -#overwriteHeight = 290 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 860 -#overwriteHeight = 288 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 430 -overwriteHeight = 180 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 215 -overwriteHeight = 90 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 215 -overwriteHeight = 88 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 108 -overwriteHeight = 44 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 1935 -overwriteHeight = 720 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 3440 -overwriteHeight = 800 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 1645 -overwriteHeight = 256 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 1516 -overwriteHeight = 256 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 664 -overwriteHeight = 104 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 1521 -overwriteHeight = 432 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 1290 -overwriteHeight = 540 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 1376 -overwriteHeight = 576 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 516 -overwriteHeight = 384 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 4031 -overwriteHeight = 1440 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 5160 -overwriteHeight = 1824 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 1330 -overwriteHeight = 710 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 1492 -overwriteHeight = 710 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 1814 -overwriteHeight = 710 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 1118 -overwriteHeight = 467 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 860 -overwriteHeight = 360 - -[TextureRedefine] #title menu background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 860 -overwriteHeight = 360 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 720 #x2 -overwriteHeight = 720 #x2 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1440 #x2 -overwriteHeight = 1440 #x2 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_1800p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 67fb2cff..00000000 --- a/Quality/BreathOfTheWild_1800p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1800p/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 9d895cd3..00000000 --- a/Quality/BreathOfTheWild_1800p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 179d6df1..00000000 --- a/Quality/BreathOfTheWild_1800p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_1800p/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1800p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_1800p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_1800p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 2c5a107d..00000000 --- a/Quality/BreathOfTheWild_1800p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 56fc92b7..00000000 --- a/Quality/BreathOfTheWild_1800p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 778c3d34..00000000 --- a/Quality/BreathOfTheWild_1800p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index c94b5111..00000000 --- a/Quality/BreathOfTheWild_1800p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1800p/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 8b9a98d0..00000000 --- a/Quality/BreathOfTheWild_1800p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 195df68d..00000000 --- a/Quality/BreathOfTheWild_1800p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_1800p/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index d0217f6f..00000000 --- a/Quality/BreathOfTheWild_1800p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 3d04e21e..00000000 --- a/Quality/BreathOfTheWild_1800p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 73007e1a..00000000 --- a/Quality/BreathOfTheWild_1800p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index e87ae2cc..00000000 --- a/Quality/BreathOfTheWild_1800p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1800p/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 9637131d..00000000 --- a/Quality/BreathOfTheWild_1800p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_1800p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1800p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index a03291ac..00000000 --- a/Quality/BreathOfTheWild_1800p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1800p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index d9504d34..00000000 --- a/Quality/BreathOfTheWild_1800p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_1800p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 8b5570c1..00000000 --- a/Quality/BreathOfTheWild_1800p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_1800p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 56fabd89..00000000 --- a/Quality/BreathOfTheWild_1800p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 47627304..00000000 --- a/Quality/BreathOfTheWild_1800p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_1800p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_1800p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_1800p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_1800p/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 9466ea1f..00000000 --- a/Quality/BreathOfTheWild_1800p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_1800p/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_1800p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 945da6dd..00000000 --- a/Quality/BreathOfTheWild_1800p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 2.5; -const float resYScale = 2.5; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_1800p/rules.txt b/Quality/BreathOfTheWild_1800p/rules.txt deleted file mode 100644 index 4e4c1ec4..00000000 --- a/Quality/BreathOfTheWild_1800p/rules.txt +++ /dev/null @@ -1,241 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 3200x1800" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 3200 -overwriteHeight = 1800 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 3200 -overwriteHeight = 1800 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 3200 -overwriteHeight = 1802 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 3200 -overwriteHeight = 1520 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 3200 -overwriteHeight = 1800 - -[TextureRedefine] #half-res1, soft pass toon shader, -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 1600 -overwriteHeight = 900 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 1600 -overwriteHeight = 725 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 1600 -overwriteHeight = 720 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 1600 -overwriteHeight = 901 - -[TextureRedefine] #q-res1 Main bloom pass, AO -width = 320 -height = 180 -overwriteWidth = 800 -overwriteHeight = 450 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 800 -#overwriteHeight = 362 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 800 -#overwriteHeight = 360 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 200 -overwriteHeight = 112 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 200 -overwriteHeight = 110 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 100 -overwriteHeight = 55 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 1800 -overwriteHeight = 900 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 3200 -overwriteHeight = 1000 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 2400 -overwriteHeight = 1350 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 1530 -overwriteHeight = 320 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 320 -overwriteHeight = 384 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 618 -overwriteHeight = 130 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 1200 -overwriteHeight = 540 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 1200 -overwriteHeight = 675 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 1280 -overwriteHeight = 720 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 480 -overwriteHeight = 480 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 3750 -overwriteHeight = 1800 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 4800 -overwriteHeight = 2280 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 1238 -overwriteHeight = 888 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 1388 -overwriteHeight = 888 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 1688 -overwriteHeight = 888 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 1040 -overwriteHeight = 583 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 800 -overwriteHeight = 450 - -[TextureRedefine] #inventory background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 800 -overwriteHeight = 450 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 900 #x2.5 -overwriteHeight = 900 #x2.5 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1800 #x2.5 -overwriteHeight = 1800 #x2.5 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_2160p/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 30a65626..00000000 --- a/Quality/BreathOfTheWild_2160p/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160p/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 0b934541..00000000 --- a/Quality/BreathOfTheWild_2160p/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 6d8b6e44..00000000 --- a/Quality/BreathOfTheWild_2160p/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_2160p/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_2160p/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_2160p/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_2160p/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 2ac98f83..00000000 --- a/Quality/BreathOfTheWild_2160p/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index cd08d6c8..00000000 --- a/Quality/BreathOfTheWild_2160p/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index cae9808c..00000000 --- a/Quality/BreathOfTheWild_2160p/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index 4a1757d3..00000000 --- a/Quality/BreathOfTheWild_2160p/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160p/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index d5027228..00000000 --- a/Quality/BreathOfTheWild_2160p/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 4e2c9dc5..00000000 --- a/Quality/BreathOfTheWild_2160p/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_2160p/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 3784fe16..00000000 --- a/Quality/BreathOfTheWild_2160p/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index a534caf0..00000000 --- a/Quality/BreathOfTheWild_2160p/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 2a2999f7..00000000 --- a/Quality/BreathOfTheWild_2160p/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 6d3cbf1e..00000000 --- a/Quality/BreathOfTheWild_2160p/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160p/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 789d1f05..00000000 --- a/Quality/BreathOfTheWild_2160p/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_2160p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_2160p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index 3ad3947a..00000000 --- a/Quality/BreathOfTheWild_2160p/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_2160p/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index f6d3932b..00000000 --- a/Quality/BreathOfTheWild_2160p/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_2160p/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index bbe10cc9..00000000 --- a/Quality/BreathOfTheWild_2160p/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_2160p/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index cbc788b3..00000000 --- a/Quality/BreathOfTheWild_2160p/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index b0365071..00000000 --- a/Quality/BreathOfTheWild_2160p/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_2160p/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_2160p/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_2160p/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_2160p/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 04084ec5..00000000 --- a/Quality/BreathOfTheWild_2160p/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160p/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160p/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 4e054d80..00000000 --- a/Quality/BreathOfTheWild_2160p/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 3.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160p/rules.txt b/Quality/BreathOfTheWild_2160p/rules.txt deleted file mode 100644 index bda49e3a..00000000 --- a/Quality/BreathOfTheWild_2160p/rules.txt +++ /dev/null @@ -1,247 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 3840x2160" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 3840 -overwriteHeight = 2160 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 3840 -overwriteHeight = 2160 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 3840 -overwriteHeight = 2163 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 3840 -overwriteHeight = 1824 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 3840 #Scale to TV, not performance target -overwriteHeight = 2160 - -[TextureRedefine] #half-res1, soft pass toon shader, -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 1920 -overwriteHeight = 1080 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 1920 -overwriteHeight = 870 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 1920 -overwriteHeight = 864 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 1920 -overwriteHeight = 1082 - -[TextureRedefine] #q-res1 Main bloom pass, AO -width = 320 -height = 180 -overwriteWidth = 960 -overwriteHeight = 540 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 960 -#overwriteHeight = 435 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 960 -#overwriteHeight = 432 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 480 -overwriteHeight = 270 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 240 -overwriteHeight = 135 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 240 -overwriteHeight = 132 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 120 -overwriteHeight = 60 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 2160 -overwriteHeight = 1080 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1920 -#overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 3840 -overwriteHeight = 1200 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 2880 -overwriteHeight = 1620 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 1854 -overwriteHeight = 384 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 1692 -overwriteHeight = 384 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 741 -overwriteHeight = 156 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 1698 -overwriteHeight = 648 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 1440 -overwriteHeight = 810 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 1536 -overwriteHeight = 864 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 576 -overwriteHeight = 576 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 4500 -overwriteHeight = 2160 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 5760 -overwriteHeight = 2736 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 1485 -overwriteHeight = 1065 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 1665 -overwriteHeight = 1065 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 2025 -overwriteHeight = 1065 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 1248 -overwriteHeight = 699 - -[TextureRedefine] #inventory and title menu background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] #title menu background bloom -width = 320 -height = 180 -formats = 0x1a -overwriteFormat = 0x823 -overwriteWidth = 960 -overwriteHeight = 540 - -[TextureRedefine] #lines on map and camera rune removal -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 1080 #x3 -overwriteHeight = 1080 #x3 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 2160 #x3 -overwriteHeight = 2160 #x3 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_2160pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index da408238..00000000 --- a/Quality/BreathOfTheWild_2160pUW/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160pUW/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 7e81fa0d..00000000 --- a/Quality/BreathOfTheWild_2160pUW/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 60a6b238..00000000 --- a/Quality/BreathOfTheWild_2160pUW/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_2160pUW/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_2160pUW/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_2160pUW/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_2160pUW/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index 016cb95a..00000000 --- a/Quality/BreathOfTheWild_2160pUW/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index cea5ba6e..00000000 --- a/Quality/BreathOfTheWild_2160pUW/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index bad0f45c..00000000 --- a/Quality/BreathOfTheWild_2160pUW/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index f2abc798..00000000 --- a/Quality/BreathOfTheWild_2160pUW/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160pUW/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index 83d9508e..00000000 --- a/Quality/BreathOfTheWild_2160pUW/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 9238b0db..00000000 --- a/Quality/BreathOfTheWild_2160pUW/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_2160pUW/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index 331e4f14..00000000 --- a/Quality/BreathOfTheWild_2160pUW/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index a77e08ff..00000000 --- a/Quality/BreathOfTheWild_2160pUW/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index f69a059b..00000000 --- a/Quality/BreathOfTheWild_2160pUW/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index aa61f7eb..00000000 --- a/Quality/BreathOfTheWild_2160pUW/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160pUW/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index cd47b272..00000000 --- a/Quality/BreathOfTheWild_2160pUW/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_2160pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_2160pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index 47e9fe32..00000000 --- a/Quality/BreathOfTheWild_2160pUW/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_2160pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index 1024cf4f..00000000 --- a/Quality/BreathOfTheWild_2160pUW/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_2160pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 9ea51e1d..00000000 --- a/Quality/BreathOfTheWild_2160pUW/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_2160pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 604c0e91..00000000 --- a/Quality/BreathOfTheWild_2160pUW/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 2b7e630f..00000000 --- a/Quality/BreathOfTheWild_2160pUW/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_2160pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_2160pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_2160pUW/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_2160pUW/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index d2583788..00000000 --- a/Quality/BreathOfTheWild_2160pUW/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_2160pUW/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_2160pUW/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 873ee47a..00000000 --- a/Quality/BreathOfTheWild_2160pUW/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 4.0; -const float resYScale = 3.0; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_2160pUW/patches.txt b/Quality/BreathOfTheWild_2160pUW/patches.txt deleted file mode 100644 index c363423e..00000000 --- a/Quality/BreathOfTheWild_2160pUW/patches.txt +++ /dev/null @@ -1,95 +0,0 @@ -[BotwAspectsV33] -moduleMatches = 0xD91A406D -# rodata constants -0x10197FC0 = .float 2.370 -0x102CCFC0 = .float 2.370 -0x10331374 = .float 2.370 -_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 2.370 -0x102CCFC8 = .float 2.370 -0x103313A4 = .float 2.370 -_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 2.370 -0x102CD450 = .float 2.370 -0x1033182C = .float 2.370 -_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 2.370 -0x102D4E30 = .float 2.370 -0x103391B4 = .float 2.370 -_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 2.370 -0x102DF8A0 = .float 2.370 -0x1034122C = .float 2.370 -_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 2.370 -0x102DFB38 = .float 2.370 -0x103414D4 = .float 2.370 -_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) \ No newline at end of file diff --git a/Quality/BreathOfTheWild_2160pUW/rules.txt b/Quality/BreathOfTheWild_2160pUW/rules.txt deleted file mode 100644 index 3be4c3c5..00000000 --- a/Quality/BreathOfTheWild_2160pUW/rules.txt +++ /dev/null @@ -1,241 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 5120x2160 (21:9)" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 5120 -overwriteHeight = 2160 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 5120 -overwriteHeight = 2160 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 5120 -overwriteHeight = 2164 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 5120 -overwriteHeight = 1824 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 2304 -overwriteHeight = 1944 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 2560 -overwriteHeight = 1080 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 2560 -overwriteHeight = 870 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 2560 -overwriteHeight = 864 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 2560 -overwriteHeight = 1082 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 1280 -overwriteHeight = 540 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 1280 -#overwriteHeight = 436 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 1280 -#overwriteHeight = 432 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 640 -overwriteHeight = 270 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 320 -overwriteHeight = 136 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 320 -overwriteHeight = 132 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 160 -overwriteHeight = 66 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 2880 -overwriteHeight = 1080 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 5120 -overwriteHeight = 1200 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 3840 -overwriteHeight = 1620 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 2448 -overwriteHeight = 384 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 2256 -overwriteHeight = 384 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 988 -overwriteHeight = 156 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 2264 -overwriteHeight = 648 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 1920 -overwriteHeight = 810 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 2048 -overwriteHeight = 864 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 768 -overwriteHeight = 768 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 6000 -overwriteHeight = 2160 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 7680 -overwriteHeight = 2736 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 1980 -overwriteHeight = 1065 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 2220 -overwriteHeight = 1065 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 2700 -overwriteHeight = 1065 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 1664 -overwriteHeight = 699 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 1280 -overwriteHeight = 540 - -[TextureRedefine] #inventory background bloom -width = 320 -height = 180 -formats = 0x19 -overwriteFormat = 0x823 -overwriteWidth = 1280 -overwriteHeight = 540 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 - -[TextureRedefine] #shadows -width = 360 -height = 360 -formats = 0x005 -overwriteWidth = 900 #x2.5 -overwriteHeight = 900 #x2.5 - -[TextureRedefine] #shadows -width = 720 -height = 720 -formats = 0x005 -overwriteWidth = 1800 #x2.5 -overwriteHeight = 1800 #x2.5 \ No newline at end of file diff --git a/Quality/BreathOfTheWild_Switch/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/0b9b8f5dfa16ad58_0000000000000000_vs.txt deleted file mode 100644 index 5fbfea98..00000000 --- a/Quality/BreathOfTheWild_Switch/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ /dev/null @@ -1,111 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0b9b8f5dfa16ad58 -// Fixed radius blur -// main menu v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_Switch/0bcd653c18367d59_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/0bcd653c18367d59_0000000000000000_vs.txt deleted file mode 100644 index 1c063dc3..00000000 --- a/Quality/BreathOfTheWild_Switch/0bcd653c18367d59_0000000000000000_vs.txt +++ /dev/null @@ -1,215 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0bcd653c18367d59 -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/0d6127fbed646d2b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/0d6127fbed646d2b_0000000000000000_vs.txt deleted file mode 100644 index 9e8c7cf6..00000000 --- a/Quality/BreathOfTheWild_Switch/0d6127fbed646d2b_0000000000000000_vs.txt +++ /dev/null @@ -1,179 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 0d6127fbed646d2b -// AO Fix -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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 / resXScale + 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/Quality/BreathOfTheWild_Switch/0f2b9ee517917425_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_Switch/0f2b9ee517917425_00000000000003c9_ps.txt deleted file mode 100644 index 3af93a35..00000000 --- a/Quality/BreathOfTheWild_Switch/0f2b9ee517917425_00000000000003c9_ps.txt +++ /dev/null @@ -1,656 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader 0f2b9ee517917425 -// AARestore - restores native fxaa in inventory screen -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -uniform ivec4 uf_remappedPS[2]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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 ) { -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 -PV0i.x = floatBitsToInt(min(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.y = floatBitsToInt(max(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -PV0i.z = floatBitsToInt(max(intBitsToFloat(R1i.x), intBitsToFloat(R1i.z))); -PV0i.w = floatBitsToInt(min(intBitsToFloat(R2i.x), intBitsToFloat(R2i.z))); -// 1 -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)); -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 -R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), invFramebufferSize.x)); -PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.x)); -PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); -R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), invFramebufferSize.y)); -PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PV0i.z))); -// 10 -R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(R127i.y)); -R127i.x = clampFI32(R127i.x); -PV0i.x = R127i.x; -R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),invFramebufferSize.y) + intBitsToFloat(PV1i.y))); -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 -PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV1i.x))); -PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); -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/Quality/BreathOfTheWild_Switch/1a14de8e58d5b30a_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/1a14de8e58d5b30a_0000000000000000_vs.txt deleted file mode 100644 index c210cde5..00000000 --- a/Quality/BreathOfTheWild_Switch/1a14de8e58d5b30a_0000000000000000_vs.txt +++ /dev/null @@ -1,224 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 1a14de8e58d5b30a -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/22c410044398c7af_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/22c410044398c7af_0000000000000000_vs.txt deleted file mode 100644 index 312cf9d5..00000000 --- a/Quality/BreathOfTheWild_Switch/22c410044398c7af_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 22c410044398c7af -// Fixed radius blur -// shadow pass blur v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/2a2f55a2b2d64474_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/2a2f55a2b2d64474_0000000000000000_vs.txt deleted file mode 100644 index 0fb898aa..00000000 --- a/Quality/BreathOfTheWild_Switch/2a2f55a2b2d64474_0000000000000000_vs.txt +++ /dev/null @@ -1,83 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 2a2f55a2b2d64474 -// Fixed radius blur -// shadow pass blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/381d034349896360_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/381d034349896360_0000000000000000_vs.txt deleted file mode 100644 index fd88e921..00000000 --- a/Quality/BreathOfTheWild_Switch/381d034349896360_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 381d034349896360 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_Switch/4721609a424e9a1f_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/4721609a424e9a1f_0000000000000000_vs.txt deleted file mode 100644 index cf2191d0..00000000 --- a/Quality/BreathOfTheWild_Switch/4721609a424e9a1f_0000000000000000_vs.txt +++ /dev/null @@ -1,190 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 4721609a424e9a1f -// AARestore v2 - restores native aa in game -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/5c1761d13feccdff_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/5c1761d13feccdff_0000000000000000_vs.txt deleted file mode 100644 index 33c1815b..00000000 --- a/Quality/BreathOfTheWild_Switch/5c1761d13feccdff_0000000000000000_vs.txt +++ /dev/null @@ -1,79 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c1761d13feccdff -// Fixed radius blur -// fullscreen blur 1-pass h+v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale; -R2f.z = PS0f; -R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; -PS1f = R2f.x; -// 2 -R2f.w = PV1f.x; -// export -gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -// export -passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); -} diff --git a/Quality/BreathOfTheWild_Switch/5c975b0e3dac0562_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/5c975b0e3dac0562_0000000000000000_vs.txt deleted file mode 100644 index f3c86aff..00000000 --- a/Quality/BreathOfTheWild_Switch/5c975b0e3dac0562_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 5c975b0e3dac0562 -// Fixed radius blur -// bloom blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/75a85b0cbcab764b_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/75a85b0cbcab764b_0000000000000000_vs.txt deleted file mode 100644 index 4f5420dd..00000000 --- a/Quality/BreathOfTheWild_Switch/75a85b0cbcab764b_0000000000000000_vs.txt +++ /dev/null @@ -1,87 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 75a85b0cbcab764b -// Fixed radius blur -// reflection blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/771e24915acbb074_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/771e24915acbb074_0000000000000000_vs.txt deleted file mode 100644 index 8fa7ccbd..00000000 --- a/Quality/BreathOfTheWild_Switch/771e24915acbb074_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 771e24915acbb074 -// Fixed radius blur -// reflection blur v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/81eb264a750163d9_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/81eb264a750163d9_0000000000000000_vs.txt deleted file mode 100644 index 038b99e1..00000000 --- a/Quality/BreathOfTheWild_Switch/81eb264a750163d9_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 81eb264a750163d9 -// Fixed radius blur -// volumetric light blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_Switch/8cab2ed476b991ea_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/8cab2ed476b991ea_0000000000000000_vs.txt deleted file mode 100644 index 724c27bb..00000000 --- a/Quality/BreathOfTheWild_Switch/8cab2ed476b991ea_0000000000000000_vs.txt +++ /dev/null @@ -1,85 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader 8cab2ed476b991ea -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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)/resXScale); -PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); -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 -gl_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/Quality/BreathOfTheWild_Switch/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_Switch/a5b3a5e5ab2938bc_0000000000001e49_ps.txt deleted file mode 100644 index b05c4276..00000000 --- a/Quality/BreathOfTheWild_Switch/a5b3a5e5ab2938bc_0000000000001e49_ps.txt +++ /dev/null @@ -1,102 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader a5b3a5e5ab2938bc -// AARestore v2 -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedPS[3]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 1) in vec4 passParameterSem1; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_Switch/bb50d2ee4fa87bc2_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/bb50d2ee4fa87bc2_0000000000000000_vs.txt deleted file mode 100644 index fadbe643..00000000 --- a/Quality/BreathOfTheWild_Switch/bb50d2ee4fa87bc2_0000000000000000_vs.txt +++ /dev/null @@ -1,172 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader bb50d2ee4fa87bc2 -// Fixed radius blur -// in multi target scene - not sure 2 - h+v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/c92c1c4c0a2fb839_0000000000001e49_ps.txt b/Quality/BreathOfTheWild_Switch/c92c1c4c0a2fb839_0000000000001e49_ps.txt deleted file mode 100644 index 0b9d8c69..00000000 --- a/Quality/BreathOfTheWild_Switch/c92c1c4c0a2fb839_0000000000001e49_ps.txt +++ /dev/null @@ -1,157 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader c92c1c4c0a2fb839 -// Fixed radius blur -// in camera dof, samples from 2 mips -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedPS[5]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf46ac800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf4813000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -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/Quality/BreathOfTheWild_Switch/c9f2fd37115b0ee1_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/c9f2fd37115b0ee1_0000000000000000_vs.txt deleted file mode 100644 index 5aa22674..00000000 --- a/Quality/BreathOfTheWild_Switch/c9f2fd37115b0ee1_0000000000000000_vs.txt +++ /dev/null @@ -1,199 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader c9f2fd37115b0ee1 -// Fixed radius blur -// in multi target scene - not sure - h+v -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0x3db8b000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/ea9a49a6185cf1e5_0000000000000000_vs.txt deleted file mode 100644 index 14bcf3f9..00000000 --- a/Quality/BreathOfTheWild_Switch/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ /dev/null @@ -1,107 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader ea9a49a6185cf1e5 -// Reflections - corrects the incorrectly scaled reflection -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[2]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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 / resXScale + PV0f.w); -R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + 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 -gl_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/Quality/BreathOfTheWild_Switch/f14bb57cd5c9cb77_00000000000003c9_ps.txt b/Quality/BreathOfTheWild_Switch/f14bb57cd5c9cb77_00000000000003c9_ps.txt deleted file mode 100644 index a67e73a4..00000000 --- a/Quality/BreathOfTheWild_Switch/f14bb57cd5c9cb77_00000000000003c9_ps.txt +++ /dev/null @@ -1,188 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -// shader f14bb57cd5c9cb77 -// AARestore - restores native aa in game -// also includes code from Contrasty pack -// Credit to bestminr for vibrance logic -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -#define ENABLE_CONTRASTY 0 - -/*Gamma, exposure, vibrance and crushContrast can be modified */ -const float gamma = 0.81; // 1.0 is neutral Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail - -//Uncomment below and in body to scale 16-235 not recommended */ -/* -const float floor = 16.0 / 255; -const float scale = 255.0/(235.0-16.0); -*/ - -uniform ivec4 uf_remappedPS[4]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4713800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x387f8000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem2; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; - -ivec2 texSize = textureSize(textureUnitPS0, 0); -vec2 framebufferSize = vec2(float(texSize.x), float(texSize.y)); -vec2 invFramebufferSize = vec2(1.0 / framebufferSize.x, 1.0 / framebufferSize.y); - -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); -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)) + PV0f.z); -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)); -PS0f = 1.0 / PV1f.w; -// 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 -R3f.x = min(PV0f.w, intBitsToFloat(uf_remappedPS[2].y)); -R1f.y = min(PV0f.z, intBitsToFloat(uf_remappedPS[2].y)); -// 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,0.5*invFramebufferSize.x) + R0f.x); -R3f.y = (mul_nonIEEE(R1f.y,0.5*invFramebufferSize.y) + R0f.y); -R1f.x = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.x) + R0f.x); -PS0f = R1f.x; -// 1 -backupReg0f = R1f.y; -R1f.y = (mul_nonIEEE(backupReg0f,-0.5*invFramebufferSize.y) + R0f.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); - -#if (ENABLE_CONTRASTY == 1) - vec3 fColour = (passPixelColor0.xyz); - fColour = max(vec3(0.0), fColour - vec3(crushContrast)); - fColour = clamp(exposure * fColour, 0.0, 1.0); - fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - //vec3 fColour = (fColour.xyz - floor) * scale; // Not recommended 0-255->16-235.. - passPixelColor0 = vec4(fColour.x, fColour.y, fColour.z, 1.0); -#endif -} diff --git a/Quality/BreathOfTheWild_Switch/f69e84515ae56e70_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/f69e84515ae56e70_0000000000000000_vs.txt deleted file mode 100644 index 35dc8580..00000000 --- a/Quality/BreathOfTheWild_Switch/f69e84515ae56e70_0000000000000000_vs.txt +++ /dev/null @@ -1,93 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader f69e84515ae56e70 -// Fixed radius blur -// bloom blur h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[1]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 0) in uvec4 attrDataSem0; -layout(location = 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 -gl_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/Quality/BreathOfTheWild_Switch/fc3e63a2007625f8_0000000000000000_vs.txt b/Quality/BreathOfTheWild_Switch/fc3e63a2007625f8_0000000000000000_vs.txt deleted file mode 100644 index 6c543c21..00000000 --- a/Quality/BreathOfTheWild_Switch/fc3e63a2007625f8_0000000000000000_vs.txt +++ /dev/null @@ -1,108 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable -#extension GL_ARB_shading_language_packing : enable -// shader fc3e63a2007625f8 -// Fixed radius blur -// main menu h -const float resXScale = 1.25; -const float resYScale = 1.25; - -uniform ivec4 uf_remappedVS[5]; -uniform vec2 uf_windowSpaceToClipSpaceTransform; -layout(location = 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) / resXScale * intBitsToFloat(0x3fae8a72); -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 -gl_Position = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -// export -passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); -} diff --git a/Quality/BreathOfTheWild_Switch/rules.txt b/Quality/BreathOfTheWild_Switch/rules.txt deleted file mode 100644 index 6ba36c61..00000000 --- a/Quality/BreathOfTheWild_Switch/rules.txt +++ /dev/null @@ -1,235 +0,0 @@ -[Definition] -titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - 1600x900 (Switch)" -version = 2 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formats = 0x19,0x1a -#overwriteFormat = 0x1f -tileModesExcluded = 0x001 -overwriteWidth = 1600 -overwriteHeight = 900 - -[TextureRedefine] #TV -width = 1280 -height = 720 -formatsExcluded = 0x008,0x19,0x1a # exclude the intro background texture -tileModesExcluded = 0x001 -overwriteWidth = 1600 -overwriteHeight = 900 - -[TextureRedefine] #TV2 -width = 1280 -height = 721 -overwriteWidth = 1600 -overwriteHeight = 901 - -[TextureRedefine] #TV3 -width = 1280 -height = 608 -overwriteWidth = 1600 -overwriteHeight = 760 - -[TextureRedefine] #TV4 -width = 1152 -height = 648 -overwriteWidth = 1440 -overwriteHeight = 810 - -[TextureRedefine] #half-res1 -width = 640 -height = 360 -formatsExcluded = 0x431 -tileModesExcluded = 0x001 -overwriteWidth = 800 -overwriteHeight = 450 - -[TextureRedefine] #half-res2 -width = 640 -height = 290 -overwriteWidth = 800 -overwriteHeight = 362 - -[TextureRedefine] #half-res3 -width = 640 -height = 288 -overwriteWidth = 800 -overwriteHeight = 360 - -[TextureRedefine] #half-res4 -width = 640 -height = 361 -overwriteWidth = 800 -overwriteHeight = 451 - -[TextureRedefine] #q-res1 -width = 320 -height = 180 -overwriteWidth = 400 -overwriteHeight = 225 - -#[TextureRedefine] #q-res2 -#width = 320 -#height = 145 -#overwriteWidth = 400 -#overwriteHeight = 181 - -#[TextureRedefine] #q-res3 -#width = 320 -#height = 144 -#overwriteWidth = 400 -#overwriteHeight = 180 - -[TextureRedefine] #o-res1 -width = 160 -height = 90 -overwriteWidth = 200 -overwriteHeight = 112 - -[TextureRedefine] # O -width = 80 -height = 45 -overwriteWidth = 100 -overwriteHeight = 56 - -[TextureRedefine] # M -width = 80 -height = 44 -overwriteWidth = 100 -overwriteHeight = 55 - -[TextureRedefine] # G -width = 40 -height = 22 -overwriteWidth = 50 -overwriteHeight = 28 - -[TextureRedefine] #fog -width = 720 -height = 360 -overwriteWidth = 900 -overwriteHeight = 450 - -[TextureRedefine] # gamepad -width = 854 -height = 480 -#overwriteWidth = 1600 -#overwriteHeight = 900 - -[TextureRedefine] #dyeing inventory -width = 1280 -height = 400 -overwriteWidth = 1600 -overwriteHeight = 500 - -[TextureRedefine] #blur behind stable and shop menu -width = 960 -height = 540 -tileModesExcluded = 0x001 #for 1080p video -overwriteWidth = 1200 -overwriteHeight = 675 - -[TextureRedefine] #dialog box -width = 612 -height = 128 -overwriteWidth = 765 -overwriteHeight = 160 - -[TextureRedefine] #campfire ui box -width = 564 -height = 128 -overwriteWidth = 705 -overwriteHeight = 160 - -[TextureRedefine] #selection boxes -width = 247 -height = 52 -overwriteWidth = 309 -overwriteHeight = 65 - -[TextureRedefine] #new item box -width = 566 -height = 216 -overwriteWidth = 708 -overwriteHeight = 270 - -[TextureRedefine] #some blur related shit -width = 480 -height = 270 -formatsExcluded = 0x431 -overwriteWidth = 600 -overwriteHeight = 338 - -[TextureRedefine] #divine beast 3d minimap -width = 512 -height = 288 -overwriteWidth = 640 -overwriteHeight = 360 - -[TextureRedefine] #minimap -width = 192 -height = 192 -formats = 0x019 -overwriteWidth = 240 -overwriteHeight = 240 - -[TextureRedefine] #map -width = 1500 -height = 720 -overwriteWidth = 1875 -overwriteHeight = 900 - -[TextureRedefine] #hero mode path -width = 1920 -height = 912 -overwriteWidth = 2400 -overwriteHeight = 1140 - -[TextureRedefine] #open inventory and use weapon boxes -width = 495 -height = 355 -overwriteWidth = 619 -overwriteHeight = 444 - -[TextureRedefine] #choose weapon box -width = 555 -height = 355 -overwriteWidth = 694 -overwriteHeight = 444 - -[TextureRedefine] #choose bow box -width = 675 -height = 355 -overwriteWidth = 844 -overwriteHeight = 444 - -[TextureRedefine] #action blur -width = 416 -height = 233 -overwriteWidth = 520 -overwriteHeight = 291 - -[TextureRedefine] #inventory background blur -width = 320 -height = 180 -formats = 0x19 -#overwriteFormat = 0x823 -overwriteWidth = 400 -overwriteHeight = 225 - -[TextureRedefine] #title menu background bloom -width = 320 -height = 180 -formats = 0x1a -#overwriteFormat = 0x823 -overwriteWidth = 400 -overwriteHeight = 225 - -[TextureRedefine] #lines on map -width = 13 -height = 305 -#overwriteFormat = 0x234 -#overwriteWidth = 16 -#overwriteHeight = 381 \ No newline at end of file