Update TPHD and Devils Third to v4

Both were fully verified, so no issues should be present. This basically means that every game that runs properly (Star Wars doesn't go in-game, Tokyo Mirage is also very buggy and the upscaling filters don't work with cemu yet) before V5 will have graphic packs at least.
This commit is contained in:
Crementif 2020-01-18 18:11:34 +01:00
parent 282e0c3430
commit 6c14f4aff1
No known key found for this signature in database
GPG Key ID: 11A98E7DE0412B33
31 changed files with 792 additions and 134 deletions

View File

@ -1,15 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 161904c2816b059d // shader 161904c2816b059d
// Used for: Horizontal & Vertical Bloom Blur Pass // Used for: Horizontal & Vertical Bloom Blur Pass
float resScale = ($width/$gameWidth); float resScale = ($width/$gameWidth);
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[5]; uniform ivec4 uf_remappedVS[5];
uniform vec2 uf_windowSpaceToClipSpaceTransform; // uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem8; #else
uniform ivec4 uf_remappedVS[5];
// uniform vec2 uf_windowSpaceToClipSpaceTransform; // Cemu optimized this uf_variable away in Cemu 1.15.7
#endif
// uf_windowSpaceToClipSpaceTransform was moved to the ufBlock
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem8;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -77,7 +102,7 @@ backupReg0f = R1f.x;
R1f.xyz = vec3(backupReg0f,backupReg1f,backupReg1f) + vec3(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z)); R1f.xyz = vec3(backupReg0f,backupReg1f,backupReg1f) + vec3(intBitsToFloat(uf_remappedVS[4].x),intBitsToFloat(uf_remappedVS[4].y),intBitsToFloat(uf_remappedVS[4].z));
R1f.w = backupReg0f + intBitsToFloat(uf_remappedVS[4].w)/resScale; R1f.w = backupReg0f + intBitsToFloat(uf_remappedVS[4].w)/resScale;
// export // export
gl_Position = vec4(R2f.x, R2f.y, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x, R2f.y, R2f.z, R2f.w));
// export // export
passParameterSem129 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem129 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,13 +1,39 @@
#version 420 #version 420
#extension GL_ARB_texture_gather : enable #extension GL_ARB_texture_gather : enable
#extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_separate_shader_objects : enable
#ifdef VULKAN
#define ATTR_LAYOUT(__vkSet, __location) layout(set = __vkSet, location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(set = __vkSet, binding = __vkLocation)
#define SET_POSITION(_v) gl_Position = _v; gl_Position.z = (gl_Position.z + gl_Position.w) / 2.0
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale.xy,gl_FragCoord.zw)
#define gl_VertexID gl_VertexIndex
#define gl_InstanceID gl_InstanceIndex
#else
#define ATTR_LAYOUT(__vkSet, __location) layout(location = __location)
#define UNIFORM_BUFFER_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation, std140)
#define TEXTURE_LAYOUT(__glLocation, __vkSet, __vkLocation) layout(binding = __glLocation)
#define SET_POSITION(_v) gl_Position = _v
#define GET_FRAGCOORD() vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw)
#endif
// This shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 888e5d95da8037e2 // shader 888e5d95da8037e2
// Used for: Horizontal & Vertical Blur Pass // Used for: Horizontal & Vertical Blur Pass
float resScale = ($width/$gameWidth); float resScale = ($width/$gameWidth);
#ifdef VULKAN
layout(set = 1, binding = 1) uniform ufBlock
{
uniform ivec4 uf_remappedPS[1];
uniform vec4 uf_fragCoordScale;
};
#else
uniform ivec4 uf_remappedPS[1]; uniform ivec4 uf_remappedPS[1];
uniform vec2 uf_fragCoordScale; uniform vec2 uf_fragCoordScale;
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x15c36000 res 320x180x1 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 #endif
// uf_fragCoordScale was moved to the ufBlock
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
layout(location = 0) in vec4 passParameterSem129; layout(location = 0) in vec4 passParameterSem129;
layout(location = 0) out vec4 passPixelColor0; layout(location = 0) out vec4 passPixelColor0;
int clampFI32(int v) int clampFI32(int v)

View File

