diff --git a/Enhancements/SuperMario3DWorld_Anisotropic/rules.txt b/Enhancements/SuperMario3DWorld_Anisotropic/rules.txt deleted file mode 100644 index efbda6163..000000000 --- a/Enhancements/SuperMario3DWorld_Anisotropic/rules.txt +++ /dev/null @@ -1,30 +0,0 @@ -[Definition] -titleIds = 0005000010145D00,0005000010145C00,0005000010106100 -name = Anisotropic Filtering -path = "Super Mario 3D World/Enhancements/Anisotropic Filtering" -description = Anisotropic Filtering for smoother mipmaps. -version = 4 - -[Preset] -name = 1x (Default) -$anisoLevel = 1 - -[Preset] -name = 2x -$anisoLevel = 2 - -[Preset] -name = 4x -$anisoLevel = 4 - -[Preset] -name = 8x -$anisoLevel = 8 - -[Preset] -name = 16x -$anisoLevel = 16 - -[TextureRedefine] -formats = 0x31,0x32,0x33,0x34,0x35,0x431,0x432,0x433,0x434,0x435 -overwriteAnisotropy = $anisoLevel \ No newline at end of file diff --git a/Enhancements/SuperMario3DWorld_Shadows/rules.txt b/Enhancements/SuperMario3DWorld_Shadows/rules.txt deleted file mode 100644 index 7d5a4e006..000000000 --- a/Enhancements/SuperMario3DWorld_Shadows/rules.txt +++ /dev/null @@ -1,33 +0,0 @@ -[Definition] -titleIds = 0005000010145D00,0005000010145C00,0005000010106100 -name = Shadow Resolution -path = "Super Mario 3D World/Graphics/Shadow Resolution" -description = Note: Increasing shadow resolution is known to increase VRAM usage directly. Lowering this might give you a good boost in performance if you're limited on VRAM but makes shadows blockier. Medium is the original resolution. -version = 4 - -[Preset] -name = Medium (100%, Default) -$shadowRes = 1 - -[Preset] -name = Low (50%) -$shadowRes = 0.5 - -[Preset] -name = High (200%) -$shadowRes = 2 - -[Preset] -name = Ultra (300%) -$shadowRes = 3 - -[Preset] -name = Extreme (400%, Unstable) -$shadowRes = 4 - -[TextureRedefine] # Shadows -width = 1024 -height = 1024 -formats = 0x005 -overwriteWidth = $shadowRes * 1024 -overwriteHeight = $shadowRes * 1024 diff --git a/Enhancements/SuperMario3DWorld_Contrasty/be99d80628d31127_00000000000003c9_ps.txt b/src/SuperMario3DWorld/Enhancements/Contrasty/be99d80628d31127_00000000000003c9_ps.txt similarity index 97% rename from Enhancements/SuperMario3DWorld_Contrasty/be99d80628d31127_00000000000003c9_ps.txt rename to src/SuperMario3DWorld/Enhancements/Contrasty/be99d80628d31127_00000000000003c9_ps.txt index 2b34655c0..1228c0680 100644 --- a/Enhancements/SuperMario3DWorld_Contrasty/be99d80628d31127_00000000000003c9_ps.txt +++ b/src/SuperMario3DWorld/Enhancements/Contrasty/be99d80628d31127_00000000000003c9_ps.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -36,8 +36,8 @@ const float hazeFactor = 0.1; const float gamma = $gamma; // 1.0 is neutral Botw is already colour graded at this stage const float exposure = $exposure; // 1.0 is neutral -const float vibrance = $vibrance; // 0.0 is neutral -const float crushContrast = $crushContrast; // 0.0 is neutral. Use small increments, loss of shadow detail +const float vibrance = $vibrance; // 0.0 is neutral +const float crushContrast = $crushContrast; // 0.0 is neutral. Use small increments, loss of shadow detail const float contrastCurve = $contrastCurve; @@ -46,18 +46,18 @@ vec3 RGB_Gamma = vec3($redMid ,$greenMid, $blueMid); // [0.000 to 2.000] Adju vec3 RGB_Gain = vec3($redHilight, $greenHilight, $blueHilight); // [0.000 to 2.000] Adjust highlights for Red, Green and Blue //lumasharpen const float sharp_mix = $sharp_mix; -const float sharp_strength = 2.0; +const float sharp_strength = 2.0; const float sharp_clamp = 0.75; const float offset_bias = 1.0; float Sigmoid (float x) { - return 1.0 / (1.0 + (exp(-(x - 0.5) * 5.5))); + return 1.0 / (1.0 + (exp(-(x - 0.5) * 5.5))); } #define px (1.0/1280.0*uf_fragCoordScale.x) #define py (1.0/720.0*uf_fragCoordScale.y) -#define CoefLuma vec3(0.2126, 0.7152, 0.0722) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) float lumasharping(sampler2D tex, vec2 pos) { vec4 colorInput = texture(tex, pos); @@ -95,8 +95,8 @@ vec3 LiftGammaGainPass(vec3 colorInput) { //reshade BSD https://reshade.me , Alexkiri port vec3 color = colorInput; color = color * (1.5 - 0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; - color = clamp(color, 0.0, 1.0); - color *= RGB_Gain; + color = clamp(color, 0.0, 1.0); + color *= RGB_Gain; color = pow(color, 1.0 / RGB_Gamma); return clamp(color, 0.0, 1.0); } @@ -104,7 +104,7 @@ vec3 LiftGammaGainPass(vec3 colorInput) vec3 contrasty(vec3 colour){ vec3 fColour = (colour.xyz); //fColour = LiftGammaGainPass(fColour); - + fColour = clamp(exposure * fColour, 0.0, 1.0); fColour = pow(fColour, vec3(1.0 / gamma)); float luminance = fColour.r*0.299 + fColour.g*0.587 + fColour.b*0.114; diff --git a/Enhancements/SuperMario3DWorld_Contrasty/rules.txt b/src/SuperMario3DWorld/Enhancements/Contrasty/rules.txt similarity index 96% rename from Enhancements/SuperMario3DWorld_Contrasty/rules.txt rename to src/SuperMario3DWorld/Enhancements/Contrasty/rules.txt index 6ffe8accf..3a6ef8f52 100644 --- a/Enhancements/SuperMario3DWorld_Contrasty/rules.txt +++ b/src/SuperMario3DWorld/Enhancements/Contrasty/rules.txt @@ -2,11 +2,11 @@ titleIds = 0005000010145D00,0005000010145C00,0005000010106100 name = Contrasty path = "Super Mario 3D World/Enhancements/Contrasty" -description = This pack tweaks the colors and contrast to whatever preset you set it as. You can also make your own preset by editing the Default preset in the Contrasty folder from the game's graphic packs. Doesn't work if you also upscale or downscale the resolution. Made by getdls. -version = 4 +description = This pack tweaks the colors and contrast to whatever preset you set it as. You can also make your own preset by editing the Default preset in the Contrasty folder from the game's graphic packs. Doesn't work if you also upscale or downscale the resolution.|Made by getdls. +#Credits: getdls +version = 6 -[Preset] -name = Default +[Default] $redShadows = 1.0 $greenShadows = 1.0 $blueSadows = 1.0 @@ -27,6 +27,9 @@ $crushContrast = 0.0 $bleach = 1.0 $sharp_mix = 0.0 +[Preset] +name = Default + [Preset] name = debug $redShadows = 1.0 diff --git a/Enhancements/SuperMario3DWorld_LOD/rules.txt b/src/SuperMario3DWorld/Enhancements/LevelofDetail/rules.txt similarity index 81% rename from Enhancements/SuperMario3DWorld_LOD/rules.txt rename to src/SuperMario3DWorld/Enhancements/LevelofDetail/rules.txt index 436e552ad..a3041158e 100644 --- a/Enhancements/SuperMario3DWorld_LOD/rules.txt +++ b/src/SuperMario3DWorld/Enhancements/LevelofDetail/rules.txt @@ -1,17 +1,20 @@ [Definition] titleIds = 0005000010145D00,0005000010145C00,0005000010106100 name = Negative texture LOD bias -path = "Super Mario 3D World/Enhancements/Texture LOD" -description = Texture LOD override, possible shimmer but sharper textures. Made by Ryce-Fast. -version = 4 +path = "Super Mario 3D World/Enhancements/Texture LOD" +description = Texture LOD override, possible shimmer but sharper textures.|Made by Ryce-Fast. +#Credits: Ryce-Fast +version = 6 -[Preset] -name = Default LOD +[Default] $0x431 = 0 $0x432 = 0 $0x433 = 0 $0x434 = 0 +[Preset] +name = Default LOD + [Preset] name = Slightly higher LOD $0x431 = -.5 @@ -48,4 +51,4 @@ overwriteRelativeLodBias = $0x433 [TextureRedefine] formats = 0x434 -overwriteRelativeLodBias = $0x434 \ No newline at end of file +overwriteRelativeLodBias = $0x434 diff --git a/Resolutions/SuperMario3DWorld_Resolution/1f83c0d47b1c4c34_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/1f83c0d47b1c4c34_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/1f83c0d47b1c4c34_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/1f83c0d47b1c4c34_0000000000000000_vs.txt index 9ade38a53..8457def97 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/1f83c0d47b1c4c34_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/1f83c0d47b1c4c34_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #ifdef VULKAN #define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) @@ -20,7 +20,7 @@ // shader 1f83c0d47b1c4c34 // Used for: Background Blur const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/280351fcf8e5949f_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/280351fcf8e5949f_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/280351fcf8e5949f_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/280351fcf8e5949f_0000000000000000_vs.txt index 0c6673326..617b99a67 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/280351fcf8e5949f_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/280351fcf8e5949f_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -21,7 +21,7 @@ // shader 280351fcf8e5949f // Used for: Another vertical blur const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/470eee1bb25ab50d_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/470eee1bb25ab50d_0000000000000000_vs.txt similarity index 97% rename from Resolutions/SuperMario3DWorld_Resolution/470eee1bb25ab50d_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/470eee1bb25ab50d_0000000000000000_vs.txt index 40cd4447a..7c966d312 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/470eee1bb25ab50d_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/470eee1bb25ab50d_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -26,9 +26,9 @@ // This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. // shader 470eee1bb25ab50d -// low res reflection +// low res reflection const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/4c426260188ace42_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/4c426260188ace42_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/4c426260188ace42_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/4c426260188ace42_0000000000000000_vs.txt index 3792348d2..8913c8885 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/4c426260188ace42_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/4c426260188ace42_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -28,7 +28,7 @@ // shader 4c426260188ace42 //switch palace reflection vertical const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/5661793d88425685_0000000007fffff9_ps.txt b/src/SuperMario3DWorld/Graphics/5661793d88425685_0000000007fffff9_ps.txt similarity index 99% rename from Resolutions/SuperMario3DWorld_Resolution/5661793d88425685_0000000007fffff9_ps.txt rename to src/SuperMario3DWorld/Graphics/5661793d88425685_0000000007fffff9_ps.txt index 772329d18..ed1243536 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/5661793d88425685_0000000007fffff9_ps.txt +++ b/src/SuperMario3DWorld/Graphics/5661793d88425685_0000000007fffff9_ps.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #ifdef VULKAN #define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) @@ -20,7 +20,7 @@ // shader 5661793d88425685 // Used for: First glitter bloom pass const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 1, binding = 1) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/6d9067fd20086bc0_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/6d9067fd20086bc0_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/6d9067fd20086bc0_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/6d9067fd20086bc0_0000000000000000_vs.txt index 6f37e0c4e..261ee6b0f 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/6d9067fd20086bc0_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/6d9067fd20086bc0_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -21,7 +21,7 @@ // shader 6d9067fd20086bc0 // Used for: Vertical blur const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/842a19b509f8b91a_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/842a19b509f8b91a_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/842a19b509f8b91a_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/842a19b509f8b91a_0000000000000000_vs.txt index c395c9f08..040816ed1 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/842a19b509f8b91a_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/842a19b509f8b91a_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #ifdef VULKAN #define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) @@ -20,7 +20,7 @@ // shader 842a19b509f8b91a // Used for: General Blur vertical const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/8d68a0e3561ff525_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/8d68a0e3561ff525_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/8d68a0e3561ff525_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/8d68a0e3561ff525_0000000000000000_vs.txt index d630fced1..93e7a3322 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/8d68a0e3561ff525_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/8d68a0e3561ff525_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #ifdef VULKAN #define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) @@ -20,7 +20,7 @@ // shader 8d68a0e3561ff525 // Used for: Horizontal Gameplay Blur const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/b727c08e3b534992_0000000007fffffd_ps.txt b/src/SuperMario3DWorld/Graphics/b727c08e3b534992_0000000007fffffd_ps.txt similarity index 99% rename from Resolutions/SuperMario3DWorld_Resolution/b727c08e3b534992_0000000007fffffd_ps.txt rename to src/SuperMario3DWorld/Graphics/b727c08e3b534992_0000000007fffffd_ps.txt index baeb73fe4..2da948069 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/b727c08e3b534992_0000000007fffffd_ps.txt +++ b/src/SuperMario3DWorld/Graphics/b727c08e3b534992_0000000007fffffd_ps.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #ifdef VULKAN #define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location) @@ -20,7 +20,7 @@ // shader b727c08e3b534992 // Used for: Second glitter bloom pass const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 1, binding = 1) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/be99d80628d31127_00000000000003c9_ps.txt b/src/SuperMario3DWorld/Graphics/be99d80628d31127_00000000000003c9_ps.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/be99d80628d31127_00000000000003c9_ps.txt rename to src/SuperMario3DWorld/Graphics/be99d80628d31127_00000000000003c9_ps.txt index a787813e1..de28ced1b 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/be99d80628d31127_00000000000003c9_ps.txt +++ b/src/SuperMario3DWorld/Graphics/be99d80628d31127_00000000000003c9_ps.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -18,11 +18,6 @@ #endif // This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. -// shader be99d80628d31127 //AA PS -// Used for: Another vertical blur -const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); - #ifdef VULKAN layout(set = 1, binding = 2) uniform ufBlock { @@ -33,6 +28,14 @@ uniform vec4 uf_fragCoordScale; uniform ivec4 uf_remappedPS[4]; uniform vec2 uf_fragCoordScale; #endif + +// shader be99d80628d31127 //AA PS +// Used for: Another vertical blur +const float resXScale = float($width)/float($gameWidth); +const float resYScale = float($height)/float($gameHeight); +#define AAENABLE $AAEnable + +#if (AAENABLE == 1) TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0; TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1; layout(location = 0) in vec4 passParameterSem2; @@ -216,3 +219,4 @@ activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; // export passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w); } +#endif diff --git a/Resolutions/SuperMario3DWorld_Resolution/c27612e2f7126ebf_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/c27612e2f7126ebf_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/c27612e2f7126ebf_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/c27612e2f7126ebf_0000000000000000_vs.txt index 290670c24..39d69ceb7 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/c27612e2f7126ebf_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/c27612e2f7126ebf_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -28,7 +28,7 @@ // shader c27612e2f7126ebf //switch palace low res reflection 256x240 / 240x240 hz const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/c4eaec09897d525e_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/c4eaec09897d525e_0000000000000000_vs.txt similarity index 97% rename from Resolutions/SuperMario3DWorld_Resolution/c4eaec09897d525e_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/c4eaec09897d525e_0000000000000000_vs.txt index 9750b5b08..f1898ce1b 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/c4eaec09897d525e_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/c4eaec09897d525e_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -19,9 +19,9 @@ // This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. // shader c4eaec09897d525e -//reflection +//reflection const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/d388f32cb9be9a7a_000000000000f249_ps.txt b/src/SuperMario3DWorld/Graphics/d388f32cb9be9a7a_000000000000f249_ps.txt similarity index 100% rename from Resolutions/SuperMario3DWorld_Resolution/d388f32cb9be9a7a_000000000000f249_ps.txt rename to src/SuperMario3DWorld/Graphics/d388f32cb9be9a7a_000000000000f249_ps.txt diff --git a/Resolutions/SuperMario3DWorld_Resolution/d9c81460d6984bb2_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/d9c81460d6984bb2_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/d9c81460d6984bb2_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/d9c81460d6984bb2_0000000000000000_vs.txt index 67c199e6f..165c19cb0 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/d9c81460d6984bb2_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/d9c81460d6984bb2_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -28,7 +28,7 @@ // shader d9c81460d6984bb2 //switch palace reflection hz const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/e4e4a60266119f75_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/e4e4a60266119f75_0000000000000000_vs.txt similarity index 97% rename from Resolutions/SuperMario3DWorld_Resolution/e4e4a60266119f75_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/e4e4a60266119f75_0000000000000000_vs.txt index 0be827149..e2637a4d1 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/e4e4a60266119f75_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/e4e4a60266119f75_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -26,9 +26,9 @@ // This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. // shader e4e4a60266119f75 -//reflection +//reflection const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN diff --git a/Resolutions/SuperMario3DWorld_Resolution/fa47a4b5f1304f51_0000000000000000_vs.txt b/src/SuperMario3DWorld/Graphics/fa47a4b5f1304f51_0000000000000000_vs.txt similarity index 98% rename from Resolutions/SuperMario3DWorld_Resolution/fa47a4b5f1304f51_0000000000000000_vs.txt rename to src/SuperMario3DWorld/Graphics/fa47a4b5f1304f51_0000000000000000_vs.txt index c6f892bdb..39c04a3e2 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/fa47a4b5f1304f51_0000000000000000_vs.txt +++ b/src/SuperMario3DWorld/Graphics/fa47a4b5f1304f51_0000000000000000_vs.txt @@ -1,4 +1,4 @@ -#version 420 +#version 430 #extension GL_ARB_texture_gather : enable #extension GL_ARB_separate_shader_objects : enable #ifdef VULKAN @@ -26,9 +26,9 @@ // This shader was automatically converted to be cross-compatible with Vulkan and OpenGL. // shader fa47a4b5f1304f51 -// low res reflection +// low res reflection const float resXScale = float($width)/float($gameWidth); -const float resYScale = float($height)/float($gameHeight); +const float resYScale = float($height)/float($gameHeight); #ifdef VULKAN layout(set = 0, binding = 0) uniform ufBlock diff --git a/Resolutions/SuperMario3DWorld_Resolution/patches.txt b/src/SuperMario3DWorld/Graphics/patch_resolution.asm similarity index 60% rename from Resolutions/SuperMario3DWorld_Resolution/patches.txt rename to src/SuperMario3DWorld/Graphics/patch_resolution.asm index 82d75c17d..f365a0446 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/patches.txt +++ b/src/SuperMario3DWorld/Graphics/patch_resolution.asm @@ -1,14 +1,14 @@ -[RedCarpetAspectUW] -moduleMatches = 0xBBAF1908, 0xD2308838, 0xEB70C731 -# rodata constants +[SuperMario3DWorld_AspectRatio] +moduleMatches = 0xD2308838, 0xBBAF1908, 0xEB70C731 ; (EU), (NA), (JP) +; rodata constants 0x10363ED4 = .float $width/$height 0x1036A688 = .float $width/$height _aspectAddr = 0x10363ED4 -# Aspect calculation +; Aspect calculation 0x0241D9B4 = lis r8, _aspectAddr@ha 0x0241D9B8 = lfs f0, _aspectAddr@l(r8) -# touch position fix +; touch position fix 0x0241D9D4 = lis r8, _aspectAddr@ha 0x0241D9D8 = lfs f0, _aspectAddr@l(r8) diff --git a/Resolutions/SuperMario3DWorld_Resolution/rules.txt b/src/SuperMario3DWorld/Graphics/rules.txt similarity index 97% rename from Resolutions/SuperMario3DWorld_Resolution/rules.txt rename to src/SuperMario3DWorld/Graphics/rules.txt index 8b6ddb91c..9f7cab32e 100644 --- a/Resolutions/SuperMario3DWorld_Resolution/rules.txt +++ b/src/SuperMario3DWorld/Graphics/rules.txt @@ -1,99 +1,179 @@ [Definition] titleIds = 0005000010145D00,0005000010145C00,0005000010106100 -name = Resolution -path = "Super Mario 3D World/Graphics/Resolution" -description = Changes the resolution of the game. Made by Crementif and getdls. -version = 4 +name = Graphics Settings +path = "Super Mario 3D World/Graphics" +description = Changes the resolution of the game and the quality of shadows.|Made by Crementif and getdls. +#Credits: Crementif, getdls, Ryce-Fast +version = 6 -[Preset] -name = 1280x720 (Default) +[Default] $width = 1280 $height = 720 $gameWidth = 1280 $gameHeight = 720 +$shadowRes = 1 +$anisoLevel = 1 +$AAEnable:int = 1 # Performance [Preset] +category = Resolution name = 640x360 $width = 640 $height = 360 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 960x540 $width = 960 $height = 540 -$gameWidth = 1280 -$gameHeight = 720 + +[Preset] +category = Resolution +name = 1280x720 (Default) +default = 1 # Common HD Resolutions [Preset] +category = Resolution name = 1600x900 $width = 1600 $height = 900 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 1920x1080 $width = 1920 $height = 1080 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 2560x1440 $width = 2560 $height = 1440 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 3200x1800 $width = 3200 $height = 1800 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 3840x2160 $width = 3840 $height = 2160 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 5120x2880 $width = 5120 $height = 2880 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 7680x4320 $width = 7680 $height = 4320 -$gameWidth = 1280 -$gameHeight = 720 # Common Ultrawide Resolutions [Preset] +category = Resolution name = 2560x1080 (Ultrawide) $width = 2560 $height = 1080 -$gameWidth = 1280 -$gameHeight = 720 [Preset] +category = Resolution name = 3440x1440 (Ultrawide) $width = 3440 $height = 1440 -$gameWidth = 1280 -$gameHeight = 720 + + + +[Preset] +category = Shadows +name = Low (50%) +$shadowRes = 0.5 + +[Preset] +category = Shadows +name = Medium (100%, Default) +default = 1 + +[Preset] +category = Shadows +name = High (200%) +$shadowRes = 2 + +[Preset] +category = Shadows +name = Ultra (300%) +$shadowRes = 3 + +[Preset] +category = Shadows +name = Extreme (400%, Unstable) +$shadowRes = 4 + +[Preset] +category = Anisotropic Filtering +name = 1x (Default) + +[Preset] +category = Anisotropic Filtering +name = 2x +$anisoLevel = 2 + +[Preset] +category = Anisotropic Filtering +name = 4x +$anisoLevel = 4 + +[Preset] +category = Anisotropic Filtering +name = 8x +$anisoLevel = 8 + +[Preset] +category = Anisotropic Filtering +name = 16x (Recommended) +$anisoLevel = 16 + +[Preset] +category = Anisotropic Filtering +name = 32x (Overkill) +$anisoLevel = 32 + +[Preset] +category = Anti-Aliasing +name = Enable +$AAEnable:int = 1 + +[Preset] +category = Anti-Aliasing +name = Disable +$AAEnable:int = 0 + +#ansio + +[TextureRedefine] +formats = 0x31,0x32,0x33,0x34,0x35,0x431,0x432,0x433,0x434,0x435 +overwriteAnisotropy = $anisoLevel + +#Shadows + +[TextureRedefine] +width = 1024 +height = 1024 +formats = 0x005 +overwriteWidth = $shadowRes * 1024 +overwriteHeight = $shadowRes * 1024 + +#Resolution [TextureRedefine] width = 1280 @@ -2111,7 +2191,7 @@ overwriteHeight = ($height/$gameHeight) * 360 [TextureRedefine] # circus width = 512 height = 360 -formatsExcluded = 0x034,0x033,0x031 # rain vulkan +formatsExcluded = 0x034,0x033,0x031 # rain vulkan overwriteWidth = ($width/$gameWidth) * 512 overwriteHeight = ($height/$gameHeight) * 360 diff --git a/src/SuperMario3DWorld/Mods/DrawDistance/patch_DrawDistance.asm b/src/SuperMario3DWorld/Mods/DrawDistance/patch_DrawDistance.asm new file mode 100644 index 000000000..c5ba35e63 --- /dev/null +++ b/src/SuperMario3DWorld/Mods/DrawDistance/patch_DrawDistance.asm @@ -0,0 +1,9 @@ +[SuperMario3DWorld_DrawDistance] +moduleMatches = 0xD2308838, 0xBBAF1908, 0xEB70C731 ; (EU), (NA), (JP) +; patch object clip +0x103693D8 = .float 700000.0 ; Distant clip (coins, boxes, enemies) +0x103693DC = .float 4000.0 ; Lev obj draw +0x10290DA4 = .float 200000.0 ; Passive movement patterns +;0x103852B8 = .float 10000.0 ; map dist mtx?? ;trace +;0x10368418 = .float 1500.0 ; plussy levels, glitches camera, glitches overworld ;trace +0x1036886C = .float 1000000.0 ; World draw, check reasonable includes unintended areas. diff --git a/src/SuperMario3DWorld/Mods/DrawDistance/rules.txt b/src/SuperMario3DWorld/Mods/DrawDistance/rules.txt new file mode 100644 index 000000000..f7baa3f4d --- /dev/null +++ b/src/SuperMario3DWorld/Mods/DrawDistance/rules.txt @@ -0,0 +1,7 @@ +[Definition] +titleIds = 0005000010145D00,0005000010145C00,0005000010106100 +name = Draw Distance +path = "Super Mario 3D World/Mods/Draw Distance" +description = Increases the draw distance of the game.|Has no effect on Plussy levels.|May load undesired objects in Bowser car fight levels. +#Credits: getdls +version = 6 diff --git a/Mods/SuperMario3DWorld_NoHUD/b84517cef3bb49ad_000000000000007d_ps.txt b/src/SuperMario3DWorld/Mods/NoHUD/b84517cef3bb49ad_000000000000007d_ps.txt similarity index 100% rename from Mods/SuperMario3DWorld_NoHUD/b84517cef3bb49ad_000000000000007d_ps.txt rename to src/SuperMario3DWorld/Mods/NoHUD/b84517cef3bb49ad_000000000000007d_ps.txt diff --git a/Mods/SuperMario3DWorld_NoHUD/d9953dbd7354b119_000000000000007d_ps.txt b/src/SuperMario3DWorld/Mods/NoHUD/d9953dbd7354b119_000000000000007d_ps.txt similarity index 100% rename from Mods/SuperMario3DWorld_NoHUD/d9953dbd7354b119_000000000000007d_ps.txt rename to src/SuperMario3DWorld/Mods/NoHUD/d9953dbd7354b119_000000000000007d_ps.txt diff --git a/Mods/SuperMario3DWorld_NoHUD/d9f064ae204238df_000000000000007d_ps.txt b/src/SuperMario3DWorld/Mods/NoHUD/d9f064ae204238df_000000000000007d_ps.txt similarity index 100% rename from Mods/SuperMario3DWorld_NoHUD/d9f064ae204238df_000000000000007d_ps.txt rename to src/SuperMario3DWorld/Mods/NoHUD/d9f064ae204238df_000000000000007d_ps.txt diff --git a/Mods/SuperMario3DWorld_NoHUD/rules.txt b/src/SuperMario3DWorld/Mods/NoHUD/rules.txt similarity index 56% rename from Mods/SuperMario3DWorld_NoHUD/rules.txt rename to src/SuperMario3DWorld/Mods/NoHUD/rules.txt index 59735e4d0..76a2a6003 100644 --- a/Mods/SuperMario3DWorld_NoHUD/rules.txt +++ b/src/SuperMario3DWorld/Mods/NoHUD/rules.txt @@ -1,6 +1,7 @@ [Definition] -titleIds = 5000010145d00,5000010145c00 +titleIds = 0005000010145D00,0005000010145C00,0005000010106100 name = Remove All HUD Elements path = "Super Mario 3D World/Mods/No HUD (breaks menus)" -description = Disable most of the UI while playing.|Use it only for screenshots as it breaks some menus.||Made by @etra0. +description = Disable most of the UI while playing.|Use it only for screenshots as it breaks some menus.|Made by @etra0. +#Credits: @etra0 version = 6