mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-29 04:44:15 +01:00
[TMS] UI aspect matching 21:9, 16:10, 16:9
Scales UI and video to match current 3d aspect.
This commit is contained in:
parent
91f6779539
commit
ef3690860c
@ -0,0 +1,112 @@
|
|||||||
|
#version 420
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
|
// shader 61b51be479ffa5dc
|
||||||
|
//text aspect
|
||||||
|
const float UI = $UIAspectX;
|
||||||
|
const float UIY = $UIAspectY;
|
||||||
|
uniform ivec4 uf_remappedVS[4];
|
||||||
|
layout(location = 0) in uvec4 attrDataSem0;
|
||||||
|
layout(location = 1) in uvec4 attrDataSem3;
|
||||||
|
layout(location = 2) in uvec4 attrDataSem8;
|
||||||
|
out gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
float gl_PointSize;
|
||||||
|
};
|
||||||
|
layout(location = 0) out vec4 passParameterSem131;
|
||||||
|
layout(location = 1) out vec4 passParameterSem136;
|
||||||
|
int clampFI32(int v)
|
||||||
|
{
|
||||||
|
if( v == 0x7FFFFFFF )
|
||||||
|
return floatBitsToInt(1.0);
|
||||||
|
else if( v == 0xFFFFFFFF )
|
||||||
|
return floatBitsToInt(0.0);
|
||||||
|
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
|
||||||
|
}
|
||||||
|
float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; }
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
ivec4 R0i = ivec4(0);
|
||||||
|
ivec4 R1i = ivec4(0);
|
||||||
|
ivec4 R2i = ivec4(0);
|
||||||
|
ivec4 R3i = ivec4(0);
|
||||||
|
ivec4 R4i = ivec4(0);
|
||||||
|
ivec4 R5i = ivec4(0);
|
||||||
|
ivec4 R127i = ivec4(0);
|
||||||
|
uvec4 attrDecoder;
|
||||||
|
int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i;
|
||||||
|
ivec4 PV0i = ivec4(0), PV1i = ivec4(0);
|
||||||
|
int PS0i = 0, PS1i = 0;
|
||||||
|
ivec4 tempi = ivec4(0);
|
||||||
|
float tempResultf;
|
||||||
|
int tempResulti;
|
||||||
|
ivec4 ARi = ivec4(0);
|
||||||
|
bool predResult = true;
|
||||||
|
vec3 cubeMapSTM;
|
||||||
|
int cubeMapFaceId;
|
||||||
|
R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID);
|
||||||
|
attrDecoder.xyz = attrDataSem0.xyz;
|
||||||
|
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
|
||||||
|
attrDecoder.w = 0;
|
||||||
|
R3i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0));
|
||||||
|
attrDecoder.xyz = attrDataSem8.xyz;
|
||||||
|
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
|
||||||
|
attrDecoder.w = 0;
|
||||||
|
R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0));
|
||||||
|
attrDecoder.xyzw = floatBitsToUint(vec4(attrDataSem3.xyzw)/255.0);
|
||||||
|
R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), int(attrDecoder.w));
|
||||||
|
// 0
|
||||||
|
PV0i.x = floatBitsToInt(-(intBitsToFloat(R1i.w)));
|
||||||
|
R127i.y = ((0.0 > intBitsToFloat(R2i.z))?int(0xFFFFFFFF):int(0x0));
|
||||||
|
PV0i.y = R127i.y;
|
||||||
|
R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.z)) + -(1.0));
|
||||||
|
R127i.w = 0x3f800000;
|
||||||
|
PV0i.w = R127i.w;
|
||||||
|
// 1
|
||||||
|
R0i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(PV0i.w)),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w))));
|
||||||
|
PV1i.x = R0i.x;
|
||||||
|
PV1i.y = R0i.x;
|
||||||
|
PV1i.z = R0i.x;
|
||||||
|
PV1i.w = R0i.x;
|
||||||
|
R4i.w = ((PV0i.y == 0)?(R1i.w):(PV0i.x));
|
||||||
|
PS1i = R4i.w;
|
||||||
|
// 2
|
||||||
|
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))));
|
||||||
|
PV0i.x = tempi.x;
|
||||||
|
PV0i.y = tempi.x;
|
||||||
|
PV0i.z = tempi.x;
|
||||||
|
PV0i.w = tempi.x;
|
||||||
|
R0i.y = tempi.x;
|
||||||
|
R5i.z = ((R127i.y == 0)?(R2i.z):(R127i.z));
|
||||||
|
PS0i = R5i.z;
|
||||||
|
// 3
|
||||||
|
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w))));
|
||||||
|
PV1i.x = tempi.x;
|
||||||
|
PV1i.y = tempi.x;
|
||||||
|
PV1i.z = tempi.x;
|
||||||
|
PV1i.w = tempi.x;
|
||||||
|
R0i.z = tempi.x;
|
||||||
|
R4i.x = ((R127i.y == 0)?(R1i.x):(R1i.x));
|
||||||
|
PS1i = R4i.x;
|
||||||
|
// 4
|
||||||
|
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w))));
|
||||||
|
PV0i.x = tempi.x;
|
||||||
|
PV0i.y = tempi.x;
|
||||||
|
PV0i.z = tempi.x;
|
||||||
|
PV0i.w = tempi.x;
|
||||||
|
R0i.w = tempi.x;
|
||||||
|
R4i.y = ((R127i.y == 0)?(R1i.y):(R1i.y));
|
||||||
|
PS0i = R4i.y;
|
||||||
|
// 5
|
||||||
|
R5i.x = ((R127i.y == 0)?(R2i.x):(R2i.x));
|
||||||
|
R5i.y = ((R127i.y == 0)?(R2i.y):(R2i.y));
|
||||||
|
R4i.z = ((R127i.y == 0)?(R1i.z):(R1i.z));
|
||||||
|
// export
|
||||||
|
gl_Position = vec4(intBitsToFloat(R0i.x)*UI, intBitsToFloat(R0i.y)*UIY, intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
|
// export
|
||||||
|
passParameterSem131 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
||||||
|
// export
|
||||||
|
passParameterSem136 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.z), intBitsToFloat(R5i.w));
|
||||||
|
}
|
@ -0,0 +1,134 @@
|
|||||||
|
#version 420
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
|
// shader 94986f08df872394
|
||||||
|
//gui aspect
|
||||||
|
const float UI = $UIAspectX;
|
||||||
|
const float UIY = $UIAspectY;
|
||||||
|
|
||||||
|
uniform ivec4 uf_remappedVS[9];
|
||||||
|
layout(location = 0) in uvec4 attrDataSem0;
|
||||||
|
layout(location = 1) in uvec4 attrDataSem3;
|
||||||
|
layout(location = 2) in uvec4 attrDataSem8;
|
||||||
|
out gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
float gl_PointSize;
|
||||||
|
};
|
||||||
|
layout(location = 0) out vec4 passParameterSem131;
|
||||||
|
layout(location = 1) out vec4 passParameterSem136;
|
||||||
|
int clampFI32(int v)
|
||||||
|
{
|
||||||
|
if( v == 0x7FFFFFFF )
|
||||||
|
return floatBitsToInt(1.0);
|
||||||
|
else if( v == 0xFFFFFFFF )
|
||||||
|
return floatBitsToInt(0.0);
|
||||||
|
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
|
||||||
|
}
|
||||||
|
float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; }
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
vec4 R0f = vec4(0.0);
|
||||||
|
vec4 R1f = vec4(0.0);
|
||||||
|
vec4 R2f = vec4(0.0);
|
||||||
|
vec4 R3f = vec4(0.0);
|
||||||
|
vec4 R127f = vec4(0.0);
|
||||||
|
uvec4 attrDecoder;
|
||||||
|
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
|
||||||
|
vec4 PV0f = vec4(0.0), PV1f = vec4(0.0);
|
||||||
|
float PS0f = 0.0, PS1f = 0.0;
|
||||||
|
vec4 tempf = vec4(0.0);
|
||||||
|
float tempResultf;
|
||||||
|
int tempResulti;
|
||||||
|
ivec4 ARi = ivec4(0);
|
||||||
|
bool predResult = true;
|
||||||
|
vec3 cubeMapSTM;
|
||||||
|
int cubeMapFaceId;
|
||||||
|
R0f = floatBitsToInt(ivec4(gl_VertexID, 0, 0, gl_InstanceID));
|
||||||
|
attrDecoder.xyz = attrDataSem0.xyz;
|
||||||
|
attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24));
|
||||||
|
attrDecoder.w = 0;
|
||||||
|
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
|
||||||
|
attrDecoder = attrDataSem3;
|
||||||
|
attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24));
|
||||||
|
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(int(attrDecoder.w)));
|
||||||
|
attrDecoder.xy = attrDataSem8.xy;
|
||||||
|
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
|
||||||
|
attrDecoder.z = 0;
|
||||||
|
attrDecoder.w = 0;
|
||||||
|
R3f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
|
||||||
|
// 0
|
||||||
|
R127f.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w)));
|
||||||
|
PV0f.x = R127f.x;
|
||||||
|
PV0f.y = R127f.x;
|
||||||
|
PV0f.z = R127f.x;
|
||||||
|
PV0f.w = R127f.x;
|
||||||
|
R0f.x = R3f.x;
|
||||||
|
PS0f = R0f.x;
|
||||||
|
// 1
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R127f.y = tempf.x;
|
||||||
|
R0f.y = R3f.y;
|
||||||
|
PS1f = R0f.y;
|
||||||
|
// 2
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R127f.z = tempf.x;
|
||||||
|
// 3
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R127f.w = tempf.x;
|
||||||
|
// 4
|
||||||
|
R2f.x = dot(vec4(R127f.x,R127f.y,R127f.z,PV1f.x),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w)));
|
||||||
|
PV0f.x = R2f.x;
|
||||||
|
PV0f.y = R2f.x;
|
||||||
|
PV0f.z = R2f.x;
|
||||||
|
PV0f.w = R2f.x;
|
||||||
|
// 5
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[5].x),intBitsToFloat(uf_remappedVS[5].y),intBitsToFloat(uf_remappedVS[5].z),intBitsToFloat(uf_remappedVS[5].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R2f.y = tempf.x;
|
||||||
|
// 6
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[6].x),intBitsToFloat(uf_remappedVS[6].y),intBitsToFloat(uf_remappedVS[6].z),intBitsToFloat(uf_remappedVS[6].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R2f.z = tempf.x;
|
||||||
|
// 7
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z),intBitsToFloat(uf_remappedVS[7].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R2f.w = tempf.x;
|
||||||
|
// 8
|
||||||
|
backupReg0f = R1f.x;
|
||||||
|
backupReg1f = R1f.y;
|
||||||
|
backupReg2f = R1f.z;
|
||||||
|
backupReg3f = R1f.w;
|
||||||
|
R1f.x = mul_nonIEEE(backupReg0f, intBitsToFloat(uf_remappedVS[8].x));
|
||||||
|
R1f.y = mul_nonIEEE(backupReg1f, intBitsToFloat(uf_remappedVS[8].y));
|
||||||
|
R1f.z = mul_nonIEEE(backupReg2f, intBitsToFloat(uf_remappedVS[8].z));
|
||||||
|
R1f.w = mul_nonIEEE(backupReg3f, intBitsToFloat(uf_remappedVS[8].w));
|
||||||
|
// export
|
||||||
|
gl_Position = vec4(R2f.x*UI, R2f.y*UIY, R2f.z, R2f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem131 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem136 = vec4(R0f.x, R0f.y, R0f.z, R0f.z);
|
||||||
|
}
|
27
Resolutions/TokyoMirage_Resolution/TMS_Readme.md
Normal file
27
Resolutions/TokyoMirage_Resolution/TMS_Readme.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
------
|
||||||
|
### Tokyo mirage sessions FE #
|
||||||
|
------
|
||||||
|
### Graphic options
|
||||||
|
|
||||||
|
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.
|
||||||
|
By default game scales GUI and pillar boxes video.
|
||||||
|
|
||||||
|
|
||||||
|
Example:
|
||||||
|
```
|
||||||
|
[Preset]
|
||||||
|
name = 2560x2160 ("21:9")
|
||||||
|
$width = 2560
|
||||||
|
$height = 2160 <- double vertical res
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0) / (2560.0 / 1080.0) <- UI aspect 21:9 scale
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (2560.0 / 1080.0) <- 3d aspect 21:9 scale
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Known issues Cemu 15:11.x
|
||||||
|
Shadows are broken
|
||||||
|
Touchpad seonsor aspect doesnt scale ie 21:9 graphics still has 16:9 sensor size
|
||||||
|
Portraits are missing due to gfx pack scaling similar values in-game
|
@ -0,0 +1,142 @@
|
|||||||
|
#version 420
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
|
// shader aae570d2455724bc
|
||||||
|
//BG fx
|
||||||
|
const float UI = $UIAspectX;
|
||||||
|
const float UIY = $UIAspectY;
|
||||||
|
uniform ivec4 uf_remappedVS[9];
|
||||||
|
layout(location = 0) in uvec4 attrDataSem0;
|
||||||
|
layout(location = 1) in uvec4 attrDataSem3;
|
||||||
|
layout(location = 2) in uvec4 attrDataSem8;
|
||||||
|
out gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
float gl_PointSize;
|
||||||
|
};
|
||||||
|
layout(location = 0) out vec4 passParameterSem131;
|
||||||
|
layout(location = 1) out vec4 passParameterSem136;
|
||||||
|
int clampFI32(int v)
|
||||||
|
{
|
||||||
|
if( v == 0x7FFFFFFF )
|
||||||
|
return floatBitsToInt(1.0);
|
||||||
|
else if( v == 0xFFFFFFFF )
|
||||||
|
return floatBitsToInt(0.0);
|
||||||
|
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
|
||||||
|
}
|
||||||
|
float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; }
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
vec4 R0f = vec4(0.0);
|
||||||
|
vec4 R1f = vec4(0.0);
|
||||||
|
vec4 R2f = vec4(0.0);
|
||||||
|
vec4 R3f = vec4(0.0);
|
||||||
|
vec4 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;
|
||||||
|
R2f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(floatBitsToInt(1.0)));
|
||||||
|
attrDecoder = attrDataSem3;
|
||||||
|
attrDecoder = (attrDecoder>>24)|((attrDecoder>>8)&0xFF00)|((attrDecoder<<8)&0xFF0000)|((attrDecoder<<24));
|
||||||
|
R1f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(int(attrDecoder.z)), intBitsToFloat(int(attrDecoder.w)));
|
||||||
|
attrDecoder.xy = attrDataSem8.xy;
|
||||||
|
attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24));
|
||||||
|
attrDecoder.z = 0;
|
||||||
|
attrDecoder.w = 0;
|
||||||
|
R3f = vec4(intBitsToFloat(int(attrDecoder.x)), intBitsToFloat(int(attrDecoder.y)), intBitsToFloat(floatBitsToInt(0.0)), intBitsToFloat(floatBitsToInt(1.0)));
|
||||||
|
// 0
|
||||||
|
R127f.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w)));
|
||||||
|
PV0f.x = R127f.x;
|
||||||
|
PV0f.y = R127f.x;
|
||||||
|
PV0f.z = R127f.x;
|
||||||
|
PV0f.w = R127f.x;
|
||||||
|
// 1
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R127f.y = tempf.x;
|
||||||
|
// 2
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R127f.z = tempf.x;
|
||||||
|
// 3
|
||||||
|
tempf.x = dot(vec4(R2f.x,R2f.y,R2f.z,R2f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R127f.w = tempf.x;
|
||||||
|
// 4
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,PV1f.x),vec4(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z),intBitsToFloat(uf_remappedVS[4].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R2f.y = tempf.x;
|
||||||
|
// 5
|
||||||
|
R2f.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[5].x),intBitsToFloat(uf_remappedVS[5].y),intBitsToFloat(uf_remappedVS[5].z),intBitsToFloat(uf_remappedVS[5].w)));
|
||||||
|
PV1f.x = R2f.x;
|
||||||
|
PV1f.y = R2f.x;
|
||||||
|
PV1f.z = R2f.x;
|
||||||
|
PV1f.w = R2f.x;
|
||||||
|
R126f.y = PV0f.x + 1.0;
|
||||||
|
R126f.y /= 2.0;
|
||||||
|
PS1f = R126f.y;
|
||||||
|
// 6
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[6].x),intBitsToFloat(uf_remappedVS[6].y),intBitsToFloat(uf_remappedVS[6].z),intBitsToFloat(uf_remappedVS[6].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R2f.z = tempf.x;
|
||||||
|
R126f.z = PV1f.x + 1.0;
|
||||||
|
R126f.z /= 2.0;
|
||||||
|
PS0f = R126f.z;
|
||||||
|
// 7
|
||||||
|
tempf.x = dot(vec4(R127f.x,R127f.y,R127f.z,R127f.w),vec4(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z),intBitsToFloat(uf_remappedVS[7].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R2f.w = tempf.x;
|
||||||
|
R127f.x = -(R126f.y) + 1.0;
|
||||||
|
PS1f = R127f.x;
|
||||||
|
// 8
|
||||||
|
backupReg0f = R1f.x;
|
||||||
|
backupReg1f = R1f.y;
|
||||||
|
backupReg2f = R1f.z;
|
||||||
|
backupReg3f = R1f.w;
|
||||||
|
R1f.x = mul_nonIEEE(backupReg0f, intBitsToFloat(uf_remappedVS[8].x));
|
||||||
|
R1f.y = mul_nonIEEE(backupReg1f, intBitsToFloat(uf_remappedVS[8].y));
|
||||||
|
R1f.z = mul_nonIEEE(backupReg2f, intBitsToFloat(uf_remappedVS[8].z));
|
||||||
|
R1f.w = mul_nonIEEE(backupReg3f, intBitsToFloat(uf_remappedVS[8].w));
|
||||||
|
R3f.z = R126f.z;
|
||||||
|
PS0f = R3f.z;
|
||||||
|
// 9
|
||||||
|
R3f.w = R127f.x;
|
||||||
|
// export
|
||||||
|
gl_Position = vec4(R2f.x*UI, R2f.y*UIY, R2f.z, R2f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem131 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem136 = vec4(R3f.x, R3f.y, R3f.z, R3f.w);
|
||||||
|
}
|
@ -0,0 +1,95 @@
|
|||||||
|
#version 420
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#extension GL_ARB_shading_language_packing : enable
|
||||||
|
// shader dda6656146476243
|
||||||
|
//Video aspect
|
||||||
|
const float UI = $UIAspectX;
|
||||||
|
const float UIY = $UIAspectY;
|
||||||
|
uniform ivec4 uf_remappedVS[5];
|
||||||
|
layout(location = 0) in uvec4 attrDataSem0;
|
||||||
|
layout(location = 1) in uvec4 attrDataSem8;
|
||||||
|
out gl_PerVertex
|
||||||
|
{
|
||||||
|
vec4 gl_Position;
|
||||||
|
float gl_PointSize;
|
||||||
|
};
|
||||||
|
layout(location = 0) out vec4 passParameterSem131;
|
||||||
|
layout(location = 1) out vec4 passParameterSem136;
|
||||||
|
int clampFI32(int v)
|
||||||
|
{
|
||||||
|
if( v == 0x7FFFFFFF )
|
||||||
|
return floatBitsToInt(1.0);
|
||||||
|
else if( v == 0xFFFFFFFF )
|
||||||
|
return floatBitsToInt(0.0);
|
||||||
|
return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0));
|
||||||
|
}
|
||||||
|
float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; }
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
vec4 R0f = vec4(0.0);
|
||||||
|
vec4 R1f = vec4(0.0);
|
||||||
|
vec4 R2f = vec4(0.0);
|
||||||
|
vec4 R3f = vec4(0.0);
|
||||||
|
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 = attrDataSem8.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
|
||||||
|
R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,R1f.w),vec4(intBitsToFloat(uf_remappedVS[0].x),intBitsToFloat(uf_remappedVS[0].y),intBitsToFloat(uf_remappedVS[0].z),intBitsToFloat(uf_remappedVS[0].w)));
|
||||||
|
PV0f.x = R0f.x;
|
||||||
|
PV0f.y = R0f.x;
|
||||||
|
PV0f.z = R0f.x;
|
||||||
|
PV0f.w = R0f.x;
|
||||||
|
R3f.x = R2f.x;
|
||||||
|
PS0f = R3f.x;
|
||||||
|
// 1
|
||||||
|
tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R1f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R0f.y = tempf.x;
|
||||||
|
R3f.y = R2f.y;
|
||||||
|
PS1f = R3f.y;
|
||||||
|
// 2
|
||||||
|
tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R1f.w),vec4(intBitsToFloat(uf_remappedVS[2].x),intBitsToFloat(uf_remappedVS[2].y),intBitsToFloat(uf_remappedVS[2].z),intBitsToFloat(uf_remappedVS[2].w)));
|
||||||
|
PV0f.x = tempf.x;
|
||||||
|
PV0f.y = tempf.x;
|
||||||
|
PV0f.z = tempf.x;
|
||||||
|
PV0f.w = tempf.x;
|
||||||
|
R0f.z = tempf.x;
|
||||||
|
// 3
|
||||||
|
tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,R1f.w),vec4(intBitsToFloat(uf_remappedVS[3].x),intBitsToFloat(uf_remappedVS[3].y),intBitsToFloat(uf_remappedVS[3].z),intBitsToFloat(uf_remappedVS[3].w)));
|
||||||
|
PV1f.x = tempf.x;
|
||||||
|
PV1f.y = tempf.x;
|
||||||
|
PV1f.z = tempf.x;
|
||||||
|
PV1f.w = tempf.x;
|
||||||
|
R0f.w = tempf.x;
|
||||||
|
// 4
|
||||||
|
R1f.xyz = vec3(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z));
|
||||||
|
R1f.w = intBitsToFloat(uf_remappedVS[4].w);
|
||||||
|
// export
|
||||||
|
gl_Position = vec4(R0f.x*UI, R0f.y*UIY, R0f.z, R0f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem131 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
||||||
|
// export
|
||||||
|
passParameterSem136 = vec4(R3f.x, R3f.y, R3f.z, R3f.z);
|
||||||
|
}
|
@ -2,6 +2,6 @@
|
|||||||
[TMS_219_EUv16]
|
[TMS_219_EUv16]
|
||||||
moduleMatches = 0x2249A57A
|
moduleMatches = 0x2249A57A
|
||||||
|
|
||||||
0x10006C18 = .float $width/$height
|
0x10006C18 = .float $GameAspect
|
||||||
0x10014400 = .float $width/$height
|
0x10014400 = .float $GameAspect
|
||||||
0x10067140 = .float $width/$height
|
0x10067140 = .float $GameAspect
|
||||||
|
@ -11,6 +11,9 @@ $width = 1280
|
|||||||
$height = 720
|
$height = 720
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
// Performance
|
// Performance
|
||||||
|
|
||||||
@ -20,6 +23,9 @@ $width = 320
|
|||||||
$height = 180
|
$height = 180
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 640x360
|
name = 640x360
|
||||||
@ -27,6 +33,9 @@ $width = 640
|
|||||||
$height = 360
|
$height = 360
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 960x540
|
name = 960x540
|
||||||
@ -34,6 +43,9 @@ $width = 960
|
|||||||
$height = 540
|
$height = 540
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
// Common HD Resolutions
|
// Common HD Resolutions
|
||||||
|
|
||||||
@ -43,6 +55,9 @@ $width = 1600
|
|||||||
$height = 900
|
$height = 900
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 1920x1080
|
name = 1920x1080
|
||||||
@ -50,6 +65,9 @@ $width = 1920
|
|||||||
$height = 1080
|
$height = 1080
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 2560x1440
|
name = 2560x1440
|
||||||
@ -57,6 +75,9 @@ $width = 2560
|
|||||||
$height = 1440
|
$height = 1440
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 3200x1800
|
name = 3200x1800
|
||||||
@ -64,6 +85,9 @@ $width = 3200
|
|||||||
$height = 1800
|
$height = 1800
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 3840x2160
|
name = 3840x2160
|
||||||
@ -71,6 +95,9 @@ $width = 3840
|
|||||||
$height = 2160
|
$height = 2160
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 5120x2880
|
name = 5120x2880
|
||||||
@ -78,6 +105,9 @@ $width = 5120
|
|||||||
$height = 2880
|
$height = 2880
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1280.0 / 720.0)
|
||||||
|
|
||||||
// Common Ultrawide Resolutions
|
// Common Ultrawide Resolutions
|
||||||
|
|
||||||
@ -87,20 +117,29 @@ $width = 2560
|
|||||||
$height = 1080
|
$height = 1080
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0) / (2560.0 / 1080.0)
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (2560.0 / 1080.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 3440x1440 ("21:9")
|
name = 3440x1440 ("21:9") #2.388
|
||||||
$width = 3440
|
$width = 3440
|
||||||
$height = 1440
|
$height = 1440
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0) / (3440.0 / 1440.0)
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (3440.0 / 1440.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 3840x1600 ("21:9")
|
name = 3840x1600 ("21:9") #2.4
|
||||||
$width = 3840
|
$width = 3840
|
||||||
$height = 1600
|
$height = 1600
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0)/ (3840.0 / 1600.0)
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (3840.0 / 1600.0)
|
||||||
|
|
||||||
// Common 16:10 Resolutions
|
// Common 16:10 Resolutions
|
||||||
|
|
||||||
@ -110,6 +149,9 @@ $width = 1440
|
|||||||
$height = 900
|
$height = 900
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (1440.0 / 900.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (1440.0 / 900.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 1680x1050 (16:10)
|
name = 1680x1050 (16:10)
|
||||||
@ -117,6 +159,9 @@ $width = 1680
|
|||||||
$height = 1050
|
$height = 1050
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (1680.0 / 1050.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (1680.0 / 1050.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 1920x1200 (16:10)
|
name = 1920x1200 (16:10)
|
||||||
@ -124,6 +169,9 @@ $width = 1920
|
|||||||
$height = 1200
|
$height = 1200
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (1920.0 / 1200.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (1920.0 / 1200.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 2560x1600 (16:10)
|
name = 2560x1600 (16:10)
|
||||||
@ -131,6 +179,9 @@ $width = 2560
|
|||||||
$height = 1600
|
$height = 1600
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (2560.0 / 1600.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (2560.0 / 1600.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 2880x1800 (16:10)
|
name = 2880x1800 (16:10)
|
||||||
@ -138,6 +189,9 @@ $width = 2880
|
|||||||
$height = 1800
|
$height = 1800
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (2880.0 / 1800.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (2880.0 / 1800.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 3840x2400 (16:10)
|
name = 3840x2400 (16:10)
|
||||||
@ -145,6 +199,9 @@ $width = 3840
|
|||||||
$height = 2400
|
$height = 2400
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (3840.0 / 2400.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (3840.0 / 2400.0)
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = 5120x3200 (16:10)
|
name = 5120x3200 (16:10)
|
||||||
@ -152,28 +209,243 @@ $width = 5120
|
|||||||
$height = 3200
|
$height = 3200
|
||||||
$gameWidth = 1280
|
$gameWidth = 1280
|
||||||
$gameHeight = 720
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = (5120.0 / 3200.0) / (1280.0/720.0)
|
||||||
|
$GameAspect = (5120.0 / 3200.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = -- Double vertical res for SSAA, disable keep aspect ratio --
|
||||||
|
$width = 2560
|
||||||
|
$height = 2880
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (2560.0 / 1440.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = 1920x2160
|
||||||
|
$width = 1920
|
||||||
|
$height = 2160
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (1920.0 / 1080.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = 2560x2160 ("21:9")
|
||||||
|
$width = 2560
|
||||||
|
$height = 2160
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0) / (2560.0 / 1080.0)
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (2560.0 / 1080.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = 2560x2880
|
||||||
|
$width = 2560
|
||||||
|
$height = 2880
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (2560.0 / 1440.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = 3840x3200 ("21:9") #2.4
|
||||||
|
$width = 3840
|
||||||
|
$height = 3200
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = (1280.0/720.0)/ (2840.0 / 1600)
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (3840.0 / 1600.0)
|
||||||
|
|
||||||
|
[Preset]
|
||||||
|
name = 3840x4320
|
||||||
|
$width = 3840
|
||||||
|
$height = 4320
|
||||||
|
$gameWidth = 1280
|
||||||
|
$gameHeight = 720
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
$UIAspectY = 1.0
|
||||||
|
$GameAspect = (3840.0 / 2160.0)
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 1280
|
||||||
|
height = 720
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
[TextureRedefine]
|
[TextureRedefine]
|
||||||
width = 1280
|
width = 1280
|
||||||
height = 720
|
height = 720
|
||||||
#formats = 0x816,0x80e,0x01a,0x001
|
formats = 0x01a
|
||||||
|
overwriteFormat = 0x01f
|
||||||
|
$UIAspectX = 1.0
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 1280
|
||||||
|
height = 720
|
||||||
|
formats = 0x810
|
||||||
|
overwriteFormat = 0x81e
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 640
|
||||||
|
height = 368
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 640
|
||||||
|
height = 360
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine] #
|
||||||
|
width = 640
|
||||||
|
height = 368
|
||||||
|
formats = 0x01a
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 320
|
||||||
|
height = 192
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 320
|
||||||
|
height = 180
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 160
|
||||||
|
height = 128
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 160
|
||||||
|
height = 120
|
||||||
|
formats = 0x816
|
||||||
|
overwriteFormat = 0x820
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 1280
|
||||||
|
height = 720
|
||||||
|
formats = 0x01a,0x816,0x80e,0x001
|
||||||
tileModesExcluded = 0x001
|
tileModesExcluded = 0x001
|
||||||
overwriteWidth = ($width/$gameWidth) * 1280
|
overwriteWidth = ($width/$gameWidth) * 1280
|
||||||
overwriteHeight = ($height/$gameHeight) * 720
|
overwriteHeight = ($height/$gameHeight) * 720
|
||||||
|
|
||||||
[TextureRedefine]
|
[TextureRedefine]
|
||||||
width = 1280
|
width = 1280
|
||||||
height = 340
|
height = 340
|
||||||
#formats =
|
#formats =
|
||||||
overwriteWidth = ($width/$gameWidth) * 1280
|
overwriteWidth = ($width/$gameWidth) * 1280
|
||||||
overwriteHeight = ($height/$gameHeight) * 340
|
overwriteHeight = ($height/$gameHeight) * 340
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 1014
|
||||||
|
height = 720
|
||||||
|
#formats =
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 1014
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 720
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 896
|
||||||
|
height = 480
|
||||||
|
formats = 0x001
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 896
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 480
|
||||||
|
|
||||||
|
[TextureRedefine] # Pad
|
||||||
|
width = 864
|
||||||
|
height = 480
|
||||||
|
#formats =
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 864
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 480
|
||||||
|
|
||||||
|
[TextureRedefine] # Pad
|
||||||
|
width = 854
|
||||||
|
height = 480
|
||||||
|
#formats =
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 854
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 480
|
||||||
|
|
||||||
|
[TextureRedefine] # Pad
|
||||||
|
width = 674
|
||||||
|
height = 574
|
||||||
|
formats = 0x01a
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 674
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 574
|
||||||
|
|
||||||
|
[TextureRedefine] # Pad
|
||||||
|
width = 657
|
||||||
|
height = 574
|
||||||
|
formats = 0x01a
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 657
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 574
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 640
|
||||||
|
height = 720
|
||||||
|
#formats =
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 640
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 720
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 640
|
||||||
|
height = 368
|
||||||
|
#formats = 0x816,0x001
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 640
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 368
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 640
|
||||||
|
height = 360
|
||||||
|
#formats = 0x816,0x001
|
||||||
|
tileModesExcluded = 0x001
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 640
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 360
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 320
|
||||||
|
height = 192
|
||||||
|
formats = 0x816
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 320
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 192
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 320
|
||||||
|
height = 180
|
||||||
|
formats = 0x816
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 320
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 180
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 160
|
||||||
|
height = 128
|
||||||
|
formats = 0x816
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 160
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 128
|
||||||
|
|
||||||
|
[TextureRedefine]
|
||||||
|
width = 160
|
||||||
|
height = 120
|
||||||
|
formats = 0x816
|
||||||
|
overwriteWidth = ($width/$gameWidth) * 160
|
||||||
|
overwriteHeight = ($height/$gameHeight) * 120
|
||||||
|
|
||||||
#[TextureRedefine] # Shadows cemu scaling broken?
|
#[TextureRedefine] # Shadows cemu scaling broken?
|
||||||
#width = 1024
|
#width = 1024
|
||||||
#height = 2048
|
#height = 2048
|
||||||
#formats = 0x011,0x811
|
#formats = 0x011,0x811
|
||||||
#overwriteWidth = ($height/$gameHeight) * 1024
|
#overwriteWidth = ($height/$gameHeight) * 1024
|
||||||
#overwriteHeight = ($height/$gameHeight) * 2048
|
#overwriteHeight = ($height/$gameHeight) * 2048
|
||||||
|
|
||||||
#[TextureRedefine] #Shadows, cemu scaling broken?
|
#[TextureRedefine] #Shadows, cemu scaling broken?
|
||||||
#width = 1024
|
#width = 1024
|
||||||
@ -182,110 +454,16 @@ overwriteHeight = ($height/$gameHeight) * 340
|
|||||||
#overwriteWidth = ($height/$gameHeight) * 1024
|
#overwriteWidth = ($height/$gameHeight) * 1024
|
||||||
#overwriteHeight = ($height/$gameHeight) * 1024
|
#overwriteHeight = ($height/$gameHeight) * 1024
|
||||||
|
|
||||||
|
#[TextureRedefine] # Don't scale
|
||||||
#[TextureRedefine] #
|
|
||||||
#width = 512
|
#width = 512
|
||||||
#height = 512
|
#height = 512
|
||||||
#formats = 0x01a #GUI bar + alpha nope
|
#formats = 0x01a #GUI bar + alpha nope
|
||||||
#overwriteWidth = 1024
|
#overwriteWidth = 1024
|
||||||
#overwriteHeight = 1024
|
#overwriteHeight = 1024
|
||||||
|
|
||||||
|
#[TextureRedefine] # Don't scale
|
||||||
#[TextureRedefine] #
|
|
||||||
#width = 128
|
#width = 128
|
||||||
#height = 1024
|
#height = 1024
|
||||||
#formats = 0x034 #text + alpha
|
#formats = 0x034 #text + alpha
|
||||||
#overwriteWidth = 256
|
#overwriteWidth = 256
|
||||||
#overwriteHeight = 2048
|
#overwriteHeight = 2048
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 1014
|
|
||||||
height = 720
|
|
||||||
#formats =
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 1014
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 720
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 896
|
|
||||||
height = 480
|
|
||||||
formats = 0x001
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 896
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 480
|
|
||||||
|
|
||||||
[TextureRedefine] # Pad
|
|
||||||
width = 864
|
|
||||||
height = 480
|
|
||||||
#formats =
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 864
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 480
|
|
||||||
|
|
||||||
[TextureRedefine] # Pad
|
|
||||||
width = 854
|
|
||||||
height = 480
|
|
||||||
#formats =
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 854
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 480
|
|
||||||
|
|
||||||
[TextureRedefine] # Pad
|
|
||||||
width = 674
|
|
||||||
height = 574
|
|
||||||
formats = 0x01a
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 674
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 574
|
|
||||||
|
|
||||||
[TextureRedefine] # Pad
|
|
||||||
width = 657
|
|
||||||
height = 574
|
|
||||||
formats = 0x01a
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 657
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 574
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 640
|
|
||||||
height = 720
|
|
||||||
#formats =
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 640
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 720
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 640
|
|
||||||
height = 368
|
|
||||||
#formats = 0x816,0x001
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 640
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 368
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 640
|
|
||||||
height = 360
|
|
||||||
#formats = 0x816,0x001
|
|
||||||
tileModesExcluded = 0x001
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 640
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 360
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 320
|
|
||||||
height = 192
|
|
||||||
formats = 0x816
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 320
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 192
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 320
|
|
||||||
height = 180
|
|
||||||
formats = 0x816
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 320
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 180
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 160
|
|
||||||
height = 128
|
|
||||||
formats = 0x816
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 160
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 128
|
|
||||||
|
|
||||||
[TextureRedefine]
|
|
||||||
width = 160
|
|
||||||
height = 120
|
|
||||||
formats = 0x816
|
|
||||||
overwriteWidth = ($width/$gameWidth) * 160
|
|
||||||
overwriteHeight = ($height/$gameHeight) * 120
|
|
Loading…
Reference in New Issue
Block a user