@ -3,7 +3,7 @@ titleIds = 0005000010177600,0005000010177700,0005000010197d00
name = Resolution name = Resolution
path = "Devil's Third/Graphics/Resolution" path = "Devil's Third/Graphics/Resolution"
description = Changes the resolution of the game. Made by Crementif. description = Changes the resolution of the game. Made by Crementif.
version = 3 version = 4
[Preset] [Preset]
name = 1280x720 (Default) name = 1280x720 (Default)

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 15e4acf324eb0912 missing // shader 15e4acf324eb0912 missing
//map mission objectives missing //map mission objectives missing
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -117,7 +140,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
// skipped export to semanticId 255 // skipped export to semanticId 255
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 18893ce415f2fcc7 // shader 18893ce415f2fcc7
//Map icon position //Map icon position
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
// skipped export to semanticId 255 // skipped export to semanticId 255
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 1caed2ca3d14f36b // shader 1caed2ca3d14f36b
//object box bg 2 //object box bg 2
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[10]; uniform ivec4 uf_remappedVS[10];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem2; #else
uniform ivec4 uf_remappedVS[10];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -112,7 +135,7 @@ R1f.w = tempf.x;
R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z)); R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z));
R0f.w = intBitsToFloat(uf_remappedVS[7].w); R0f.w = intBitsToFloat(uf_remappedVS[7].w);
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// 0 // 0

View File

@ -1,17 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 24b09ef9b11b98d5 // shader 24b09ef9b11b98d5
//UI text front //UI text front
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
const float UItransp = $UItransp; const float UItransp = $UItransp;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -117,7 +140,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R3f.w = tempf.x; R3f.w = tempf.x;
// export // export
gl_Position = vec4(R3f.x*UIx, R3f.y*UIy, R3f.z, R3f.w); SET_POSITION(vec4(R3f.x*UIx, R3f.y*UIy, R3f.z, R3f.w));
// export // export
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp); passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 27b429c755f71162 // shader 27b429c755f71162
//Map arrows //Map arrows
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[11]; uniform ivec4 uf_remappedVS[11];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[11];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -122,7 +145,7 @@ R2f.w = tempf.x;
R5f.z = R126f.w; R5f.z = R126f.w;
PS0f = R5f.z; PS0f = R5f.z;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 4f5f72f9eec53a90 // shader 4f5f72f9eec53a90
//BG box 3 //BG box 3
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[9]; uniform ivec4 uf_remappedVS[9];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[9];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 5f2ae4dbd2256d0c // shader 5f2ae4dbd2256d0c
//minimap //minimap
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -115,7 +138,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,17 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 6dc0977212eae7b3 // shader 6dc0977212eae7b3
//hearts //hearts
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
const float UItransp = $UItransp; const float UItransp = $UItransp;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -120,7 +143,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w));
// export // export
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp); passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp);
// export // export

View File

