Delete Resolutions/WindWakerHD_Resolution directory

This commit is contained in:
intra0 2024-12-13 22:36:01 -06:00 committed by GitHub
parent 7ec157a3ac
commit 27e9d4d175
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 0 additions and 999 deletions

View File

@ -1,106 +0,0 @@
#version 420
#extension GL_ARB_texture_gather : enable
#extension GL_ARB_separate_shader_objects : enable
#ifdef VULKAN
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
#define gl_VertexID gl_VertexIndex
#define gl_InstanceID gl_InstanceIndex
#else
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
#define SET_POSITION(_v) gl_Position = _v
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
#endif
// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 1f83c0d47b1c4c34 //box downscale
const float resXScale = (float($height)/float($gameHeight));
const float resYScale = (float($width)/float($gameWidth));
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
};
#else
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
#endif
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
out gl_PerVertex
{
vec4 gl_Position;
float gl_PointSize;
};
layout(location = 0) out vec4 passParameterSem3;
int clampFI32(int v)
{
if( v == 0x7FFFFFFF )
return floatBitsToInt(1.0);
else if( v == 0xFFFFFFFF )
return floatBitsToInt(0.0);
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
}
float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));}
void main()
{
vec4 R0f = vec4(0.0);
vec4 R1f = vec4(0.0);
vec4 R2f = vec4(0.0);
uvec4 attrDecoder;
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
vec4 PV0f = vec4(0.0), PV1f = vec4(0.0);
float PS0f = 0.0, PS1f = 0.0;
vec4 tempf = vec4(0.0);
float tempResultf;
int tempResulti;
ivec4 ARi = ivec4(0);
bool predResult = true;
vec3 cubeMapSTM;
int cubeMapFaceId;
R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID));
attrDecoder.xyz = attrDataSem0.xyz;
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
attrDecoder.w = 0;
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
attrDecoder.xy = attrDataSem1.xy;
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
attrDecoder.z = 0;
attrDecoder.w = 0;
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
// 0
backupReg0f = R1f.x;
backupReg1f = R1f.y;
R1f.x = backupReg0f;
R1f.x *= 2.0;
R1f.y = backupReg1f;
R1f.y *= 2.0;
R1f.z = intBitsToFloat(0xbf800000);
R1f.w = 1.0;
PS0f = R2f.x + -(intBitsToFloat(uf_remappedVS[0].x)/resYScale); //vert
// 1
backupReg0f = R2f.y;
backupReg1f = R2f.x;
PV1f.x = R2f.y + -(intBitsToFloat(uf_remappedVS[0].y)/resXScale); //horiz
R2f.y = backupReg0f + intBitsToFloat(uf_remappedVS[0].y)/resXScale; //horiz
R2f.z = PS0f;
R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resYScale; //vert
PS1f = R2f.x;
// 2
R2f.w = PV1f.x;
// export
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
// export
passParameterSem3 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
// 0
}

View File

