mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-25 11:06:54 +01:00
Update XCX packs for Vulkan (#413)
Xenoblade Chronicles X packs are now ported too! Which has, after BotW, the most shaders I think made by all of the efforts from getdls. All shaders were successfully verified and tested in-game (from what I could tell).
This commit is contained in:
parent
a90afc12d2
commit
24b9b1eb29
@ -14,8 +14,17 @@
|
|||||||
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
|
||||||
#define SET_POSITION(_v) gl_Position = _v
|
#define SET_POSITION(_v) gl_Position = _v
|
||||||
#endif
|
#endif
|
||||||
// This shaders was auto-converted from OpenGL to Cemu so expect weird code and possible errors.
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
// This shaders was auto-converted (and manually adjusted) from OpenGL to Cemu so expect weird code and possible errors.
|
||||||
|
|
||||||
// shader 59df1c7e1806366c - Anti-aliasing Shader - Dumped 1.14
|
// shader 59df1c7e1806366c - Anti-aliasing Shader - Dumped 1.14
|
||||||
|
|
||||||
@ -47,19 +56,8 @@ passPixelColor0 = texture(textureUnitPS1, passParameterSem1.xy); // textureunitp
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (preset == 1) // Native AA Enabled
|
#if (preset == 1) // Native AA Enabled
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1
|
||||||
#ifdef VULKAN
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1
|
||||||
layout(set = 1, binding = 6) uniform ufBlock
|
|
||||||
{
|
|
||||||
uniform ivec4 uf_remappedPS[2];
|
|
||||||
uniform vec4 uf_fragCoordScale;
|
|
||||||
};
|
|
||||||
#else
|
|
||||||
uniform ivec4 uf_remappedPS[2];
|
|
||||||
uniform vec2 uf_fragCoordScale;
|
|
||||||
#endif
|
|
||||||
TEXTURE_LAYOUT(0, 1, 2) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1
|
|
||||||
TEXTURE_LAYOUT(1, 1, 3) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1
|
|
||||||
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 = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
@ -1155,8 +1153,8 @@ FxaaFloat4 FxaaPixelShader(
|
|||||||
//----------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------
|
||||||
//#version 100
|
//#version 100
|
||||||
|
|
||||||
TEXTURE_LAYOUT(0, 1, 4) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1
|
||||||
TEXTURE_LAYOUT(1, 1, 5) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1
|
||||||
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 = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
@ -1,10 +1,36 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 59df1c7e1806366c
|
// shader 59df1c7e1806366c
|
||||||
//contrasty AA shader
|
//contrasty AA shader
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
};
|
||||||
|
#else
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
uniform ivec4 uf_remappedPS[2];
|
||||||
|
#endif
|
||||||
|
|
||||||
const float hazeFactor = 0.1;
|
const float hazeFactor = 0.1;
|
||||||
|
|
||||||
@ -94,9 +120,9 @@ vec3 contrasty(vec3 colour){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
uniform ivec4 uf_remappedPS[2];
|
// uf_remappedPS[2] was moved to the ufBlock
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
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 = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
|||||||
name = Contrasty
|
name = Contrasty
|
||||||
path = "Xenoblade Chronicles X/Enhancements/Contrasty"
|
path = "Xenoblade Chronicles X/Enhancements/Contrasty"
|
||||||
description = This pack tweaks the colours and contrast to whatever preset you set it as. You can also make your own preset by editing the Default preset in the Contrasty folder from the game's graphic packs. Enabling will ignore your other AA settings.
|
description = This pack tweaks the colours and contrast to whatever preset you set it as. You can also make your own preset by editing the Default preset in the Contrasty folder from the game's graphic packs. Enabling will ignore your other AA settings.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = High Contrasty - shadow lift
|
name = High Contrasty - shadow lift
|
||||||
|
@ -1,14 +1,40 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 5eb82314ffb8484e
|
// shader 5eb82314ffb8484e
|
||||||
//cross fade blur prel
|
//cross fade blur prel
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[7];
|
uniform ivec4 uf_remappedPS[7];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4e12000 res 320x180x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[7];
|
||||||
|
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;
|
||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
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,23 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 840947e29015aa9a
|
// shader 840947e29015aa9a
|
||||||
//BB cliff
|
//BB cliff
|
||||||
|
|
||||||
@ -10,24 +27,33 @@ const float scaleBlur = $scaleBlur;
|
|||||||
|
|
||||||
const int sampleScale = 4;
|
const int sampleScale = 4;
|
||||||
|
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 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: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4386000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
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 = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
|
|
||||||
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
||||||
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
||||||
|
@ -9,13 +9,13 @@ layout(location = 0) in vec4 passParameterSem0;
|
|||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,23 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader b3fb199c73caa796
|
// shader b3fb199c73caa796
|
||||||
//BB title
|
//BB title
|
||||||
|
|
||||||
@ -11,22 +28,31 @@ const float scaleBlur = $scaleBlur;
|
|||||||
|
|
||||||
const int sampleScale = 4;
|
const int sampleScale = 4;
|
||||||
const float lightBloom = 0.95;
|
const float lightBloom = 0.95;
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[4];
|
uniform ivec4 uf_remappedPS[4];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf551a000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[4];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
layout(location = 0) in vec4 passParameterSem0;
|
layout(location = 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
|
||||||
|
|
||||||
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
||||||
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
||||||
|
@ -1,6 +1,23 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader d8e69e8df8c227f5
|
// shader d8e69e8df8c227f5
|
||||||
//BB grid n char select
|
//BB grid n char select
|
||||||
const float dither = $dither ;
|
const float dither = $dither ;
|
||||||
@ -10,24 +27,33 @@ const float scaleBlur = $scaleBlur;
|
|||||||
|
|
||||||
const int sampleScale = 4;
|
const int sampleScale = 4;
|
||||||
const float lightBloom = 0.95;
|
const float lightBloom = 0.95;
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[3];
|
uniform ivec4 uf_remappedPS[3];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 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: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4386000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[3];
|
||||||
|
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 = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
uniform vec2 uf_fragCoordScale;
|
// uf_fragCoordScale was moved to the ufBlock
|
||||||
|
|
||||||
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
// FabriceNeyret2 CC, single shader gaussian by intermediate MIPmap level. www.shadertoy.com/view/ltScRG
|
||||||
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
const int samples = 8 * sampleScale, //8 or 4 balances xy position
|
||||||
|
@ -1,14 +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
|
||||||
#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 e412d30f981be3b5
|
// shader e412d30f981be3b5
|
||||||
//stasis cinematic align. A compromise for centering pretty blur
|
//stasis cinematic align. A compromise for centering pretty blur
|
||||||
|
|
||||||
|
#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;
|
||||||
@ -54,7 +79,7 @@ backupReg1f = R2f.y;
|
|||||||
R2f.x = (backupReg0f * intBitsToFloat(uf_remappedVS[0].x) + intBitsToFloat(uf_remappedVS[0].z)*0.5);//edit
|
R2f.x = (backupReg0f * intBitsToFloat(uf_remappedVS[0].x) + intBitsToFloat(uf_remappedVS[0].z)*0.5);//edit
|
||||||
R2f.y = (backupReg1f * intBitsToFloat(uf_remappedVS[0].y) + intBitsToFloat(uf_remappedVS[0].w)*0.5);
|
R2f.y = (backupReg1f * intBitsToFloat(uf_remappedVS[0].y) + intBitsToFloat(uf_remappedVS[0].w)*0.5);
|
||||||
// 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.z);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.z);
|
||||||
// 0
|
// 0
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
|||||||
name = Fancy GFX # I would have called this RTX on, but Nvidia has trademarked it ;)
|
name = Fancy GFX # I would have called this RTX on, but Nvidia has trademarked it ;)
|
||||||
path = "Xenoblade Chronicles X/Enhancements/Fancy FX"
|
path = "Xenoblade Chronicles X/Enhancements/Fancy FX"
|
||||||
description = Pretty blur, de-band sky, re-align cinematic etc, maintained on Nvidia.
|
description = Pretty blur, de-band sky, re-align cinematic etc, maintained on Nvidia.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
#Disabled, causes gfx errors on 1.15.x Enable if fixed.
|
#Disabled, causes gfx errors on 1.15.x Enable if fixed.
|
||||||
#[TextureRedefine]
|
#[TextureRedefine]
|
||||||
|
@ -1,23 +1,48 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 007148d1db7f78e7
|
// shader 007148d1db7f78e7
|
||||||
//fog clouds
|
//fog clouds
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
layout(location = 11) in uvec4 attrDataSem11;
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
|
ATTR_LAYOUT(0, 11) in uvec4 attrDataSem11;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1397,7 +1422,7 @@ R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_re
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,21 +1,46 @@
|
|||||||
#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 0b8b33c2f133a514
|
// shader 0b8b33c2f133a514
|
||||||
//transport flame 3 *dumped*
|
//transport flame 3 *dumped*
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1367,7 +1392,7 @@ R1i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(uf_remappedVS[2
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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 0dbac1e3ebdc5c02
|
// shader 0dbac1e3ebdc5c02
|
||||||
// float arrow ingame *dumped*
|
// float arrow ingame *dumped*
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1350,7 +1375,7 @@ R1i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(uf_remappedVS[2
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x) *(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x) *(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,19 +1,44 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 14f760ff4d6b05f5
|
// shader 14f760ff4d6b05f5
|
||||||
//muzzle flash
|
//muzzle flash
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[24];
|
uniform ivec4 uf_remappedVS[24];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[24];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -289,7 +314,7 @@ PS1i = R6i.x;
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R2i.x)*(origRatio / newRatio), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
SET_POSITION(vec4(intBitsToFloat(R2i.x)*(origRatio / newRatio), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)));
|
||||||
// 0
|
// 0
|
||||||
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),0.0)));
|
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),0.0)));
|
||||||
PV0i.x = tempi.x;
|
PV0i.x = tempi.x;
|
||||||
|
@ -1,12 +1,39 @@
|
|||||||
#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 1f915b133a255dab
|
// shader 1f915b133a255dab
|
||||||
//battle graph, dumped
|
//battle graph, dumped
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_uniformRegisterVS[256];
|
uniform ivec4 uf_uniformRegisterVS[256];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_uniformRegisterVS[256];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
// uf_alphaTestRef was moved to the ufBlock
|
||||||
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -198,7 +225,7 @@ R2i.w = floatBitsToInt((intBitsToFloat(uf_uniformRegisterVS[ARi.x+8].z) * intBit
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,19 +1,44 @@
|
|||||||
#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 20075cc6cf058a84
|
// shader 20075cc6cf058a84
|
||||||
// skell intro smoke
|
// skell intro smoke
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[26];
|
uniform ivec4 uf_remappedVS[26];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[26];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1270,7 +1295,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height));
|
float newRatio = (float($width)/float($height));
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R10i.x)*(origRatio / newRatio), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w));
|
SET_POSITION(vec4(intBitsToFloat(R10i.x)*(origRatio / newRatio), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,23 +1,48 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 21eafb6c514a4b35
|
// shader 21eafb6c514a4b35
|
||||||
//flash creature
|
//flash creature
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
layout(location = 11) in uvec4 attrDataSem11;
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
|
ATTR_LAYOUT(0, 11) in uvec4 attrDataSem11;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1384,7 +1409,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,21 +1,46 @@
|
|||||||
#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 2716141e287247da
|
// shader 2716141e287247da
|
||||||
//transport heat waves, desert
|
//transport heat waves, desert
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[21];
|
uniform ivec4 uf_remappedVS[21];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[21];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1284,7 +1309,7 @@ R0i.w = ((PV0i.x == 0)?(backupReg1i):(0x3f800000));
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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 330acac562ddee2b // waterfall splash closeup
|
// shader 330acac562ddee2b // waterfall splash closeup
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1378,7 +1403,7 @@ R1i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(uf_remappedVS[19
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,22 +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
|
||||||
#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 3fae14064195391b
|
// shader 3fae14064195391b
|
||||||
//ockserve engine late game
|
//ockserve engine late game
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[21];
|
uniform ivec4 uf_remappedVS[21];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[21];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1286,7 +1311,7 @@ float newRatio = (float($width)/float($height)) ;
|
|||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,43 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 4c66e611ad14aabe
|
// shader 4c66e611ad14aabe
|
||||||
//intro dive splash
|
//intro dive splash
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[24];
|
uniform ivec4 uf_remappedVS[24];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[24];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem5;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -280,7 +305,7 @@ PS1i = R8i.z;
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R2i.x)*(origRatio / newRatio), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w));
|
SET_POSITION(vec4(intBitsToFloat(R2i.x)*(origRatio / newRatio), intBitsToFloat(R2i.y), intBitsToFloat(R2i.z), intBitsToFloat(R2i.w)));
|
||||||
// 0
|
// 0
|
||||||
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),0.0)));
|
tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),0.0)));
|
||||||
PV0i.x = tempi.x;
|
PV0i.x = tempi.x;
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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 5a41baf724c1cff3 // reflection water crystal
|
// shader 5a41baf724c1cff3 // reflection water crystal
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1379,7 +1404,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x) *(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x) *(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,17 +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.
|
||||||
|
|
||||||
// shader 6093720c5ca6289c
|
// shader 6093720c5ca6289c
|
||||||
//lensflare
|
//lensflare
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 1) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[8];
|
uniform ivec4 uf_remappedVS[8];
|
||||||
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 0xf5f0a000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler18 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
#else
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
uniform ivec4 uf_remappedVS[8];
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
#endif
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
// 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;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -508,7 +533,7 @@ R0i.w = ((PV1i.z == 0)?(R9i.y):(0x3f800000));
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,43 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 610a9c4cb60b0bdf
|
// shader 610a9c4cb60b0bdf
|
||||||
//flashlight
|
//flashlight
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[13];
|
uniform ivec4 uf_remappedVS[13];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[13];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem5;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -266,7 +291,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,43 @@
|
|||||||
#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 622450648ddbf1b2 //car lights (float vs?)
|
// shader 622450648ddbf1b2 //car lights (float vs?)
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[10];
|
uniform ivec4 uf_remappedVS[10];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[10];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -449,7 +474,7 @@ R2i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R3i.x)*(origRatio / newRatio), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
SET_POSITION(vec4(intBitsToFloat(R3i.x)*(origRatio / newRatio), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,43 @@
|
|||||||
#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 738c509776f2c113 // front lights
|
// shader 738c509776f2c113 // front lights
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[10];
|
uniform ivec4 uf_remappedVS[10];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[10];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -451,7 +476,7 @@ R2i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)));
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R3i.x)*(origRatio / newRatio), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
SET_POSITION(vec4(intBitsToFloat(R3i.x)*(origRatio / newRatio), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,24 +1,49 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 7d2d26ba00a66735
|
// shader 7d2d26ba00a66735
|
||||||
// waterfall cascade
|
// waterfall cascade
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
layout(location = 11) in uvec4 attrDataSem11;
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
layout(location = 12) in uvec4 attrDataSem12;
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
|
ATTR_LAYOUT(0, 11) in uvec4 attrDataSem11;
|
||||||
|
ATTR_LAYOUT(0, 12) in uvec4 attrDataSem12;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1398,7 +1423,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,23 +1,48 @@
|
|||||||
#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 7ec11ebc6ad99936
|
// shader 7ec11ebc6ad99936
|
||||||
//Raindrops opening scene
|
//Raindrops opening scene
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
layout(location = 11) in uvec4 attrDataSem11;
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
layout(location = 12) in uvec4 attrDataSem12;
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
|
ATTR_LAYOUT(0, 11) in uvec4 attrDataSem11;
|
||||||
|
ATTR_LAYOUT(0, 12) in uvec4 attrDataSem12;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1393,7 +1418,7 @@ R1i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(uf_remappedVS[2
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,19 +1,44 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 8236d4df96d36e25
|
// shader 8236d4df96d36e25
|
||||||
//invation cutscene skell weapons
|
//invation cutscene skell weapons
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[13];
|
uniform ivec4 uf_remappedVS[13];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[13];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -276,7 +301,7 @@ R3i.z = floatBitsToInt(max(intBitsToFloat(R4i.z), 0.0));
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,22 +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
|
||||||
#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 90bdbafc1c764ae6
|
// shader 90bdbafc1c764ae6
|
||||||
//sand storm clouds pot
|
//sand storm clouds pot
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1380,7 +1405,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 948500d0191d1ed8
|
// shader 948500d0191d1ed8
|
||||||
// invation cutscene skell lights
|
// invation cutscene skell lights
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[13];
|
uniform ivec4 uf_remappedVS[13];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[13];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem9;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -288,7 +313,7 @@ PS0i = R1i.z;
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R9i.x)*(origRatio / newRatio), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w));
|
SET_POSITION(vec4(intBitsToFloat(R9i.x)*(origRatio / newRatio), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,13 +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 9bc5e526132c9534
|
// shader 9bc5e526132c9534
|
||||||
// selection fill *dumped*
|
// selection fill *dumped*
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[11];
|
uniform ivec4 uf_remappedVS[11];
|
||||||
uniform vec2 uf_windowSpaceToClipSpaceTransform;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
uniform float uf_alphaTestRef;
|
uniform float uf_alphaTestRef;
|
||||||
layout(location = 0) in uvec4 attrDataSem0;
|
};
|
||||||
layout(location = 1) in uvec4 attrDataSem1;
|
#else
|
||||||
|
uniform ivec4 uf_remappedVS[11];
|
||||||
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
|
uniform float uf_alphaTestRef;
|
||||||
|
#endif
|
||||||
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
|
// uf_alphaTestRef 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;
|
||||||
@ -131,7 +158,7 @@ R2f.w = (R127f.w * intBitsToFloat(uf_remappedVS[10].w) + PV1f.x);
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(R2f.x*(origRatio / newRatio), R2f.y, R2f.z, R2f.w);
|
SET_POSITION(vec4(R2f.x*(origRatio / newRatio), R2f.y, R2f.z, R2f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
||||||
// 0
|
// 0
|
||||||
|
@ -1,14 +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
|
||||||
#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.
|
||||||
|
|
||||||
const float resXScale = float($width)/float($gameWidth);
|
const float resXScale = float($width)/float($gameWidth);
|
||||||
const float resYScale = float($height)/float($gameHeight);
|
const float resYScale = float($height)/float($gameHeight);
|
||||||
// shader 9dc2d340255dee89
|
// shader 9dc2d340255dee89
|
||||||
|
#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;
|
||||||
@ -54,7 +79,7 @@ backupReg1f = R2f.y;
|
|||||||
R2f.x = (backupReg0f * intBitsToFloat(uf_remappedVS[0].x) + intBitsToFloat(uf_remappedVS[0].z) /resXScale);
|
R2f.x = (backupReg0f * intBitsToFloat(uf_remappedVS[0].x) + intBitsToFloat(uf_remappedVS[0].z) /resXScale);
|
||||||
R2f.y = (backupReg1f * intBitsToFloat(uf_remappedVS[0].y) + intBitsToFloat(uf_remappedVS[0].w) /resXScale);
|
R2f.y = (backupReg1f * intBitsToFloat(uf_remappedVS[0].y) + intBitsToFloat(uf_remappedVS[0].w) /resXScale);
|
||||||
// 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.z);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.z);
|
||||||
// 0
|
// 0
|
||||||
|
@ -1,22 +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
|
||||||
#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 a225baec4db6d89e
|
// shader a225baec4db6d89e
|
||||||
//flying trails desert
|
//flying trails desert
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1379,7 +1404,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x) *(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x) *(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.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 ba529c2c3078fff0 // rain engine glow // drop frame blend?
|
// shader ba529c2c3078fff0 // rain engine glow // drop frame blend?
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[13];
|
uniform ivec4 uf_remappedVS[13];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[13];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem5;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem6;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem7;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -265,7 +290,7 @@ float newRatio = (float($width)/float($height)) ;
|
|||||||
|
|
||||||
|
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x)*(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,22 +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
|
||||||
#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 c01cc5b7af21f689
|
// shader c01cc5b7af21f689
|
||||||
//fog skell flight
|
//fog skell flight
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1370,7 +1395,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,43 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader ccc475eb7e537add
|
// shader ccc475eb7e537add
|
||||||
//motion streaks sword
|
//motion streaks sword
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[22];
|
uniform ivec4 uf_remappedVS[22];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[22];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -524,7 +549,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R9i.x)*(origRatio / newRatio), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w));
|
SET_POSITION(vec4(intBitsToFloat(R9i.x)*(origRatio / newRatio), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), intBitsToFloat(R9i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,23 +1,48 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader ccc6fb8b53f5f651
|
// shader ccc6fb8b53f5f651
|
||||||
//flying enemies trails 2
|
//flying enemies trails 2
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
layout(location = 11) in uvec4 attrDataSem11;
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
|
ATTR_LAYOUT(0, 11) in uvec4 attrDataSem11;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1385,7 +1410,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,11 +1,36 @@
|
|||||||
#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 d0664898dbf28dfa// Pillarbox cutscene fmvs 16:9 -> 21:9
|
// shader d0664898dbf28dfa// Pillarbox cutscene fmvs 16:9 -> 21:9
|
||||||
|
#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;
|
||||||
@ -65,7 +90,7 @@ R1f.w = 1.0;
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(R1f.x*(origRatio / newRatio), R1f.y, R1f.z, R1f.w);
|
SET_POSITION(vec4(R1f.x*(origRatio / newRatio), R1f.y, R1f.z, R1f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.z);
|
passParameterSem0 = vec4(R2f.x, R2f.y, R2f.z, R2f.z);
|
||||||
// 0
|
// 0
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader d321199dc854621f
|
// shader d321199dc854621f
|
||||||
//flying enemies trails
|
//flying enemies trails
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[26];
|
uniform ivec4 uf_remappedVS[26];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[26];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1257,7 +1282,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R10i.x)*(origRatio / newRatio), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w));
|
SET_POSITION(vec4(intBitsToFloat(R10i.x)*(origRatio / newRatio), intBitsToFloat(R10i.y), intBitsToFloat(R10i.z), intBitsToFloat(R10i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,14 +1,39 @@
|
|||||||
#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 d7074f19f5ca3b20
|
// shader d7074f19f5ca3b20
|
||||||
//tower counter
|
//tower counter
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[14];
|
uniform ivec4 uf_remappedVS[14];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[14];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// 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;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -246,7 +271,7 @@ PS1i = R2i.x;
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R1i.x) *(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w));
|
SET_POSITION(vec4(intBitsToFloat(R1i.x) *(origRatio / newRatio), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem1 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.z));
|
passParameterSem1 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.z));
|
||||||
// 0
|
// 0
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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 df832bc2e6d22e45 // water splash drinking
|
// shader df832bc2e6d22e45 // water splash drinking
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1365,7 +1390,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,17 +1,42 @@
|
|||||||
#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 dfacd3f8f448aeaa // car lights streaks
|
// shader dfacd3f8f448aeaa // car lights streaks
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[26];
|
uniform ivec4 uf_remappedVS[26];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[26];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1251,7 +1276,7 @@ R0i.z = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(uf_remappedVS[2
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R12i.x)*(origRatio / newRatio), intBitsToFloat(R12i.y), intBitsToFloat(R12i.z), intBitsToFloat(R12i.w));
|
SET_POSITION(vec4(intBitsToFloat(R12i.x)*(origRatio / newRatio), intBitsToFloat(R12i.y), intBitsToFloat(R12i.z), intBitsToFloat(R12i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,24 +1,49 @@
|
|||||||
#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 e082c1f638f8e81e
|
// shader e082c1f638f8e81e
|
||||||
//mask is probably scaled and fixed transparency
|
//mask is probably scaled and fixed transparency
|
||||||
// transport flame, fog and quest marking, waterfall, computer login
|
// transport flame, fog and quest marking, waterfall, computer login
|
||||||
|
|
||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1354,7 +1379,7 @@ R1i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(uf_remappedVS[2
|
|||||||
|
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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 e99ed318f647e1cf // skell lights opening
|
// shader e99ed318f647e1cf // skell lights opening
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1365,7 +1390,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
|
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x)*(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// 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));
|
||||||
// export
|
// export
|
||||||
|
@ -1,20 +1,45 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader ec248df3384d3d18
|
// shader ec248df3384d3d18
|
||||||
//run dust and shadows intro
|
//run dust and shadows intro
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem9;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1310,7 +1335,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(intBitsToFloat(R0i.x) *(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
SET_POSITION(vec4(intBitsToFloat(R0i.x) *(origRatio / newRatio), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,21 +1,46 @@
|
|||||||
#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 eec2c2cee7a1d42f
|
// shader eec2c2cee7a1d42f
|
||||||
//waterfall splashes cutscene, rain *dumped*
|
//waterfall splashes cutscene, rain *dumped*
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[27];
|
uniform ivec4 uf_remappedVS[27];
|
||||||
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
|
||||||
layout(location = 2) in uvec4 attrDataSem2;
|
uniform ivec4 uf_remappedVS[27];
|
||||||
layout(location = 3) in uvec4 attrDataSem3;
|
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
|
||||||
layout(location = 4) in uvec4 attrDataSem4;
|
#endif
|
||||||
layout(location = 5) in uvec4 attrDataSem5;
|
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
|
||||||
layout(location = 6) in uvec4 attrDataSem6;
|
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
|
||||||
layout(location = 7) in uvec4 attrDataSem7;
|
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
|
||||||
layout(location = 8) in uvec4 attrDataSem8;
|
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
|
||||||
layout(location = 9) in uvec4 attrDataSem9;
|
ATTR_LAYOUT(0, 3) in uvec4 attrDataSem3;
|
||||||
layout(location = 10) in uvec4 attrDataSem10;
|
ATTR_LAYOUT(0, 4) in uvec4 attrDataSem4;
|
||||||
|
ATTR_LAYOUT(0, 5) in uvec4 attrDataSem5;
|
||||||
|
ATTR_LAYOUT(0, 6) in uvec4 attrDataSem6;
|
||||||
|
ATTR_LAYOUT(0, 7) in uvec4 attrDataSem7;
|
||||||
|
ATTR_LAYOUT(0, 8) in uvec4 attrDataSem8;
|
||||||
|
ATTR_LAYOUT(0, 9) in uvec4 attrDataSem9;
|
||||||
|
ATTR_LAYOUT(0, 10) in uvec4 attrDataSem10;
|
||||||
out gl_PerVertex
|
out gl_PerVertex
|
||||||
{
|
{
|
||||||
vec4 gl_Position;
|
vec4 gl_Position;
|
||||||
@ -1378,7 +1403,7 @@ R1i.w = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(uf_remappedVS[19
|
|||||||
float origRatio = (float(1280)/float(720));
|
float origRatio = (float(1280)/float(720));
|
||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
gl_Position = vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w));
|
SET_POSITION(vec4(intBitsToFloat(R4i.x)*(origRatio / newRatio), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w));
|
||||||
// export
|
// export
|
||||||
|
@ -1,13 +1,38 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader fa7054d25fd49999
|
// shader fa7054d25fd49999
|
||||||
//lock line combat
|
//lock line combat
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 0, binding = 0) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedVS[4];
|
uniform ivec4 uf_remappedVS[4];
|
||||||
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[4];
|
||||||
|
// 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;
|
||||||
@ -99,7 +124,7 @@ float origRatio = (float(1280)/float(720));
|
|||||||
float newRatio = (float($width)/float($height)) ;
|
float newRatio = (float($width)/float($height)) ;
|
||||||
// *(origRatio / newRatio)
|
// *(origRatio / newRatio)
|
||||||
// export
|
// export
|
||||||
gl_Position = vec4(R0f.x*(origRatio / newRatio), R0f.y, R0f.z, R0f.w);
|
SET_POSITION(vec4(R0f.x*(origRatio / newRatio), R0f.y, R0f.z, R0f.w));
|
||||||
// export
|
// export
|
||||||
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w);
|
||||||
// export
|
// export
|
||||||
|
@ -1,18 +1,44 @@
|
|||||||
#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.
|
||||||
|
|
||||||
const float resXScale = float($width)/float($gameWidth);
|
const float resXScale = float($width)/float($gameWidth);
|
||||||
const float resYScale = float($height)/float($gameHeight);
|
const float resYScale = float($height)/float($gameHeight);
|
||||||
// shader fdb5a87dd0368c6b //shadow scaling
|
// shader fdb5a87dd0368c6b //shadow scaling
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 4) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[23];
|
uniform ivec4 uf_remappedPS[23];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4386000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2DShadow textureUnitPS1;// Tex1 addr 0xf551a000 res 1024x1024x1 dim 1 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 6 6 6 border: 2
|
};
|
||||||
layout(binding = 2) uniform sampler2DShadow textureUnitPS2;// Tex2 addr 0xf571a000 res 1024x1024x1 dim 1 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 6 6 6 border: 2
|
#else
|
||||||
layout(binding = 3) uniform sampler2DShadow textureUnitPS3;// Tex3 addr 0xf591a000 res 512x512x1 dim 1 tm: 4 format 0005 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 6 6 6 border: 2
|
uniform ivec4 uf_remappedPS[23];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2DShadow textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2DShadow textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(3, 1, 3) uniform sampler2DShadow 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 = 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 = 0005000010116100,00050000101C4C00,00050000101C4D00
|
|||||||
name = Resolution
|
name = Resolution
|
||||||
path = "Xenoblade Chronicles X/Graphics/Resolution"
|
path = "Xenoblade Chronicles X/Graphics/Resolution"
|
||||||
description = Changes the resolution of the game.
|
description = Changes the resolution of the game.
|
||||||
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 3cc7e98f78c258b4 // brightness workaround.
|
// shader 3cc7e98f78c258b4 // brightness workaround.
|
||||||
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
|
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
|
||||||
// changes here in turn "breaks" bloom as they over or under expose depending on day/night
|
// changes here in turn "breaks" bloom as they over or under expose depending on day/night
|
||||||
@ -28,20 +45,29 @@ vec3 contrasty(vec3 colour){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 2) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform vec4 uf_fragCoordScale;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 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: 0
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 1) uniform sampler3D textureUnitPS1;// Tex1 addr 0x2603b000 res 16x16x16 dim 2 tm: 7 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x10) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler3D textureUnitPS1;
|
||||||
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
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,23 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader 7b9f05b2bd8f3b71
|
// shader 7b9f05b2bd8f3b71
|
||||||
//skell cockpit brigthtness fix + minor colour tweak to balance broken bloom
|
//skell cockpit brigthtness fix + minor colour tweak to balance broken bloom
|
||||||
const float exposure = $exposure; // 1.0 is neutral, first lessen to avoid truncation prob around .25 for radeon.
|
const float exposure = $exposure; // 1.0 is neutral, first lessen to avoid truncation prob around .25 for radeon.
|
||||||
@ -10,11 +27,20 @@ const float vibrance = $vibrance; // 0.0 is neutral
|
|||||||
const float crushContrast = $crushContrast; // 0.0 is neutral. loss of shadow detail
|
const float crushContrast = $crushContrast; // 0.0 is neutral. loss of shadow detail
|
||||||
|
|
||||||
|
|
||||||
|
#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 0xf470a000 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: 0
|
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
|
||||||
|
|
||||||
|
|
||||||
vec3 contrasty(vec3 colour) {
|
vec3 contrasty(vec3 colour) {
|
||||||
|
@ -1,25 +1,51 @@
|
|||||||
#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.
|
||||||
|
|
||||||
// shader bd74794730fc559a
|
// shader bd74794730fc559a
|
||||||
//tweak glare, less J.J. Abrams
|
//tweak glare, less J.J. Abrams
|
||||||
const float glare = $glare; //reflection on skell, characters, metal objects etc
|
const float glare = $glare; //reflection on skell, characters, metal objects etc
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 8) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[12];
|
uniform ivec4 uf_remappedPS[12];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf5196000 res 1280x720x1 dim 1 tm: 4 format 0810 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4386000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5d48000 res 1x1x1 dim 1 tm: 2 format 0008 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 0
|
#else
|
||||||
layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 0
|
uniform ivec4 uf_remappedPS[12];
|
||||||
layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4a8e000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 0
|
uniform vec2 uf_fragCoordScale;
|
||||||
layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xf4e12000 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 0
|
#endif
|
||||||
layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf589e000 res 640x360x1 dim 1 tm: 4 format 0007 compSel: 0 1 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 0
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf5ff0000 res 64x64x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 0
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler2D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler2D textureUnitPS2;
|
||||||
|
TEXTURE_LAYOUT(3, 1, 3) uniform sampler2D textureUnitPS3;
|
||||||
|
TEXTURE_LAYOUT(4, 1, 4) uniform sampler2D textureUnitPS4;
|
||||||
|
TEXTURE_LAYOUT(5, 1, 5) uniform sampler2D textureUnitPS5;
|
||||||
|
TEXTURE_LAYOUT(7, 1, 6) uniform sampler2D textureUnitPS7;
|
||||||
|
TEXTURE_LAYOUT(9, 1, 7) 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 passParameterSem2;
|
layout(location = 2) in vec4 passParameterSem2;
|
||||||
layout(location = 3) in vec4 passParameterSem3;
|
layout(location = 3) in vec4 passParameterSem3;
|
||||||
layout(location = 0) out vec4 passPixelColor0;
|
layout(location = 0) out vec4 passPixelColor0;
|
||||||
layout(location = 1) out vec4 passPixelColor1;
|
layout(location = 1) out vec4 passPixelColor1;
|
||||||
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 d936195db0dd8e7d
|
// shader d936195db0dd8e7d
|
||||||
// cross fade brightness
|
// cross fade brightness
|
||||||
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
|
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
|
||||||
@ -28,21 +45,30 @@ vec3 contrasty(vec3 colour){
|
|||||||
return fColour;
|
return fColour;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef VULKAN
|
||||||
|
layout(set = 1, binding = 3) uniform ufBlock
|
||||||
|
{
|
||||||
uniform ivec4 uf_remappedPS[1];
|
uniform ivec4 uf_remappedPS[1];
|
||||||
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 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: 0
|
uniform vec4 uf_fragCoordScale;
|
||||||
layout(binding = 1) uniform sampler3D textureUnitPS1;// Tex1 addr 0x26032000 res 16x16x16 dim 2 tm: 7 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x10) Sampler1 ClampX/Y/Z: 2 2 2 border: 0
|
};
|
||||||
layout(binding = 2) uniform sampler3D textureUnitPS2;// Tex2 addr 0x2603b000 res 16x16x16 dim 2 tm: 7 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x10) Sampler2 ClampX/Y/Z: 2 2 2 border: 0
|
#else
|
||||||
|
uniform ivec4 uf_remappedPS[1];
|
||||||
|
uniform vec2 uf_fragCoordScale;
|
||||||
|
#endif
|
||||||
|
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
|
||||||
|
TEXTURE_LAYOUT(1, 1, 1) uniform sampler3D textureUnitPS1;
|
||||||
|
TEXTURE_LAYOUT(2, 1, 2) uniform sampler3D textureUnitPS2;
|
||||||
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
|
||||||
|
|
||||||
highp float lineRand(vec2 co)
|
float lineRand(vec2 co)
|
||||||
{
|
{
|
||||||
highp float a = 12.9898;
|
float a = 12.9898;
|
||||||
highp float b = 78.233;
|
float b = 78.233;
|
||||||
highp float c = 43758.5453;
|
float c = 43758.5453;
|
||||||
highp float dt = dot(co.xy, vec2(a, b));
|
float dt = dot(co.xy, vec2(a, b));
|
||||||
highp float sn = mod(dt, 3.14);
|
float sn = mod(dt, 3.14);
|
||||||
return fract(sin(sn) * c);
|
return fract(sin(sn) * c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@ titleIds = 0005000010116100,00050000101C4C00,00050000101C4D00
|
|||||||
name = Brightness Workaround
|
name = Brightness Workaround
|
||||||
path = "Xenoblade Chronicles X/Workarounds/Brightness"
|
path = "Xenoblade Chronicles X/Workarounds/Brightness"
|
||||||
description = Edit presets for preference.
|
description = Edit presets for preference.
|
||||||
version = 3
|
version = 4
|
||||||
|
|
||||||
[Preset]
|
[Preset]
|
||||||
name = NVIDIA
|
name = NVIDIA
|
||||||
|
@ -518,7 +518,7 @@ function convertFolder(folderPathArray) {
|
|||||||
if (fs.existsSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray))) fs.rmdirSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray), {recursive: true});
|
if (fs.existsSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray))) fs.rmdirSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray), {recursive: true});
|
||||||
fs.mkdirSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray), {recursive: true});
|
fs.mkdirSync(path.join(process.cwd(), "/graphicPacks/", ...folderPathArray), {recursive: true});
|
||||||
|
|
||||||
for (entry in dirEntries) {
|
for (let entry in dirEntries) {
|
||||||
if (dirEntries[entry].isDirectory()) {
|
if (dirEntries[entry].isDirectory()) {
|
||||||
// Check for folder entries and see if there's a rules.txt file.
|
// Check for folder entries and see if there's a rules.txt file.
|
||||||
let packFiles = fs.readdirSync(path.join(process.cwd(), ...folderPathArray, dirEntries[entry].name), {withFileTypes: true});
|
let packFiles = fs.readdirSync(path.join(process.cwd(), ...folderPathArray, dirEntries[entry].name), {withFileTypes: true});
|
||||||
|
@ -244,7 +244,7 @@ function verifyPack(analyseFiles, folderArray) {
|
|||||||
function verifyGraphicPacks(folderArray) {
|
function verifyGraphicPacks(folderArray) {
|
||||||
let dirEntries = fs.readdirSync(path.join(process.cwd(), ...folderArray), {withFileTypes: true});
|
let dirEntries = fs.readdirSync(path.join(process.cwd(), ...folderArray), {withFileTypes: true});
|
||||||
|
|
||||||
for (entry in dirEntries) {
|
for (let entry in dirEntries) {
|
||||||
if (dirEntries[entry].isDirectory()) {
|
if (dirEntries[entry].isDirectory()) {
|
||||||
console.group("Verify "+path.join(process.cwd(), ...folderArray, dirEntries[entry].name));
|
console.group("Verify "+path.join(process.cwd(), ...folderArray, dirEntries[entry].name));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user