From 5fa4b2a7fe2ddbb0a885239d6b0f93c2598540be Mon Sep 17 00:00:00 2001 From: Alex Chirila Date: Sat, 4 Nov 2017 11:41:30 +0200 Subject: [PATCH] [BotW] Added experimental shadow blur fix for the AMDShadows pack --- .../ffe0e8c84f6e8da9_000003c000009269_ps.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt b/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt index 38f4ab9b..910ead73 100644 --- a/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt +++ b/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt @@ -374,10 +374,10 @@ R2i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); R13i.w = PV1i.y - R127i.x; PV0i.w = R13i.w; -PS0i = floatBitsToInt(uf_blockPS6[53].y); +PS0i = floatBitsToInt(uf_blockPS6[53].y * uf_fragCoordScale.y); PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); // 3 -R6i.x = floatBitsToInt(uf_blockPS6[53].x); +R6i.x = floatBitsToInt(uf_blockPS6[53].x * uf_fragCoordScale.x); R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); PV1i.y = PV0i.w << 0x00000002; R6i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); @@ -493,7 +493,7 @@ PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); PV0i.z = R127i.z; // 13 -R7i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.z))); +R7i.x = floatBitsToInt((uf_blockPS6[53].x * uf_fragCoordScale.x * 0.5 + intBitsToFloat(PV0i.z))); R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); R127i.y = clampFI32(R127i.y); PV1i.y = R127i.y; @@ -503,18 +503,18 @@ R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R6i.x)); PS1i = R8i.x; // 14 R1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.w)); -R7i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.w))); +R7i.y = floatBitsToInt((uf_blockPS6[53].y * uf_fragCoordScale.y * 0.5 + intBitsToFloat(PV1i.w))); R7i.w = PV1i.y; R8i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R6i.z)); PS0i = R8i.y; // 15 -R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.z))); +R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * uf_fragCoordScale.x * 0.5 + intBitsToFloat(R127i.z))); R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R2i.w)); R8i.w = R127i.y; R1i.w = R127i.y; PS1i = R1i.w; // 16 -R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R127i.w))); +R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * uf_fragCoordScale.y * 0.5 + intBitsToFloat(R127i.w))); R9i.w = R127i.y; } if( activeMaskStackC[2] == true ) {