@ -1,115 +0,0 @@
#version 420
#extension GL_ARB_texture_gather : enable
#extension GL_ARB_separate_shader_objects : enable
#ifdef VULKAN
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
#define gl_VertexID gl_VertexIndex
#define gl_InstanceID gl_InstanceIndex
#else
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
#define SET_POSITION(_v) gl_Position = _v
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
#endif
// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 4ffa96d07cd53c34
const float resXScale = (float($height)/float($gameHeight));
const float resYScale = (float($height)/float($gameHeight));
//box low res (bloom?)
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
};
#else
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
#endif
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
out gl_PerVertex
{
vec4 gl_Position;
float gl_PointSize;
};
layout(location = 0) out vec4 passParameterSem0;
layout(location = 1) out vec4 passParameterSem1;
int clampFI32(int v)
{
if( v == 0x7FFFFFFF )
return floatBitsToInt(1.0);
else if( v == 0xFFFFFFFF )
return floatBitsToInt(0.0);
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
}
float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));}
void main()
{
vec4 R0f = vec4(0.0);
vec4 R1f = vec4(0.0);
vec4 R2f = vec4(0.0);
vec4 R127f = vec4(0.0);
uvec4 attrDecoder;
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
vec4 PV0f = vec4(0.0), PV1f = vec4(0.0);
float PS0f = 0.0, PS1f = 0.0;
vec4 tempf = vec4(0.0);
float tempResultf;
int tempResulti;
ivec4 ARi = ivec4(0);
bool predResult = true;
vec3 cubeMapSTM;
int cubeMapFaceId;
R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID));
attrDecoder.xyz = attrDataSem0.xyz;
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
attrDecoder.w = 0;
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
attrDecoder.xy = attrDataSem1.xy;
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
attrDecoder.z = 0;
attrDecoder.w = 0;
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
// 0
backupReg0f = R1f.x;
backupReg1f = R1f.y;
R1f.x = backupReg0f;
R1f.x *= 2.0;
R1f.y = backupReg1f;
R1f.y *= 2.0;
R1f.z = 0.0;
R1f.w = 1.0;
R127f.x = R2f.y + intBitsToFloat(uf_remappedVS[0].w)/resYScale; //vert
PS0f = R127f.x;
// 1
backupReg0f = R2f.x;
backupReg1f = R2f.y;
backupReg0f = R2f.x;
R2f.x = backupReg0f + intBitsToFloat(uf_remappedVS[0].z)/resXScale;//hz right
R2f.y = PS0f;
PV1f.z = backupReg1f + -(intBitsToFloat(uf_remappedVS[0].w)/resYScale); ///vert
R0f.x = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].z)/resXScale); //hz left
PS1f = R0f.x;
// 2
R0f.y = R127f.x;
R0f.z = PV1f.z;
R2f.w = PV1f.z;
// export
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
// export
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.x, R2f.w);
// export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.x, R0f.z);
// 0
}

View File

@ -1,128 +0,0 @@
#version 420
#extension GL_ARB_texture_gather : enable
#extension GL_ARB_separate_shader_objects : enable
#ifdef VULKAN
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
#define gl_VertexID gl_VertexIndex
#define gl_InstanceID gl_InstanceIndex
#else
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
#define SET_POSITION(_v) gl_Position = _v
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
#endif
// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 842a19b509f8b91a //vertical pass bloom
const float resYScale = (float($height)/float($gameHeight));
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
};
#else
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
#endif
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
out gl_PerVertex
{
vec4 gl_Position;
float gl_PointSize;
};
layout(location = 0) out vec4 passParameterSem0;
layout(location = 1) out vec4 passParameterSem1;
layout(location = 2) out vec4 passParameterSem2;
int clampFI32(int v)
{
if( v == 0x7FFFFFFF )
return floatBitsToInt(1.0);
else if( v == 0xFFFFFFFF )
return floatBitsToInt(0.0);
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
}
float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));}
void main()
{
vec4 R0f = vec4(0.0);
vec4 R1f = vec4(0.0);
vec4 R2f = vec4(0.0);
vec4 R3f = vec4(0.0);
vec4 R4f = vec4(0.0);
vec4 R127f = vec4(0.0);
uvec4 attrDecoder;
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
vec4 PV0f = vec4(0.0), PV1f = vec4(0.0);
float PS0f = 0.0, PS1f = 0.0;
vec4 tempf = vec4(0.0);
float tempResultf;
int tempResulti;
ivec4 ARi = ivec4(0);
bool predResult = true;
vec3 cubeMapSTM;
int cubeMapFaceId;
R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID));
attrDecoder.xyz = attrDataSem0.xyz;
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
attrDecoder.w = 0;
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
attrDecoder.xy = attrDataSem1.xy;
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
attrDecoder.z = 0;
attrDecoder.w = 0;
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
// 0
backupReg0f = R1f.x;
backupReg1f = R1f.y;
R1f.x = backupReg0f;
R1f.x *= 2.0;
R1f.y = backupReg1f;
R1f.y *= 2.0;
R1f.z = 0.0;
R1f.w = 1.0;
PS0f = intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x3fb13a93)/resYScale; // center
// 1
PV1f.x = intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x404ec4f0)/resYScale; //wide
R127f.y = intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x40a275f7)/resYScale; //Low res pass, not first
R2f.z = R2f.y + PS0f;
PV1f.z = R2f.z;
R2f.w = R2f.y;
PV1f.w = R2f.w;
R0f.y = R2f.y + -(PS0f);
PS1f = R0f.y;
// 2
R0f.x = R2f.x;
R3f.y = R2f.y + -(PV1f.x);
R0f.z = PV1f.z;
R0f.w = PV1f.w;
R2f.z = R2f.y + PV1f.x;
PS0f = R2f.z;
// 3
R3f.x = R2f.x;
R4f.y = R2f.y + -(R127f.y);
R3f.z = PS0f;
R3f.w = R2f.y;
R2f.z = R2f.y + R127f.y;
PS1f = R2f.z;
// 4
R4f.xzw = vec3(R2f.x,PS1f,R2f.y);
// export
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
// export
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export
passParameterSem1 = vec4(R3f.x, R3f.y, R3f.z, R3f.w);
// export
passParameterSem2 = vec4(R4f.x, R4f.y, R4f.z, R4f.w);
// 0
}

