mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2025-01-07 23:40:42 +01:00
Update MK8 mods
adds v1 support to 60fps and resolution pack adds new course unlock pack and vehicle unlock pack
This commit is contained in:
parent
0914ce04e0
commit
cee416cfba
19
src/MarioKart8/Cheats/CourseUnlock/patch_CourseUnlock.asm
Normal file
19
src/MarioKart8/Cheats/CourseUnlock/patch_CourseUnlock.asm
Normal file
@ -0,0 +1,19 @@
|
||||
[MarioKart8_CourseUnlock]
|
||||
moduleMatches = 0x9F0A90B7, 0xD09700CE ; v4.2(EU/NA/JP), v4.1(EU/NA/JP)
|
||||
.origin = codecave
|
||||
UnlockCourses:
|
||||
lis r30, 0x0303
|
||||
ori r30, r30, 0x0303
|
||||
stw r30, 0(r11)
|
||||
stw r30, 4(r11)
|
||||
lbzx r30, r11, r0
|
||||
blr
|
||||
|
||||
[MarioKart8_CourseUnlock_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
;this mod makes every byte at 0x2e6b6668 = 3
|
||||
0x024D74CC = bla UnlockCourses
|
||||
|
||||
[MarioKart8_CourseUnlock_v41]
|
||||
moduleMatches = 0xD09700CE ; v4.1(EU/NA/JP)
|
||||
0x024D7148 = bla UnlockCourses
|
7
src/MarioKart8/Cheats/CourseUnlock/rules.txt
Normal file
7
src/MarioKart8/Cheats/CourseUnlock/rules.txt
Normal file
@ -0,0 +1,7 @@
|
||||
[Definition]
|
||||
titleIds = 000500001010EC00,000500001010ED00,000500001010EB00
|
||||
name = Course Unlock
|
||||
path = "Mario Kart 8/Cheats/Course Unlock"
|
||||
description = Unlock Every Course + Mirror Mode!
|
||||
#Credits: Intra
|
||||
version = 7
|
@ -0,0 +1,21 @@
|
||||
[MarioKart8_UnlockVehicle]
|
||||
moduleMatches = 0x9F0A90B7, 0xD09700CE ; v4.2(EU/NA/JP), v4.1(EU/NA/JP)
|
||||
.origin = codecave
|
||||
|
||||
CheckandChangeCoinAmmount:
|
||||
lwz r0, 0x14e0(r26)
|
||||
cmpwi r0, $coinammount
|
||||
bge CheckandChangeCoinAmmount_Exit
|
||||
li r0, $coinammount
|
||||
stw r0, 0x14e0(r26)
|
||||
CheckandChangeCoinAmmount_Exit:
|
||||
blr
|
||||
|
||||
[MarioKart8_UnlockVehicle_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
;this mod makes 0x2e6b6128 = $coinammount
|
||||
0x025A4038 = bla CheckandChangeCoinAmmount
|
||||
|
||||
[MarioKart8_UnlockVehicle_v41]
|
||||
moduleMatches = 0xD09700CE ; v4.1(EU/NA/JP)
|
||||
0x025A3E84 = bla CheckandChangeCoinAmmount
|
18
src/MarioKart8/Cheats/UnlockVehicleParts/rules.txt
Normal file
18
src/MarioKart8/Cheats/UnlockVehicleParts/rules.txt
Normal file
@ -0,0 +1,18 @@
|
||||
[Definition]
|
||||
titleIds = 000500001010EC00,000500001010ED00,000500001010EB00
|
||||
name = Unlock Vehicle Parts!
|
||||
path = "Mario Kart 8/Mods/Unlock Vehicle Parts"
|
||||
description = Unlock every non-golden vehicle part!|Must activate by pressing (-) on the main menu to view your playstats.|Then do a race to save the new value.
|
||||
#Credits: Intra
|
||||
version = 7
|
||||
|
||||
[Default]
|
||||
$coinammount = 0
|
||||
|
||||
[Preset]
|
||||
name = Unlock all non-golden parts (sets coins to 2800)
|
||||
$coinammount = 2800
|
||||
|
||||
[Preset]
|
||||
name = Unlock Golden Glider (sets coins to 10000)
|
||||
$coinammount = 10000
|
@ -0,0 +1,129 @@
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : 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 shaders was auto-converted from OpenGL to Cemu.
|
||||
|
||||
// shader e90feef2bca6cb2e
|
||||
const float bloomFactor = $bloom;
|
||||
|
||||
#ifdef VULKAN
|
||||
layout(set = 1, binding = 2) uniform ufBlock
|
||||
{
|
||||
uniform ivec4 uf_remappedPS[4];
|
||||
uniform vec4 uf_fragCoordScale;
|
||||
};
|
||||
#else
|
||||
uniform ivec4 uf_remappedPS[4];
|
||||
uniform vec2 uf_fragCoordScale;
|
||||
#endif
|
||||
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||
layout(location = 0) in vec4 passParameterSem0;
|
||||
layout(location = 1) in vec4 passParameterSem1;
|
||||
layout(location = 2) in vec4 passParameterSem2;
|
||||
layout(location = 0) out vec4 passPixelColor0;
|
||||
// uf_fragCoordScale was moved to the ufBlock
|
||||
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 R4f = vec4(0.0);
|
||||
vec4 R123f = vec4(0.0);
|
||||
vec4 R126f = vec4(0.0);
|
||||
vec4 R127f = vec4(0.0);
|
||||
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 = passParameterSem0;
|
||||
R1f = passParameterSem1;
|
||||
R2f = passParameterSem2;
|
||||
R3f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw);
|
||||
R1f.xyzw = (texture(textureUnitPS0, R1f.zw).xyzw);
|
||||
R4f.xyzw = (texture(textureUnitPS0, R2f.xy).xyzw);
|
||||
R0f.x = (texture(textureUnitPS1, R0f.xy).x);
|
||||
R2f.xyzw = (texture(textureUnitPS0, R2f.zw).xyzw);
|
||||
// 0
|
||||
backupReg0f = R0f.x;
|
||||
PV0f.x = R3f.y + R1f.y;
|
||||
PV0f.x /= 2.0;
|
||||
PV0f.y = R3f.x + R1f.x;
|
||||
PV0f.y /= 2.0;
|
||||
PV0f.z = R3f.w + R1f.w;
|
||||
PV0f.z /= 2.0;
|
||||
PV0f.w = R3f.z + R1f.z;
|
||||
PV0f.w /= 2.0;
|
||||
R127f.w = (backupReg0f * intBitsToFloat(uf_remappedPS[0].z) + intBitsToFloat(uf_remappedPS[0].w));
|
||||
R127f.w = clamp(R127f.w, 0.0, 1.0);
|
||||
PS0f = R127f.w;
|
||||
// 1
|
||||
R123f.x = (R4f.y * 0.5 + PV0f.x);
|
||||
PV1f.x = R123f.x;
|
||||
R123f.y = (R4f.x * 0.5 + PV0f.y);
|
||||
PV1f.y = R123f.y;
|
||||
R123f.z = (R4f.w * 0.5 + PV0f.z);
|
||||
PV1f.z = R123f.z;
|
||||
R123f.w = (R4f.z * 0.5 + PV0f.w);
|
||||
PV1f.w = R123f.w;
|
||||
R127f.z = mul_nonIEEE(PS0f, intBitsToFloat(uf_remappedPS[1].z));
|
||||
PS1f = R127f.z;
|
||||
// 2
|
||||
R127f.x = (R2f.x * 0.5 + PV1f.y)/2.0;
|
||||
PV0f.x = R127f.x;
|
||||
R127f.y = (R2f.y * 0.5 + PV1f.x)/2.0;
|
||||
PV0f.y = R127f.y;
|
||||
R126f.z = (R2f.z * 0.5 + PV1f.w)/2.0;
|
||||
PV0f.z = R126f.z;
|
||||
R126f.w = (R2f.w * 0.5 + PV1f.z)/2.0;
|
||||
PV0f.w = R126f.w;
|
||||
// 3
|
||||
tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(uf_remappedPS[2].w)));
|
||||
tempf.x = clamp(tempf.x, 0.0, 1.0);
|
||||
PV1f.x = tempf.x;
|
||||
PV1f.y = tempf.x;
|
||||
PV1f.z = tempf.x;
|
||||
PV1f.w = tempf.x;
|
||||
// 4
|
||||
R123f.y = (R127f.w * R127f.z + PV1f.x);
|
||||
PV0f.y = R123f.y;
|
||||
// 5
|
||||
PV1f.x = mul_nonIEEE(PV0f.y, intBitsToFloat(uf_remappedPS[3].z));
|
||||
// 6
|
||||
R2f.x = mul_nonIEEE(R127f.x, PV1f.x * bloomFactor);
|
||||
R2f.y = mul_nonIEEE(R127f.y, PV1f.x * bloomFactor);
|
||||
R2f.z = mul_nonIEEE(R126f.z, PV1f.x * bloomFactor);
|
||||
R2f.w = mul_nonIEEE(R126f.w, PV1f.x * bloomFactor);
|
||||
// export
|
||||
passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
||||
}
|
26
src/MarioKart8/Enhancements/Bloom/rules.txt
Normal file
26
src/MarioKart8/Enhancements/Bloom/rules.txt
Normal file
@ -0,0 +1,26 @@
|
||||
[Definition]
|
||||
titleIds = 000500001010EC00,000500001010ED00,000500001010EB00
|
||||
name = Bloom Adjustment
|
||||
path = "Mario Kart 8/Enhancements/Bloom Adjustment"
|
||||
description = Allows you to adjust how strong the bloom is. Full amount is the default intensity of bloom.
|
||||
#Credits: M&&M
|
||||
version = 6
|
||||
|
||||
[Default]
|
||||
$bloom = 1.0
|
||||
|
||||
[Preset]
|
||||
name = Full Amount (Default)
|
||||
default = 1
|
||||
|
||||
[Preset]
|
||||
name = Half Amount
|
||||
$bloom = 0.5
|
||||
|
||||
[Preset]
|
||||
name = Quarter Amount
|
||||
$bloom = 0.25
|
||||
|
||||
[Preset]
|
||||
name = Disabled
|
||||
$bloom = 0.0
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -11,7 +11,7 @@
|
||||
#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 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)
|
||||
@ -34,8 +34,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;
|
||||
|
||||
|
||||
@ -44,18 +44,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/1920.0*uf_fragCoordScale.x)
|
||||
#define py (1.0/1080.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);
|
||||
@ -93,8 +93,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);
|
||||
}
|
||||
@ -102,7 +102,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;
|
||||
|
@ -3,6 +3,7 @@ titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
name = Contrasty
|
||||
path = "Mario Kart 8/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.|Made by getdls.
|
||||
#Credits: getdls
|
||||
version = 6
|
||||
|
||||
[Default]
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
|
||||
#ifdef VULKAN
|
||||
layout(location = 0) in vec2 passUV;
|
||||
@ -14,9 +14,9 @@ ivec2 resolution = textureSize(textureSrc,0); // Retrieve Texture Dimensions
|
||||
precision highp float;
|
||||
vec2 RcpFrame = vec2(1.0 / float(resolution.x), 1.0 / float(resolution.y));
|
||||
|
||||
/*
|
||||
/*
|
||||
https://github.com/haasn/gentoo-conf/blob/xor/home/nand/.mpv/shaders/LICENSE
|
||||
|
||||
|
||||
Copyright (c) 2015 Niklas Haas
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
@ -38,7 +38,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
/*
|
||||
/*
|
||||
Ordered dithering reshade
|
||||
https://github.com/crosire/reshade/blob/master/LICENSE.md
|
||||
|
||||
@ -121,8 +121,8 @@ vec4 getreader(sampler2D tex, vec2 pos, vec2 tex_size)
|
||||
}
|
||||
|
||||
// Ordered dithering of output
|
||||
const float dither_bit = 8.0; //WiiU backbuffer RGBA_8, if used in shader, check if depth is RBG_16_A2
|
||||
|
||||
const float dither_bit = 8.0; //WiiU backbuffer RGBA_8, if used in shader, check if depth is RBG_16_A2
|
||||
|
||||
float grid_position = fract(dot(passUV, (resolution * vec2(1.0 / 16.0, 10.0 / 36.0)) + 0.25));
|
||||
float dither_shift = 0.25 * (1.0 / (pow(2, dither_bit) - 1.0));
|
||||
vec3 dither_shift_RGB = vec3(dither_shift, -dither_shift, dither_shift); //Shift the individual colors, subpixel dithering
|
||||
|
@ -1,8 +1,9 @@
|
||||
[Definition]
|
||||
titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
titleIds = 000500001010EC00,000500001010ED00,000500001010EB00
|
||||
name = Debanding
|
||||
path = "Mario Kart 8/Enhancements/Debanding"
|
||||
description = Adds a debanding post processing shader to the game.|This pack can only be used with OpenGL.|Made by getdls.
|
||||
#Credits: getdls
|
||||
version = 6
|
||||
rendererFilter = opengl
|
||||
|
||||
@ -34,29 +35,29 @@ $Range:int = 16
|
||||
$Iterations:int = 8
|
||||
$Grain:int = 90
|
||||
|
||||
# Original by N Haas GPL
|
||||
# Original by N Haas GPL
|
||||
# Order dither converted from reshade Crosire et al.
|
||||
#
|
||||
# Works better when applied to a shader (sky, video..)
|
||||
# instead of as a post filter. Both for performance and fixing quantization errors.
|
||||
# Works better when applied to a shader (sky, video..)
|
||||
# instead of as a post filter. Both for performance and fixing quantization errors.
|
||||
|
||||
|
||||
# The threshold of difference below which a pixel is considered to be part of
|
||||
# a gradient. Higher = more debanding, but setting it too high diminishes image
|
||||
# details.
|
||||
# THRESHOLD 64
|
||||
#
|
||||
#
|
||||
# The range (in source pixels) at which to sample for neighbours. Higher values
|
||||
# will find more gradients, but lower values will deband more aggressively.
|
||||
# RANGE 8
|
||||
#
|
||||
#
|
||||
# The number of debanding iterations to perform. Each iteration samples from
|
||||
# random positions, so increasing the number of iterations is likely to
|
||||
# increase the debanding quality. Conversely, it slows the shader down.
|
||||
# (Each iteration will use a multiple of the configured RANGE, and a
|
||||
# successively lower THRESHOLD - so setting it much higher has little effect)
|
||||
# ITERATIONS 4
|
||||
#
|
||||
#
|
||||
# (Optional) Add some extra noise to the image. This significantly helps cover
|
||||
# up remaining banding and blocking artifacts, at comparatively little visual
|
||||
# quality. Higher = more grain. Setting it to 1 disables the effect.
|
||||
|
@ -3,6 +3,7 @@ titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
name = Remove MKTV Watermark
|
||||
path = "Mario Kart 8/Enhancements/Remove MKTV Watermark"
|
||||
description = Removes the MKTV watermark in the replays or highlight reel.|Made by Crementif.
|
||||
#Credits: Crementif
|
||||
version = 6
|
||||
|
||||
[TextureRedefine]
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -11,7 +11,7 @@
|
||||
#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 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)
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
// shader 2e78a0d0a0aa66bb
|
||||
// Used for: Horizontal (Menu) Bloom Blur
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
|
||||
#ifdef VULKAN
|
||||
layout(set = 0, binding = 0) uniform ufBlock
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader 408a66d9721b1cec //Lava bowser castle, point light offset
|
||||
@ -12,7 +12,7 @@
|
||||
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#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
|
||||
#endif
|
||||
@ -48,7 +48,7 @@ layout(location = 3) out vec4 passParameterSem4;
|
||||
layout(location = 4) out vec4 passParameterSem6;
|
||||
layout(location = 5) out vec4 passParameterSem10;
|
||||
// end of shader inputs/outputs
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
int clampFI32(int v)
|
||||
{
|
||||
if( v == 0x7FFFFFFF )
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader 74126253134563de
|
||||
@ -14,7 +14,7 @@
|
||||
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#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
|
||||
#endif
|
||||
@ -33,7 +33,7 @@ out gl_PerVertex
|
||||
};
|
||||
layout(location = 0) out vec4 passParameterSem0;
|
||||
// end of shader inputs/outputs
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
int clampFI32(int v)
|
||||
{
|
||||
if( v == 0x7FFFFFFF )
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader 8e1337dde42fd224
|
||||
@ -14,7 +14,7 @@ const float resYScale = float($height)/float($gameHeight);
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -11,7 +11,7 @@
|
||||
#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 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)
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
// shader ad3014302e0e49bf
|
||||
// Used for: Stage Select & Menu Background Horizontal Blur
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
|
||||
#ifdef VULKAN
|
||||
layout(set = 0, binding = 0) uniform ufBlock
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader be99d80628d31127
|
||||
@ -14,7 +14,7 @@ const float resYScale = float($height)/float($gameHeight);
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||
#endif
|
||||
@ -219,4 +219,4 @@ activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true;
|
||||
// export
|
||||
passPixelColor0 = vec4(R4f.x, R4f.y, R4f.z, R4f.w);
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader c673c0d44f779fc9 // replay DOF box blur
|
||||
@ -12,7 +12,7 @@
|
||||
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#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
|
||||
#endif
|
||||
@ -32,7 +32,7 @@ out gl_PerVertex
|
||||
};
|
||||
layout(location = 0) out vec4 passParameterSem3;
|
||||
// end of shader inputs/outputs
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
int clampFI32(int v)
|
||||
{
|
||||
if( v == 0x7FFFFFFF )
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader d5d751973ea3d3b4 // menu background box blur, initial downscaling.
|
||||
@ -12,7 +12,7 @@
|
||||
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#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
|
||||
#endif
|
||||
@ -32,7 +32,7 @@ out gl_PerVertex
|
||||
layout(location = 0) out vec4 passParameterSem1;
|
||||
layout(location = 1) out vec4 passParameterSem3;
|
||||
// end of shader inputs/outputs
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
int clampFI32(int v)
|
||||
{
|
||||
if( v == 0x7FFFFFFF )
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -11,7 +11,7 @@
|
||||
#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 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)
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
// shader dd7a19be01b7b1aa
|
||||
// Used for: Vertical (Menu) Bloom Blur
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
const float resScale = float($height)/float($gameHeight);
|
||||
|
||||
#ifdef VULKAN
|
||||
layout(set = 0, binding = 0) uniform ufBlock
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#ifdef VULKAN
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||
@ -10,7 +10,7 @@
|
||||
#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 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)
|
||||
|
@ -1,10 +1,10 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader f5274bda2b5e1e9f
|
||||
// start of shader inputs/outputs, predetermined by Cemu. Do not touch
|
||||
// Used for: reflection highlights
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
const float resScale = float($width)/float($gameWidth);
|
||||
|
||||
#ifdef VULKAN
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||
@ -15,7 +15,7 @@ const float resScale = float($width)/float($gameWidth);
|
||||
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#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
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 430
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
// shader fdf33c607cd1d737 //Radial blur replacement
|
||||
@ -10,7 +10,7 @@
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||
#else
|
||||
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||
#endif
|
||||
@ -69,12 +69,12 @@ R0f = passParameterSem0;
|
||||
R1f = passParameterSem1;
|
||||
R2f = passParameterSem2;
|
||||
R3f = passParameterSem3;
|
||||
vec2 coord = -1.0 + R0f.xy;
|
||||
vec2 coord = -1.0 + R0f.xy;
|
||||
vec2 ps = vec2(1.0)*uf_fragCoordScale.xy / textureSize(textureUnitPS0, 0);
|
||||
vec2 uv = gl_FragCoord.xy *2.0 / textureSize(textureUnitPS0, 0);
|
||||
//Simle radial blur jcant0n, shadertoy.com
|
||||
uv -= center;
|
||||
float precompute = blurWidth * (1.0 / float(nsamples - 1));
|
||||
float precompute = blurWidth * (1.0 / float(nsamples - 1));
|
||||
for(int i = 0; i < nsamples; i++)
|
||||
{
|
||||
float scale = blurStart + (float(i)* precompute);
|
||||
|
@ -1,6 +1,5 @@
|
||||
[MK8_AspectRatio_Shared]
|
||||
[MarioKart8_AspectRatio]
|
||||
moduleMatches = 0x9F0A90B7,0xD09700CE,0x1D398493,0xBA6B1E20,0x62A5F023,0x2A2DC82C
|
||||
|
||||
.origin = codecave
|
||||
|
||||
aspectRatio:
|
||||
@ -13,56 +12,38 @@ lfs f12, aspectRatio@l(r7)
|
||||
fmuls f7, f9, f12
|
||||
blr
|
||||
|
||||
|
||||
[MK8_AspectRatio_V42]
|
||||
moduleMatches = 0x9F0A90B7
|
||||
|
||||
[MarioKart8_AspectRatio_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
0x024AEF70 = bla scaleAspectRatioCalc
|
||||
|
||||
0x100C359C = .float ($width/$height)
|
||||
0x10121E30 = .float ($width/$height)
|
||||
|
||||
|
||||
[MK8_AspectRatio_V41]
|
||||
moduleMatches = 0xD09700CE
|
||||
|
||||
[MarioKart8_AspectRatio_v41]
|
||||
moduleMatches = 0xD09700CE ; v4.1(EU/NA/JP)
|
||||
0x024AEBEC = bla scaleAspectRatioCalc
|
||||
|
||||
0x100C359C = .float ($width/$height)
|
||||
0x10121E30 = .float ($width/$height)
|
||||
|
||||
|
||||
[MK8_AspectRatio_V4]
|
||||
moduleMatches = 0x1D398493
|
||||
|
||||
[MarioKart8_AspectRatio_v4]
|
||||
moduleMatches = 0x1D398493 ; v4.0(EU/NA/JP)
|
||||
0x024AEBEC = bla scaleAspectRatioCalc
|
||||
|
||||
0x100C359C = .float ($width/$height)
|
||||
0x10121D30 = .float ($width/$height)
|
||||
|
||||
|
||||
[MK8_AspectRatio_V3]
|
||||
moduleMatches = 0xBA6B1E20
|
||||
|
||||
[MarioKart8_AspectRatio_v3]
|
||||
moduleMatches = 0xBA6B1E20 ; v3.0(EU/NA/JP)
|
||||
0x024642E8 = bla scaleAspectRatioCalc
|
||||
|
||||
0x100AC25C = .float ($width/$height)
|
||||
0x1010A730 = .float ($width/$height)
|
||||
|
||||
|
||||
[MK8_AspectRatio_V2]
|
||||
moduleMatches = 0x62A5F023
|
||||
|
||||
[MarioKart8_AspectRatio_v2]
|
||||
moduleMatches = 0x62A5F023 ; v2.0(EU/NA/JP)
|
||||
0x024376D4 = bla scaleAspectRatioCalc
|
||||
|
||||
0x1009E9DC = .float ($width/$height)
|
||||
0x100FC030 = .float ($width/$height)
|
||||
|
||||
|
||||
[MK8_AspectRatio_V1]
|
||||
moduleMatches = 0x2A2DC82C
|
||||
|
||||
[MarioKart8_AspectRatio_v1]
|
||||
moduleMatches = 0x2A2DC82C ; v1.0(EU/NA/JP)
|
||||
0x02416760 = bla scaleAspectRatioCalc
|
||||
|
||||
0x10097D94 = .float ($width/$height)
|
||||
0x100F3430 = .float ($width/$height)
|
||||
|
@ -1,10 +1,11 @@
|
||||
[MK8_DisableFXAA_V42]
|
||||
moduleMatches = 0x9F0A90B7
|
||||
|
||||
[MarioKart8_DisableFXAA_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
0x027DF528 = blr
|
||||
|
||||
|
||||
[MK8_DisableFXAA_V41]
|
||||
moduleMatches = 0xD09700CE
|
||||
|
||||
[MarioKart8_DisableFXAA_v41]
|
||||
moduleMatches = 0xD09700CE ; v4.1(EU/NA/JP)
|
||||
0x027DF2F4 = blr
|
||||
|
||||
[MarioKart8_DisableFXAA_v1]
|
||||
moduleMatches = 0x2A2DC82C ; v1.0(EU/NA/JP)
|
||||
0x0271DE0C = blr
|
||||
|
@ -1,4 +1,7 @@
|
||||
[MK8_LevelOfDetail_V42_V41]
|
||||
moduleMatches = 0x9F0A90B7,0xD09700CE
|
||||
[MarioKart8_LevelOfDetail_v42_v41]
|
||||
moduleMatches = 0x9F0A90B7, 0xD09700CE ; v4.2(EU/NA/JP), v4.1(EU/NA/JP)
|
||||
0x10121DF0 = .float $levelOfDetail
|
||||
|
||||
0x10121DF0 = .float $levelOfDetail
|
||||
[MarioKart8_LevelOfDetail_v1]
|
||||
moduleMatches = 0x2A2DC82C ; v1.0(EU/NA/JP)
|
||||
0x100F33F0 = .float $levelOfDetail
|
||||
|
@ -1,8 +1,9 @@
|
||||
[Definition]
|
||||
titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
titleIds = 000500001010EC00,000500001010ED00,000500001010EB00
|
||||
name = Graphic Options
|
||||
path = "Mario Kart 8/Graphics"
|
||||
description = Allows you to change the game's TV resolution, gamepad resolution, shadow quality, anti-aliasing, bloom intensity, motion blur quality, level of detail and anisotropic filtering quality.|Made by Crementif, theboy181 and M&&M.
|
||||
description = Allows you to change the game's TV resolution, gamepad resolution, shadow quality, anti-aliasing, bloom intensity, motion blur quality, level of detail and anisotropic filtering quality.|Made by Crementif, theboy181, and M&&M.
|
||||
#Credits: Crementif, theboy181, M&&M
|
||||
version = 6
|
||||
|
||||
[Default]
|
||||
@ -855,6 +856,11 @@ name = 16x
|
||||
category = Anisotropic Filtering
|
||||
$anisotropy = 16
|
||||
|
||||
[Preset]
|
||||
name = 32x
|
||||
category = Anisotropic Filtering
|
||||
$anisotropy = 32
|
||||
|
||||
|
||||
# Advanced Options
|
||||
|
||||
|
@ -1,10 +1,11 @@
|
||||
[MK8_60FPSFullDraw_V42]
|
||||
moduleMatches = 0x9F0A90B7
|
||||
|
||||
[MarioKart8_60FPSFullDraw_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
0x024AF384 = b .+0x54
|
||||
|
||||
|
||||
[MK8_60FPSFullDraw_V41]
|
||||
moduleMatches = 0xD09700CE
|
||||
|
||||
[MarioKart8_60FPSFullDraw_v41]
|
||||
moduleMatches = 0xD09700CE ; v4.1(EU/NA/JP)
|
||||
0x024AF000 = b .+0x54
|
||||
|
||||
[MarioKart8_60FPSFullDraw_v1]
|
||||
moduleMatches = 0x2A2DC82C ; v1.0(EU/NA/JP)
|
||||
0x02416B74 = b .+0x54
|
||||
|
@ -3,4 +3,5 @@ titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
name = 60FPS for 3/4 Player Splitscreen
|
||||
path = "Mario Kart 8/Mods/60FPS Splitscreen"
|
||||
description = Forces the game to run at 60FPS instead of 30FPS in 3/4 player splitscreen.|In those splitscreen modes, it normally alternates which screen is being updated each frame. This mod forces it to draw all the screens every frame instead.|Made by theboy181 and Xalphenos.
|
||||
#Credits: theboy181, Xalphenos
|
||||
version = 6
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -1,4 +1,4 @@
|
||||
#version 420
|
||||
#version 450
|
||||
#extension GL_ARB_texture_gather : enable
|
||||
#extension GL_ARB_separate_shader_objects : enable
|
||||
#ifdef VULKAN
|
||||
@ -14,7 +14,7 @@
|
||||
#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 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)
|
||||
|
@ -3,4 +3,5 @@ titleIds = 000500001010ec00,000500001010ed00,000500001010eb00
|
||||
name = Remove All HUD Elements
|
||||
path = "Mario Kart 8/Mods/No HUD (breaks menus)"
|
||||
description = Disables any HUD while racing.|Breaks many of the menu's so don't use this if you just want to play the game.||Made by Crementif.
|
||||
#Credits: Crementif
|
||||
version = 6
|
||||
|
@ -1,7 +1,6 @@
|
||||
[MarioKart8_ForceMultiplayerPortNumber_v81]
|
||||
moduleMatches = 0x9F0A90B7
|
||||
|
||||
# min port range
|
||||
[MarioKart8_ForceMultiplayerPortNumber_v42]
|
||||
moduleMatches = 0x9F0A90B7 ; v4.2(EU/NA/JP)
|
||||
; min port range
|
||||
0x101a9a52 = .short $port
|
||||
# max port range
|
||||
; max port range
|
||||
0x101a9a54 = .short $port
|
||||
|
Loading…
Reference in New Issue
Block a user