mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-23 01:59:18 +01:00
[BOTW] Antialiasing restoration v2 code cleanup
This commit is contained in:
parent
e0a9a61734
commit
a12e7da0e2
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/4.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*4.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*4.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*4.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/4.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/6.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*6.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*6.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*6.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*6.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*6.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*6.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/6.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/6.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/8.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*8.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*8.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*8.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*8.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*8.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*8.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/8.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/8.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/1.5));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.5);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.5);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.5);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/1.5));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
@ -177,7 +181,7 @@ PS0i = R4i.w;
|
|||||||
// 5
|
// 5
|
||||||
backupReg0i = R127i.z;
|
backupReg0i = R127i.z;
|
||||||
R2i.x = floatBitsToInt(intBitsToFloat(R125i.w) * 1.5);
|
R2i.x = floatBitsToInt(intBitsToFloat(R125i.w) * 1.5);
|
||||||
R2i.y = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R2i.y = floatBitsToInt(intBitsToFloat(R127i.x) * 1.5);
|
||||||
R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R125i.x)));
|
R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(R125i.x)));
|
||||||
R6i.w = backupReg0i;
|
R6i.w = backupReg0i;
|
||||||
R6i.z = R126i.w;
|
R6i.z = R126i.w;
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.5);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.5);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/2.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/2.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.6875);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.6875);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.6875);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.6875);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/2.5));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.5);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.5);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*2.5);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*2.5);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/2.5);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/2.5);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/3.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*3.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*3.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*3.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/3.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/3.0));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*3.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*4.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/4.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/3.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 0bcd653c18367d59
|
// shader 0bcd653c18367d59
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -139,9 +143,9 @@ PS0i = R127i.y;
|
|||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(R6i.y)));
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
R126i.y = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R3i.x));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R127i.w = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS1i = R127i.w;
|
PS1i = R127i.w;
|
||||||
// 2
|
// 2
|
||||||
backupReg0i = R127i.y;
|
backupReg0i = R127i.y;
|
||||||
@ -149,26 +153,26 @@ R125i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x));
|
|||||||
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
R127i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R125i.y));
|
||||||
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PV1i.w)));
|
||||||
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R4i.w)) + intBitsToFloat(backupReg0i)));
|
||||||
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R125i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
PS0i = R125i.w;
|
PS0i = R125i.w;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R126i.y;
|
backupReg0i = R126i.y;
|
||||||
backupReg1i = R127i.x;
|
backupReg1i = R127i.x;
|
||||||
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/1.25));
|
R127i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].w)/resYScale));
|
||||||
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(backupReg0i)));
|
||||||
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R3i.x)) + intBitsToFloat(backupReg1i)));
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.25);
|
R124i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.25);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS1i = R125i.z;
|
PS1i = R125i.z;
|
||||||
// 4
|
// 4
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R127i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(R125i.y));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 1a14de8e58d5b30a
|
// shader 1a14de8e58d5b30a
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -141,7 +145,7 @@ R126i.x = floatBitsToInt(intBitsToFloat(R126i.z) + -(0.5));
|
|||||||
PV0i.x = R126i.x;
|
PV0i.x = R126i.x;
|
||||||
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
||||||
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) / 2.0);
|
||||||
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
R127i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R127i.x));
|
||||||
@ -150,7 +154,7 @@ PS0i = R127i.y;
|
|||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.z));
|
||||||
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
R125i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R126i.y));
|
||||||
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
R127i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.x));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
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)));
|
R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.y)));
|
||||||
PS1i = R125i.w;
|
PS1i = R125i.w;
|
||||||
// 4
|
// 4
|
||||||
@ -159,18 +163,18 @@ backupReg1i = R126i.z;
|
|||||||
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV1i.x)));
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(backupReg0i)));
|
||||||
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R127i.w)));
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.25);
|
R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) / 2.0);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.25);
|
R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0);
|
||||||
PS0i = R125i.z;
|
PS0i = R125i.z;
|
||||||
// 5
|
// 5
|
||||||
backupReg0i = R126i.x;
|
backupReg0i = R126i.x;
|
||||||
backupReg1i = R126i.w;
|
backupReg1i = R126i.w;
|
||||||
backupReg2i = R126i.y;
|
backupReg2i = R126i.y;
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R126i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0);
|
||||||
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
R124i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(backupReg2i));
|
||||||
|
@ -2,7 +2,11 @@
|
|||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : enable
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
// shader 4721609a424e9a1f
|
// shader 4721609a424e9a1f
|
||||||
// TAA restore
|
// 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 ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
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(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
|
||||||
@ -135,25 +139,25 @@ PS0i = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(R4i.w));
|
|||||||
// 1
|
// 1
|
||||||
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
PV1i.x = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(R4i.x));
|
||||||
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
R126i.y = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R3i.y));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R127i.w = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PS0i)));
|
||||||
PS1i = R127i.y;
|
PS1i = R127i.y;
|
||||||
// 2
|
// 2
|
||||||
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.x));
|
||||||
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.x)));
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*1.25);
|
R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].y)*resYScale);
|
||||||
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) / 2.0);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*1.25);
|
R126i.w = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].x)*resXScale);
|
||||||
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
R126i.w = floatBitsToInt(intBitsToFloat(R126i.w) / 2.0);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/1.25);
|
R124i.y = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].z)/resXScale);
|
||||||
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
R124i.y = floatBitsToInt(intBitsToFloat(R124i.y) * 2.0);
|
||||||
PS0i = R124i.y;
|
PS0i = R124i.y;
|
||||||
// 3
|
// 3
|
||||||
backupReg0i = R127i.x;
|
backupReg0i = R127i.x;
|
||||||
backupReg1i = R127i.w;
|
backupReg1i = R127i.w;
|
||||||
backupReg2i = R127i.y;
|
backupReg2i = R127i.y;
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/1.25);
|
R127i.x = floatBitsToInt(intBitsToFloat(uf_remappedVS[4].w)/resYScale);
|
||||||
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) * 2.0);
|
||||||
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.x)));
|
||||||
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
PV1i.z = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(backupReg0i));
|
||||||
|
Loading…
Reference in New Issue
Block a user