View File

@ -1,126 +0,0 @@
#version 420
#extension GL_ARB_texture_gather : enable
#extension GL_ARB_separate_shader_objects : enable
#ifdef VULKAN
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
#define gl_VertexID gl_VertexIndex
#define gl_InstanceID gl_InstanceIndex
#else
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
#define SET_POSITION(_v) gl_Position = _v
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
#endif
// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 8d68a0e3561ff525 //horiztontal bloom pass
const float resXScale = (float($width)/float($gameWidth));
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
};
#else
uniform ivec4 uf_remappedVS[1];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
#endif
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
out gl_PerVertex
{
vec4 gl_Position;
float gl_PointSize;
};
layout(location = 1) out vec4 passParameterSem1;
layout(location = 2) out vec4 passParameterSem2;
layout(location = 0) out vec4 passParameterSem0;
int clampFI32(int v)
{
if( v == 0x7FFFFFFF )
return floatBitsToInt(1.0);
else if( v == 0xFFFFFFFF )
return floatBitsToInt(0.0);
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
}
float mul_nonIEEE(float a, float b){return mix(0.0, a*b, (a != 0.0) && (b != 0.0));}
void main()
{
vec4 R0f = vec4(0.0);
vec4 R1f = vec4(0.0);
vec4 R2f = vec4(0.0);
vec4 R3f = vec4(0.0);
vec4 R126f = vec4(0.0);
vec4 R127f = vec4(0.0);
uvec4 attrDecoder;
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
vec4 PV0f = vec4(0.0), PV1f = vec4(0.0);
float PS0f = 0.0, PS1f = 0.0;
vec4 tempf = vec4(0.0);
float tempResultf;
int tempResulti;
ivec4 ARi = ivec4(0);
bool predResult = true;
vec3 cubeMapSTM;
int cubeMapFaceId;
R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID));
attrDecoder.xyz = attrDataSem0.xyz;
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
attrDecoder.w = 0;
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
attrDecoder.xy = attrDataSem1.xy;
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
attrDecoder.z = 0;
attrDecoder.w = 0;
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
// 0
backupReg0f = R1f.x;
backupReg1f = R1f.y;
R1f.x = backupReg0f;
R1f.x *= 2.0;
R1f.y = backupReg1f;
R1f.y *= 2.0;
R1f.z = 0.0;
R1f.w = 1.0;
R127f.y = intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x3fb13a93)/resXScale;//center pass
PS0f = R127f.y;
// 1
PV1f.x = intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x404ec4f0)/resXScale; //wide pass
R126f.y = intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x40a275f7) /resXScale; //nothing on first pass
R3f.z = R2f.x + PS0f;
R3f.w = R2f.x;
R3f.x = R2f.y;
PS1f = R3f.x;
// 2
R0f.x = PS1f;
R3f.y = R2f.x + -(R127f.y);
R0f.z = R2f.x + PV1f.x;
R0f.w = R2f.x;
R0f.y = R2f.x + -(PV1f.x);
PS0f = R0f.y;
// 3
backupReg0f = R2f.x;
backupReg0f = R2f.x;
backupReg0f = R2f.x;
R2f.x = R3f.x;
R2f.y = backupReg0f + -(R126f.y);
R2f.z = backupReg0f + R126f.y;
R2f.w = backupReg0f;
// export
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
// export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export
passParameterSem2 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
// export
passParameterSem0 = vec4(R3f.x, R3f.y, R3f.z, R3f.w);
// 0
}

