mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-22 01:29:18 +01:00
Update BotW packs for Vulkan (#411)
But now done properly! Basically, a bunch of improvements were made to the script. The previous attempt at this conversion was quickly followed by a rollback since I realized that the script was overlooking certain things that made most of the packs hit or miss whether they would work. A few things missing were: - It only tested the values from 1 preset. Now, each shader gets compiled per each preset, like what Cemu would do. It also merges the changes done for each preset into one. This should solve cases where one shader would define things separately or repeatedly from preset to preset. - All* of the shaders are tested to see if they use the converter used the right values for the locations for Vulkan. Both of these *should* mean that they should both compile and be linkable in Vulkan, which means that I don't have to test each individual shader to see if they work. I will release the two scripts (one used for converting, one used for checking the right values for the locations) tomorrow so that other people might be able to help, if they want. It's fairly straightforward now at least. * Organize workaround graphic packs Pretty hard to organize these correctly, but according to our discord discussion, this was the best layout from a bunch I proposed, together with some suggestions. * Add V4 converter script and instructions on how to use it Now everyone BotW is done and all of the bugs have been kinked out using it (hopefully...), here's the release of the converter script in all of it's very badly coded glory. I hope I didn't leave too much debug glory in there... Also, I hope that I didn't make too many grammatical mistakes in the instructions, but hopefully it's easy enough to follow.
This commit is contained in:
parent
3f105e6934
commit
549758507f
@ -1,15 +1,40 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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 15afdae4307b9a3d
|
// shader 15afdae4307b9a3d
|
||||||
// Used for: Vertical Ambient-Occlusion Blur
|
// Used for: Vertical Ambient-Occlusion Blur
|
||||||
const float resXScale = 0;
|
const float resXScale = 0;
|
||||||
const float resYScale = 0;
|
const float resYScale = 0;
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -70,7 +95,7 @@ R2f.w = R2f.y;
|
|||||||
R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].y))/resYScale;
|
R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].y))/resYScale;
|
||||||
PS1f = R2f.y;
|
PS1f = R2f.y;
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
||||||
// export
|
// export
|
||||||
|
@ -1,15 +1,40 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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 e06e20b2efe87a84
|
// shader e06e20b2efe87a84
|
||||||
// Used for: Horizontal Ambient-Occlusion Blur
|
// Used for: Horizontal Ambient-Occlusion Blur
|
||||||
const float resXScale = 0;
|
const float resXScale = 0;
|
||||||
const float resYScale = 0;
|
const float resYScale = 0;
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -73,7 +98,7 @@ R2f.w = backupReg0f;
|
|||||||
R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].x))/resXScale;
|
R2f.y = backupReg0f + -(intBitsToFloat(uf_remappedVS[0].x))/resXScale;
|
||||||
PS1f = R2f.y;
|
PS1f = R2f.y;
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
||||||
// export
|
// export
|
||||||
|
@ -3,4 +3,4 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = "No Ambient Occlusion"
|
name = "No Ambient Occlusion"
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Enhancements/No Ambient Occlusion"
|
path = "The Legend of Zelda: Breath of the Wild/Enhancements/No Ambient Occlusion"
|
||||||
description = Disables ambient occlusion. Useful for stuff like the ReShade RTGI shader. Known issues: Shadowed areas can sometimes look incorrect.
|
description = Disables ambient occlusion. Useful for stuff like the ReShade RTGI shader. Known issues: Shadowed areas can sometimes look incorrect.
|
||||||
version = 3
|
version = 4
|
||||||
|
@ -1,12 +1,35 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_arrays_of_arrays : 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 cb0e6e8cbec4502a
|
// shader cb0e6e8cbec4502a
|
||||||
// DoF blur effect - Battle, Camera, Scope
|
// DoF blur effect - Battle, Camera, Scope
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem3;
|
layout(location = 0) in vec4 passParameterSem3;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
|
||||||
const float resScale = 0;
|
const float resScale = 0;
|
||||||
const int radius = int(2*resScale);
|
const int radius = int(2*resScale);
|
||||||
|
@ -3,4 +3,4 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = "No Depth of Field"
|
name = "No Depth of Field"
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Enhancements/No Depth of Field"
|
path = "The Legend of Zelda: Breath of the Wild/Enhancements/No Depth of Field"
|
||||||
description = Disables depth of field.
|
description = Disables depth of field.
|
||||||
version = 3
|
version = 4
|
||||||
|
@ -1,6 +1,32 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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.
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
#endif
|
||||||
// shader 0f2b9ee517917425 - dumped 1.15
|
// shader 0f2b9ee517917425 - dumped 1.15
|
||||||
// Used for: Removing/Restoring the native BotW Anti-Aliasing implementation to link in inventory screen
|
// Used for: Removing/Restoring the native BotW Anti-Aliasing implementation to link in inventory screen
|
||||||
|
|
||||||
@ -9,7 +35,7 @@
|
|||||||
#define iBlurrier $inventoryBlurrier
|
#define iBlurrier $inventoryBlurrier
|
||||||
|
|
||||||
#if (preset == 0) // Native AA Disabled
|
#if (preset == 0) // Native AA Disabled
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
|
||||||
@ -20,12 +46,12 @@ passPixelColor0 = texture(textureUnitPS0, passParameterSem2.xy);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (preset == 1) // Native AA Enabled
|
#if (preset == 1) // Native AA Enabled
|
||||||
uniform ivec4 uf_remappedPS[2];
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x37b40000 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
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
|
|
||||||
ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float
|
ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float
|
||||||
float iresX = ( (float(resDim.x)/float(1280)) + iSharper ) - iBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper
|
float iresX = ( (float(resDim.x)/float(1280)) + iSharper ) - iBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper
|
||||||
@ -683,11 +709,11 @@ passPixelColor0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFl
|
|||||||
|
|
||||||
//--------------------------------------------------------------------------//
|
//--------------------------------------------------------------------------//
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x37f40000 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
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
|
||||||
|
|
||||||
#define FXAA_QUALITY_PS 12
|
#define FXAA_QUALITY_PS 12
|
||||||
#define FXAA_QUALITY_P0 1.0
|
#define FXAA_QUALITY_P0 1.0
|
||||||
|
@ -1,6 +1,32 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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.
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[4];
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[4];
|
||||||
|
#endif
|
||||||
// shader f14bb57cd5c9cb77 - dumped 1.15
|
// shader f14bb57cd5c9cb77 - dumped 1.15
|
||||||
// Used for: Removing/Restoring the native BotW World Anti-Aliasing Implementation
|
// Used for: Removing/Restoring the native BotW World Anti-Aliasing Implementation
|
||||||
|
|
||||||
@ -9,7 +35,7 @@
|
|||||||
#define wBlurrier $worldBlurrier
|
#define wBlurrier $worldBlurrier
|
||||||
|
|
||||||
#if (preset == 0) // Native AA Disabled
|
#if (preset == 0) // Native AA Disabled
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
void main()
|
void main()
|
||||||
@ -19,12 +45,12 @@ passPixelColor0 = texture(textureUnitPS0, passParameterSem2.xy);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (preset == 1) // Native AA Enabled
|
#if (preset == 1) // Native AA Enabled
|
||||||
uniform ivec4 uf_remappedPS[4];
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf462d000 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x37f40000 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
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
|
|
||||||
ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float
|
ivec2 resDim = textureSize(textureUnitPS0,0); // Retrieve texture dimensions vector holds data-type-float
|
||||||
float wresX = ( (float(resDim.x)/float(1280)) + wSharper ) - wBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper
|
float wresX = ( (float(resDim.x)/float(1280)) + wSharper ) - wBlurrier; // 1st comes aaSharper needs to be added to the direct result of resolution ratio to make it more sharper
|
||||||
@ -1052,11 +1078,11 @@ FxaaFloat4 FxaaPixelShader(
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
//#version 100
|
//#version 100
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf49b1800 res 1280x720x1 dim 1 tm: 4 format 0019 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x37f40000 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
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(location = 0) in vec4 passParameterSem2;
|
layout(location = 0) in vec4 passParameterSem2;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
|
||||||
|
|
||||||
ivec2 resolution = textureSize(textureUnitPS0,0); // Retrieve Texture Dimensions in float data type so we dont need to convert
|
ivec2 resolution = textureSize(textureUnitPS0,0); // Retrieve Texture Dimensions in float data type so we dont need to convert
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Anti-Aliasing
|
name = Anti-Aliasing
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Graphics/Anti-Aliasing"
|
path = "The Legend of Zelda: Breath of the Wild/Graphics/Anti-Aliasing"
|
||||||
description = Enables or Disables Native Botw Anti-Aliasing. Also includes an alternative FXAA implementation. Check the "Anti-Aliasing/rules.txt" file in your Botw AA graphicPack folder for info about the individual settings.
|
description = Enables or Disables Native Botw Anti-Aliasing. Also includes an alternative FXAA implementation. Check the "Anti-Aliasing/rules.txt" file in your Botw AA graphicPack folder for info about the individual settings.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Alternative FXAA (Nvidia's implementation)
|
name = Alternative FXAA (Nvidia's implementation)
|
||||||
|
@ -1,27 +1,53 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 49ce4bf04a654e80
|
// shader 49ce4bf04a654e80
|
||||||
// ReflExtra - Enhanced Reflections
|
// ReflExtra - Enhanced Reflections
|
||||||
// Reflections can be seen at greater distances
|
// Reflections can be seen at greater distances
|
||||||
// shader dumped from BotW v1.3.1, using Cemu 1.9.1
|
// shader dumped from BotW v1.3.1, using Cemu 1.9.1
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 10) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf513a800 res 320x180x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 9) uniform samplerCubeArray textureUnitPS9;// Tex9 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler9 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 11) uniform sampler2DArray textureUnitPS11;// Tex11 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2DArray textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem6;
|
layout(location = 4) in vec4 passParameterSem6;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -1,27 +1,53 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 8ff2cf86e789335f
|
// shader 8ff2cf86e789335f
|
||||||
// ReflExtra - Enhanced Reflections
|
// ReflExtra - Enhanced Reflections
|
||||||
// Reflections can be seen at greater distances
|
// Reflections can be seen at greater distances
|
||||||
// shader dumped from BotW v1.4.0, using Cemu 1.11.1
|
// shader dumped from BotW v1.4.0, using Cemu 1.11.1
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 10) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf513a800 res 320x180x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 9) uniform samplerCubeArray textureUnitPS9;// Tex9 addr 0x3da46800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler9 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 11) uniform sampler2DArray textureUnitPS11;// Tex11 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 3) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2DArray textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem6;
|
layout(location = 4) in vec4 passParameterSem6;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,4 +3,4 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = "Enhanced Reflections"
|
name = "Enhanced Reflections"
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Enhancements/Enhanced Reflections"
|
path = "The Legend of Zelda: Breath of the Wild/Enhancements/Enhanced Reflections"
|
||||||
description = Extends the reflections in shrines and some other surfaces.
|
description = Extends the reflections in shrines and some other surfaces.
|
||||||
version = 3
|
version = 4
|
||||||
|
@ -1,16 +1,41 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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 22c410044398c7af
|
// shader 22c410044398c7af
|
||||||
// Fixed radius blur
|
// Fixed radius blur
|
||||||
// shadow pass blur v
|
// shadow pass blur v
|
||||||
const float resXScale = $shadowRes;
|
const float resXScale = $shadowRes;
|
||||||
const float resYScale = $shadowRes;
|
const float resYScale = $shadowRes;
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -71,7 +96,7 @@ R2f.w = R2f.y;
|
|||||||
R2f.y = backupReg0f + -(PS0f);
|
R2f.y = backupReg0f + -(PS0f);
|
||||||
PS1f = R2f.y;
|
PS1f = R2f.y;
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w);
|
||||||
// export
|
// export
|
||||||
|
@ -1,16 +1,41 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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 2a2f55a2b2d64474
|
// shader 2a2f55a2b2d64474
|
||||||
// Fixed radius blur
|
// Fixed radius blur
|
||||||
// shadow pass blur h
|
// shadow pass blur h
|
||||||
const float resXScale = $shadowRes;
|
const float resXScale = $shadowRes;
|
||||||
const float resYScale = $shadowRes;
|
const float resYScale = $shadowRes;
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -75,7 +100,7 @@ PS1f = R0f.x;
|
|||||||
// 2
|
// 2
|
||||||
R0f.y = R2f.x + -(R127f.x);
|
R0f.y = R2f.x + -(R127f.x);
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
SET_POSITION(vec4(R1f.x, R1f.y, R1f.z, R1f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
|
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
|
||||||
// export
|
// export
|
||||||
|
@ -1,37 +1,61 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 88133ee405eaae28
|
// shader 88133ee405eaae28
|
||||||
// Shadow 2x2 box blur fix
|
// Shadow 2x2 box blur fix
|
||||||
// shader dumped from BotW v1.4.0, using Cemu 1.11.1
|
// shader dumped from BotW v1.4.0, using Cemu 1.11.1
|
||||||
const float resXScale = $shadowRes;
|
const float resXScale = $shadowRes;
|
||||||
const float resYScale = $shadowRes;
|
const float resYScale = $shadowRes;
|
||||||
|
|
||||||
layout(binding = 33, std140) uniform uniformBlockPS1
|
UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS1[1024];
|
vec4 uf_blockPS1[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 38, std140) uniform uniformBlockPS6
|
UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS6[1024];
|
vec4 uf_blockPS6[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 42, std140) uniform uniformBlockPS10
|
UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS10[1024];
|
vec4 uf_blockPS10[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x310be800 res 4x4x1 dim 1 tm: 2 format 0007 compSel: 0 0 0 1 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x310be800 res 32x32x1 dim 1 tm: 2 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x6) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 2 border: 0
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
layout(binding = 8) uniform sampler2DArrayShadow textureUnitPS8;// Tex8 addr 0xf557c800 res 720x720x3 dim 5 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x3) Sampler8 ClampX/Y/Z: 6 6 2 border: 2
|
TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArrayShadow textureUnitPS8;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0x310c0000 res 2000x1600x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 1 1 1 border: 1
|
TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,37 +1,61 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 ffe0e8c84f6e8da9
|
// shader ffe0e8c84f6e8da9
|
||||||
// Shadow 2x2 box blur fix
|
// Shadow 2x2 box blur fix
|
||||||
// shader dumped from BotW v1.3.1, using Cemu 1.10.0
|
// shader dumped from BotW v1.3.1, using Cemu 1.10.0
|
||||||
const float resXScale = $shadowRes;
|
const float resXScale = $shadowRes;
|
||||||
const float resYScale = $shadowRes;
|
const float resYScale = $shadowRes;
|
||||||
|
|
||||||
layout(binding = 33, std140) uniform uniformBlockPS1
|
UNIFORM_BUFFER_LAYOUT(33, 1, 7) uniform uniformBlockPS1
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS1[1024];
|
vec4 uf_blockPS1[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 38, std140) uniform uniformBlockPS6
|
UNIFORM_BUFFER_LAYOUT(38, 1, 8) uniform uniformBlockPS6
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS6[1024];
|
vec4 uf_blockPS6[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 42, std140) uniform uniformBlockPS10
|
UNIFORM_BUFFER_LAYOUT(42, 1, 9) uniform uniformBlockPS10
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS10[1024];
|
vec4 uf_blockPS10[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30fea800 res 4x4x1 dim 1 tm: 2 format 0007 compSel: 0 0 0 1 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x30fea800 res 32x32x1 dim 1 tm: 2 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x6) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 2 border: 0
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
layout(binding = 8) uniform sampler2DArrayShadow textureUnitPS8;// Tex8 addr 0xf557c800 res 720x720x3 dim 5 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x3) Sampler8 ClampX/Y/Z: 6 6 2 border: 2
|
TEXTURE_LAYOUT(8, 1, 4) uniform sampler2DArrayShadow textureUnitPS8;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0x30fec000 res 2000x1600x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 1 1 1 border: 1
|
TEXTURE_LAYOUT(15, 1, 5) uniform sampler2D textureUnitPS15;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Shadow Resolution
|
name = Shadow Resolution
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Graphics/Shadow Resolution"
|
path = "The Legend of Zelda: Breath of the Wild/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.
|
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 = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Medium (1.00x, Default)
|
name = Medium (1.00x, Default)
|
||||||
|
@ -1,24 +1,52 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
// shader 8d24f32f18e6de47
|
// shader 8d24f32f18e6de47
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 9) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[10];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3d0ea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform samplerCubeArray textureUnitPS8;
|
||||||
|
TEXTURE_LAYOUT(10, 1, 6) uniform sampler2DArray textureUnitPS10;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem6;
|
layout(location = 4) in vec4 passParameterSem6;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = "Amiibo Mode"
|
name = "Amiibo Mode"
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Amiibo Mode"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Amiibo Mode"
|
||||||
description = Amiibo mode by Altros, add or remove that plastic look. Req Remove Links Cell Shading by SkalFate
|
description = Amiibo mode by Altros, add or remove that plastic look. Req Remove Links Cell Shading by SkalFate
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,13 +1,39 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 2f7ecb9f0022d8ca -- Pixel shader for Links Cel Shading World & Menu - Texture format 0x005d
|
// shader 2f7ecb9f0022d8ca -- Pixel shader for Links Cel Shading World & Menu - Texture format 0x005d
|
||||||
#define mode $mode
|
#define mode $mode
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,15 +1,42 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 314b77345f06369b -- Vertex shader for Links Cel Shading - Texture format 0x005d
|
// shader 314b77345f06369b -- Vertex shader for Links Cel Shading - Texture format 0x005d
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler273 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
#else
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0;
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -66,7 +93,7 @@ R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].x) * intBitsToFloat(0x437
|
|||||||
PS0i = R3i.z;
|
PS0i = R3i.z;
|
||||||
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z)));
|
||||||
// 0
|
// 0
|
||||||
R127i.z = floatBitsToInt(float(R0i.x));
|
R127i.z = floatBitsToInt(float(R0i.x));
|
||||||
PS0i = R127i.z;
|
PS0i = R127i.z;
|
||||||
|
@ -1,15 +1,42 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 314b77349f0636db -- Vertex Shader -- Lights up Cel-Shade Link and NPCs but also messes up the sky in the new methods
|
// shader 314b77349f0636db -- Vertex Shader -- Lights up Cel-Shade Link and NPCs but also messes up the sky in the new methods
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler273 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
#else
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0;
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -66,7 +93,7 @@ R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedVS[0].y) * intBitsToFloat(0x437
|
|||||||
PS0i = R3i.z;
|
PS0i = R3i.z;
|
||||||
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z)));
|
||||||
// 0
|
// 0
|
||||||
R127i.z = floatBitsToInt(float(R0i.x));
|
R127i.z = floatBitsToInt(float(R0i.x));
|
||||||
PS0i = R127i.z;
|
PS0i = R127i.z;
|
||||||
|
@ -1,15 +1,42 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 314b7734df06371b -- Vertex Shader for Water/Magma and etc, one of the 3 vertex shaders involved with cel-shade removal
|
// shader 314b7734df06371b -- Vertex Shader for Water/Magma and etc, one of the 3 vertex shaders involved with cel-shade removal
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[1];
|
uniform ivec4 uf_remappedVS[1];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(binding = 32) uniform sampler2D textureUnitVS0;// Tex0 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler273 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
#else
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
uniform ivec4 uf_remappedVS[1];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(32, 0, 0) uniform sampler2D textureUnitVS0;
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -71,7 +98,7 @@ PS0i = R3i.z;
|
|||||||
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
R0i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy;
|
||||||
|
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z)));
|
||||||
|
|
||||||
// 0
|
// 0
|
||||||
R127i.z = floatBitsToInt(float(R0i.x));
|
R127i.z = floatBitsToInt(float(R0i.x));
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = All NPC No Cel-Shading Pack
|
name = All NPC No Cel-Shading Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Main"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Main"
|
||||||
description = Changes the type of shading on Link and the world.
|
description = Changes the type of shading on Link and the world.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Cel-Shading Disabled
|
name = Cel-Shading Disabled
|
||||||
|
@ -1,27 +1,55 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 57cecf2ed6c8e3f0 -- -- Fragment Shader where links gets drawn in the menu
|
// shader 57cecf2ed6c8e3f0 -- -- Fragment Shader where links gets drawn in the menu
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 10) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[29];
|
uniform ivec4 uf_remappedPS[29];
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x37b40000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf514c000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xf55b2000 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0x389a5800 res 4x4x1 dim 1 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[29];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf55b2000 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0x389a5800 res 4x4x1 dim 1 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 9) uniform samplerCubeArray textureUnitPS9;// Tex9 addr 0x389a4800 res 4x4x1 dim 3 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x6) Sampler9 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 0) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 10) uniform sampler2DArrayShadow textureUnitPS10;// Tex10 addr 0xf494a800 res 2048x2048x1 dim 5 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler10 ClampX/Y/Z: 6 6 2 border: 2
|
TEXTURE_LAYOUT(3, 1, 1) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x389a5800 res 4x4x1 dim 1 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 17) uniform sampler2D textureUnitPS17;// Tex17 addr 0x389a3800 res 4x4x1 dim 1 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 6) uniform samplerCubeArray textureUnitPS9;
|
||||||
|
TEXTURE_LAYOUT(10, 1, 7) uniform sampler2DArrayShadow textureUnitPS10;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(17, 1, 9) uniform sampler2D textureUnitPS17;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem5;
|
layout(location = 3) in vec4 passParameterSem5;
|
||||||
layout(location = 4) in vec4 passParameterSem6;
|
layout(location = 4) in vec4 passParameterSem6;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -1,14 +1,41 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
#extension GL_ARB_shading_language_packing : 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.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader f4e1147ab34a1677 -- Vertex Shader where links gets drawn in the menu
|
// shader f4e1147ab34a1677 -- Vertex Shader where links gets drawn in the menu
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[5];
|
uniform ivec4 uf_remappedVS[5];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[5];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -191,7 +218,7 @@ R0i.w = R125i.x;
|
|||||||
PS1i = R0i.w;
|
PS1i = R0i.w;
|
||||||
|
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)) * 0;
|
SET_POSITION(vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)) * 0);
|
||||||
|
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R2i.x), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Cel-Shade Removal Start Menu Workaround Pack
|
name = Cel-Shade Removal Start Menu Workaround Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Start Menu Workaround"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Cel-Shading - Start Menu Workaround"
|
||||||
description = Start Menu Workaround
|
description = Start Menu Workaround
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Start Menu Workaround
|
name = Start Menu Workaround
|
@ -1,19 +1,47 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
// shader 1c7db40ff5d693ab
|
// shader 1c7db40ff5d693ab
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 11) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[33];
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30364000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x38da5800 res 4x4x1 dim 1 tm: 2 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 7) uniform samplerCubeArray textureUnitPS7;// Tex7 addr 0x3d0ea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x3cfaa000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0xf5589800 res 160x90x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
|
TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
@ -22,7 +50,7 @@ layout(location = 1) out vec4 passPixelColor1;
|
|||||||
layout(location = 2) out vec4 passPixelColor2;
|
layout(location = 2) out vec4 passPixelColor2;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 4) out vec4 passPixelColor4;
|
layout(location = 4) out vec4 passPixelColor4;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = No Cel-Shading Links Shadow Brightness Fix v0.8
|
name = No Cel-Shading Links Shadow Brightness Fix v0.8
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix v08 - Altros"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix v08 - Altros"
|
||||||
description = Fixes the very dark shadows on Links back-side in No Cel-Shade mode.
|
description = Fixes the very dark shadows on Links back-side in No Cel-Shade mode.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 1c7db40ff5d693ab -- Link and all NPCs Shadows Renderer , NPC Distant Fog RGB Renderer , Body RGB renderer
|
// shader 1c7db40ff5d693ab -- Link and all NPCs Shadows Renderer , NPC Distant Fog RGB Renderer , Body RGB renderer
|
||||||
#define smode $smode
|
#define smode $smode
|
||||||
@ -26,18 +45,27 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 11) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[33];
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30364000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x236b7000 res 1024x1024x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 0 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 7) uniform samplerCubeArray textureUnitPS7;// Tex7 addr 0x3ccea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x3cbaa000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0xf5589800 res 160x90x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
|
TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
@ -46,7 +74,7 @@ layout(location = 1) out vec4 passPixelColor1;
|
|||||||
layout(location = 2) out vec4 passPixelColor2;
|
layout(location = 2) out vec4 passPixelColor2;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 4) out vec4 passPixelColor4;
|
layout(location = 4) out vec4 passPixelColor4;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Links Shadow Brightness for No Cel-Shading Pack
|
name = Links Shadow Brightness for No Cel-Shading Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix - SkalFate"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cel-Shading Removal (SkalFate & Altros)/Shadow Brightness Fix - SkalFate"
|
||||||
description = Changes the strength of shadows on Links body. Fixes the very dark link issue in no cel-shade mode.
|
description = Changes the strength of shadows on Links body. Fixes the very dark link issue in no cel-shade mode.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -9,48 +28,51 @@ const float Factor = $L_f;
|
|||||||
// textureUnitPS12 uf_blockPS8[23].xyz uf_blockPS8[31].x
|
// textureUnitPS12 uf_blockPS8[23].xyz uf_blockPS8[31].x
|
||||||
|
|
||||||
// shader 56bdb3903699990d
|
// shader 56bdb3903699990d
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 13) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 33, std140)
|
#endif
|
||||||
uniform uniformBlockPS1
|
UNIFORM_BUFFER_LAYOUT(33, 1, 14) uniform uniformBlockPS1
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS1[1024];
|
vec4 uf_blockPS1[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 38, std140)
|
UNIFORM_BUFFER_LAYOUT(38, 1, 15) uniform uniformBlockPS6
|
||||||
uniform uniformBlockPS6
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS6[1024];
|
vec4 uf_blockPS6[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 40, std140)
|
UNIFORM_BUFFER_LAYOUT(40, 1, 16) uniform uniformBlockPS8
|
||||||
uniform uniformBlockPS8
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS8[1024];
|
vec4 uf_blockPS8[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 42, std140)
|
UNIFORM_BUFFER_LAYOUT(42, 1, 17) uniform uniformBlockPS10
|
||||||
uniform uniformBlockPS10
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS10[1024];
|
vec4 uf_blockPS10[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2DArrayShadow textureUnitPS1;
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
layout(binding = 7) uniform sampler3D textureUnitPS7;
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7;
|
||||||
layout(binding = 8) uniform sampler2DArray textureUnitPS8;
|
TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8;
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;
|
TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9;
|
||||||
layout(binding = 10) uniform sampler2D textureUnitPS10;
|
TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;
|
TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;
|
TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12;
|
||||||
layout(binding = 13) uniform sampler2D textureUnitPS13;
|
TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,15 +27,24 @@ const float Factor = $L_f;
|
|||||||
// Armor When teleporting
|
// Armor When teleporting
|
||||||
|
|
||||||
// shader 7cd50058a8f1d6dd
|
// shader 7cd50058a8f1d6dd
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 7) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[10];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler3D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2DArray textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,13 +27,22 @@ const float Factor = $L_f;
|
|||||||
// Ancient Armor
|
// Ancient Armor
|
||||||
|
|
||||||
// shader cc51c2b5a4fce06c
|
// shader cc51c2b5a4fce06c
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 5) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem7;
|
layout(location = 2) in vec4 passParameterSem7;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Ancient Armor
|
name = Ancient Armor
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient Armor"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient Armor"
|
||||||
description = Change Ancient Amor's color and brightness. Originally it's Ancient Orange.
|
description = Change Ancient Amor's color and brightness. Originally it's Ancient Orange.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Malice Red
|
name = Malice Red
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Light = $L;
|
const float Light = $L;
|
||||||
@ -8,13 +27,22 @@ const float Light = $L;
|
|||||||
// Ancient weapons
|
// Ancient weapons
|
||||||
|
|
||||||
// shader 5c4fc00fefe604eb
|
// shader 5c4fc00fefe604eb
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 5) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem3;
|
layout(location = 1) in vec4 passParameterSem3;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Light = $L;
|
const float Light = $L;
|
||||||
@ -8,15 +27,24 @@ const float Light = $L;
|
|||||||
// Ancient weapons when teleporting
|
// Ancient weapons when teleporting
|
||||||
|
|
||||||
// shader b1b149918fac0b8d
|
// shader b1b149918fac0b8d
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 7) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[10];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler3D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2DArray textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem8;
|
layout(location = 2) in vec4 passParameterSem8;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Light = $L;
|
const float Light = $L;
|
||||||
@ -8,48 +27,51 @@ const float Light = $L;
|
|||||||
// Ancient weapons when Link is transparent
|
// Ancient weapons when Link is transparent
|
||||||
|
|
||||||
// shader f611e1b3827b5e13
|
// shader f611e1b3827b5e13
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 13) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 33, std140)
|
#endif
|
||||||
uniform uniformBlockPS1
|
UNIFORM_BUFFER_LAYOUT(33, 1, 14) uniform uniformBlockPS1
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS1[1024];
|
vec4 uf_blockPS1[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 38, std140)
|
UNIFORM_BUFFER_LAYOUT(38, 1, 15) uniform uniformBlockPS6
|
||||||
uniform uniformBlockPS6
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS6[1024];
|
vec4 uf_blockPS6[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 40, std140)
|
UNIFORM_BUFFER_LAYOUT(40, 1, 16) uniform uniformBlockPS8
|
||||||
uniform uniformBlockPS8
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS8[1024];
|
vec4 uf_blockPS8[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 42, std140)
|
UNIFORM_BUFFER_LAYOUT(42, 1, 17) uniform uniformBlockPS10
|
||||||
uniform uniformBlockPS10
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS10[1024];
|
vec4 uf_blockPS10[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2DArrayShadow textureUnitPS1;
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
layout(binding = 7) uniform sampler3D textureUnitPS7;
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7;
|
||||||
layout(binding = 8) uniform sampler2DArray textureUnitPS8;
|
TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8;
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;
|
TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9;
|
||||||
layout(binding = 10) uniform sampler2D textureUnitPS10;
|
TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;
|
TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;
|
TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12;
|
||||||
layout(binding = 13) uniform sampler2D textureUnitPS13;
|
TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Ancient weapons
|
name = Ancient weapons
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient weapons"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Ancient weapons"
|
||||||
description = Change Ancient weapons 's color and brightness. Originally it varies. Ancient Orange's Brightness is changed to Bow's.
|
description = Change Ancient weapons 's color and brightness. Originally it varies. Ancient Orange's Brightness is changed to Bow's.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Malice Red
|
name = Malice Red
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,14 +27,23 @@ const float Factor = $L_f;
|
|||||||
// Decayed Guardian
|
// Decayed Guardian
|
||||||
|
|
||||||
// shader 85d00659937443d5
|
// shader 85d00659937443d5
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
#endif
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Decayed Guardian
|
name = Decayed Guardian
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Decayed Guardian"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Decayed Guardian"
|
||||||
description = Change Decayed Guardian (including Stalkers with weathered appearance)'s color. Originally it's Malice Red.
|
description = Change Decayed Guardian (including Stalkers with weathered appearance)'s color. Originally it's Malice Red.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Malice Red
|
name = Malice Red
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -9,56 +28,58 @@ const float Factor = $L_f;
|
|||||||
// uf_blockPS8[23].xyz uf_blockPS8[31].x
|
// uf_blockPS8[23].xyz uf_blockPS8[31].x
|
||||||
|
|
||||||
// shader 4e0bab929e11836f
|
// shader 4e0bab929e11836f
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 14) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 33, std140)
|
#endif
|
||||||
uniform uniformBlockPS1
|
UNIFORM_BUFFER_LAYOUT(33, 1, 15) uniform uniformBlockPS1
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS1[1024];
|
vec4 uf_blockPS1[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 36, std140)
|
UNIFORM_BUFFER_LAYOUT(36, 1, 16) uniform uniformBlockPS4
|
||||||
uniform uniformBlockPS4
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS4[1024];
|
vec4 uf_blockPS4[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 38, std140)
|
UNIFORM_BUFFER_LAYOUT(38, 1, 17) uniform uniformBlockPS6
|
||||||
uniform uniformBlockPS6
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS6[1024];
|
vec4 uf_blockPS6[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 40, std140)
|
UNIFORM_BUFFER_LAYOUT(40, 1, 18) uniform uniformBlockPS8
|
||||||
uniform uniformBlockPS8
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS8[1024];
|
vec4 uf_blockPS8[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 42, std140)
|
UNIFORM_BUFFER_LAYOUT(42, 1, 19) uniform uniformBlockPS10
|
||||||
uniform uniformBlockPS10
|
|
||||||
{
|
{
|
||||||
vec4 uf_blockPS10[1024];
|
vec4 uf_blockPS10[1024];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2DArrayShadow textureUnitPS1;
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DArrayShadow textureUnitPS1;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
layout(binding = 7) uniform sampler3D textureUnitPS7;
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler3D textureUnitPS7;
|
||||||
layout(binding = 8) uniform sampler2DArray textureUnitPS8;
|
TEXTURE_LAYOUT(8, 1, 7) uniform sampler2DArray textureUnitPS8;
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;
|
TEXTURE_LAYOUT(9, 1, 8) uniform sampler2D textureUnitPS9;
|
||||||
layout(binding = 10) uniform sampler2D textureUnitPS10;
|
TEXTURE_LAYOUT(10, 1, 9) uniform sampler2D textureUnitPS10;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;
|
TEXTURE_LAYOUT(11, 1, 10) uniform sampler2D textureUnitPS11;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;
|
TEXTURE_LAYOUT(12, 1, 11) uniform sampler2D textureUnitPS12;
|
||||||
layout(binding = 13) uniform sampler2D textureUnitPS13;
|
TEXTURE_LAYOUT(13, 1, 12) uniform sampler2D textureUnitPS13;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;
|
TEXTURE_LAYOUT(14, 1, 13) uniform sampler2D textureUnitPS14;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,16 +27,25 @@ const float Factor = $L_f;
|
|||||||
// Guardian weapons when teleporting
|
// Guardian weapons when teleporting
|
||||||
|
|
||||||
// shader 83573681c1fcb0ac
|
// shader 83573681c1fcb0ac
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 8) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[10];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[10];
|
uniform ivec4 uf_remappedPS[10];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler3D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2DArray textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler3D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2DArray textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 7) uniform sampler2D textureUnitPS8;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,14 +27,23 @@ const float Factor = $L_f;
|
|||||||
// Guardian Stalker + Scout + Guardian weapons
|
// Guardian Stalker + Scout + Guardian weapons
|
||||||
|
|
||||||
// shader 91b6e09da2ff63cc
|
// shader 91b6e09da2ff63cc
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem7;
|
layout(location = 2) in vec4 passParameterSem7;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Guardian Stalker & Guardian Scout & The top Half of Guardian weapons
|
name = Guardian Stalker & Guardian Scout & The top Half of Guardian weapons
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Stalker & Scout & Guardian weapons"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Stalker & Scout & Guardian weapons"
|
||||||
description = Change Guardian Stalker, Scout, Guardian weapons's color. Originally it depends on whether it's corrupted by malice, or the state of the Guardian Scout.
|
description = Change Guardian Stalker, Scout, Guardian weapons's color. Originally it depends on whether it's corrupted by malice, or the state of the Guardian Scout.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Malice Red
|
name = Malice Red
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
const vec3 Color = vec3($R,$G,$B);
|
const vec3 Color = vec3($R,$G,$B);
|
||||||
const float Factor = $L_f;
|
const float Factor = $L_f;
|
||||||
@ -8,14 +27,23 @@ const float Factor = $L_f;
|
|||||||
// Guardian Turret + Skywatcher
|
// Guardian Turret + Skywatcher
|
||||||
|
|
||||||
// shader 133297c9a66bfc98
|
// shader 133297c9a66bfc98
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[5];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform ivec4 uf_remappedPS[5];
|
uniform ivec4 uf_remappedPS[5];
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;
|
#endif
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem7;
|
layout(location = 2) in vec4 passParameterSem7;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Guardian Turret & Skywatcher
|
name = Guardian Turret & Skywatcher
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Turret & Skywatcher"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Change Ancient Glow Color/Guardian Turret & Skywatcher"
|
||||||
description = Change Guardian Turret, Skywatcher's color. Originally it depends on whether it's corrupted by malice or not.
|
description = Change Guardian Turret, Skywatcher's color. Originally it depends on whether it's corrupted by malice or not.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Malice Red
|
name = Malice Red
|
||||||
|
@ -3,4 +3,4 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Infinite Amiibo
|
name = Infinite Amiibo
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Amiibo"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Cheats/Infinite Amiibo"
|
||||||
description = BotW Cheats by C313571N and Xalphenos
|
description = BotW Cheats by C313571N and Xalphenos
|
||||||
version = 3
|
version = 4
|
@ -1,28 +1,56 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 2e2543216c04766d -- Water RGB and edge clarity and Distant Water Fog
|
// shader 2e2543216c04766d -- Water RGB and edge clarity and Distant Water Fog
|
||||||
#define waterfogred $waterfogred
|
#define waterfogred $waterfogred
|
||||||
#define waterfoggreen $waterfoggreen
|
#define waterfoggreen $waterfoggreen
|
||||||
#define waterfogblue $waterfogblue
|
#define waterfogblue $waterfogblue
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 9) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[14];
|
uniform ivec4 uf_remappedPS[14];
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[14];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3ccea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform samplerCubeArray textureUnitPS8;
|
||||||
|
TEXTURE_LAYOUT(10, 1, 6) uniform sampler2DArray textureUnitPS10;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(13, 1, 8) uniform sampler2D textureUnitPS13;
|
||||||
|
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem4;
|
layout(location = 1) in vec4 passParameterSem4;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
|
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader bec68ec6f40a864f -- Affects distant area fog rgb, distance lighting, ground lighting
|
// shader bec68ec6f40a864f -- Affects distant area fog rgb, distance lighting, ground lighting
|
||||||
#define dli $distantlighting
|
#define dli $distantlighting
|
||||||
@ -8,19 +27,28 @@
|
|||||||
#define dgreen $dgreen
|
#define dgreen $dgreen
|
||||||
#define dblue $dblue
|
#define dblue $dblue
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 12) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[33];
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30364000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x236b7000 res 1024x1024x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 0 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 7) uniform samplerCubeArray textureUnitPS7;// Tex7 addr 0x3ccea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0x3cbaa000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x3ccc6800 res 96x96x1 dim 1 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 6 6 6 border: 2
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0xf5589800 res 160x90x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 17) uniform sampler2D textureUnitPS17;// Tex17 addr 0x3cd0f000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
|
TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15;
|
||||||
|
TEXTURE_LAYOUT(17, 1, 11) uniform sampler2D textureUnitPS17;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
@ -29,7 +57,7 @@ layout(location = 1) out vec4 passPixelColor1;
|
|||||||
layout(location = 2) out vec4 passPixelColor2;
|
layout(location = 2) out vec4 passPixelColor2;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 4) out vec4 passPixelColor4;
|
layout(location = 4) out vec4 passPixelColor4;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader fb2e18ae56397ca7 -- Affects Trees Bushes and Vines
|
// shader fb2e18ae56397ca7 -- Affects Trees Bushes and Vines
|
||||||
#define gli $greenerylighting
|
#define gli $greenerylighting
|
||||||
@ -8,19 +27,28 @@
|
|||||||
#define ggreen $ggreen
|
#define ggreen $ggreen
|
||||||
#define gblue $gblue
|
#define gblue $gblue
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 12) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[33];
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30364000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x236b7000 res 1024x1024x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 0 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 7) uniform samplerCubeArray textureUnitPS7;// Tex7 addr 0x3ccea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0x3cbaa000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x3ccc6800 res 96x96x1 dim 1 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 6 6 6 border: 2
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0xf5589800 res 160x90x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
layout(binding = 16) uniform sampler2D textureUnitPS16;// Tex16 addr 0x3cd0f000 res 12x1x1 dim 1 tm: 2 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
|
TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15;
|
||||||
|
TEXTURE_LAYOUT(16, 1, 11) uniform sampler2D textureUnitPS16;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
@ -29,7 +57,7 @@ layout(location = 1) out vec4 passPixelColor1;
|
|||||||
layout(location = 2) out vec4 passPixelColor2;
|
layout(location = 2) out vec4 passPixelColor2;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 4) out vec4 passPixelColor4;
|
layout(location = 4) out vec4 passPixelColor4;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Distant Area Fog Pack
|
name = Distant Area Fog Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Distant Fog - Main"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Distant Fog - Main"
|
||||||
description = Can Remove Distant Fog Haze from the world. Change its RGB color. Light up the Distance.
|
description = Can Remove Distant Fog Haze from the world. Change its RGB color. Light up the Distance.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 29c30aaa023dc7e6 -- Ganons middle and bottom big swirl
|
// shader 29c30aaa023dc7e6 -- Ganons middle and bottom big swirl
|
||||||
#define aurafog $aurafog
|
#define aurafog $aurafog
|
||||||
@ -25,11 +44,22 @@
|
|||||||
#define auraopacity 1
|
#define auraopacity 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20265000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x202df000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x1bf70000 res 256x256x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
@ -41,7 +71,7 @@ layout(location = 7) in vec4 passParameterSem14;
|
|||||||
layout(location = 8) in vec4 passParameterSem15;
|
layout(location = 8) in vec4 passParameterSem15;
|
||||||
layout(location = 9) in vec4 passParameterSem16;
|
layout(location = 9) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 397f3d8521c96e30 -- ganons castle swirl shader
|
// shader 397f3d8521c96e30 -- ganons castle swirl shader
|
||||||
#define aurafog $aurafog
|
#define aurafog $aurafog
|
||||||
@ -25,11 +44,22 @@
|
|||||||
#define auraopacity 1
|
#define auraopacity 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20265000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x202df000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x1bf70000 res 256x256x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
@ -42,7 +72,7 @@ layout(location = 8) in vec4 passParameterSem14;
|
|||||||
layout(location = 9) in vec4 passParameterSem15;
|
layout(location = 9) in vec4 passParameterSem15;
|
||||||
layout(location = 10) in vec4 passParameterSem16;
|
layout(location = 10) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 5a8eb2055c65a0c2 -- Vertex Shader - Close to Castle Aura RGB
|
// shader 5a8eb2055c65a0c2 -- Vertex Shader - Close to Castle Aura RGB
|
||||||
#define aurafog $aurafog
|
#define aurafog $aurafog
|
||||||
@ -9,12 +28,23 @@
|
|||||||
#define aurablue $aurablue
|
#define aurablue $aurablue
|
||||||
#define auraopacity $auraopacity
|
#define auraopacity $auraopacity
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[5];
|
uniform ivec4 uf_remappedPS[5];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20265000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x202df000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x1c870000 res 256x256x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[5];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -29,7 +59,7 @@ layout(location = 10) in vec4 passParameterSem14;
|
|||||||
layout(location = 11) in vec4 passParameterSem15;
|
layout(location = 11) in vec4 passParameterSem15;
|
||||||
layout(location = 12) in vec4 passParameterSem16;
|
layout(location = 12) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Castle Ganons Aura Pack
|
name = Castle Ganons Aura Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Ganons Aura"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Ganons Aura"
|
||||||
description = Can Remove the Fog on Ganons Aura on Hyrule castle. Change its RGB color.
|
description = Can Remove the Fog on Ganons Aura on Hyrule castle. Change its RGB color.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 699b238ae15d113b -- Ganons Castle Moat Fog Fragment Shader
|
// shader 699b238ae15d113b -- Ganons Castle Moat Fog Fragment Shader
|
||||||
#define basefogred $basefogred
|
#define basefogred $basefogred
|
||||||
@ -21,10 +40,21 @@
|
|||||||
#define basefogopacity 1
|
#define basefogopacity 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[5];
|
uniform ivec4 uf_remappedPS[5];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x2003b000 res 4x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[5];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -36,7 +66,7 @@ layout(location = 7) in vec4 passParameterSem14;
|
|||||||
layout(location = 8) in vec4 passParameterSem15;
|
layout(location = 8) in vec4 passParameterSem15;
|
||||||
layout(location = 9) in vec4 passParameterSem16;
|
layout(location = 9) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Hyrule Castle Base Fog Pack
|
name = Hyrule Castle Base Fog Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Base Fog"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/Hyrule Castle Base Fog"
|
||||||
description = Can Remove the Fog glow at the Base of Hyrule Castle. Can Change its RGB color.
|
description = Can Remove the Fog glow at the Base of Hyrule Castle. Can Change its RGB color.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,24 +1,52 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 1c7db40ff5d693ab -- Links and all NPCs RGb renderer, all npcs fog rgb renderer, sun-side facing brightness
|
// shader 1c7db40ff5d693ab -- Links and all NPCs RGb renderer, all npcs fog rgb renderer, sun-side facing brightness
|
||||||
#define npcfogred $npcfogred
|
#define npcfogred $npcfogred
|
||||||
#define npcfoggreen $npcfoggreen
|
#define npcfoggreen $npcfoggreen
|
||||||
#define npcfogblue $npcfogblue
|
#define npcfogblue $npcfogblue
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 11) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[33];
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x30364000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1
|
uniform ivec4 uf_remappedPS[33];
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x236b7000 res 1024x1024x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 0 border: 1
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5371000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1
|
#endif
|
||||||
layout(binding = 7) uniform samplerCubeArray textureUnitPS7;// Tex7 addr 0x3ccea800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler7 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf4ccf000 res 1280x720x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0x3cbaa000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(binding = 15) uniform sampler2D textureUnitPS15;// Tex15 addr 0xf5589800 res 160x90x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler15 ClampX/Y/Z: 2 2 2 border: 1
|
TEXTURE_LAYOUT(5, 1, 4) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 5) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform samplerCubeArray textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(11, 1, 7) uniform sampler2D textureUnitPS11;
|
||||||
|
TEXTURE_LAYOUT(12, 1, 8) uniform sampler2D textureUnitPS12;
|
||||||
|
TEXTURE_LAYOUT(14, 1, 9) uniform sampler2D textureUnitPS14;
|
||||||
|
TEXTURE_LAYOUT(15, 1, 10) uniform sampler2D textureUnitPS15;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem2;
|
layout(location = 1) in vec4 passParameterSem2;
|
||||||
layout(location = 2) in vec4 passParameterSem6;
|
layout(location = 2) in vec4 passParameterSem6;
|
||||||
@ -27,7 +55,7 @@ layout(location = 1) out vec4 passPixelColor1;
|
|||||||
layout(location = 2) out vec4 passPixelColor2;
|
layout(location = 2) out vec4 passPixelColor2;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 4) out vec4 passPixelColor4;
|
layout(location = 4) out vec4 passPixelColor4;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Distant NPCs Fog Removal Pack
|
name = Distant NPCs Fog Removal Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/NPC Fog Removal"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/NPC Fog Removal"
|
||||||
description = Can Remove Fog from Distant NPCs. Conflicts with Cel-Shade ShadowFix Packs.
|
description = Can Remove Fog from Distant NPCs. Conflicts with Cel-Shade ShadowFix Packs.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,6 +1,25 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#extension GL_ARB_texture_gather : enable
|
||||||
#extension GL_ARB_separate_shader_objects : enable
|
#extension GL_ARB_separate_shader_objects : enable
|
||||||
|
#ifdef VULKAN
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
|
||||||
|
#define gl_VertexID gl_VertexIndex
|
||||||
|
#define gl_InstanceID gl_InstanceIndex
|
||||||
|
#else
|
||||||
|
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
|
||||||
|
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
|
||||||
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
|
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
|
||||||
|
#endif
|
||||||
|
/* This shaders was auto-converted from OpenGL to Cemu.
|
||||||
|
Conversion output:
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
// shader 527591781440691a -- Controls RGb of the Fog Fields in the distance ans their opacity
|
// shader 527591781440691a -- Controls RGb of the Fog Fields in the distance ans their opacity
|
||||||
#define ffopacity $ffopacity
|
#define ffopacity $ffopacity
|
||||||
@ -8,13 +27,24 @@
|
|||||||
#define ffgreen $ffgreen
|
#define ffgreen $ffgreen
|
||||||
#define ffblue $ffblue
|
#define ffblue $ffblue
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 5) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[7];
|
uniform ivec4 uf_remappedPS[7];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x2022c000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20234000 res 256x64x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 2 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x200c2000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[7];
|
||||||
layout(binding = 10) uniform samplerCubeArray textureUnitPS10;// Tex10 addr 0x3c6ee800 res 16x16x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x6) Sampler10 ClampX/Y/Z: 2 2 2 border: 1
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(10, 1, 4) uniform samplerCubeArray textureUnitPS10;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -27,7 +57,7 @@ layout(location = 8) in vec4 passParameterSem14;
|
|||||||
layout(location = 9) in vec4 passParameterSem15;
|
layout(location = 9) in vec4 passParameterSem15;
|
||||||
layout(location = 10) in vec4 passParameterSem16;
|
layout(location = 10) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Fog Fields Pack
|
name = Fog Fields Pack
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/World Fog Fields"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Distant Fog Removal/World Fog Fields"
|
||||||
description = Can Remove Fog Fields from the whole world. Change its RGB color.
|
description = Can Remove Fog Fields from the whole world. Change its RGB color.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 6fa2baef8a4ece42
|
// shader 6fa2baef8a4ece42
|
||||||
// Divine Laser Beams Customizer - rings
|
// Divine Laser Beams Customizer - rings
|
||||||
// Credit for hsv functions below
|
// Credit for hsv functions below
|
||||||
@ -13,11 +30,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fc2000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x21594000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -26,7 +54,7 @@ layout(location = 4) in vec4 passParameterSem7;
|
|||||||
layout(location = 5) in vec4 passParameterSem8;
|
layout(location = 5) in vec4 passParameterSem8;
|
||||||
layout(location = 6) in vec4 passParameterSem14;
|
layout(location = 6) in vec4 passParameterSem14;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 de960d36a997b34d
|
// shader de960d36a997b34d
|
||||||
// Divine Laser Beams Customizer - beams
|
// Divine Laser Beams Customizer - beams
|
||||||
// Credit for hsv functions below
|
// Credit for hsv functions below
|
||||||
@ -13,11 +30,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x210b5000 res 200x200x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x2188b000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 0 0 border: 0
|
};
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -27,7 +55,7 @@ layout(location = 5) in vec4 passParameterSem8;
|
|||||||
layout(location = 6) in vec4 passParameterSem12;
|
layout(location = 6) in vec4 passParameterSem12;
|
||||||
layout(location = 7) in vec4 passParameterSem14;
|
layout(location = 7) in vec4 passParameterSem14;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
|
|||||||
name = Divine Laser Beams Customizer
|
name = Divine Laser Beams Customizer
|
||||||
path = "The Legend of Zelda: Breath of the Wild/Mods/Divine Laser Beams Customizer"
|
path = "The Legend of Zelda: Breath of the Wild/Mods/Divine Laser Beams Customizer"
|
||||||
description = Allows customization of the color of the Divine Beasts's Laser Beams. They can also be completely hidden. Inside the shader you can find other options like saturation and transparency.
|
description = Allows customization of the color of the Divine Beasts's Laser Beams. They can also be completely hidden. Inside the shader you can find other options like saturation and transparency.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = Red (Default)
|
name = Red (Default)
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 0453fb7ad9cc0f79
|
// shader 0453fb7ad9cc0f79
|
||||||
// Bomb - explosion sphere
|
// Bomb - explosion sphere
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21106000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fc9000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x21412000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +52,7 @@ layout(location = 3) in vec4 passParameterSem4;
|
|||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 5) in vec4 passParameterSem9;
|
layout(location = 5) in vec4 passParameterSem9;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 097eac672c26b4a4
|
// shader 097eac672c26b4a4
|
||||||
// Shrine - ending field shatter particles 2
|
// Shrine - ending field shatter particles 2
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,17 +28,28 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x210c8000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf557c800 res 160x90x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 1) uniform sampler2D textureUnitPS9;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 0ce5fca5c70640d1
|
// shader 0ce5fca5c70640d1
|
||||||
// Electric arc
|
// Electric arc
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fc2000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x210c1000 res 64x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x210c8000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +52,7 @@ layout(location = 3) in vec4 passParameterSem4;
|
|||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 5) in vec4 passParameterSem9;
|
layout(location = 5) in vec4 passParameterSem9;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 12fe44a2273b452c
|
// shader 12fe44a2273b452c
|
||||||
// Shrine - elevator pass through field
|
// Shrine - elevator pass through field
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,15 +28,26 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(4, 1, 0) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem3;
|
layout(location = 1) in vec4 passParameterSem3;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 146164991e2929e2
|
// shader 146164991e2929e2
|
||||||
// Shrine - volumetric light
|
// Shrine - volumetric light
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21331000 res 512x512x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf557c800 res 160x90x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 2) uniform sampler2D textureUnitPS9;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -23,7 +51,7 @@ layout(location = 3) in vec4 passParameterSem4;
|
|||||||
layout(location = 4) in vec4 passParameterSem7;
|
layout(location = 4) in vec4 passParameterSem7;
|
||||||
layout(location = 5) in vec4 passParameterSem8;
|
layout(location = 5) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 14f5a7cf99f2904a
|
// shader 14f5a7cf99f2904a
|
||||||
// Shrine - laser beam
|
// Shrine - laser beam
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x18b20000 res 128x4x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x18b20000 res 128x4x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 15e2d4f74a5e8445
|
// shader 15e2d4f74a5e8445
|
||||||
// Bomb - explosion first sphere
|
// Bomb - explosion first sphere
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,9 +28,20 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fd4000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -22,7 +50,7 @@ layout(location = 4) in vec4 passParameterSem7;
|
|||||||
layout(location = 5) in vec4 passParameterSem8;
|
layout(location = 5) in vec4 passParameterSem8;
|
||||||
layout(location = 6) in vec4 passParameterSem11;
|
layout(location = 6) in vec4 passParameterSem11;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 1dd8be9054c94f4e
|
// shader 1dd8be9054c94f4e
|
||||||
// Shrine - activation circle
|
// Shrine - activation circle
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[4];
|
uniform ivec4 uf_remappedPS[4];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21106000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fc9000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x1dc46000 res 64x64x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[4];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -28,7 +56,7 @@ layout(location = 7) in vec4 passParameterSem9;
|
|||||||
layout(location = 8) in vec4 passParameterSem11;
|
layout(location = 8) in vec4 passParameterSem11;
|
||||||
layout(location = 9) in vec4 passParameterSem12;
|
layout(location = 9) in vec4 passParameterSem12;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 233a000439032e75
|
// shader 233a000439032e75
|
||||||
// Bomb - explosion circle
|
// Bomb - explosion circle
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x214e1000 res 64x400x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x214e1000 res 64x400x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 266a0d760fe1ddfc
|
// shader 266a0d760fe1ddfc
|
||||||
// Shrine - elevator base
|
// Shrine - elevator base
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[4];
|
uniform ivec4 uf_remappedPS[4];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21106000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x21156000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x21103000 res 4x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[4];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -27,7 +55,7 @@ layout(location = 6) in vec4 passParameterSem8;
|
|||||||
layout(location = 7) in vec4 passParameterSem9;
|
layout(location = 7) in vec4 passParameterSem9;
|
||||||
layout(location = 8) in vec4 passParameterSem11;
|
layout(location = 8) in vec4 passParameterSem11;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 2a045e62b99640b5
|
// shader 2a045e62b99640b5
|
||||||
// Shrine of Resurrection - walls
|
// Shrine of Resurrection - walls
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb2b30000 res 512x256x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb2b63000 res 128x64x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xb2b42000 res 512x256x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xb2b42000 res 512x256x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 0 0 2 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -25,7 +53,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 2a87149b7154c69d
|
// shader 2a87149b7154c69d
|
||||||
// Bomb - smoke
|
// Bomb - smoke
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,13 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 5) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21048800 res 256x128x1 dim 1 tm: 4 format 0007 compSel: 0 1 1 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x2105e800 res 256x256x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x210b5000 res 200x200x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 10) uniform samplerCubeArray textureUnitPS10;// Tex10 addr 0x3d568800 res 16x16x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x2) sliceView: 0x0 (num 0x6) Sampler10 ClampX/Y/Z: 2 2 2 border: 1
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(10, 1, 4) uniform samplerCubeArray textureUnitPS10;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -29,7 +57,7 @@ layout(location = 7) in vec4 passParameterSem11;
|
|||||||
layout(location = 8) in vec4 passParameterSem14;
|
layout(location = 8) in vec4 passParameterSem14;
|
||||||
layout(location = 9) in vec4 passParameterSem15;
|
layout(location = 9) in vec4 passParameterSem15;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId)
|
||||||
{
|
{
|
||||||
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
// stm -> x .. s, y .. t, z .. MajorAxis*2.0
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 2f64af19b1835ab0
|
// shader 2f64af19b1835ab0
|
||||||
// Shrine - ending particles
|
// Shrine - ending particles
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,17 +28,28 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fd4000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 319e60116b59ceec
|
// shader 319e60116b59ceec
|
||||||
// Sheikah Tower - active
|
// Sheikah Tower - active
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,10 +28,19 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0x34833000 res 64x64x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0x34834000 res 128x128x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x34836000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +50,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 38d70ed9280bb3bc
|
// shader 38d70ed9280bb3bc
|
||||||
// Bloom color cast
|
// Bloom color cast
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,20 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 3d383d2d61500c9c
|
// shader 3d383d2d61500c9c
|
||||||
// Sheikah Tower - middle structure above control panel
|
// Sheikah Tower - middle structure above control panel
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,20 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb3798000 res 1024x1024x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb391b000 res 512x512x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xb381a000 res 1024x1024x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xb381a000 res 1024x1024x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 0 0 2 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +50,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 42c9208b54ad72ca
|
// shader 42c9208b54ad72ca
|
||||||
// Guardian scout fire debris
|
// Guardian scout fire debris
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,15 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fee000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fee000 res 64x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem8;
|
layout(location = 3) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 458dd826bd589332
|
// shader 458dd826bd589332
|
||||||
// Hateno fire - glow
|
// Hateno fire - glow
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,18 +28,29 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fc2000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fd4000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 2) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 48a94cda336d2976
|
// shader 48a94cda336d2976
|
||||||
// Hateno fire - horizontal flare
|
// Hateno fire - horizontal flare
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,15 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fdb000 res 256x78x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 1 1 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fe2000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem8;
|
layout(location = 3) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 4af8a4670205be4c
|
// shader 4af8a4670205be4c
|
||||||
// Shrine - laser beam glow
|
// Shrine - laser beam glow
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,10 +28,21 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[5];
|
uniform ivec4 uf_remappedPS[5];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x18b20000 res 128x4x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[5];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -27,7 +55,7 @@ layout(location = 8) in vec4 passParameterSem14;
|
|||||||
layout(location = 9) in vec4 passParameterSem15;
|
layout(location = 9) in vec4 passParameterSem15;
|
||||||
layout(location = 10) in vec4 passParameterSem16;
|
layout(location = 10) in vec4 passParameterSem16;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 4bdac25bb98f5804
|
// shader 4bdac25bb98f5804
|
||||||
// Hateno fire
|
// Hateno fire
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fc2000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fc9000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x20fcc800 res 64x64x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +52,7 @@ layout(location = 3) in vec4 passParameterSem4;
|
|||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 5) in vec4 passParameterSem9;
|
layout(location = 5) in vec4 passParameterSem9;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 5219277e990fe5ba
|
// shader 5219277e990fe5ba
|
||||||
// Bomb - horizontal appearance effect
|
// Bomb - horizontal appearance effect
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,15 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fdb000 res 256x78x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 1 1 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fe2000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem8;
|
layout(location = 3) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 5b04d28f319a1d6d
|
// shader 5b04d28f319a1d6d
|
||||||
// Bomb
|
// Bomb
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,20 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xb2ea5000 res 512x512x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xb2fce000 res 512x512x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb2fac000 res 512x512x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb2f8b000 res 512x512x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(1, 1, 0) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 1) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(3, 1, 2) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 3) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem3;
|
layout(location = 1) in vec4 passParameterSem3;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
@ -24,7 +50,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 5b9b7727ca24e22b
|
// shader 5b9b7727ca24e22b
|
||||||
// Shrine - ending field 2
|
// Shrine - ending field 2
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x216b3000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x21416000 res 400x100x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 2 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x2137e000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
@ -25,7 +53,7 @@ layout(location = 5) in vec4 passParameterSem8;
|
|||||||
layout(location = 6) in vec4 passParameterSem9;
|
layout(location = 6) in vec4 passParameterSem9;
|
||||||
layout(location = 7) in vec4 passParameterSem11;
|
layout(location = 7) in vec4 passParameterSem11;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 5f4e60117b59cf65
|
// shader 5f4e60117b59cf65
|
||||||
// Sheikah Tower - inactive + Shrine
|
// Sheikah Tower - inactive + Shrine
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,10 +28,19 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0x337db000 res 256x1024x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0x337f3000 res 128x512x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0x337e7000 res 256x1024x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem5;
|
layout(location = 1) in vec4 passParameterSem5;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -24,7 +50,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 603d7ad06d86617e
|
// shader 603d7ad06d86617e
|
||||||
// Teleportation - part 2
|
// Teleportation - part 2
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,15 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x216a1000 res 64x64x1 dim 1 tm: 4 format 0001 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x211a9000 res 32x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 6240983542445009
|
// shader 6240983542445009
|
||||||
// Shrine - bulbs
|
// Shrine - bulbs
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb74c5000 res 512x512x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb74ef000 res 256x256x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xb74e6000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xb75c0000 res 84x64x1 dim 1 tm: 4 format 0034 compSel: 0 4 4 4 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 0
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 3) uniform sampler2D textureUnitPS7;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem6;
|
layout(location = 1) in vec4 passParameterSem6;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -27,7 +55,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 64342503518ca97a
|
// shader 64342503518ca97a
|
||||||
// Shrine - ending
|
// Shrine - ending
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,11 +28,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21106000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fc9000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x21103000 res 4x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 0 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
@ -23,7 +51,7 @@ layout(location = 3) in vec4 passParameterSem7;
|
|||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 5) in vec4 passParameterSem9;
|
layout(location = 5) in vec4 passParameterSem9;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 6832b00344c32a71
|
// shader 6832b00344c32a71
|
||||||
// Shrine - ending back wall
|
// Shrine - ending back wall
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21103000 res 4x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x21103000 res 4x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 687da8c1b555b262
|
// shader 687da8c1b555b262
|
||||||
// Bomb - explosion sphere + distorsion
|
// Bomb - explosion sphere + distorsion
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,12 +28,23 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21106000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fd4000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x210b5000 res 200x200x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 0 0 0 border: 0
|
#else
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf45c6000 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 0 border: 0
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -25,7 +53,7 @@ layout(location = 4) in vec4 passParameterSem7;
|
|||||||
layout(location = 5) in vec4 passParameterSem8;
|
layout(location = 5) in vec4 passParameterSem8;
|
||||||
layout(location = 6) in vec4 passParameterSem9;
|
layout(location = 6) in vec4 passParameterSem9;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 68aa37ce58db094d
|
// shader 68aa37ce58db094d
|
||||||
// Bomb - appear effect center
|
// Bomb - appear effect center
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,17 +28,28 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x20fd4000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
layout(location = 3) in vec4 passParameterSem4;
|
layout(location = 3) in vec4 passParameterSem4;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 70a79265ab7d498a
|
// shader 70a79265ab7d498a
|
||||||
// Electric balls
|
// Electric balls
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,13 +28,24 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 5) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[4];
|
uniform ivec4 uf_remappedPS[4];
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb639d000 res 256x256x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb63b8000 res 256x256x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xb63a6000 res 256x256x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xb63af000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 0 0 2 border: 0
|
uniform ivec4 uf_remappedPS[4];
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0xb639b000 res 128x4x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 0 0 2 border: 0
|
uniform float uf_alphaTestRef;
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 4) uniform sampler2D textureUnitPS8;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem3;
|
layout(location = 2) in vec4 passParameterSem3;
|
||||||
@ -27,7 +55,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 70d96b85a0ce93ef
|
// shader 70d96b85a0ce93ef
|
||||||
// Shrine - ending - field shatter effect particle
|
// Shrine - ending - field shatter effect particle
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x211a9000 res 32x64x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x7) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x214e1000 res 64x400x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 1 1 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 751393d6cbcd0c76
|
// shader 751393d6cbcd0c76
|
||||||
// Shrine - walls 2
|
// Shrine - walls 2
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,13 +28,22 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 6) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[2];
|
uniform ivec4 uf_remappedPS[2];
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xb119e000 res 1024x1024x1 dim 1 tm: 4 format 0433 compSel: 0 1 2 3 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 0 0 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xb129f000 res 512x512x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 0 0 2 border: 0
|
};
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xb10e6000 res 1024x1024x1 dim 1 tm: 4 format 0431 compSel: 0 1 2 3 mipView: 0x0 (num 0xb) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 0 0 2 border: 0
|
#else
|
||||||
layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xb1179000 res 512x512x1 dim 1 tm: 4 format 0031 compSel: 0 1 2 3 mipView: 0x0 (num 0xa) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 0 0 2 border: 0
|
uniform ivec4 uf_remappedPS[2];
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xb09e5000 res 4012x2048x1 dim 1 tm: 4 format 0034 compSel: 0 4 4 4 mipView: 0x0 (num 0xc) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0xb1168000 res 256x256x1 dim 1 tm: 4 format 0035 compSel: 0 1 1 1 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 0 0 2 border: 0
|
#endif
|
||||||
|
TEXTURE_LAYOUT(3, 1, 0) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 1) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 2) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(6, 1, 3) uniform sampler2D textureUnitPS6;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 4) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(8, 1, 5) uniform sampler2D textureUnitPS8;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem7;
|
layout(location = 2) in vec4 passParameterSem7;
|
||||||
@ -28,7 +54,7 @@ layout(location = 0) out vec4 passPixelColor0;
|
|||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
layout(location = 3) out vec4 passPixelColor3;
|
layout(location = 3) out vec4 passPixelColor3;
|
||||||
layout(location = 5) out vec4 passPixelColor5;
|
layout(location = 5) out vec4 passPixelColor5;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 80b87385a0d2942f
|
// shader 80b87385a0d2942f
|
||||||
// Bomp - appear effect circle 2
|
// Bomp - appear effect circle 2
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x214e1000 res 64x400x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x214e1000 res 64x400x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x9) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
@ -1,5 +1,22 @@
|
|||||||
#version 420
|
#version 420
|
||||||
#extension GL_ARB_texture_gather : enable
|
#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 81adf9797e4661a7
|
// shader 81adf9797e4661a7
|
||||||
// Shrine - ending glowing wall
|
// Shrine - ending glowing wall
|
||||||
// Glow Lights Color Mod
|
// Glow Lights Color Mod
|
||||||
@ -11,16 +28,25 @@
|
|||||||
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
#define ALPHA_FACTOR 1.0 //same as above; applies to Transparency
|
||||||
|
|
||||||
const float hueRotation = HUE_ROTATION / 360.0;
|
const float hueRotation = HUE_ROTATION / 360.0;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x21282000 res 128x128x1 dim 1 tm: 4 format 0433 compSel: 0 1 2 3 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x20fc9000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 0 mipView: 0x0 (num 0x8) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 0 0 0 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
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 = 0) in vec4 passParameterSem0;
|
||||||
layout(location = 1) in vec4 passParameterSem1;
|
layout(location = 1) in vec4 passParameterSem1;
|
||||||
layout(location = 2) in vec4 passParameterSem4;
|
layout(location = 2) in vec4 passParameterSem4;
|
||||||
layout(location = 3) in vec4 passParameterSem7;
|
layout(location = 3) in vec4 passParameterSem7;
|
||||||
layout(location = 4) in vec4 passParameterSem8;
|
layout(location = 4) in vec4 passParameterSem8;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
int clampFI32(int v)
|
int clampFI32(int v)
|
||||||
{
|
{
|
||||||
if( v == 0x7FFFFFFF )
|
if( v == 0x7FFFFFFF )
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user