@ -1,14 +1,37 @@
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 70e776430cd020a9 // shader 70e776430cd020a9
//box bg 5 //box bg 5
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[10]; uniform ivec4 uf_remappedVS[10];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem2; #else
uniform ivec4 uf_remappedVS[10];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ R1f.w = tempf.x;
R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z)); R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z));
R0f.w = intBitsToFloat(uf_remappedVS[7].w); R0f.w = intBitsToFloat(uf_remappedVS[7].w);
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 7674f1be5f1b1e0c // shader 7674f1be5f1b1e0c
//object box BG //object box BG
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[9]; uniform ivec4 uf_remappedVS[9];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[9];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 7c5a0f2532be049f // shader 7c5a0f2532be049f
//Map highlight //Map highlight
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -119,7 +142,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,14 +1,37 @@
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 7fc573264230ed00 // shader 7fc573264230ed00
//lights bloom sensor //lights bloom sensor
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[10]; uniform ivec4 uf_remappedVS[10];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem2; #else
uniform ivec4 uf_remappedVS[10];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -111,7 +134,7 @@ R1f.w = tempf.x;
R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z)); R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z));
R0f.w = intBitsToFloat(uf_remappedVS[7].w); R0f.w = intBitsToFloat(uf_remappedVS[7].w);
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// 0 // 0

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 827afe113fd67658 // shader 827afe113fd67658
//lamp oil indicator //lamp oil indicator
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[9]; uniform ivec4 uf_remappedVS[9];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[9];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -113,7 +136,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 85b15b7fe92662bb // shader 85b15b7fe92662bb
//map dungeon BG //map dungeon BG
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,12 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader 95a5a89d62998e0d // shader 95a5a89d62998e0d
// blur // blur
#ifdef VULKAN
layout(set = 1, binding = 1) uniform ufBlock
{
uniform ivec4 uf_remappedPS[3];
uniform vec4 uf_fragCoordScale;
};
#else
uniform ivec4 uf_remappedPS[3]; uniform ivec4 uf_remappedPS[3];
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf59ff000 res 480x270x1 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
layout(location = 0) out vec4 passPixelColor0;
uniform vec2 uf_fragCoordScale; uniform vec2 uf_fragCoordScale;
#endif
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
layout(location = 0) out vec4 passPixelColor0;
// uf_fragCoordScale was moved to the ufBlock
int clampFI32(int v) int clampFI32(int v)
{ {
if( v == 0x7FFFFFFF ) if( v == 0x7FFFFFFF )
@ -38,7 +64,7 @@ ivec4 ARi = ivec4(0);
bool predResult = true; bool predResult = true;
vec3 cubeMapSTM; vec3 cubeMapSTM;
int cubeMapFaceId; int cubeMapFaceId;
R0f = vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw); R0f = GET_FRAGCOORD();
scaler = uf_fragCoordScale.x; scaler = uf_fragCoordScale.x;
// 0 // 0
R7f.x = R0f.x * intBitsToFloat(0x3b088889); R7f.x = R0f.x * intBitsToFloat(0x3b088889);

View File

@ -1,18 +1,18 @@
------ ------
### The Legend of Zelda: Twilight Princess HD ### TLoZ Twilight Princess HD
------ ------
### Graphic Options ### Graphic options
3840x4320 vert x2 SSAA - Runs the game at double vertical res balancing look and performance when super sampling. Run full screen scaling in stretched and bilinear when activating this option. 3840x4320 vert x2 SSAA - Runs the game at double vertical res balancing look and performance when super sampling. Run full screen scaling in stretched and bilinear when activating this option.
0.5 Sub scaling - Runs transparencies and blur at half resolution, slight performance improvement (in higher resolutions). 0.5 Sub scaling - Runs transparances and blur at half resolution, slight performance improvement (in higher resolutions).
UI 25% transparency - Dims static GUI elements, making them slightly transparent. Reduces chance of burn in when using Oled or plasma display. UI 25% transp - Dims static GUI elements, making them slightly transparent. Reduces chance of burn in when using Oled or plasma display.
### Nice to know when creating a custom resolution ### Nice to know when creating a custom resolution
There are some issues with AO and light sources, to mitigate this some “sub” viewports need to scale evenly. XCX uses a similar approach to get smooth shadow transitions. There are some issues with AO and light sources, to mitigate this some “sub” viewports need to scale evenly. XCX uses a similar approach to get smooth shadow transitions.
Example: Example:
``` ```
@ -43,4 +43,6 @@ formats = 0x001
overwriteWidth = ($width/$gameWidth) * (1024*$lightSource*$scaleShader) overwriteWidth = ($width/$gameWidth) * (1024*$lightSource*$scaleShader)
overwriteHeight = ($height/$gameHeight) * (544*$lightSource) overwriteHeight = ($height/$gameHeight) * (544*$lightSource)
``` ```
![21:9](https://i.imgur.com/jVQrzpm.jpg) ![21:9](TP21_9.jpg)

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader acbedb86f89efae4 // shader acbedb86f89efae4
//mapscreen bg //mapscreen bg
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -115,7 +138,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader aebb1e76797684a2 // shader aebb1e76797684a2
//UI text bg //UI text bg
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -118,7 +141,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,14 +1,37 @@
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader b5241d6db4feef42 // shader b5241d6db4feef42
//selection highlight //selection highlight
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[10]; uniform ivec4 uf_remappedVS[10];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem2; #else
uniform ivec4 uf_remappedVS[10];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ R1f.w = tempf.x;
R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z)); R0f.xyz = vec3(intBitsToFloat(uf_remappedVS[7].x),intBitsToFloat(uf_remappedVS[7].y),intBitsToFloat(uf_remappedVS[7].z));
R0f.w = intBitsToFloat(uf_remappedVS[7].w); R0f.w = intBitsToFloat(uf_remappedVS[7].w);
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,14 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader c14019840473ff86 // shader c14019840473ff86
//scale boxblur fx //scale boxblur fx
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf4001000 res 1920x1080x1 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 TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5187000 res 1920x1080x1 dim 1 tm: 4 format 0011 compSel: 0 4 4 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 = 0) out vec4 passPixelColor0; layout(location = 0) out vec4 passPixelColor0;
#ifdef VULKAN
layout(set = 1, binding = 2) uniform ufBlock
{
uniform vec4 uf_fragCoordScale;
};
#else
uniform vec2 uf_fragCoordScale; uniform vec2 uf_fragCoordScale;
#endif
int clampFI32(int v) int clampFI32(int v)
{ {
if( v == 0x7FFFFFFF ) if( v == 0x7FFFFFFF )

View File

@ -1,12 +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
#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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader c612390d4c70f430 //cutscene focus n bloom // shader c612390d4c70f430 //cutscene focus n bloom
#ifdef VULKAN
layout(set = 1, binding = 1) uniform ufBlock
{
uniform ivec4 uf_remappedPS[5];
uniform vec4 uf_fragCoordScale;
};
#else
uniform ivec4 uf_remappedPS[5]; uniform ivec4 uf_remappedPS[5];
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf597f000 res 480x270x1 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
layout(location = 0) out vec4 passPixelColor0;
uniform vec2 uf_fragCoordScale; uniform vec2 uf_fragCoordScale;
#endif
TEXTURE_LAYOUT(0, 1, 0) uniform sampler2D textureUnitPS0;
layout(location = 0) out vec4 passPixelColor0;
// uf_fragCoordScale was moved to the ufBlock
int clampFI32(int v) int clampFI32(int v)
{ {
if( v == 0x7FFFFFFF ) if( v == 0x7FFFFFFF )
@ -38,7 +64,7 @@ ivec4 ARi = ivec4(0);
bool predResult = true; bool predResult = true;
vec3 cubeMapSTM; vec3 cubeMapSTM;
int cubeMapFaceId; int cubeMapFaceId;
R0f = vec4(gl_FragCoord.xy*uf_fragCoordScale,gl_FragCoord.zw); R0f = GET_FRAGCOORD();
scaler = uf_fragCoordScale.x; scaler = uf_fragCoordScale.x;
// 0 // 0
R7f.x = R0f.x * intBitsToFloat(0x3b088889); R7f.x = R0f.x * intBitsToFloat(0x3b088889);

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader ce7aa5fffc34aab0 // shader ce7aa5fffc34aab0
//action buttons //action buttons
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
const float UItransp = $UItransp; const float UItransp = $UItransp;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -116,7 +139,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R3f.w = tempf.x; R3f.w = tempf.x;
// export // export
gl_Position = vec4(R3f.x*UIx, R3f.y*UIy, R3f.z, R3f.w); SET_POSITION(vec4(R3f.x*UIx, R3f.y*UIy, R3f.z, R3f.w));
// export // export
passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp); passParameterSem0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w*UItransp);
// export // export

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader e9d455979cba2505 // shader e9d455979cba2505
//dungeon objects //dungeon objects
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -117,7 +140,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
// skipped export to semanticId 255 // skipped export to semanticId 255
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader eec9403a9d54137e // shader eec9403a9d54137e
//Map bg middle layer //Map bg middle layer
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -118,7 +141,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader f017fcfaf1bd28ab // shader f017fcfaf1bd28ab
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
//amiibo //amiibo
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
uniform ivec4 uf_remappedVS[7];
#endif
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;
@ -114,7 +137,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R1f.w = tempf.x; R1f.w = tempf.x;
// export // export
gl_Position = vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w); SET_POSITION(vec4(R1f.x*UIx, R1f.y*UIy, R1f.z, R1f.w));
// export // export
passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); passParameterSem1 = vec4(R0f.x, R0f.y, R0f.z, R0f.w);
// export // export

