diff --git a/Source/HyruleWarriors_Resolution/492839ddc5f8f43e_0000000000000000_vs.txt b/Source/HyruleWarriors_Resolution/492839ddc5f8f43e_0000000000000000_vs.txt index 8a8ea35c..8a64ef98 100644 --- a/Source/HyruleWarriors_Resolution/492839ddc5f8f43e_0000000000000000_vs.txt +++ b/Source/HyruleWarriors_Resolution/492839ddc5f8f43e_0000000000000000_vs.txt @@ -3,7 +3,8 @@ #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_packing : enable // shader 492839ddc5f8f43e //3rd level dof -const float resScale = ($height/$gameHeight)*$internalRes; +const float resXScale = intBitsToFloat($width)/intBitsToFloat($gameWidth); +const float resYScale = intBitsToFloat($height)/intBitsToFloat($gameHeight); uniform ivec4 uf_uniformRegisterVS[256]; uniform vec2 uf_windowSpaceToClipSpaceTransform; layout(location = 0) in uvec4 attrDataSem0; @@ -222,18 +223,18 @@ tempResultf = clamp(tempResultf, -256.0, 255.0); ARi.x = int(tempResultf); PV1i.x = floatBitsToInt(tempResultf); // 2 -PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resScale); -PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resScale); -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resScale); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resScale); +PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resXScale); +PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resXScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resXScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resXScale); // 3 PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_uniformRegisterVS[1].y))); PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[1].y))); // 4 -Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale)); -Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale); +Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale)); +Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale); // 5 tempResulti = Ri[1].x; tempResulti = clamp(tempResulti, -256, 255); diff --git a/Source/HyruleWarriors_Resolution/945d9672d0114248_0000000000000000_vs.txt b/Source/HyruleWarriors_Resolution/945d9672d0114248_0000000000000000_vs.txt index 5195f65a..40fe9994 100644 --- a/Source/HyruleWarriors_Resolution/945d9672d0114248_0000000000000000_vs.txt +++ b/Source/HyruleWarriors_Resolution/945d9672d0114248_0000000000000000_vs.txt @@ -3,7 +3,8 @@ #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_packing : enable // shader 945d9672d0114248 -const float resScale = ($height/$gameHeight); +const float resXScale = intBitsToFloat($width)/intBitsToFloat($gameWidth); +const float resYScale = intBitsToFloat($height)/intBitsToFloat($gameHeight); uniform ivec4 uf_uniformRegisterVS[256]; uniform vec2 uf_windowSpaceToClipSpaceTransform; layout(location = 0) in uvec4 attrDataSem0; @@ -186,9 +187,9 @@ Ri[2] = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), float if( activeMaskStackC[1] == true ) { // 0 Ri[3].y = 0; -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resXScale); PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resXScale); PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); // 1 PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); @@ -224,18 +225,18 @@ tempResultf = clamp(tempResultf, -256.0, 255.0); ARi.x = int(tempResultf); PV1i.x = floatBitsToInt(tempResultf); // 2 -PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resScale); -PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resScale); -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resScale); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resScale); +PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resXScale); +PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resXScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resXScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resXScale); // 3 PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_uniformRegisterVS[1].y))); PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[1].y))); // 4 -Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale)); -Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale); +Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale)); +Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale); // 5 tempResulti = Ri[1].x; tempResulti = clamp(tempResulti, -256, 255); diff --git a/Source/HyruleWarriors_Resolution/b3609db7d1363f6a_0000000000000000_vs.txt b/Source/HyruleWarriors_Resolution/b3609db7d1363f6a_0000000000000000_vs.txt index bb45889e..b976c3a1 100644 --- a/Source/HyruleWarriors_Resolution/b3609db7d1363f6a_0000000000000000_vs.txt +++ b/Source/HyruleWarriors_Resolution/b3609db7d1363f6a_0000000000000000_vs.txt @@ -4,7 +4,8 @@ #extension GL_ARB_shading_language_packing : enable // shader b3609db7d1363f6a //cutscene dof -const float resScale = ($height/$gameHeight)*$internalRes; +const float resXScale = intBitsToFloat($width)/intBitsToFloat($gameWidth); +const float resYScale = intBitsToFloat($height)/intBitsToFloat($gameHeight); uniform ivec4 uf_uniformRegisterVS[256]; uniform vec2 uf_windowSpaceToClipSpaceTransform; layout(location = 0) in uvec4 attrDataSem0; @@ -191,9 +192,9 @@ Ri[2] = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), float if( activeMaskStackC[1] == true ) { // 0 Ri[3].y = 0; -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resXScale); PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resXScale); PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); // 1 PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); @@ -229,18 +230,18 @@ tempResultf = clamp(tempResultf, -256.0, 255.0); ARi.x = int(tempResultf); PV1i.x = floatBitsToInt(tempResultf); // 2 -PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resScale); -PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resScale); -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resScale); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resScale); +PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resXScale); +PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resXScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resXScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resXScale); // 3 PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_uniformRegisterVS[1].y))); PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[1].y))); // 4 -Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale)); -Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale); +Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale)); +Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale); // 5 tempResulti = Ri[1].x; tempResulti = clamp(tempResulti, -256, 255); diff --git a/Source/HyruleWarriors_Resolution/f9feadb214b483b7_0000000000000000_vs.txt b/Source/HyruleWarriors_Resolution/f9feadb214b483b7_0000000000000000_vs.txt index 97141c7f..929a2914 100644 --- a/Source/HyruleWarriors_Resolution/f9feadb214b483b7_0000000000000000_vs.txt +++ b/Source/HyruleWarriors_Resolution/f9feadb214b483b7_0000000000000000_vs.txt @@ -3,7 +3,8 @@ #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_shading_language_packing : enable // shader f9feadb214b483b7 -const float resScale = ($height/$gameHeight)*$internalRes; +const float resXScale = intBitsToFloat($width)/intBitsToFloat($gameWidth); +const float resYScale = intBitsToFloat($height)/intBitsToFloat($gameHeight); uniform ivec4 uf_uniformRegisterVS[256]; uniform vec2 uf_windowSpaceToClipSpaceTransform; layout(location = 0) in uvec4 attrDataSem0; @@ -189,9 +190,9 @@ Ri[2] = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), float if( activeMaskStackC[1] == true ) { // 0 Ri[3].y = 0; -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[1].y) + intBitsToFloat(uf_uniformRegisterVS[0].y)/resXScale); PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[1].x) + intBitsToFloat(uf_uniformRegisterVS[0].x)/resXScale); PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); // 1 PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + -(1.0)); @@ -227,18 +228,18 @@ tempResultf = clamp(tempResultf, -256.0, 255.0); ARi.x = int(tempResultf); PV1i.x = floatBitsToInt(tempResultf); // 2 -PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resScale); -PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resScale); -PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resScale); -PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resScale); +PV0i.x = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].y)/resXScale); +PV0i.y = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].x)/resXScale); +PV0i.z = floatBitsToInt(intBitsToFloat(Ri[2].y) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].w)/resXScale); +PV0i.w = floatBitsToInt(intBitsToFloat(Ri[2].x) + intBitsToFloat(uf_uniformRegisterVS[ARi.x+2].z)/resXScale); // 3 PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_uniformRegisterVS[1].y))); PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_uniformRegisterVS[1].x))); PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[1].y))); // 4 -Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resScale)); -Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resScale); +Ri[0].xyz = floatBitsToInt(vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.z)) + vec3(intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale,intBitsToFloat(uf_uniformRegisterVS[1].z)/resXScale)); +Ri[0].w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(uf_uniformRegisterVS[1].w)/resXScale); // 5 tempResulti = Ri[1].x; tempResulti = clamp(tempResulti, -256, 255); diff --git a/Source/HyruleWarriors_Resolution/rules.txt b/Source/HyruleWarriors_Resolution/rules.txt index ff295074..917add84 100644 --- a/Source/HyruleWarriors_Resolution/rules.txt +++ b/Source/HyruleWarriors_Resolution/rules.txt @@ -76,7 +76,7 @@ $scaleBlur = 0.5 [Preset] name = 5760x1080 (48:9 HD) -$width = 2560 +$width = 5760 $height = 1080 $gameWidth = 1280 $gameHeight = 720 @@ -174,7 +174,7 @@ $scaleShader = 1.0 $scaleBlur = 1.0 [Preset] -name = 5120x2160 (4k 48:9) +name = 115200x2160 (4k 48:9) $width = 11520 $height = 2160 $gameWidth = 1280