View File

@ -1,43 +0,0 @@
------
### TLoZ Wind Waker HD
------
### Graphic options
3840x4320 vert x2 SSAA - light res x2
3840x4320 vert x2 SSAA - Runs the game at double vertical res balancing look and performance when super sampling. Aspect is still 16:9 so run full screen scaling in stretched and bilinear when activating this option.
Light res x2 - Doubles resolution of light sources and mitigate light haloing around object edges.
### Nice to know when creating a custom resolution
There are some issues with AO and light sources, to mitigate this some “sub” viewports need to scale evenly. XCX uses a similar approach to get smooth shadow transitions.
Example:
```
[Preset]
name = 3440x1440 (21:9)
$width = 3440
$height = 1440
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.5
$scaleShader = (2560.0/3440.0)
$aspectRatio = (43.0/18.0)
```
Base resolution is 2560x1440 -> Uw patch res 3440
AO needs to be 2160 = 1440 * $lightSource = 1.5
We then need to scale back ultrawide to original aspect for all viewports using AO / light sources
2560 = 3440 *$scaleShader (2560.0/3440.0)
```
[TextureRedefine]
width = 1024
height = 544
formats = 0x001
overwriteWidth = ($width/$gameWidth) * (1024*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (544*$lightSource)
```

View File

@ -1,17 +0,0 @@
[WWHDAspectEUR]
moduleMatches = 0xB7E748DE
0x1004AAF0 = .float ($aspectRatio)
0x101417E0 = .float ($aspectRatio)
0x101658A8 = .float ($aspectRatio)
[WWHDAspectJAP]
moduleMatches = 0x74BD3F6A
0x1004AAF0 = .float ($aspectRatio)
0x101417F8 = .float ($aspectRatio)
0x101658C0 = .float ($aspectRatio)
[WWHDAspectUSA]
moduleMatches = 0x475BD29F
0x1004AAF0 = .float ($aspectRatio)
0x101417D0 = .float ($aspectRatio)
0x10165898 = .float ($aspectRatio)

View File