View File

@ -1,16 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader f5034fe4aa1fec23 // shader f5034fe4aa1fec23
//map fade //map fade
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -119,7 +142,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y*UIy, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, R2f.y*UIy, 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);
// export // export

View File

@ -1,15 +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 shader was automatically converted to be cross-compatible with Vulkan and OpenGL.
// shader fc148873ef522f50 // shader fc148873ef522f50
// objective shadow // objective shadow
const float UIx = $UIAspectX; const float UIx = $UIAspectX;
const float UIy = $UIAspectY; const float UIy = $UIAspectY;
#ifdef VULKAN
layout(set = 0, binding = 0) uniform ufBlock
{
uniform ivec4 uf_remappedVS[7]; uniform ivec4 uf_remappedVS[7];
layout(location = 0) in uvec4 attrDataSem0; };
layout(location = 1) in uvec4 attrDataSem1; #else
layout(location = 2) in uvec4 attrDataSem2; uniform ivec4 uf_remappedVS[7];
#endif
ATTR_LAYOUT(0, 0) in uvec4 attrDataSem0;
ATTR_LAYOUT(0, 1) in uvec4 attrDataSem1;
ATTR_LAYOUT(0, 2) in uvec4 attrDataSem2;
out gl_PerVertex out gl_PerVertex
{ {
vec4 gl_Position; vec4 gl_Position;
@ -119,7 +142,7 @@ PV0f.z = tempf.x;
PV0f.w = tempf.x; PV0f.w = tempf.x;
R2f.w = tempf.x; R2f.w = tempf.x;
// export // export
gl_Position = vec4(R2f.x*UIx, R2f.y, R2f.z, R2f.w); SET_POSITION(vec4(R2f.x*UIx, 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);
// export // export

View File

@ -3,7 +3,7 @@ titleIds = 000500001019C800,000500001019E600,000500001019E500
name = Resolution name = Resolution
path = "The Legend of Zelda: Twilight Princess HD/Graphics/Resolution" path = "The Legend of Zelda: Twilight Princess HD/Graphics/Resolution"
description = Changes the resolution of the game. Made by getdls. description = Changes the resolution of the game. Made by getdls.
version = 3 version = 4
[Preset] [Preset]
name = 1920x1080 (Native) name = 1920x1080 (Native)