mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-22 17:49:17 +01:00
[NSMBU] AA fix, clean blur and shadows
Add - 640x360 for Blur and shadow upres Fix - PS fix for AA img artifacts
This commit is contained in:
parent
5992f55594
commit
0a015ef260
@ -0,0 +1,52 @@
|
|||||||
|
#version 400
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
// shader 72807b87b23dbe4e //removes AA pass
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
||||||
|
uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c5000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
||||||
|
in vec4 passParameter0;
|
||||||
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
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 R123i = ivec4(0);
|
||||||
|
ivec4 R125i = ivec4(0);
|
||||||
|
ivec4 R126i = ivec4(0);
|
||||||
|
ivec4 R127i = ivec4(0);
|
||||||
|
int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i;
|
||||||
|
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
|
||||||
|
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;
|
||||||
|
bool activeMaskStack[31];
|
||||||
|
bool activeMaskStackC[32];
|
||||||
|
int activeMaskIndex = 0;
|
||||||
|
activeMaskStack[0] = true;
|
||||||
|
activeMaskStackC[0] = true;
|
||||||
|
activeMaskStackC[1] = true;
|
||||||
|
int loopStuckCounter = 0;
|
||||||
|
vec3 cubeMapSTM;
|
||||||
|
int cubeMapFaceId;
|
||||||
|
R0i = floatBitsToInt(passParameter0);
|
||||||
|
//R1i.xyzw = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw);
|
||||||
|
R2i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw);
|
||||||
|
|
||||||
|
passPixelColor0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
||||||
|
}
|
@ -7,3 +7,23 @@ width = 1280
|
|||||||
height = 720
|
height = 720
|
||||||
overwriteWidth = 2560
|
overwriteWidth = 2560
|
||||||
overwriteHeight = 1440
|
overwriteHeight = 1440
|
||||||
|
|
||||||
|
[TextureRedefine] # AA pass, shadows viewport
|
||||||
|
width = 640
|
||||||
|
height = 360
|
||||||
|
overwriteWidth = 1280
|
||||||
|
overwriteHeight = 720
|
||||||
|
|
||||||
|
[TextureRedefine] #
|
||||||
|
width = 320
|
||||||
|
height = 180
|
||||||
|
overwriteWidth = 640
|
||||||
|
overwriteHeight = 360
|
||||||
|
|
||||||
|
##Textures
|
||||||
|
[TextureRedefine] # Dynamic shadows texture 3d overworld
|
||||||
|
width = 1024
|
||||||
|
height = 1024
|
||||||
|
formats = 0x005 #0x034 static shadow texture, don't scale
|
||||||
|
overwriteWidth = 2048
|
||||||
|
overwriteHeight = 2048
|
@ -0,0 +1,52 @@
|
|||||||
|
#version 400
|
||||||
|
#extension GL_ARB_texture_gather : enable
|
||||||
|
// shader 72807b87b23dbe4e //removes AA pass
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
||||||
|
uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c5000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
||||||
|
in vec4 passParameter0;
|
||||||
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
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 R123i = ivec4(0);
|
||||||
|
ivec4 R125i = ivec4(0);
|
||||||
|
ivec4 R126i = ivec4(0);
|
||||||
|
ivec4 R127i = ivec4(0);
|
||||||
|
int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i;
|
||||||
|
float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f;
|
||||||
|
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;
|
||||||
|
bool activeMaskStack[31];
|
||||||
|
bool activeMaskStackC[32];
|
||||||
|
int activeMaskIndex = 0;
|
||||||
|
activeMaskStack[0] = true;
|
||||||
|
activeMaskStackC[0] = true;
|
||||||
|
activeMaskStackC[1] = true;
|
||||||
|
int loopStuckCounter = 0;
|
||||||
|
vec3 cubeMapSTM;
|
||||||
|
int cubeMapFaceId;
|
||||||
|
R0i = floatBitsToInt(passParameter0);
|
||||||
|
//R1i.xyzw = floatBitsToInt(textureGather(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw);
|
||||||
|
R2i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R0i.xy)).xyzw);
|
||||||
|
|
||||||
|
passPixelColor0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
||||||
|
}
|
@ -7,3 +7,23 @@ width = 1280
|
|||||||
height = 720
|
height = 720
|
||||||
overwriteWidth = 3840
|
overwriteWidth = 3840
|
||||||
overwriteHeight = 2160
|
overwriteHeight = 2160
|
||||||
|
|
||||||
|
[TextureRedefine] # AA pass, shadows viewport
|
||||||
|
width = 640
|
||||||
|
height = 360
|
||||||
|
overwriteWidth = 1920
|
||||||
|
overwriteHeight = 1080
|
||||||
|
|
||||||
|
[TextureRedefine] #
|
||||||
|
width = 320
|
||||||
|
height = 180
|
||||||
|
overwriteWidth = 960
|
||||||
|
overwriteHeight = 540
|
||||||
|
|
||||||
|
##Textures
|
||||||
|
[TextureRedefine] # Dynamic shadows texture 3d overworld
|
||||||
|
width = 1024
|
||||||
|
height = 1024
|
||||||
|
formats = 0x005 #0x034 static shadow texture, don't scale
|
||||||
|
overwriteWidth = 2048
|
||||||
|
overwriteHeight = 2048
|
Loading…
Reference in New Issue
Block a user