@ -1,464 +0,0 @@
[Definition]
titleIds = 0005000010143400,0005000010143600,0005000010143500
name = Resolution
path = "The Legend of Zelda: The Wind Waker HD/Graphics/Resolution"
description = Changes the resolution of the game. Made by getdls and Morph.
version = 4
[Preset]
name = 1920x1080 (Default)
$width = 1920
$height = 1080
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 320x180
$width = 320
$height = 180
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 640x360
$width = 640
$height = 360
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 960x540
$width = 960
$height = 540
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 1280x720
$width = 1280
$height = 720
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 1600x900
$width = 1600
$height = 900
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 2560x1440
$width = 2560
$height = 1440
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 2732x1536
$width = 2732
$height = 1536
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 3200x1800
$width = 3200
$height = 1800
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 3840x2160
$width = 3840
$height = 2160
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 5120x2880
$width = 5120
$height = 2880
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 7680x4320
$width = 7680
$height = 4320
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
#Resolutions |Aspect ratio
#2560×1080, 5120×2160, 8192×3456 |64:27 (2.370)
#3440×1440 |43:18 (2.38)
#1920×800, 3840×1600, 7680×3200 |12:5 (2.4)
[Preset]
name = ---- Ultra wide 21:9 ----
$width = 2560
$height = 1080
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 2.0
$scaleShader = (1920.0/2560.0)
$aspectRatio = (64.0/27.0) #LG
[Preset]
name = 2560x1080 (21:9 HD)
$width = 2560
$height = 1080
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 2.0
$scaleShader = (1920.0/2560.0)
$aspectRatio = (64.0/27.0) #LG
[Preset]
name = 3440x1440 (21:9)
$width = 3440
$height = 1440
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.5
$scaleShader = (2560.0/3440.0)
$aspectRatio = (43.0/18.0)
[Preset]
name = 3840x1600 (21:9)
$width = 3840
$height = 1600
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.35
$scaleShader = (2844.445/3840.0)
$aspectRatio = (12.0/5.0)
[Preset]
name = 5160x2160 (4k 21:9)
$width = 5160
$height = 2160
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.0
$scaleShader = (3840.0/5160.0)
$aspectRatio = (64.0/27.0) #LG
[Preset]
name = ---- Superwide 32:9 ----
$width = 5120
$height = 1440
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.5
$scaleShader = (2560.0/5120.0)
$aspectRatio = (96.0/27.0)
[Preset]
name = 5120x1440 (32:9)
$width = 5120
$height = 1440
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.5
$scaleShader = (2560.0/5120.0)
$aspectRatio = (96.0/27.0)
[Preset]
name = 7680x2160 (4k 32:9)
$width = 7680
$height = 2160
$gameWidth= 1920
$gameHeight= 1080
$lightSource = 1.0
$scaleShader = (3840.0/7680.0)
$aspectRatio = (96.0/27.0)
[Preset]
name = ---- Custom resolutions ----
$width = 1920
$height = 1080
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 2.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 1920x1080 AO fix - Light res x2
$width = 1920
$height = 1080
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 2.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 2560x1440 AO fix
$width = 2560
$height = 1440
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 1.5
$scaleShader = 1.0 #(1088.0/1440.0)
$aspectRatio = (16.0/9.0)
[Preset]
name = 3840x2160 AO fix - light res x2
$width = 3840
$height = 2160
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 2.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 1920x2160 vert x2 SSAA - light res x2
$width = 1920
$height = 2160
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 2.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
[Preset]
name = 3840x4320 vert x2 SSAA - light res x2
$width = 3840
$height = 4320 # x2
$gameWidth = 1920
$gameHeight = 1080
$lightSource = 2.0
$scaleShader = 1.0
$aspectRatio = (16.0/9.0)
## Colour depth increase - Didn't see any visual improvement.
#
#[TextureRedefine]
#formats = 0x001
#overwriteFormat = 0x005
#
#[TextureRedefine]
#formats = 0x01a
#overwriteFormat = 0x01f
#
#[TextureRedefine]
#formats = 0x019
#overwriteFormat = 0x01f
#
#[TextureRedefine]
#formats = 0x806
#overwriteFormat = 0x80e
#
#[TextureRedefine]
#formats = 0x816
#overwriteFormat = 0x820
[TextureRedefine]
width = 1920
height = 1088
formats = 0x80e,0x019,0x001
overwriteWidth = ($width/$gameWidth) * 1920
overwriteHeight = ($height/$gameHeight) * 1088
[TextureRedefine]
width = 1920
height = 1080
formats = 0x80e,0x019,0x001
overwriteWidth = ($width/$gameWidth) * 1920
overwriteHeight = ($height/$gameHeight) * 1080
[TextureRedefine]
width = 1024
height = 544
formats = 0x001
overwriteWidth = ($width/$gameWidth) * (1024*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (544*$lightSource)
[TextureRedefine]
width = 960
height = 544
formats = 0x816,0x806,0x019,0x01a,0x001,0x80e
overwriteWidth = ($width/$gameWidth) * (960*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (544*$lightSource)
[TextureRedefine]
width = 960
height = 540
formats = 0x816,0x806,0x019,0x01a,0x001,0x80e
overwriteWidth = ($width/$gameWidth) * (960*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (540*$lightSource)
[TextureRedefine]
width = 864
height = 480
formats = 0x019,0x80e
overwriteWidth = ($width/$gameWidth) * 864
overwriteHeight = ($height/$gameHeight) * 480
[TextureRedefine]
width = 854
height = 480
formats = 0x019,0x80e
overwriteWidth = ($width/$gameWidth) * 854
overwriteHeight = ($height/$gameHeight) * 480
[TextureRedefine] #
width = 512
height = 512
formats = 0x019,0x01a #,0x806
overwriteWidth = ($width/$gameWidth) * (512*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (512*$lightSource)
[TextureRedefine]
width = 480
height = 270
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (480)
overwriteHeight = ($height/$gameHeight) * (270)
[TextureRedefine]
width = 480
height = 272
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (480)
overwriteHeight = ($height/$gameHeight) * (272)
[TextureRedefine] #
width = 256
height = 256
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (256)
overwriteHeight = ($height/$gameHeight) * (256)
[TextureRedefine]
width = 256
height = 144
formats = 0x816,0x01a
overwriteWidth = ($width/$gameWidth) * (256)
overwriteHeight = ($height/$gameHeight) * (144)
[TextureRedefine]
width = 240
height = 135
formats = 0x816,0x01a
overwriteWidth = ($width/$gameWidth) * (240)
overwriteHeight = ($height/$gameHeight) * (135)
[TextureRedefine] #
width = 128
height = 128
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (128)
overwriteHeight = ($height/$gameHeight) * (128)
[TextureRedefine]
width = 128
height = 80
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (128)
overwriteHeight = ($height/$gameHeight) * (80)
[TextureRedefine]
width = 120
height = 67
#formats =
overwriteWidth = ($width/$gameWidth) * (120)
overwriteHeight = ($height/$gameHeight) * (67)
[TextureRedefine] #
width = 64
height = 64
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (64)
overwriteHeight = ($height/$gameHeight) * (64)
[TextureRedefine]
width = 64
height = 48
formats = 0x816
overwriteWidth = ($width/$gameWidth) * (64)
overwriteHeight = ($height/$gameHeight) * (48)
[TextureRedefine]
width = 60
height = 33
#formats =
overwriteWidth = ($width/$gameWidth) * (60)
overwriteHeight = ($height/$gameHeight) * (33)
[TextureRedefine] #Pictograph
width = 1600
height = 912
formats = 0x019
overwriteWidth = ($height/$gameHeight) * 1600
overwriteHeight = ($height/$gameHeight) * 912
[TextureRedefine] #Pictograph
width = 1600
height = 900
formats = 0x019
overwriteWidth = ($height/$gameHeight) * 1600
overwriteHeight = ($height/$gameHeight) * 900
### pictograph. If you try to fix this, verify that saved pictures can be loaded from album.
#
#[TextureRedefine] #pictograph
#width = 832
#height = 450
#formats = 0x01a,080e,0x41a
#overwriteWidth = ($width/$gameWidth) * 832
#overwriteHeight = ($height/$gameHeight) * 450
#
#[TextureRedefine] #pictograph
#width = 800
#height = 464
#formats = 0x01a,080e,0x41a #
#overwriteWidth = ($width/$gameWidth) * 800
#overwriteHeight = ($height/$gameHeight) * 464
#
#[TextureRedefine] #pictograph
#width = 800
#height = 450
#formats = 0x01a,080e,0x41a
#overwriteWidth = ($width/$gameWidth) * 800
#overwriteHeight = ($height/$gameHeight) * 450